Sworn agents. Sworn contracts. Independently verified.
Every merge has a receipt.
Each piece of work is a written contract. Planner, Implementer, Lead and Verifier each own one part of it, every handoff is recorded, and Sworn merges only on a recorded pass.
How a change moves
- The Principal starts each release through the Manager.
- The Manager runs the release on the Principal's behalf, as an ongoing agent session that drives Sworn through its CLI or MCP server.
- It starts the run, watches every step, and answers, retries, pauses or resumes under a written policy.
- At the end it opens the promotion pull request, and the Principal decides whether the release goes to main.
- The Planner proposes the plan.
- The Principal approves the plan, directly or through a Lead delegation the Principal grants.
- For each design attempt, the Implementer first returns a concise design and stops.
- The Lead reviews the design and returns PROCEED, REVISE or ESCALATE.
- REVISE sends a design gap back to the Implementer for another design attempt on the same slice.
- PROCEED lets implementation begin, and may carry bounded corrections inside the approved contract.
- ESCALATE names one decision outside the Lead's remit, when behavior, contract, authority or an outside decision needs revised approval.
- An independent Verifier, separate from the Implementer and Lead, makes one read-only check of the exact candidate and returns at most one verdict: PASS, FAIL or BLOCKED.
- FAIL sends the same slice straight back for another implementation attempt.
- BLOCKED means a trust-critical fact cannot be established.
- An ESCALATE or BLOCKED hands the work to the Planner. A revised plan goes to the Manager, who checks and routes it under a written policy, and the Principal approves the change.
- The Manager never approves a plan revision and never merges to main.
- Once every slice has passed, a fresh Verifier checks the assembled release, unless the release is one slice built directly on the target branch.
- After the release passes, Sworn, never a model, merges the exact passed candidate into the release branch.
- Merging a release to main is always the Principal's decision.
A successful model response is never treated as an approval or a passing verdict.
The seat
Running fully unattended is a non-goal.
- Principal
- The accountable human. Under the Manager's written policy, plan approval, roster or model changes, and merging a release to main go to the Principal.
- Manager
- Runs the release on the Principal's behalf: an ongoing agent session that drives Sworn through its CLI or MCP server. It starts the run, watches every step, answers questions, retries, pauses and resumes, and keeps a decision journal. It decides what its written policy covers and brings everything else to the Principal. In a recorded trial, a second harness on a non-Anthropic model filled the seat read-only through the MCP server alone.
Your models
There are no model defaults or fallbacks.
A production run names the exact AI profile and model for every role. Planner, Implementer, Lead and Verifier may be model-backed.
Watch it run
The terminal board, JSON status and a local browser board show the same saved facts.
Every dispatch journals one bounded, redacted record per worker turn as it happens. Sworn saves commands and external work before execution, so a stopped process can recover from recorded facts instead of guessing.
Build from main
Sworn is pre-1.0. To try it, build the latest from main.
Sworn currently supports Linux x86_64, and you need Go 1.26.5 or newer to build it. Running model work currently needs Git, a root-owned bwrap on PATH and unprivileged user namespaces.
git clone https://github.com/swornagent/sworn
cd sworn
go build -o sworn ./cmd/sworn
./sworn version