Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add commands/zircote/human-voice/voice-setupgit clone --depth 1 https://github.com/zircote/human-voiceWhat it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00010 | $0.00626 |
| Opus 5 | $0.00005 | $0.00313 |
| Sonnet 5 | $0.00002 | $0.00125 |
| Haiku 4.5 | $0.00001 | $0.00063 |
Grade A, and why
voice-setup scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 70 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Human Voice Setup
Interactive configuration wizard. Creates ~/.human-voice/config.json — the unified config for both AI pattern detection and voice elicitation.
Process
-
Check for existing config: Read
~/.human-voice/config.jsonif it exists. Ask: "Configuration exists. Update or replace?" -
Detect project structure: Scan for content directories (
docs/,_posts/,content/,_docs/), markdown files, and static site generators. -
Gather preferences via
AskUserQuestion:Content scope: Which directories and file extensions to scan.
Detection tiers: Which AI pattern tiers to enable (character, language, structural, voice).
Fix behavior: Dry-run by default? Backup files?
Interview defaults: Override estimated questions, format streak limit, quality thresholds?
-
Write config: Run
python3 -c "from lib.config import save_config; import json; save_config(json.loads('{...}'))"to write~/.human-voice/config.jsonatomically. -
Verify: Run
python3 -m lib.config showto display the saved config. -
Optional initial scan: Offer to run
/human-voice:voice-reviewon detected content.
Config Structure
The config file is JSON, schema-validated against question-bank/schemas/config.schema.json:
{
"detection": {
"extensions": [".md", ".mdx", ".txt"],
"content_directories": ["docs/"],
"ignore": ["node_modules/", "vendor/"],
"character_patterns": { "enabled": true, ... },
"language_patterns": { "enabled": true, ... },
"structural_patterns": { "enabled": true, ... },
"voice_patterns": { "enabled": true, ... },
"fix": { "dry_run_by_default": true, ... },
"output": { "verbosity": "normal", ... }
},
"interview": {
"session_storage": "~/.human-voice/sessions",
"estimated_questions": 70,
"quality": { ... },
"scoring": { ... },
"profile": { ... }
}
}
To view current config: python3 -m lib.config show
To get a specific value: python3 -m lib.config get interview.quality.speed_threshold_ms
To reset to defaults: python3 -m lib.config reset
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2d ago First seen · 70 lines · 10 tokens per session scan A f158e42c5520
voice-setup is a command published in the GitHub repository zircote/human-voice (10 stars, last pushed 1mo ago), licensed MIT. It adds 10 tokens to every session and 626 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other commands, from other repositories
wiki-init
Initialize a new LLM Wiki in the current directory. Creates the full directory structure, config, and template files.
check-invariants
Runs only the tree CRDT invariant test battery in outl-core. Faster than /check, focused on what can break sync.
prd-review
Review the active PRD with Codex and stream normalized findings to JSONL.
issue-amend
Re-snapshot the active issue's scope from the spec, clear verified and reviewed receipts, and record the change as a permanent amendment.
q-research
Read the research-mode skill's SKILL.md for the full ruleset before proceeding. Follow all constraints, the source lookup cascade, the token budget, and the "what counts as cited" rules exactly.
claude-cmd-status
A Claude Code slash command. OpenCode does not read Claude commands.