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 capitalone/context-specs --skill intentgit clone --depth 1 https://github.com/capitalone/context-specsWrote 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/capitalone/context-specs/intent)<a href="https://agentmods.dev/skills/capitalone/context-specs/intent"><img src="https://agentmods.dev/badge/skills/capitalone/context-specs/intent/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/capitalone/context-specs/intent"><img src="https://agentmods.dev/badge/skills/capitalone/context-specs/intent.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
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.00109 | $0.02488 |
| Opus 5.5 | $0.00044 | $0.00995 |
| Sonnet 5.5 | $0.00022 | $0.00498 |
| Haiku 4.5 | $0.00011 | $0.00249 |
Grade A, and why
intent 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 1mo 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 — 171 lines — stays where its author put it; the contents beside it link to each section on GitHub.
intent
Run a conversation that turns an idea into two coupled artifacts:
prds/<feature>/prd.md— the prose: why this exists and what "done" means.prds/<feature>/run-prd-test.sh— the executable: how we'll know it's done. Exits 0 when the feature is built.
These are born together from one conversation. The harness contracts only on the runner's exit code, so the conversation is not finished until "done" is executable.
You are a coordinator, not a knowledge holder. The domain knowledge — how this
project verifies things, what its constraints are, where similar code lives — belongs
to the Expert (.claude/skills/expert/). You load it, query it, and let it shape
the artifacts. You own the conversation and the discipline, not the answers.
This is the one interactive skill in the harness. Every other skill runs headless. Here a human is present: explain what you're doing as you go, so they finish with the same understanding you have and can tweak everything.
The philosophy (read this; teach it as you work)
You and the user must share one understanding of what / why / how. These nine principles are that understanding. Don't recite them — embody them, and surface the relevant one in plain language when it explains a move you're making.
- P1 — Two coupled artifacts, born together. Prose drifts; "done" becomes an
argument. An exit code doesn't.
prd.mdsays why and what;run-prd-test.shsays how we'll know. Neither is finished without the other. - P2 — Elicit outcomes, not solutions. People arrive describing a solution ("add a
/api/searchendpoint"). Your job is to surface the need underneath ("readers can't find a post by title") and the observable outcome that would satisfy it. Ask "why is that?"; resist solutionizing. - P3 — "How would we know that's true?" is the throughline. This is the hinge question. Asked of every desired outcome, it converts a wish into both a sharp prose criterion and a concrete check at the same time. The prose bullet and the runner check are two views of one answer.
- P4 — Behavior, not implementation. Criteria test what's observable from outside — routes, output, files, returned data, DB state — never internal call shapes. This leaves how to spec-planning and keeps the runner robust when the implementation changes.
- P5 — The runner is assembled from typed checks. Each criterion is deterministic (cheap shell — file/route/build/grep; runs first), fuzzy (an LLM-as-judge on the residue; cheap by default — small model, low temperature, focused rubric), or a project-native test. The Expert chooses the shape from what the project already does.
- P6 — "Failing for the right reason" is the proof. Run the runner against today's (unbuilt) code. Each check must fail because the behavior is absent — not because the script has a typo, a missing dependency, or an unrelated error. A wrong-reason failure means the extraction is wrong; fix it. This is the empirical proof that the prose and the runner actually correspond.
- P7 — Two rhythms, one understanding. Some users want to watch the runner take shape as they talk (interleaved); others want to agree the prose first, then switch gears to the runner. Both are fine because both rest on P1–P6. Name the choice early, then follow the user's lead.
- P8 — Coordinator, not knowledge holder. Constraints, conventions, verification shape, and prior art come from the Expert. With no Expert yet (a fresh project), ground in a direct codebase scan instead and lean a little more on LLM-judge checks — see "No-Expert bootstrap".
- P9 — Transparent, shared understanding. Explain → confirm → act → take feedback. The user ends able to read both artifacts and know why every line is there.
What ships with it
4 files 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.
- 1mo ago First seen · 171 lines · 109 tokens per session scan A 44433d9b962e
intent is a skill published in the GitHub repository capitalone/context-specs (44 stars, last pushed 1mo ago), licensed Apache-2.0. It adds 109 tokens to every session and 2,488 once invoked, about $0.0004 per session on Opus 5.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
local-ai-agents
Build local-first AI agents that run entirely on a developer workstation with Microsoft Foundry Local and Qwen function-calling models. Covers Small Language Models (SLMs), the OpenAI-compatible local endpoint, sandboxed local tools, local RAG with Chroma, local MCP servers, hybrid cloud/local routing, and the…
next-cache-components-adoption
Turn on Cache Components in a Next.js app and resolve the blocking routes it surfaces. Use when the user wants to enable, adopt, or migrate to Cache Components, flip the cacheComponents flag, work through a flood of blocking-prerender / instant validation errors, run the cache-components-instant-false codemod, or…
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…
insight-error-page
Write or audit an insight-kind error page for the Next.js dev overlay. Use when creating a new errors/ .mdx page, auditing an existing one, or checking that a page matches the framework fix cards. Covers page structure, title alignment, FixCard cards with Copy prompt button, code snippets, terminology verification…
next-cache-components-optimizer
Optimize the meaningful UI available immediately from a Next.js route on an initial load (hard navigation) or named client-side navigation (soft navigation). Encode the goal as a failing @next/playwright instant() e2e and work it to green, one verified route and entry point at a time; the shipped test then guards…