domain-cli — Claude Code skill: what it does, how to install
Guides AI agents in structuring Rust CLI applications with clap derive macros and strict stdout/stderr stream separation.
npx skills add actionbook/rust-skills --skill domain-cli -a claude-codeWhat domain-cli does
This skill enforces domain constraints when building Rust command-line binaries. It guides the coding assistant to rely on clap derive macros for type-safe argument parsing and subcommand hierarchies. Output handling follows Unix standards: program data goes to standard output via println!, while diagnostics flow to eprintln!. Piping output between shell utilities will not break.
Configuration follows a fixed override hierarchy where CLI arguments take precedence over environment variables and configuration files. Long tasks require visual feedback via indicatif progress bars rather than silent execution. Because the skill sets user-invocable: false, you do not trigger it manually; the agent applies these conventions whenever inspecting a **/Cargo.toml file.
What it helps with
- separate data output in stdout from errors in stderr
- parse CLI flags and subcommands using
clap - enforce configuration priority from CLI args down to files
- display terminal progress bars with
indicatif
Example prompts for the agent
- Structure a Rust CLI tool with init and run subcommands using clap.
- Add a progress bar for a long-running console task using indicatif.
How to install domain-cli
1Skills CLI (Vercel)
npx skills add actionbook/rust-skills --skill domain-cli -a claude-code2Manually: put the files in place
~/.claude/skills/domain-cli/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/domain-cli/
1Skills CLI (Vercel)
npx skills add actionbook/rust-skills --skill domain-cli -a codex2Manually: put the files in place
.agents/skills/domain-cli/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add actionbook/rust-skills --skill domain-cli -a cursor2Manually: put the files in place
.cursor/skills/domain-cli/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install actionbook/rust-skills domain-cli2Manually: put the files in place
.github/skills/domain-cli/SKILL.md1Skills CLI (Vercel)
npx skills add actionbook/rust-skills --skill domain-cli -a gemini-cli2Platform CLI
gemini skills install https://github.com/actionbook/rust-skills --path skills/domain-cliManually: put the files in place
.devin/skills/domain-cli/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add actionbook/rust-skills --skill domain-cli -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about domain-cli
How do I install domain-cli in Claude Code?
Run npx skills add actionbook/rust-skills --skill domain-cli -a claude-code in your terminal.
What does domain-cli do?
It guides the agent to follow Rust CLI conventions: use clap for parsing, direct errors to stderr, return non-zero exit codes, and layer configuration sources.
Do I need to trigger domain-cli manually?
No. The skill is marked with user-invocable: false and targets **/Cargo.toml, so the agent activates it automatically when working on Rust code.