skillfed

auto-click-auto

Automatically enable tab autocompletion for shells in Click CLI applications.

auto-click-auto v0.1.6 233.6K downloads/30d#9,038 on PyPI11
Permissive license MIT Active released

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 on this page — 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

auto-click-auto on PyPI

pip

pip install auto-click-auto

uv

uv add auto-click-auto

poetry

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 the current Python release (<4.0,>=3.7)
Install friction low — pure-Python wheel
Runtime dependencies 1 — click
Maintenance actively maintained — 25 days since the last release
Last repo commit
First released
Downloads 233,554/month — #9,038 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: auto_click_auto-0.1.6-py3-none-any.whl

Keywords: click, autocomplete, shell

License :: OSI Approved :: MIT LicenseNatural Language :: EnglishOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Programming Language :: Python :: Implementation :: PyPyTopic :: Software Development

Tags

click shell completionbash tab autocomplete clizsh fish autocompletionclick cli shell integrationautomatic command completion
click-integrationshell-completioncli-tooling

More Software Development packages