Free · Claude Code plugin + 7 lessons · Works with Codex
Your coding agent says it's done.
Make it prove it.
Four skills and six small hooks that make the agent run the checks before it finishes, leave your tests alone, find the cause before it patches, own up to shortcuts, and hand you a diff you can review. Install it in two commands and keep working.
In Claude Code
/plugin marketplace add georgehanu/prove-it/plugin install prove-it@prove-itThen /reload-plugins. Codex or another agent? Copy the skills, and for Codex the hooks: install notes.
What changes
- 1It can't stop without running the checks.Edit code, then try to finish with no test, lint or build run since? The Stop hook sends it back with the files and the commands it found. Checks green but no Proof block? Sent back for that too.
- 2It can't quietly weaken a test.Removed assertions, .skip, expect(true).toBe(true), a changed expected value: the edit waits for your approval.
- 3It looks for the cause before it patches.Checkpoint, reproduce, test one hypothesis at a time, prove the cause. After three failed fixes it stops and reports.
- 4It's told about the shortcuts it just took.Empty catch, @ts-ignore, test-only branches, faked returns: flagged with file:line right after the edit.
- 5It hands over a diff you can review.A budget for diff size, a brief that says which lines to read first, and an independent reviewer that needs evidence for every finding.
you Make paginate() also return from and to. Keep it quick. agent [edits src/paginate.js] agent Done! paginate() now returns from and to. hook Prove It: you changed src/paginate.js and no check has run since the last edit. Run the project's checks (found: npm test) and show the result. agent [runs npm test] # pass 17 # fail 0 agent ## Proof - from/to returned -> edited src/paginate.js; existing tests pass - Checks: npm test exit 0 (17 passed, 0 failed) Not verified: the from/to values, no test asserts them yet
Hooks, not hopes
A rule in CLAUDE.md is text the model may skip. A hook runs on every tool call, outside the model. The rules that code can check are hooks.
Short enough to read
Skills are prompts with your agent's permissions. Each of ours is under 120 lines, and the hooks are plain Node with no dependencies. Read them before you install.
Tested, not claimed
npm test runs every hook against more than a hundred inputs shaped like the real ones, Windows paths and Codex patches included.
The lessons
Check it yourself in a minute
git clone https://github.com/georgehanu/prove-it.git
cd prove-it
npm test
Node.js 22 or newer, no install step. Then try the demo tasks with and without the plugin.