Symbia

Symbia keeps a cryptographically signed record of the work AI agents do and marks how far each result can be trusted. Each file operation and command an agent runs goes into a hash chain that anyone outside the session can audit, step by step and in order. A prediction written before a test is provably older than its result. Each record also carries its cost in host time and in the text returned to the model.

Symbia is open source under the MIT license.

Why we use it

A record outside the agent

The record lives apart from the agent's own conversation. Each entry's hash includes the hash of the entry before it. Changing any record breaks the chain. Symbia's file tools refuse to write inside its own data folder.

Predictions before results

Register what you expect before a test runs. The chain places the prediction ahead of its result. A failed prediction stays on record as a failure.

Sealed and portable

A seal is a signed copy of the session file. Verification recomputes every record and every link in the chain, and accepts only the keys you have chosen to trust.

Cost on every record

Each record carries the host time it took and the size of the reply sent back to the model. A write returns about 140 characters, so keeping the record costs the model very little.

Tools that leave a trail

Symbia includes the file and shell tools an agent needs to read, search, edit and run commands. Every call is recorded, refused calls included. Command output is saved as evidence, named by its SHA-256 digest.

A thread per conversation

Each chat or agent writes under a thread name of its own. A thread seal keeps that thread's records in full and only the digests of the rest, so we can hand over one conversation's work on its own.

Search and reports

Search reaches every session and seal on the machine, by text or by meaning with a local embedding model. Reports total cost, errors and prediction outcomes by thread, tool, model or day.

A witness off the machine

Each seal also appends a line to a witness file outside Symbia's data folder, in iCloud Drive or a git repository for example. Verification then catches any seal rewritten later.

Try it in Claude

Symbia runs on your own Mac and connects to Claude over MCP. There's no account or API key to set up. Install it with Homebrew, add it to Claude, and restart the app. Its tools then appear in your conversations.

brew install symbia-labs/tap/symbia

Claude Code:

claude mcp add --scope user symbia -- /opt/homebrew/bin/symbia mcp

Claude desktop app, in claude_desktop_config.json:

"symbia": { "command": "/opt/homebrew/bin/symbia", "args": ["mcp"] }

Check a result

See which lane a value sits in and why, and read the record that produced it.

Predict, then measure

Register what you expect before a test runs, then report the predictions that failed as failures.

Seal the session

Pack the session into one signed file and hand it to anyone who needs to check the work.

Check a sealed session first

The repository's examples folder holds real seals from a short run of two agents. One agent predicted what a file held, measured it, and recorded a result that broke. Two copies of the session were edited after sealing. Check them yourself before you point an agent at Symbia.

git clone https://github.com/Symbia-Labs/symbia && cd symbia/examples
KEY=$(cat example-key.pub)
symbia verify seals/session.sqlite --trust $KEY --witness witness
symbia verify seals/tampered.sqlite --trust $KEY

The first check passes. The second reports file sha256 mismatch. To read a seal, run show. It lists the records in order, with each prediction's verdict and every command the agents ran. get prints one record in full:

symbia show seals/session.sqlite --trust $KEY
symbia get seals/session.sqlite orders.total.result --trust $KEY

A seal is also a plain SQLite file. The README walks through both, with the queries behind them.

Requirements

  • A Mac with Apple silicon, or Linux on x86-64 with the static binary from GitHub Releases. On Linux, commands run without the shell sandbox for now.
  • The Claude desktop app or Claude Code.

What a seal doesn't say

A seal proves what happened in a session and in what order, without judging the quality of the work. Verification accepts only the keys you have pinned.

Questions

Write to hello@symbia-labs.com.