open source · local-first · MIT
Tell foolscap what needs doing. It plans the work, runs Claude Code, Codex or OpenCode on your machine, then reads the test output and the diffs itself. A result is evidence — not the agent's word for it.
how it works
Say what you want. foolscap writes the brief, picks an agent, and watches what actually happens — the commands it ran, what they printed, which files changed. That evidence, not the agent's summary, decides what happens next.
“Make the two failing replay cases pass, then have a second agent review it.”
Claude Code gets a brief naming the real files. It edits, then runs the suite.
foolscap reads the failure and dispatches a repair with that output attached.
A different agent reviews the diff, read-only, and returns a verdict.
The card moves only when the evidence says so. Every step is on the receipt.
Run several agents at once. foolscap drives them, so it knows which one is blocked on you, whose tests just went red, and which to leave alone. Press n for the next thing that needs you.
Every session any agent has run on this machine, rendered as a document you can read top to bottom, search, and export as one HTML file.
Every prompt you've ever sent, deduplicated, with which ones actually worked — read from what happened next. No model call, no guessing.
Every run is metered against its own budget. Agents that don't report cost are marked unknown rather than counted as zero.
supported agents
Each one is a single adapter. If your agent writes a log, foolscap can be its notebook — and adding one is the best first contribution.
| Agent | Run it | Read its history |
|---|---|---|
| Claude Code | ✓ natively | ✓ |
| Codex CLI | ✓ over ACP | ✓ |
| OpenCode | ✓ over ACP | ✓ |
| DeepSeek Harness | — | ✓ |
| Devin | ✓ in the cloud | ✓ recorded here |
| Antigravity | ⚠ unverified | help wanted |
| Warp | ⚠ unverified | — |
“Unverified” means the launch path is written from the vendor's docs and has never been run against a real install. We'd rather say so than show a tick.
install
Reading your agent history needs no configuration and no key at all. The coordinator and voice are bring-your-own-key.