Skip to content
cccskills
FreePublished on GitHub

typer

Build Python command-line applications with Typer by looking up commands, arguments, options, callbacks, help output, and shell completion. The reference also explains how to test and package an app, and how Typer converts its definitions for Click.

OriginalShow the original description

Use when building CLI applications with fastapi/typer — creating commands, defining CLI arguments and options, type-hint-driven parameter parsing, callbacks, context, help customization, shell completion, testing, packaging, or Typer internals. Triggers on: "typer", "typer.run", "typer.Typer", "typer app", "typer command", "typer argument", "typer option", "typer callback", "typer context", "Annotated", "typer.Argument", "typer.Option", "typer.Context", "CliRunner", "add_typer", "rich_markup_mode", "typer completion", "typer autocompletion", "typer echo", "typer test", "typer package", "typer click", "get_command".

carapace-sh/carapace-bin2,000 stars(GitHub 2,000 + cccskills 0)

Run score Not tested

See how to install

Good for

  • Creating commands and subcommands
  • Defining typed arguments and options
  • Customizing help text and shell completion
  • Testing or packaging a Typer app

Files included (10)

  • SKILL.md5.1 KB
  • references/commands.md6.4 KB
  • references/completion.md4.3 KB
  • references/context.md4.9 KB
  • references/help-output.md4.5 KB
  • references/internals.md7.4 KB
  • references/package.md2.8 KB
  • references/parameter-types.md5.6 KB
  • references/parameters.md6.9 KB
  • references/testing.md3.2 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Typer CLI Application Reference

Reference for building CLI applications with typer. Covers the public API, type-driven parameter declaration, and how Typer wraps Click internally.

Sub-Resources

Load the reference that matches your task. When in doubt, load multiple references.

KeywordsReference
Typer, typer.run, app, @app.command, @app.callback, add_typer, subcommand, group, one or multiple commands, TyperInfo, CommandInfo, suggest_commands, invoke_without_commandreferences/commands.md
typer.Argument, typer.Option, Annotated, default value style, Ellipsis, required, optional, envvar, prompt, confirmation_prompt, short name, metavar, show_default, help, OptionInfo, ArgumentInfo, ParamMetareferences/parameters.md
type conversion, parameter type, str, int, float, bool, Enum, Literal, choices, case_sensitive, FileText, FileTextWrite, FileBinaryRead, FileBinaryWrite, pathlib.Path, exists, min, max, clamp, count, DateTime, UUID, list, tuplereferences/parameter-types.md
typer.Context, ctx, CallbackParam, invoked_subcommand, resilient_parsing, allow_extra_args, ignore_unknown_options, find_root, find_object, ensure_object, fail, abort, exit, get_parameter_sourcereferences/context.md
help, docstring, rich, rich_markup_mode, rich_help_panel, markdown help, deprecated, epilog, printing, echo, style, secho, stderr, rich markup, suggest_commandsreferences/help-output.md
completion, shell completion, install-completion, show-completion, autocompletion, incomplete, shellingham, custom completion, completion functionreferences/completion.md
testing, pytest, CliRunner, Result, invoke, exit_code, input, isolated filesystemreferences/testing.md
package, pyproject.toml, project.scripts, wheel, python -m, main.py, publish, docs generationreferences/package.md
internals, source code, main.py, core.py, models.py, utils.py, _click, vendored click, get_command, get_group_from_info, get_command_from_info, get_callback, TyperGroup, TyperCommand, TyperOption, TyperArgument, DefaultPlaceholder, rich_utilsreferences/internals.md

Quick Guide

Cross-Project References

  • For the completion-aware pflag/cobra ecosystem used in this repo, see the cobra skill (in this repo, skills/cobra/). Typer is Click-based, not cobra-based; Typer's own internals are covered in references/internals.md.
  • For FastAPI itself, Typer's design mirrors it (dependency injection, declarative type hints) but there is no FastAPI skill here.

Note

Typer versions covered: 0.12+ through 0.27.x. Since v0.26.0 Click is vendored inside typer/_click/, so no external Click dependency exists at runtime (see references/internals.md).

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

brew

FreeSummary

Use this reference to manage software with Homebrew on macOS or Linux, understand formulas and casks, maintain Brewfiles and services, troubleshoot installations, or work on formula and cask development tasks.

  • Installing, updating, or removing Homebrew packages
  • Managing services and software lists with a Brewfile
  • Writing or updating a formula or cask
carapace-sh/carapace-bin2KUpdated Oct 26, 2026

bubbletea

FreeSummary

Use this reference to build and maintain terminal user interfaces in Go with Bubble Tea. It explains the Model/Update/View cycle, commands and messages, input, rendering, program lifecycle, tests, component composition, and patterns for larger applications.

  • Building a Bubble Tea terminal interface
  • Handling keyboard, mouse, and window resize events
  • Running asynchronous work through commands and messages
carapace-sh/carapace-bin2KUpdated Oct 26, 2026

bun

FreeSummary

Use this reference for JavaScript and TypeScript development with Bun. It explains CLI commands, dependency and lockfile management, testing, bundling code, runtime APIs for files and servers, the Bun shell, configuration, and environment variables.

  • Installing and managing project dependencies
  • Running tests or building a bundle with Bun
  • Starting a server or reading and writing files
carapace-sh/carapace-bin2KUpdated Oct 26, 2026

but

FreeSummary

Use this reference to manage Git work with the GitButler CLI (`but`), including virtual and stacked branches, assigning changes, editing commits, resolving conflicts, and creating pull requests. It also covers the workspace, operation history, interactive TUI, configuration, and AI agent setup.

  • Working on parallel or stacked branches
  • Assigning file changes to a virtual branch
  • Amending, squashing, or rewording commits
carapace-sh/carapace-bin2KUpdated Oct 26, 2026

carapace

FreeSummary

Build and maintain carapace shell completions for command-line tools. The reference covers YAML specs, custom completion actions, shell setup, DSL-aware parsing, MCP use, and documentation for suggested values.

  • Adding shell completion to a CLI
  • Writing a YAML spec or custom completion action
  • Generating completion documentation for values
carapace-sh/carapace-bin2KUpdated Oct 26, 2026

cargo

FreeSummary

Use this reference to work with Cargo, Rust’s package manager and build tool. It explains project manifests, dependencies, features, workspaces, build profiles, configuration, registries, publishing, and commands for building, testing, and inspecting projects.

  • Setting up dependencies in Cargo.toml
  • Understanding features and workspace settings
  • Choosing Cargo commands to build or test a project
carapace-sh/carapace-bin2KUpdated Oct 26, 2026

See all skills by carapace-sh

Report a problem with this skill