GateBolt
System of record for AI agents

Your agents write the code.
Someone has to answer for it.

Agents declare what they'll touch before they edit. GateBolt proves what they actually did — and seals it in a ledger nobody can rewrite.

Free forever. No credit card.

The shift

Review was built for authors who could explain themselves.

It stopped holding the moment the author stopped being a person.

01 — THEN

A human wrote the diff.

If a change looked strange, you asked the person who made it.

02 — NOW

An agent writes a hundred files a minute.

There's nobody to ask, and the diff doesn't say what it meant to do.

03 — GATEBOLT

So make it state intent first.

Declare the scope up front, then check the diff against it.

How it works

Four steps. None of them typed by a human.

gatebolt init wires the loop into your agent's hooks. After that it runs itself.

1

Declare

Identity, model, and the files it plans to touch. gatebolt declare

2

Gate

Under strict mode, the agent's edit is denied until the declaration covers the file.

3

Reconcile

The real diff, scored against the declaration. No model in the loop. gatebolt observe

4

Seal

Appended to a hash chain. Rewrite one event, break every hash after it.

payment-service — claude code
$ npm i -g @gatebolt/cli
$ gatebolt init
 linked payment-service → .gatebolt
 wired declare → observe → .claude/settings.json
 installed pre-push backstop

# …the agent works. you type nothing.

declare claude-opus-4-8 · 2 files
observe 3 files changed
▲ drift 25 · MEDIUM — checkout/refund.ts was never declared
✓ reconciled seq 1204 · 7b02…9e14
The playground

Don't take the score on trust. Run it yourself.

The same scoring that runs on every agent turn. Nothing you type is saved, so use paths from a repository you actually care about.

Open the playground
The ledger

Evidence, not logs.

A log is something you trust because of who kept it. A ledger is something you trust because of what it would take to fake it.

  • Append-only — every event carries the hash of the one before.
  • Verify it yourself; get the sequence number where it breaks.
  • Export as JSON or CSV, verdict included.
  • Records outlive the key and the account that made them.
1201declared4c11…8a03
1202observeda1f9…c3d7
1203reconciled — edited✕ hash mismatch
1204declared7b02…9e14
Chain broken at seq 1203 — every event after it fails to verify.

You'll be asked which agent did this.

Have an answer that doesn't depend on the agent telling the truth.