What problem does it solve? Writing Typer CLIs involves subtle decisions about arguments versus options, command topology, callbacks, exit codes, and testing that are easy to get wrong, leading to inconsistent user-facing command contracts and fragile tests. ## Core Features & Use Cases - Parameter and topology guidance: Classify fields as arguments or options, choose between single commands, peer commands, and nested sub-apps, and manage shared state through typed context objects. - Error and exit contract: Map user errors to concise stderr messages and nonzero exits while preserving diagnostics for programmer defects and keeping secrets out of output. - CliRunner testing: Test help output, success paths, invalid input, prompts, and side-effect boundaries against the Typer app rather than calling command functions directly. - Use Case: You are adding an export command to an existing Typer app and need typed path validation, a --force flag, correct exit codes, and tests that verify the output file is not overwritten without the flag. ## Quick Start Ask the assistant to write or review a Typer CLI command with typed arguments, options, exit handling, and CliRunner tests for your project.