Synthe

Let AI agents ship code without handing them the keys.

Agents propose. You approve. Synthe commits. Your agent never holds a GitHub token. Synthe does, and pushes only the exact commit you approved, with a signed receipt anyone can verify.

Public beta · verified on macOS · Claude Code, OpenClaw or any git push

illustration
agent proposes push · agent/fix-login · 2 files
you read the broker's diff · approve with Touch ID

pushed · receipt #42 signed


The problem

An agent with a token can push anything.

  • Straight to main, at 3 a.m.
  • Over someone else's work.
  • With no record of who said yes.

With Synthe, agents hold no credentials at all. They can only propose. The broker runs as its own user and acts only on a change a person approved.


How it works

Two halves. It only ships when they meet.

The agent's half proposes, your half approves, and nothing ships until both lock. Step by step

The agent proposes

It works on its own branch and proposes the push, through the plugin or a plain git push. It holds no GitHub token, not even to read.

You approve

You see the broker's own diff, not the agent's summary, and approve with Touch ID or your passphrase. The approval names that exact commit.

Synthe re-checks, then pushes

At the moment of commit it re-checks everything, pushes exactly that change if nothing moved, and signs a receipt. Refusals get one too.

Install

Set it up once. Every push after that goes through you.

Setup asks for your passphrase, GitHub token (hidden) and admin password, then puts the agent in its own account with no credentials.

1. Get Synthe, then follow the setup guide

git clone https://github.com/rohansiddam/Synthe ~/synthe && cd ~/synthe

2. Add the plugin in Claude Code

/plugin marketplace add rohansiddam/Synthe /plugin install synthe@synthe

Run Claude Code in the agent's account to enforce it. In your own account, with your GitHub login, the plugin guides but isn't a wall.

Claude Code and OpenClaw have plugins; any other agent works through git push. Status of each integration

Anyone can verify

Every decision is a link in a chain.

Each receipt hooks into the one before it. Change one, and the chain breaks there for everything after it. Check any chain yourself with synthe-verify.

7 receipts · chain verifies

Select a receipt, then tamper with it. Sample receipts: the real chain is signed by the broker's key.

Enforcedon a real Mac with real GitHub: the broker in its own account, all 8 isolation checks passingProof: OPENCLAW_RESULTS.md
Every attackfrom the agent's account refused or contained: 30 of 30 live attacks, plus 3 controls that went throughProof: every attack and its result
1408public tests passingProof: commit 56c96f9

Latest in the changelog: The commit broker goes public (October 7, 2026)


See it

Two agents. One change. Exactly one commit.

Run the race in your browser

Questions

Straight answers, including the limits.

What does Synthe actually hold?

The only credential that can push: a GitHub token in a file only the broker's own OS user can read. Your agents hold none, not even to read the repository.

Is it open source?

Mostly. The spec, the checker, the clients and the integrations are open source under Apache-2.0. The commit broker is source-available under FSL-1.1-ALv2: you can read, audit and run it, but not sell it as a competing service, and each version becomes Apache-2.0 two years after its release. Synthe's hosted and internal code is separate.

What can't Synthe stop?

It doesn't stop prompt injection, and it can't tell whether approved code is good: if a person approves the wrong change, Synthe pushes exactly that change. It only controls the credentials and remotes it's configured for, so an agent's account must hold no other credentials. Receipts prove which key acted, not which model wrote the work.

Which agents does it work with?

Claude Code and OpenClaw through plugins, and any agent through a plain git push. Git pushes are the first action Synthe performs.

What does it cost?

Running Synthe yourself costs nothing. If you'd like help piloting it with your team, talk to us.

Who is building Synthe?

Co-founders Rohan Siddamsettiwar and Rishab Ramalingam, out of the University of Utah's Sandbox startup community.

Design partners

Pilot Synthe with your team.

Running agents against real systems? Tell us what they do, and we'll help you set up a pilot.

Requesting access opens your email app with your request ready to send. Nothing is stored or sent on its own. Prefer to write it yourself? Email rohansiddam@synthe.live.

Give your agents a way to ship that you control.