A saddle for your coding harness
Sign your agent to a contract so it does what you want.
Sawbuck is a deterministic, zero-LLM check that re-proves every win from your agent's source edits alone. A green that came from editing the test, the grader, or the config gets caught and reverted. It enforces the contract. It does not steer the agent.
Node 18+. One line to attach: npm i -g sawbuck && sawbuck attach
/ Deterministic
No model in the check. It costs nothing to run and cannot be argued out of its verdict.
/ Catches the fake green
The win that passed only because a test got weakened, not because the code got fixed.
/ Clean on and off
Attach to any repo in one line. Detach and the repo is exactly as it was.
Watch it catch a faked win.
Your agent makes the suite pass. Sawbuck re-runs the proof from the source edits alone.
$ npm i -g sawbuck
$ sawbuck attach
saddle cinched. watching every commit. nothing written to your tree.
$ git commit -m "make the suite pass"
sawbuck: re-proving the win from the source edits alone...
verdict: gamed (the test was weakened, the code was not fixed)
reverted. the green did not survive verification.
$ git commit -m "actually fix the null case"
verdict: verified (the win holds from source alone. kept.) How it works
Three moves. You write the contract, or let Sawbuck draft one from your repo's own git history: what has actually broken here.
Attach
One command. Sawbuck rides your git hooks or your Claude Code loop and touches nothing in your working tree.
It watches
On every commit, the check re-proves the win from the source alone. Real wins pass. Faked ones are caught and flagged.
It remembers
Next time your agent touches a file that burned you before, Sawbuck hands over the warning first.
Two doors, same product
Honest feedback on every attempt
Attach in one line. Free. See which of your agent's wins are real and which only looked green.
A green that means something
Drop the check into the pipeline. A build goes green only if the win survives verification.
Red-teamed across 9 language ecosystems. Sawbuck catches every out-of-source goalpost move: edited tests, mocked graders, swapped golden files, suppressed lint and security rules.
It is honestly blind to a cheat that lives inside the source itself, and that limit is written in the docs, not hidden.
Put your coding agent under contract.
A win counts only if it survives verification, not because the agent said so.