Guidelines for designing and documenting Command Line Interfaces.
Design top-level commands that categorize actions, followed by imperative subcommands (similar to kubectl):
./cmd slack post --channel "#foo"
Ensure the CLI is self-documenting:
--help, ideally with examples.man page.Applications should have the following commands by default:
versionShows the version of the built application, based on Go's internal build primitives.
./cmd version
v0.0.0-20260126085723-f3472ac67d26
Applications should have the following flags by default:
Modifies the log/slog behavior for the default logger. Accepts the levels the log/slog accepts.
./cmd --log-level debug
Search for places (restaurants, cafes, etc.) via Google Places API proxy on localhost.
Interact with GitHub using the `gh` CLI. Use `gh issue`, `gh pr`, `gh run`, and `gh api` for issues, PRs, CI runs, and advanced queries.
Create or update AgentSkills. Use when designing, structuring, or packaging skills with scripts, references, and assets.
Start voice calls via the OpenClaw voice-call plugin.
Notion API for creating and managing pages, databases, and blocks.
Gemini CLI for one-shot Q&A, summaries, and generation.
Category:developer