Install
$ agentstack add skill-zacharygcook-agent-skills-design-human-first-cli ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
About
Design Human-First CLI
Treat commands as product UI. Start with the interaction a human should remember, then do the engineering required to make that interaction real.
Design the target surface first
Write the ideal everyday vocabulary before editing implementation:
tool init
tool status
tool validate
tool run
tool resume
tool upgrade
Prefer short, stable verbs; consistent grammar; obvious help; and commands that fit comfortably in a terminal. A user should not need repository archaeology or shell history to operate the tool.
Separate humans from automation
- Human commands should be short, interactive, discoverable, and safe to rerun.
- Agent/CI commands may expose explicit flags, paths, structured output, and noninteractive controls.
- Keep the complete automation interface documented, but do not make it the main onboarding path.
- Provide
--json, exit codes, or equivalent machine contracts without degrading human output.
Remove unnecessary flags
- Detect facts the system can know: repository root, sole package/skill, installed harnesses,
existing configuration, platform, and available prerequisites.
- Ask interactively for genuine operator choices: provider/harness, model, budgets, destructive
behavior, validation commands, and ambiguous targets.
- Do not invent defaults for consequential choices merely to avoid a prompt.
- Do not ask users to repeat intent already expressed by invoking the command.
- Preserve explicit flags for automation and for users who want to bypass prompts.
Automate setup glue
- Make initialization and upgrades idempotent and preservation-first.
- Create or augment configuration without overwriting existing user content.
- Hide internal package paths, interpreter selection, file copies, symlinks, migrations, and adapter
wiring behind the installer.
- Use a small bootstrap package or launcher when an upstream package manager cannot perform required
lifecycle work; do not document manual glue as though it were a polished installation.
- Detect prerequisites and fail with the shortest actionable next step. Do not silently install
system-wide dependencies or mutate external state without authorization.
Make failures teach the workflow
An error should name the missing decision and the next useful command. Avoid messages that expose an empty variable, recommend a legacy escape hatch, or force users to infer whether they should run init, upgrade, or edit a file manually.
Good setup should:
- recognize an existing installation;
- enter a safe upgrade/configuration path;
- preserve state;
- collect all missing choices in one coherent journey;
- summarize the resulting configuration; and
- stop before autonomous or destructive execution unless the user explicitly started it.
Dogfood without insider help
- Start in a disposable repository with only the public documentation.
- Use a person or agent without implementation context.
- Record every guess, side-scroll, unexplained prerequisite, redundant flag, and manual file edit.
- Fix the product surface, not merely the documentation.
- Test new installs, existing installs, repeated runs, upgrades, missing prerequisites, cancellation,
narrow terminals, and noninteractive automation.
- Add regression tests for the exact ergonomic contract: short recipes exist, hidden defaults do
not, bootstrap is idempotent, existing files survive, and documented commands really execute.
Completion standard
- The first useful human command is memorable and short.
toolortool helpreveals the everyday command set.- Normal operation does not require internal paths or copied boilerplate.
- Automation remains fully expressive and deterministic.
- README examples lead with human commands and move full flags near the end.
- The clean-room path has been executed, not merely reasoned about.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: zacharygcook
- Source: zacharygcook/agent-skills
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.