Run, Patch, Prove attacks a small helper agent 12 different ways, shows which attacks got through, fixes it, and runs the same 12 attacks again. The two results are reports you can check yourself, right on this page.
Everything below runs in your browser. Nothing is sent anywhere. Code on GitHub
The agent is a helper that reads files, runs tools and answers questions. Here it is before any fix. Each attack is one small harmless test, for example asking it to hand over a secret it should keep.
Nothing about the attacks changed. Only the agent did. Under each attack you can read, in plain words, what the fix is.
Each run ends in a report. The report carries a seal, a fingerprint made from everything written in it. Your browser works out the fingerprint again right now and compares. Change anything in the box, even one letter, and the check fails.
You can also click in the box and type anything yourself. Spaces and line breaks do not count. Letters and numbers do.
How the check works: take the report without its seal, put the keys in alphabetical order, run SHA-256 (your browser's own tool), and compare the result with the seal. The repo has the same check as verify.py so you can run it offline.
| Tool | What it did here |
|---|---|
| Stripe Projects | Created the project and added the CreateOS plan, which put the sandbox key in place (stripe projects init, stripe projects add createos/free). |
| CreateOS Sandbox | A throwaway cloud machine where the broken agent, the 12 attacks, the fixed agent and the sealing all ran (sandbox create, push, exec). |
The results and counts on this page are read from the two sealed reports made in that sandbox (sealed_broken.json and sealed_patched.json). The plain-words descriptions were written by hand.