skillfed

click-plugins

An extension module for click to enable registering CLI commands via setuptools entry-points.

click-plugins Permissive license New BSD Active 132 v1.1.1.2 released

Install

click-plugins on PyPI

pip

pip install click-plugins

uv

uv add click-plugins

poetry

poetry add click-plugins

Package facts

License New BSD (permissive)
Python support not specified
Install friction low — pure-Python wheel
Runtime dependencies 1 — click
Maintenance actively maintained — 414 days since the last release
Last repo commit
First released
Popularity one of the top 1,000 most-downloaded packages on PyPI (30-day window, as of 2026-08-13)
Known vulnerabilities none known (OSV.dev, checked 2026-08-13)

Evidence: click_plugins-1.1.1.2-py2.py3-none-any.whl

Keywords: click, plugin, setuptools, entry-point

Development Status :: 7 - InactiveIntended Audience :: DevelopersLicense :: OSI Approved :: BSD LicenseProgramming Language :: PythonProgramming Language :: Python :: 3Topic :: Utilities

About click-plugins

from the package's own PyPI description — quoted content, verbatim

============= click-plugins =============

This PyPI package is no longer actively maintained, but the underlying library can be vendored. See homepage <https://github.com/click-contrib/click-plugins>_ for more information.

An extension module for click <https://github.com/pallets/click>_ to register external CLI commands via setuptools entry-points.

Why?

Lets say you develop a commandline interface and someone requests a new feature that is absolutely related to your project but would have negative consequences like additional dependencies, major refactoring, or maybe its just too domain specific to be supported directly. Rather than developing a separate standalone utility you could offer up a setuptools entry point <https://pythonhosted.org/setuptools/setuptools.html#dynamic-discovery-of-services-and-plugins>_ that allows others to use your commandline utility as a home for their related sub-commands. You get to choose where these sub-commands or sub-groups CAN be registered but the plugin developer gets to choose they ARE registered. You could have all plugins register alongside the core commands, in a special sub-group, across multiple sub-groups, or some...

Read as markdown · JSON record · Source repository · Homepage

AI interpretation — verify before relying

AI-generated interpretation of the package facts above; every digit, version, license, or vulnerability id it cites is grounded in the facts already shown on this page

Extends Click CLI frameworks to load external commands and command groups from setuptools entry points, enabling plugin-based CLI architecture without tight coupling.

Installation is frictionless with only click as a runtime dependency, but the package description states it is no longer actively maintained—the maintainers recommend vendoring the library rather than relying on updates.

Licensed under New BSD (permissive), allowing commercial and private use with minimal restrictions, though users should verify compatibility with their own license terms.

Usage

pip install click-plugins

from click_plugins import with_plugins
import click

@with_plugins(iter_entry_points('my_package.cli_plugins'))
@click.group()
def cli():
    pass

Requires click to be installed; plugin discovery depends on setuptools entry points being properly declared in dependent packages' setup.py.

Verdict: Low-friction installation and permissive licensing make this accessible, but the package's explicit unmaintained status and 414-day release lag mean production users should either vendor the code or evaluate maintained alternatives for plugin-based CLI architectures.

Needs verification

  • Whether the 'active' maintenance status contradicts the package's own statement that it is 'no longer actively maintained'
  • Python version compatibility details, since requires_python is unspecified despite classifiers listing Python 3
  • Real-world adoption patterns and whether the top_1000 tier reflects active use or legacy dependents
click plugin systemcli entry point registrationsetuptools click pluginsmodular command line interfaceclick command discoveryextensible cli frameworkclick plugin loader

Similar packages