SBO3L · Public Proof

"Don't give your agent a wallet. Give it a mandate."
tagline proof-carrying execution for AI agents

What this site is

SBO3L is a local policy / budget / receipt / audit firewall for AI agents — the agent never holds a private key; SBO3L decides, signs, and audits. This page is the public, static proof surface for the ETHGlobal Open Agents 2026 submission.

Everything below is generated from the deterministic regression fixtures committed alongside the source. No JavaScript, no client-side network calls, no external asset; the same HTML works from file:// after a fresh clone. no JS no network offline-verifiable

What you can verify

  • Trust badge — judge-readable proof viewer
    One-screen, side-by-side allow + deny scenarios from the deterministic demo fixture. Request hash, policy hash, signed receipt, audit-event id, no-key proof, audit-chain tamper detection — all rendered server-side at build time. Same HTML as python3 trust-badge/build.py emits locally.
  • Operator console — multi-panel evidence
    The longer operational view. Allow / deny timeline, no-key proof, audit-chain tamper detection, mock sponsor disclosure (KeeperHub local_mock / Uniswap local_mock / ENS offline-fixture / mock KMS), and the five PSM-A* real-evidence panels — all rendered from the operator-evidence fixture. Bundle and Passport-capsule tiles fall through to the explicit "evidence not gathered" placeholder when their inputs aren't on the deploy environment.
  • SBO3L Passport capsule — sbo3l.passport_capsule.v1
    A self-contained, offline-verifiable proof artefact for one Allow decision. Download this file and run sbo3l passport verify --path capsule.json — the schema and every cross-field invariant (deny→no execution, live→evidence, request/policy hash internal-consistency) re-verifies offline. Note on this canonical fixture: execution.mode is intentionally mock for reproducibility (anyone can re-derive byte-for-byte from a fresh clone). For real KeeperHub execution evidence — real executionId, real signed envelope, real audit chain row — see the /kh-fleet live dashboard showing 5 v2 capsules from production runs against KH workflow m4t4cnpmhv8qquce3bv3c, plus the mainnet UNI-A1 broadcast tx 0xed68d1…aff0b on Etherscan.

What this site is NOT

Not a daemon. Not a hosted API. This deployed static site renders mock/offline-fixture demo runs — all sponsor adapters on this page show their local_mock() / OfflineEnsResolver evidence, not live network calls. The repo build itself ships env-gated live paths (KeeperHub submit_live_to, LiveEnsResolver, UniswapExecutor::live_from_env) that were verified end-to-end against real KeeperHub / mainnet ENS / Sepolia QuoterV2 during the submission window. The static site never silently upgrades a mock to a live claim — and the live paths are kept clearly separated from the deterministic demo surface this page shows.