SIGIL

Concepts & architecture

The monorepo, the ports, and the data flow.

Data flow

Sigil system architecture showing the pre-sign request, x402 and MCP ingress, deterministic firewall pipeline, evidence adapters, sealed verdict, and X Layer registry

The buyer sends an unsigned transaction. Sigil returns the sealed verdict before the wallet is allowed to sign, while the receipt's Merkle root is published separately to SigilRegistry for trustless verification.

The ports pattern

The engine depends on interfaces, never data sources:

  • SimulatorPort.simulate(tx, decoded) → balance/approval diff
  • ReputationPort.profile(address, chainId) → labels, age, verification
  • TokenSafetyPort.scan(token, chainId) → honeypot/taxes/powers
  • PanelPort.adjudicate(evidence) → votes (optional)

@sigil/intel swaps live adapters behind the same ports with zero pipeline changes; partial configuration always works, and outages degrade into recorded coverage gaps. Live sources: GoPlus (token security + address security), OFAC SDN sync, keyless eth_getCode for real contract detection, real eth_call simulation with state overrides, and OKLink (key-gated). Every finding carries the source names that produced it.

Monorepo layout

packagerole
packages/coredeterministic engine: decoder, scorer, sealer, pipeline, ports. 83 tests incl. a 42-row labeled benchmark corpus
packages/clientzero-dependency typed SDK plus LangGraph and Eliza guards
packages/contractsSigilRegistry.sol + a cross-language test proving TS Merkle proofs verify inside the real compiled bytecode (in-process EVM)
packages/mcp-serverthe ASP: MCP tools, x402 paywall, manifest, receipts
packages/intellive threat-intel adapters behind the ports
packages/panelescalate-only three-persona adjudicator, dissents shown
apps/consoleamber-on-black review console + landing + Sigil Copilot
apps/docsthis site

Design commitments

  • No Docker — plain Node 22, serverless-deployable, all tests in-process.
  • Deterministic-first — the rubric decides; the panel may only escalate inside the ambiguous band.
  • Honest coverage — what wasn't checked is declared, never papered over.
  • Verifiable receipts — every verdict is checkable offline and on-chain.