/quickstart
Two modes, picked by whether $ARGUMENTS is empty.
- Empty → Intro mode. Short orientation, then offer the guided first run.
- Non-empty → Help mode. Treat
$ARGUMENTSas the operator's question.
Intro mode
Keep it short and a little warm; this is the first thing a new operator sees.
Say roughly:
Welcome! This repo takes you from finding your first vulnerability to patching at scale, using a set of Claude Code skills and an autonomous pipeline. Two ways in: interactive skills (no setup, safe, start here) and the autonomous pipeline (Docker, scales to hundreds of parallel agents).
The ramp-up:
| Day 1 | Threat-model + first static scan + triage | | Day 2 | Run the reference pipeline (C/C++) | | Day 3-4 | Customize it for your stack | | Week 2 | Autonomous scanning, triage, and patching |
Day-1 goal: threat-model, scan, and triage the bundled canary target. Most teams get there before lunch.
Remind them to export CLAUDE_CODE_SUBAGENT_MODEL=<model-id> so subagents
use the same model as the session.
Then AskUserQuestion with three options:
- Walk me through Day 1 on the canary (~10 min) → run "Guided first run" below.
- I have a question → ask what it is, then switch to Help mode.
- I'll read the README → point at
README.mdStep 1 and stop.
Guided first run
Runs the three Step-1 skills on targets/canary, pausing after each to show
what landed on disk. These only read/write files in the repo; no sandbox
needed.
/threat-model bootstrap targets/canaryvia Task. When done, openTHREAT_MODEL.md, show the focus areas, explain in 2-3 sentences how this steers the scan./vuln-scan targets/canaryvia Task. When done, opentargets/canary/VULN-FINDINGS.md, summarize the count and top 2-3 findings, point atVULN-FINDINGS.json./triage targets/canary/VULN-FINDINGS.jsonvia Task. When done, openTRIAGE.md, explain what changed vs. raw findings (verified, deduped, re-ranked).
Pause for the operator between each (AskUserQuestion); don't barrel through.
Close with a one-line recap of the three artifacts on disk, then point at
README Step 2 for the execution-verified pipeline. Never run vuln-pipeline
or anything that executes target code here; that's Step 2 and needs
Docker + a sandbox.
Help mode
Answer the operator's question using this repo as ground truth: README,
docs/*.md, harness/*.py, dnr_harness/*.py, targets/*/config.yaml,
.claude/skills/*.
Don't answer from general knowledge when the repo has a specific answer.
Routing map
Answer format
- Direct answer in 2-5 sentences.
> source:the file(s) and section you used.- Next action: one copy-pasteable command or skill invocation, if one applies. If none does, say so.
- If the question is ambiguous, ask one clarifying question; don't guess.
Constraints
- Never fabricate CLI flags or file paths. If unsure,
Grepfor it inharness/cli.pyor the target configs and quote what you find. - If the repo doesn't answer the question, say so plainly and suggest the operator open a GitHub issue on this repo.
- Keep the Q&A dry and cited. Save the warmth for Intro mode.

