
CLI Design Guide
Designs command-line tools with clear args, help, output, errors and safety rules
- Repository
- steipete/agent-scripts
- Stars
- 7,433
- Licence
- MIT
- Files
- 2 files
What it does
When you ask the agent to design a command-line tool, it follows a written set of CLI design guidelines instead of improvising. It asks a few key questions (who uses the tool, how input and output work, whether prompts are allowed), then produces a compact spec covering commands, flags, output rules, exit codes, config precedence and dry-run or confirmation safety. It stays language-agnostic and focuses on the interface design rather than writing the implementation.
Great for
- Developers planning a new command-line tool and wanting a consistent interface spec
- Teams standardising flags, help text, JSON output and error handling across their CLIs
- Anyone reviewing an existing CLI's UX against common conventions
Skip it if
- Writing the actual code for a CLI: the skill deliberately stays at the design level, so it will not implement it
- Non-technical users who have no need for a terminal interface, since the output is a developer-oriented spec
Try asking
- “Design a CLI called mycmd for syncing notes between folders, including flags and exit codes”
- “Review my existing CLI's help and error output against good conventions”
- “Write a spec for a deploy command with a --dry-run and confirmation rules”
- “Propose config precedence for a tool that reads flags, env vars and a config file”
Install in 3 steps
- 1
Download the skill
The ZIP contains the 2 original files, the MIT licence and an attribution note.
create-cli.zip - 2
Add it to your agent
Claude Code (all projects)
mkdir -p ~/.claude/skills && unzip create-cli.zip -d ~/.claude/skills/Claude Code / Agent SDK (this project only)
mkdir -p .claude/skills && unzip create-cli.zip -d .claude/skills/Claude apps (web/desktop): Settings → Capabilities → Skills → Upload skill, and choose the ZIP.
- 3
Ask for the task
No special command needed — the agent reads the skill's description and loads it when your request matches. Try one of the prompts above.
Get better results
- State your command name, primary users (humans, scripts or both) and platforms up front so fewer clarifying questions are needed.
- Ask for a spec first and request implementation separately, since the skill is designed to avoid drifting into code.
- Mention whether the tool needs machine-readable output such as --json so the output contract is set early.
What's inside
- references/cli-guidelines.md
- SKILL.md
Redistributed unmodified from steipete/agent-scripts under the MIT licence. The assessment was drafted with AI from the skill's files on 2026-10-29. Skills can instruct your agent to run code — read SKILL.md and any scripts before installing.