Agent skill · software engineering · cursor
cli-for-agents
Designs or reviews CLIs so coding agents can run them reliably: non-interactive flags, layered --help with examples, stdin/pipelines, fast actionable errors, idempotency, dry-run, and predictable structure. Use when building a CLI, adding commands, writing --help, or when the user mentions agents, terminals, or automation-friendly CLIs.
Why this skill is useful
Provides domain-specific patterns and guidelines for designing CLIs that enhance automation and usability for coding agents.
What it needs
About 2k tokens when loaded. Last updated 2026-08-06. 2,555 stars on the source repository.
What this skill does
CLI for agents Human-oriented CLIs often block agents: interactive prompts, huge upfront docs, and help text without copy-pasteable examples. Prefer patterns that work headlessly and compose in pipelines. Non-interactive first Every input should be expressible as a flag or flag value. Do not require arrow keys, menus, or timed prompts. If flags are missing, then fall back to interactive mode—not the other way around. Bad: mycli deploy → ? Which environment? (use arrow keys) Good: mycli deploy --env staging Discoverability without dumping context Agents discover subcommands incrementally: mycli, then mycli deploy --help. Do not print the entire manual on every run. Let each subcommand own its documentation so unused commands stay out of context. --help that works Every subcommand has --help. Every --help includes Examples with real invocations. Examples do more than prose for pattern-matching. stdin, flags, and pipelines Accept stdin where it makes sense (e.g. cat config.json mycli config import --stdin). Avoid odd positional ordering and avoid falling back to interactive prompts for missing values. Support chaining: mycli deploy --env staging --tag $(mycli build --output tag-only). Fail fast with actionable errors On missing required flags: exit immediately with a clear message and a correct example invocation, not a hang. Idempotency Agents retry often. The same successful command run twice should be safe (no-op or explicit "already done"), not duplicate side effects. Destructive actions Add --dry-run (or equivalent) so agents can preview plans before committing. Offer --yes / --force to skip confirmations while keeping the safe default for humans. Predictable structure Use a consistent pattern everywhere, e.g. resource + verb: if mycli service list exists, mycli deploy list and mycli config list should follow the same shape. Success output On success, return machine-useful data: IDs, URLs, durations. Plain text is fine; avoid relying on decorative output alone. …
How to use it
Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:
@skills cursor/cli-for-agents