Skip to main content

Swarrm

A flight recorder for AI agents. Capture what your AI did. Verify the record.

Swarrm turns supported AI-agent actions into signed receipts, links them into a checkpointed, tamper-evident history, and exports portable evidence bundles. When a decision is questioned, the record can be checked locally by the people you share it with—without a Swarrm account or a live Swarrm service.

Start in two minutes

pipx install swarrm==1.1.2            # Python 3.11+; or: pip install swarrm==1.1.2
swarrm demo                            # create a signed local evidence bundle
swarrm verify demo_out/bundle.json     # VERDICT: VERIFIED

The demo also creates demo_out/bundle_tampered.json. Verify that copy to see a one-byte change produce NOT VERIFIED.

Reproduce the launched live E2 path against the public Base Sepolia sample:

curl -fsSLO https://swarrm.ai/samples/sample_bundle.json
curl -fsSLO https://swarrm.ai/samples/sample_sigstore_tsa_trust.json
swarrm verify sample_bundle.json \
  --trust sample_sigstore_tsa_trust.json \
  --live --rpc https://sepolia.base.org

The five sample receipts should report E2. Use the downloaded trust file to reproduce this public sample. For production, import and pin TSA roots your organization has reviewed.

What you get

  • Signed action receipts. Capture model calls, tool calls, approvals, payments, policy decisions, data access, guardrails, lifecycle changes, and namespaced custom events.
  • Tamper-evident history. Receipts are included in an append-only Merkle log with signed checkpoints and witnessed key history.
  • Portable evidence. Export self-contained bundles, readable Evidence Reports, incident packets, and selective disclosures.
  • Local verification. Check a bundle with the Python CLI or the open Rust/WASM verifier in a browser.
  • Visible evidence health. Known capture and persistence gaps surface through warnings, health state, journals, and report findings.
  • Flexible deployment. Run locally, self-host the service, use the managed gateway, or sign and spool receipts inside your network with the edge recorder.

Capture from the path that fits your system

Integration Use it for
Python SDK and @swarrm.evidenced Typed receipts around consequential application actions
OpenAI-compatible gateway Routed model calls with a base_url change
LangChain, LangGraph, and OpenAI Agents hooks Model and tool callbacks from supported framework events
MCP wrapper and OpenTelemetry intake Tool traffic and existing telemetry pipelines
Edge recorder and Evidence Node Customer-local capture plus source-side observation and reconciliation
import swarrm

swarrm.init()
with swarrm.session("case-7781"):
    swarrm.model_call(model="gpt-4o", prompt=prompt, output=answer)
    swarrm.approval(decision="approved", approver="u_88", role="manager")
    swarrm.payment(amount=4732.19, currency="USD", counterparty="acct_9f2")

Use swarrm doctor to confirm the active profile, effective configuration, last receipt, and recording health.

How the record becomes verifiable

  1. Capture. An enabled integration observes a supported action and records selected content as cryptographic commitments plus bounded metadata.
  2. Sign. The recorder creates a canonical Ed25519/DSSE receipt for the captured action.
  3. Checkpoint. The receipt enters an RFC 6962 Merkle log with inclusion, consistency, checkpoint, and key-history evidence.
  4. Export and verify. A bounded set of receipts becomes a portable bundle. The verifier recomputes the checks from the supplied artifact and trust inputs.

Evidence levels, in plain language

The levels are cumulative, post-action properties—not a score.

Level What it establishes
E0 · Signed receipt The receipt signature verifies under the named key.
E1 · Presented history E0 plus Merkle inclusion, key-history replay, and signed-checkpoint consistency for the history presented.
E2 · Public commitment E1 plus a live-confirmed covering Base or Base Sepolia checkpoint and an RFC 3161 timestamp verified to a TSA root supplied by the relying party.
E3 · Dual attestation E2 plus matching evidence-issuer and active recorder signatures verified under recorder trust supplied by the relying party.

The browser file-drop verifier establishes E1 entirely offline. The live report profile can establish E2; the current public example demonstrates it on Base Sepolia staging. E3 builds on the complete E2 basis when the dual-attestation evidence and recorder trust are supplied.

Machine-verifiable agent identity and authority

Counterparty Assurance lets two agents exchange a nonce-bound presentation for organization-rooted identity, current mandate, exact-action authority, and replay protection. Verification runs locally against trust roots and durable state controlled by the relying party. The structured result is an advisory input to the relying party's own execution policy.

Data and deployment boundary

The evidence log contains cryptographic commitments and bounded operational metadata. Payload bodies stay outside the evidence log. Local, self-hosted, and edge deployments keep payload handling in your environment; the managed gateway handles model traffic in transit. Plaintext metadata selected by an integration remains part of the record and should be classified accordingly.

Verification answers a precise question: whether the signed receipts and the presented authenticated history are intact under the supplied trust material. Capture coverage follows the integrations and evidence sources you enable.

Open verification

The package includes the Python verifier. A separate Apache-2.0 Rust/WASM implementation and the wire-format specifications are published in swarrm-verify. Both implementations run the same adversarial fixture families to detect semantic drift.

License

The swarrm package is proprietary—© 2026 Capx Holding, all rights reserved. The published wire-format specifications and Rust/WASM verifier are Apache-2.0.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

swarrm-1.1.2.tar.gz (684.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

swarrm-1.1.2-py3-none-any.whl (752.8 kB view details)

Uploaded Python 3

File details

Details for the file swarrm-1.1.2.tar.gz.

File metadata

  • Download URL: swarrm-1.1.2.tar.gz
  • Upload date:
  • Size: 684.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for swarrm-1.1.2.tar.gz
Algorithm Hash digest
SHA256 26af3a74f22504d66096e2e875f627b980c94c82c37e2e0bfb45e0fbaa5e133e
MD5 b651059239e1f19121743c7ebe544f15
BLAKE2b-256 9614a3fd4a74d0848c578d252593638426df40e4e376f9662eba395f8abdd7d7

See more details on using hashes here.

File details

Details for the file swarrm-1.1.2-py3-none-any.whl.

File metadata

  • Download URL: swarrm-1.1.2-py3-none-any.whl
  • Upload date:
  • Size: 752.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for swarrm-1.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 8801b3152948de64db69f5fb705eaee5c1568ee39bf92129a7ae266eb0f783c9
MD5 97bc789645c1842e96254bafe76c17dd
BLAKE2b-256 fd0c517117050efbaf73b6834b39872dd5ec2bf0ae0aee3b71f0e412c7e05487

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page