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/kreek/consult/proofnpx skills add kreek/consult --skill proofgit clone --depth 1 https://github.com/kreek/consultWhat 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.00021 | $0.02783 |
| Opus 5 | $0.00010 | $0.01392 |
| Sonnet 5 | $0.00004 | $0.00557 |
| Haiku 4.5 | $0.00002 | $0.00278 |
Grade A, and why
proof 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 2d 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 — 223 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Proof
Iron Law
NO ENGINEERING CLAIM WITHOUT A NAMED PROOF.
Prove every non-trivial claim before you call it done. A proof is a named check that would fail if the claim were false: point to that check, or mark the claim unproven. "The tests pass" doesn't count until you can say which test would break if you were wrong.
When to Use
As a completion gate, before any reply that says or implies the work is done, fixed, ready to commit, ready for a PR, or passing:
- Name the claim and the check that backs it. If there is no check, say what is
unproven and which evidence is missing; don't just write
unprovenand move on.
As the main skill, when the task is the proof itself:
- Writing or reviewing behavior tests for a feature, bug fix, refactor, flaky test, or any untested behavior.
- Deciding what needs coverage and which boundary the test should enter through.
- Turning an agreed spec, domain model, contract, or root-cause finding into Proof Contracts and runnable checks.
When NOT to Use
- Formatting, typo fixes, or file moves that change no behavior, data, or contract.
- Mechanical refactors with no behavior surface (renames, file moves,
comment-only edits) that tooling or a direct look at the result already
confirms. If the refactor changes something a caller can observe, you still
need
proof. - Chasing a bug whose cause you haven't pinned down. Use
debuggingfirst; come back once you have a claim to prove. - Judging design, complexity, naming, or structure. Use
code-review. Reach forproofonly when the open question is whether the evidence is enough. - Load testing, profiling, or benchmarks. Use
performance. - Setting up the test runner, linter, or typecheck baseline. Use
scaffolding.
Where Proof Enters
Test at boundaries. A boundary is any point where one part of the system hands data to another and the receiver expects a certain shape: between modules, layers, or processes. (This skill also calls these handoffs.) Put the proof where the data's shape, value, state, or error visibly changes. A good boundary test passes against any implementation that keeps the same contract, so it survives refactors.
What ships with it
5 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.
- 2d ago First seen · 223 lines · 21 tokens per session scan A df5498dbefbb
proof is a skill published in the GitHub repository kreek/consult (1 stars, last pushed 7d ago), licensed MIT. It adds 21 tokens to every session and 2,783 once invoked, about $0.0001 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-31.
Other skills, from other repositories
batch
Execute batch operations on multiple files in parallel. Automatically discovers files, splits into chunks, and processes with parallel worker agents. Use /batch followed by operation and file pattern.
notion
Notion API for creating and managing pages, databases, and blocks. Use when the user wants to create a Notion page, query a Notion database, update Notion properties, search Notion, add content to Notion, manage Notion blocks, or interact with Notion data sources and workspaces via the API.
review
5-pass structured code review — correctness, security, performance, readability, consistency.
scaffold
Project-aware file generation. Reads existing codebase conventions (naming, structure, imports, exports, test patterns) then generates new files that match exactly. Wires generated files into the project's registration points.
marshal
Meta-orchestrator that takes any direction — broad, specific, or vague — and autonomously chains skills and context into actionable work. Gathers context from codebase, docs, and memory. Only asks the user when it genuinely cannot proceed. Single-session orchestrator.
organize
Repository structure only: directory layout, file placement, naming conventions, and where-does-this-belong decisions. Detects the project's convention, audits files against it, and executes move plans with import-path updates. Never changes code inside files beyond the import updates a move forces; in-file…