--- id: auto-click-auto version: "0.1.6" license: MIT license_treatment: permissive maintenance: active --- # auto-click-auto — Automatically enable tab autocompletion for shells in Click CLI applications. License: permissive · Maintenance: active · Downloads: 233.6K/mo ## What it is and what it does auto-click-auto is a small Python library that adds tab shell completion support to Click CLI applications for Bash (4.4+), Zsh, and Fish. It wraps Click's built-in shell completion functionality and provides three main ways to integrate: checking and enabling completion on every program run, adding it as a CLI option via decorator, or exposing it as a dedicated command or subcommand. The library requires only click as a dependency and works across Python 3.7 through 3.14. The package is designed to reduce friction in adding shell completion to Click programs—rather than copying completion code snippets or managing shell configuration manually, developers call one of two functions and specify which shells to target. It prints status messages on first activation and supports verbose output for debugging or confirming already-configured systems. Use it for: - Add seamless tab completion to a Click CLI tool without requiring users to run separate setup commands - Expose shell completion as an explicit command in a CLI program (e.g., `myapp config shell-completion`) - Integrate completion setup as a decorator option on a Click command for optional user activation - Support multiple shells (Bash, Zsh, Fish) from a single codebase without shell-specific branching - Enable completion automatically on first run to improve user experience in distributed CLI tools ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Automatically enables tab shell completion for Bash, Zsh, and Fish in Click CLI applications with minimal setup. Yes. The package solves a real friction point in Click CLI development with minimal overhead—one dependency, active maintenance, no vulnerabilities, and permissive licensing. It's most valuable if you're building a Click application and want to offer shell completion without manual setup or boilerplate. Skip it if your CLI doesn't use Click or if you need completion for shells beyond Bash, Zsh, and Fish. ## Install pip install auto-click-auto uv add auto-click-auto poetry add auto-click-auto ## Installing auto-click-auto Before you install: Low friction install with a single runtime dependency on click. Active maintenance with a recent release (25 days ago) and no known vulnerabilities. License in practice: MIT license permits free use, modification, and distribution with minimal restrictions—suitable for both open-source and commercial projects. Quickstart: pip install auto-click-auto import click from auto_click_auto import enable_click_shell_completion from auto_click_auto.constants import ShellType @click.command() def hello(): click.echo('Hello') enable_click_shell_completion( program_name="hello", shells={ShellType.BASH, ShellType.FISH} ) Verify before relying: - Whether shell completion persists across shell sessions or requires re-enablement - How the library handles conflicts with existing shell completion configurations - Performance impact when checking completion status on every CLI invocation ## Package facts - License: MIT (permissive) - Python support: supports_current - Install friction: low - Maintenance: active - Downloads: 233.6K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags click shell completion, bash tab autocomplete cli, zsh fish autocompletion, click cli shell integration, automatic command completion, click-integration, shell-completion, cli-tooling [View on SkillFed](https://skillfed.io/packages/auto-click-auto) · [View on PyPI](https://pypi.org/project/auto-click-auto/)