How this command is triggered — by the user, by Claude, or both
Slash command
/scout-qa:initThe summary Claude sees in its command listing — used to decide when to auto-load this command
# /scout:init
Scaffold the `context/qa/` directory with QA context files, learnings, and autonomy config.
## Steps
1. **Check if `context/qa/` already exists.** If it exists and contains files, warn: "QA context directory already exists. Will only create missing files." If it doesn't exist, create it.
2. **Create the directory structure:**
3. **For each file**, read the corresponding template from `${CLAUDE_PLUGIN_ROOT}/context-templates/qa/` and write a copy into the project's `context/qa/` directory. Skip any files that already exist.
4. **Auto-detect and pre-fill `frameworks.md`:...Scaffold the context/qa/ directory with QA context files, learnings, and autonomy config.
Check if context/qa/ already exists. If it exists and contains files, warn: "QA context directory already exists. Will only create missing files." If it doesn't exist, create it.
Create the directory structure:
context/qa/
├── test-strategy.md # Testing philosophy
├── conventions.md # Test naming, placement, assertion style, quality bar
├── critical-paths.md # Business-critical code paths
├── coverage-policy.md # Coverage thresholds by tier, exemptions
├── ownership.md # Who owns test coverage for which code areas
├── frameworks.md # Framework config (auto-populated)
├── risk-config.yaml # Risk weights and thresholds
├── autonomy.yaml # Agent permission config
└── learnings/
├── what-works.md # QA patterns proven effective
└── what-doesnt.md # QA anti-patterns to avoid
For each file, read the corresponding template from ${CLAUDE_PLUGIN_ROOT}/context-templates/qa/ and write a copy into the project's context/qa/ directory. Skip any files that already exist.
Auto-detect and pre-fill frameworks.md:
qa-context-loaderAdd context/qa/agent-state.json to .gitignore. Check if .gitignore exists:
context/qa/agent-state.json is already listed. If not, append it..gitignore with context/qa/agent-state.json.Output a summary:
Scout QA initialized.
Created:
context/qa/test-strategy.md ......... Template (fill in your testing philosophy)
context/qa/conventions.md ........... Template (naming, placement, assertions, quality bar)
context/qa/critical-paths.md ........ Template (list your high-risk code areas)
context/qa/coverage-policy.md ....... Template (coverage thresholds and exemptions)
context/qa/ownership.md ............. Template (who owns test coverage where)
context/qa/frameworks.md ............ Auto-detected (Jest, npx tsc, ESLint)
context/qa/risk-config.yaml ......... Defaults (standard risk weights)
context/qa/autonomy.yaml ............ Defaults (all actions autonomous)
context/qa/learnings/what-works.md .. Template (patterns that catch bugs)
context/qa/learnings/what-doesnt.md . Template (anti-patterns to avoid)
Added to .gitignore:
context/qa/agent-state.json
Next steps:
1. Fill in context/qa/critical-paths.md — what code areas are business-critical?
2. Fill in context/qa/conventions.md — how does your team write tests?
3. Run /scout:risk to see your current risk score
4. Run /scout:doctor to check readiness
| Target | Template source |
|---|---|
context/qa/test-strategy.md | ${CLAUDE_PLUGIN_ROOT}/context-templates/qa/test-strategy.md |
context/qa/conventions.md | ${CLAUDE_PLUGIN_ROOT}/context-templates/qa/conventions.md |
context/qa/critical-paths.md | ${CLAUDE_PLUGIN_ROOT}/context-templates/qa/critical-paths.md |
context/qa/coverage-policy.md | ${CLAUDE_PLUGIN_ROOT}/context-templates/qa/coverage-policy.md |
context/qa/ownership.md | ${CLAUDE_PLUGIN_ROOT}/context-templates/qa/ownership.md |
context/qa/frameworks.md | ${CLAUDE_PLUGIN_ROOT}/context-templates/qa/frameworks.md |
context/qa/risk-config.yaml | ${CLAUDE_PLUGIN_ROOT}/context-templates/qa/risk-config.yaml |
context/qa/autonomy.yaml | ${CLAUDE_PLUGIN_ROOT}/context-templates/qa/autonomy.yaml |
context/qa/learnings/what-works.md | ${CLAUDE_PLUGIN_ROOT}/context-templates/qa/learnings/what-works.md |
context/qa/learnings/what-doesnt.md | ${CLAUDE_PLUGIN_ROOT}/context-templates/qa/learnings/what-doesnt.md |
npx claudepluginhub anicol/scout-qa --plugin scout-qa/initInitializes beads issue tracking database in current directory with optional prefix (defaults to dir name). Shows DB location, prefix, workflow overview, next steps; displays stats if already set up.
/initInitializes guided UI design for dashboards, apps, and tools. Assesses intent, proposes styles with rationale, builds components, and offers to save patterns.
/initSets up Repowise for the current codebase. Installs if needed, asks about indexing preferences (index-only or full with LLM), and runs the indexing process.
/initScaffolds a kubb.config.ts by running the Kubb init CLI. Accepts flags for an OpenAPI spec input, output directory, and comma-separated plugins.
/initDownloads and installs the notification binary for the claude-notifications plugin on macOS, Linux, or Windows, fetching the latest from GitHub Releases.
/initInitializes or re-boots llmdoc/ directory structure, runs multi-themed project investigations with investigator, and generates initial stable docs via recorder.