Patterns for building production-quality CLI tools with predictable behavior, parseable output, and agentic workflows. Triggers: cli tool, command line tool, build cli, cli patterns, agentic cli, cli design, typer cli, click cli.
78
72%
Does it follow best practices?
Impact
94%
1.64xAverage score across 3 eval scenarios
Passed
No known issues
Optimize this skill with Tessl
npx tessl skill review --optimize ./data/skills-md/0xdarkmatter/claude-mods/cli-patterns/SKILL.mdQuality
Discovery
72%Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.
The description establishes a clear domain niche around CLI tool development with good trigger term coverage including specific frameworks. However, it lacks concrete action verbs describing what the skill actually teaches (e.g., argument parsing, output formatting, error handling) and is missing an explicit 'Use when...' clause that would help Claude know precisely when to select it.
Suggestions
Add an explicit 'Use when...' clause, e.g., 'Use when the user asks to build a CLI tool, design command-line interfaces, or needs help with argument parsing and structured output.'
Replace the abstract phrase 'patterns for building production-quality CLI tools' with specific concrete actions, e.g., 'Guides argument parsing, subcommand structuring, exit code handling, and parseable output formatting for CLI tools.'
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Names the domain (CLI tools) and mentions some qualities (predictable behavior, parseable output, agentic workflows), but doesn't list specific concrete actions like 'parse arguments', 'generate help text', 'handle exit codes', or 'structure subcommands'. | 2 / 3 |
Completeness | The 'what' is partially addressed (patterns for building CLI tools), but there is no explicit 'Use when...' clause. The trigger terms listed are helpful but serve as keyword tags rather than explicit guidance on when Claude should select this skill. | 2 / 3 |
Trigger Term Quality | Includes a good range of natural trigger terms users would say: 'cli tool', 'command line tool', 'build cli', 'cli patterns', 'agentic cli', 'cli design', 'typer cli', 'click cli'. These cover common variations and specific framework names. | 3 / 3 |
Distinctiveness Conflict Risk | The focus on CLI tool patterns with specific framework mentions (typer, click) and the 'agentic workflows' angle creates a clear niche that is unlikely to conflict with other skills like general Python development or web API skills. | 3 / 3 |
Total | 10 / 12 Passed |
Implementation
72%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
This is a strong, comprehensive CLI patterns skill that excels in actionability with concrete code examples, specific conventions, and clear anti-patterns. Its progressive disclosure is well-executed with appropriate references to detailed implementation files. The main weakness is moderate verbosity — some sections could be tightened (redundant error/exit code tables, extensive data conventions) and the workflow for actually building a CLI tool lacks explicit validation checkpoints.
Suggestions
Consolidate the exit codes table and error codes table to eliminate redundancy — the error codes section largely restates exit code mappings
Consider moving Data Conventions and Filtering & Pagination sections to a reference file, keeping only the most critical conventions inline
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The skill is well-organized and mostly efficient, but is quite lengthy (~400+ lines) with some redundancy. The error codes table partially duplicates the exit codes table, and some sections like Data Conventions (date handling, money, IDs, enums) and Filtering & Pagination are extensive for a patterns guide. The philosophy section with 'Design Axioms' restates what the principles table already covers. However, it avoids explaining basic concepts Claude already knows. | 2 / 3 |
Actionability | The skill provides highly concrete, executable guidance throughout: real Python code for error handling, interactive detection, exit code implementation; real bash examples for scripting patterns; specific flag conventions with exact naming rules; copy-paste ready code snippets for Typer and Click. The anti-patterns section with good/bad comparisons is particularly actionable. | 3 / 3 |
Workflow Clarity | The skill is primarily a reference/patterns document rather than a multi-step workflow, but it does describe processes like authentication flows and error handling. The checklist at the end provides a clear sequence of what to implement. However, there are no explicit validation checkpoints or feedback loops for the CLI building process itself — no 'test this before proceeding' steps when building a CLI tool. | 2 / 3 |
Progressive Disclosure | The skill effectively uses progressive disclosure with clear references to external files: 'See references/json-schemas.md for complete JSON response patterns' and 'See references/implementation.md for complete Python implementation templates.' The main file serves as a comprehensive overview with well-signaled one-level-deep references, and content is logically organized into clearly labeled sections. | 3 / 3 |
Total | 10 / 12 Passed |
Validation
72%Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.
Validation — 8 / 11 Passed
Validation for skill structure
| Criteria | Description | Result |
|---|---|---|
skill_md_line_count | SKILL.md is long (633 lines); consider splitting into references/ and linking | Warning |
allowed_tools_field | 'allowed-tools' contains unusual tool name(s) | Warning |
frontmatter_unknown_keys | Unknown frontmatter key(s) found; consider removing or moving to metadata | Warning |
Total | 8 / 11 Passed | |
e437c3c
Table of Contents
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.