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 skills add OutlineDriven/outline-driven-development --skill clarifygit clone --depth 1 https://github.com/OutlineDriven/outline-driven-developmentWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/outlinedriven/outline-driven-development/clarify)<a href="https://agentmods.dev/skills/outlinedriven/outline-driven-development/clarify"><img src="https://agentmods.dev/badge/skills/outlinedriven/outline-driven-development/clarify.svg" alt="Measured on agentmods" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 1 finding, up to medium
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- medium Excessive Agency · line 25 Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.Fix: Add human-in-the-loop confirmation for destructive, irreversible, or high-impact operations. Never auto-execute commands that modify files, send data, or alter system state.
What 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.1 | $0.00058 | $0.01227 |
| Opus 5 | $0.00029 | $0.00613 |
| Sonnet 5 | $0.00012 | $0.00245 |
| Haiku 4.5 | $0.00006 | $0.00123 |
Grade A, and why
clarify 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 4d 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 — 47 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Clarify
Contract
| Field | Bound contract |
|---|---|
| Trigger | 'Clarify', 'what is ambiguous', 'find gaps in this spec', or an underspecified request. |
| Authority | Read-only analysis: no file, VCS, credential, paid, published, deployed, or remote mutation. Everything the skill produces is chat text. |
| Side effect | Chat output only: findings, recommended defaults, and questions. |
| Done | No open manual ambiguity remains — each is answered or discharged as a non-issue with a one-line reason — the finding set is MECE, and the restatement matched the target or its mismatch was surfaced as the first finding. |
Inputs
- Scan target, in strict precedence: an explicit argument (
clarify <text-or-path>), else the most recent user request when it reads as a spec or task, else the open conversation context. No other input is required; the text-or-path argument is optional.
Procedure
- Select the target by the precedence above and read it once for the whole run. Done when: the target is selected and read once.
- Restate the read before scanning: write the target back as a single paraphrased instruction, including what it does not ask for, and compare it against the target. A mismatch is the first finding and outranks every other finding, because a correct answer to a misread request is still wrong. When the restatement matches, carry it silently — it becomes output only if a fork survives. Done when: the restatement is written and compared, and any mismatch is surfaced as the first finding.
- Pre-scan facts before surfacing anything to the user: resolve every ambiguity that is actually an environmental or codebase fact by direct lookup (search, read, or a subagent) — never ask the user for something the repo can answer. Each resolved fact is recorded as tier
autowith its basis, reported compactly, and never becomes a question. Done when: every resolvable-by-lookup ambiguity is resolved as tierautowith its basis. - Classify every remaining finding with exactly one certainty tier:
auto— an unambiguous project convention resolves it; record the resolution and basis, then proceed.gated— a reasonable default exists; surface it as a recommendation that locks unless the user overrides it.manual— evidence cannot settle genuine intent; surface a non-locking recommendation based on the least irreversible standard choice, then ask.fyi— worth noting, not worth blocking on; list it, never ask. Done when: every remaining finding has exactly one certainty tier assigned.
- Enforce MECE before emitting: merge or drop findings that ask the same thing as, or overlap, another finding. Done when: the finding set is MECE with no overlaps.
- Emit the findings report (see Output). The report is the deliverable; the user overrides only the
gated/manualrows they disagree with. Done when: the findings report is emitted grouped by tier withmanuallast. - Ask only the manual tier: one single-select question per
manualfinding with its non-locking recommendation marked, at most four questions per fire. At zeromanualfindings, ask nothing — the report alone is the result. Done when: manual questions are fired (at most four) or zero manual findings means no questions. - After the user's overrides, re-scan the target once; stop when the re-scan adds no new
manualfinding. Record every settled finding as overridden, answered, or discharged as a non-issue with a one-line reason. Done when: the re-scan adds no new manual finding, and every settled finding is recorded. - List any project-specific term the user settled during clarification as a CONCEPTS.md candidate in the report. Record the candidate; write no files. Done when: settled terms are recorded as CONCEPTS.md candidates.
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.
- 4d ago First seen · 47 lines · 58 tokens per session scan A baba8327340f
clarify is a skill published in the GitHub repository OutlineDriven/outline-driven-development (52 stars, last pushed 2d ago), licensed Apache-2.0. It adds 58 tokens to every session and 1,227 once invoked, about $0.0003 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-09-03.
Other skills, from other repositories
audit-project
Run an iterative multi-agent code audit until critical and high findings are resolved. Use when the user says "audit my code", "find all the bugs", "deep code audit", "iterative review", or "review until clean".
duet
Use when the user invokes /duet, says "pair with me", or faces aesthetic, architectural, or irreversible decisions.
goal-prompt-drafting
Use when asked to draft copy-ready /goal objectives for long-running agents; returns one normalized one-line objective with measurable end state, grounded proof, easy-out invariants, a stop clause, and a Missing list. Not for source or remote-system changes.
handoff-prompt
Use when the user asks for a handoff, delegation, or clipboard-ready prompt for another agent: a standalone path-free prompt copied to the clipboard, confirmed by title. Not for session-snapshot briefs — use handoff; never remote, credential, publish, deploy, or irreversible.
publish-branch
Use when asked to publish the checked-out branch: commit and push it on whatever branch it is, the default branch included. Not for creating branches, PRs, force pushes, or pushing any other branch; when the request excludes the default branch, use commit-push-current.
drill
Use when a concept needs practising rather than explaining: run a scaffolded exercise from worked example to independent problem, quiz the learner, run spaced recall over what they cleared, or probe for the gaps blocking what they want next. For explanation, use explain-concept; for an end-to-end build, use capstone.