Architecture
The Castle Architecture.
Five layers, each with a distinct contract. Operating-system enforcement is live on
macOS today; Linux and Windows are not live enforcement yet,
observation inside, an encrypted state surface for compliant agents, receipts and reputation
across vendors, and an install-time substrate that binds it all to the operator.
The layers compose. None of them substitute for another.
Perimeter
Castle Wall
Operating-system-level egress filtering. Network Extension on macOS, where Phase 1
is proven on a signed and notarized build. On Linux the nftables, cgroup v2, and
NFQUEUE modules carry plain-DNS, DoH, DoT, and raw-socket bypass coverage against
real kernel bindings, and the shipped daemon does not install that path yet.
kernel-binding
cgroup-v2
doh-dot-covered
Observation
Sentinels
Internal behavioral observation. Cross-platform auditd-tail, plus an eBPF watcher
scaffold on Linux that currently falls back to stub mode because the real probe loader
is not implemented. Seven
sentinels watching for prompt-injection signatures, anomalous tool sequences, and
policy drift. The sentinels surface; the operator decides.
ebpf
auditd-tail
seven-sentinels
Cooperative surface
Charter (Cooperative MCP)
Encrypted state, hash-chained audit, mandate primitives, canonical policy slots, and
substrate selector. Production audit checkpoints are currently unsigned until IC-05
closes. Compliant agents that voluntarily route through Sanctuary get the full surface. On macOS with the wall
installed and armed, non-compliant agents still hit the wall and the Sentinels.
approval-gates
context-gate
audit-log
Accountability
Heralds (Receipts and Reputation)
Cryptographic receipts on cross-castle transactions, portable reputation that
survives vendor churn. Concordia structures negotiation and commitments; Verascore
prices the reputation. Operators carry the trust record across vendors.
concordia
verascore
portable
Substrate
Mantle (install-time binding)
Install-time substrate-binding to the operator. The Mantle gives the rest of the
castle a verifiable anchor on the operator's machine before the agent runs.
Template init rejects orphan agent identifiers that are not bound to a wrapped harness.
install-time
substrate-binding
verifiable