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 skills/genkovich/sdd/roadmapnpx skills add genkovich/sdd --skill roadmapgit clone --depth 1 https://github.com/genkovich/sddWhat 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.00191 | $0.01732 |
| Opus 5 | $0.00096 | $0.00866 |
| Sonnet 5 | $0.00038 | $0.00346 |
| Haiku 4.5 | $0.00019 | $0.00173 |
Grade A, and why
roadmap 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 3d 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 — 109 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Skill: roadmap
The decomposition layer between the idea and the per-feature pipeline. SDD builds one feature
at a time under docs/features/<slug>/; roadmap answers the question that comes before any
feature: how does the overall idea break into steps, what depends on what, and in which order —
and in what parallel lanes — do we walk them. One living docs/roadmap.md, repo-level utility
(like survey).
Three load-bearing properties, in priority order:
- Steps — the idea decomposed into incremental, source-anchored slices (each row cites the
brief/PRD section it comes from; size XS–XL per
../_shared/size-matrix.md). - Dependencies — an explicit graph: every edge has a one-line reason (data model, UI zone, auth precondition). No edge without a real blocker.
- Execution path — waves that respect the graph: wave N only contains steps whose deps are in earlier waves, and steps inside one wave are conflict-safe in the codebase (different modules / UI zones — so they can run as parallel worktree lanes). Each wave row names the zone.
Not here: RICE or any scoring (order IS the prioritization), dates (a decomposition, not a
promise), solution detail (lives in the feature's spec). Question phrasing →
../_shared/ask-style.md; prose follows artifact_language, table
structure and the Status values stay English → ../_shared/artifact-language.md.
Owner
Whoever owns product direction (PM / lead / the solo maintainer).
Inputs
- The idea source:
docs/idea-brief.md/ a PRD / a vision note (ask which, if several). - (Optional)
docs/design-system.md,docs/architecture-map.md— zones for conflict-safety. - (Optional) existing
docs/features/*/+ existingdocs/roadmap.md— current statuses.
Protocol
- Locate sources. Find the idea source (
docs/idea-brief.mdfirst, then PRD candidates). None found → say so and STOP: a roadmap without a source is fiction. Ifdocs/roadmap.mdexists, this run updates it (statuses, new steps, re-waving) — never silently rebuilds. - Dispatch the decomposer. Spawn the
roadmapperagent —subagent_type: "sdd:roadmapper"(fallbackgeneral-purpose, same prompt, per../_shared/agent-roster.md) — naming the source paths, the size heuristics pointer, and (updates) the current roadmap + feature statuses. It returns the full draft: steps table · mermaid graph · waves (+ ≤5 open decomposition questions). - Review with the owner. Present the draft in prose (steps + waves; the mermaid goes to
the file, never dumped raw to the terminal — same rule as
design). Then oneAskUserQuestioncall: (a) steps to merge/split/drop (multiSelect over flagged candidates- the agent's open questions), (b) confirm the wave layout or name what must move. Apply.
- Write. Fill
./templates/roadmap.md→docs/roadmap.md; setupdated_at. - Structural self-check — per
../_shared/self-check.md, re-read from disk, verify 4 items: (1) every step row carries a source anchor; (2) everyDepends onid resolves to an existing step id, and no step sits in a wave ≤ any of its dependencies' waves; (3) statuses ∈ {idea, spec'd, building, shipped} and every spec'd+ step links an existingdocs/features/<slug>/(test -d); (4) zero dates outside Shipped (\b20\d\d-scan) andupdated_at= today. Fix + re-check ≤2 cycles; surface the rest. - Commit + handoff. Propose commit
roadmap: <what changed>. Emit the stage-handoff block per../_shared/handoff.md(utility variant) — What I did (incl. «self-check: 4/4 pass») + Review (docs/roadmap.md) + Run next:/sdd:specify <first unblocked step>(greenfield) or resume your backbone stage.
What ships with it
1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
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.
- 3d ago First seen · 109 lines · 191 tokens per session scan A f0633356fd15
roadmap is a skill published in the GitHub repository genkovich/sdd (118 stars, last pushed 14d ago), licensed MIT. It adds 191 tokens to every session and 1,732 once invoked, about $0.0010 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-30.
Other skills, from other repositories
systematic-debugging
Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes.
brainstorming
You MUST use this before any creative work - creating features, building components, adding functionality, or modifying behavior. Explores user intent, requirements and design before implementation.
auto-perf-optimize
Run agent-driven VS Code performance or memory investigations. Use when asked to launch Code OSS, automate a VS Code scenario, run the Chat memory smoke runner, capture renderer heap snapshots, take workflow screenshots, compare run summaries, or drive a repeatable scenario before heap-snapshot analysis.
chat-perf
Run chat perf benchmarks and memory leak checks against the local dev build or any published VS Code version. Use when investigating chat rendering regressions, validating perf-sensitive changes to chat UI, or checking for memory leaks in the chat response pipeline.
chat-pet-sprite-creation
Use when creating or changing VS Code chat pet sprite art, sprite sheets, state animations, eye treatments, Stable/Insiders variants, or pet transitions under src/vs/workbench/contrib/chat/browser/widget/media/chatPet.
cpu-profile-analysis
Analyze V8/Chrome CPU profiles (.cpuprofile) and DevTools trace files (Trace-.json). Use when: profiling performance, investigating slow functions, comparing code paths, finding bottlenecks, analyzing timeToRequest, understanding call trees from sampling profiler data, analyzing layout/paint/rendering, investigating…