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/dustinvk/wherefore/slatenpx skills add DustinVK/wherefore --skill slategit clone --depth 1 https://github.com/DustinVK/whereforeWrote 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/dustinvk/wherefore/slate)<a href="https://agentmods.dev/skills/dustinvk/wherefore/slate"><img src="https://agentmods.dev/badge/skills/dustinvk/wherefore/slate.svg" alt="Measured on agentmods" height="20"></a>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 | $0.00154 | $0.03916 |
| Opus 5 | $0.00077 | $0.01958 |
| Sonnet 5 | $0.00031 | $0.00783 |
| Haiku 4.5 | $0.00015 | $0.00392 |
Grade C, and why
slate scanned grade C with 1 finding 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.
Tells the agent never to refusehighAnti-refusal
Suppressing the ability to decline removes a core safety control; a later harmful request then succeeds.
Q-NNN and ask whether that question should be resolved via `resolve` first. Do not refuse the transition. How it starts
The opening of the file, as written. The whole thing — 272 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Wherefore: slate
Operate the wherefore plan collection: forward-looking work items, one file each,
tracking what is committed and how far along it is. A plan item is a commitment, not
a decision. Decisions (the why) live in log/ and are owned by capture; open
questions live in questions/. This skill writes only wherefore/plan/, never
log/ or questions/.
The skill is one verb with four intents, read from the request: open a new item, advance one, drop one, or read what is in flight. The real work of open is decomposition: break the item into checkboxes concrete enough to actually check off, and push the user for specifics rather than writing vague steps. A plan item nobody can act on is worse than none.
No em dashes. Periods, commas, colons, semicolons, or parentheses instead. Firm project rule.
Never delete anything under a wherefore/ data dir. Retire, do not delete.
Storage layout
Plan items live under a repo-relative wherefore/ directory:
wherefore/
├── topics.md # controlled tag vocabulary (areas + topics)
└── plan/
├── README.md # the item format (not an item; ignored by the loader)
└── P-NNN-short-slug.md # one file per plan item (ID prefix + scannable slug)
The loader globs plan/P-*.md, so only P-item files are collected; README.md and
any other doc in plan/ is ignored. The id frontmatter field is authoritative and
drives the item's identity, exactly like Q-NNN; the filename slug is browsability
sugar and cannot cause a collision. If wherefore/plan/ does not exist, create it
(the seed command scaffolds plan/ and its README.md on a fresh repo); never
invent a second location.
Frontmatter
Write every item with this frontmatter, in this key order (matching plan/README.md
so diffs stay clean). Omit optional keys that have no value rather than emitting them
blank.
---
id: P-001 # authoritative, P + zero-padded number
title: Ship the 0.1.1 patch # short human title
status: todo # todo | doing | done | dropped
created: 2026-06-20 # YYYY-MM-DD, set once on open
updated: 2026-07-03 # YYYY-MM-DD, set on ANY write to the item (see below)
area: dashboard # single area, reuse topics.md Areas; optional
topics: [release] # inline flow list, reuse topics.md Topics; omit when empty
milestone: M1 # milestone this serves, defined in wherefore/ROADMAP.md; optional
decision_ref: 2026-07-03-companion-plan-collection # originating/superseding decision(s); optional
question_ref: Q-007 # a single open question this item is blocked on; optional
answers: Q-009 # a single question this item is the work of answering (spike); optional
dropped_reason: > # why, when status is dropped; optional
Short reason kept for history.
---
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 · 272 lines · 154 tokens per session scan C 8df16825eda2
slate is a skill published in the GitHub repository DustinVK/wherefore (1 stars, last pushed 1mo ago), licensed MIT. It adds 154 tokens to every session and 3,916 once invoked, about $0.0008 per session on Opus 5. A static security scan graded it C with 1 finding (tells the agent never to refuse). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
decision-backfill
Use when auditing an existing codebase, documentation set, plans, RFCs, or git history for architecture decisions that were made but never recorded as ADRs, and when triaging potential records before drafting them.
decision-memory
Use when planning, designing, reviewing, or changing code in a repository that keeps ADRs (usually docs/adr) — to load the decisions that already govern the work, check a plan or diff against them, or record a new decision. Also use when a choice feels already-settled and you cannot find where it was settled.
bootstrap
Scaffold or retrofit documentation-led conventions (AGENTS.md, CLAUDE.md, CONVENTIONS.md, ADR catalogue, plan/ queue, agent/ coordination) into a repo. Use when the user asks to "set up conventions", "bootstrap ADRs", "scaffold the documentation-led layout", "add AGENTS.md and a plan queue", or invokes /bootstrap.…
actual
Feature-complete companion for the actual CLI, an ADR-powered CLAUDE.md/AGENTS.md generator. Runs and troubleshoots actual adr-bot, status, auth, config, runners, and models, plus the Actual AI platform surface: login, logout, whoami, and advisor (org-scoped architecture Q&A). Covers all 5 runners (claude-cli…
code-review
Review pull requests in adrkit for actionable defects and conflicts with governing architecture decisions. Use during Copilot code review to inspect changed paths, retrieve relevant ADR context through the adrkit MCP server, and produce evidence-backed inline findings.
adr-integration
This skill should be used when the user asks about "ADR integration", "ADR CI/CD", "ADR tooling", "ADR automation", "export ADRs", "ADR documentation site", or needs guidance on integrating ADRs with CI/CD, documentation sites, and other tools.