Architecture

A deterministic spine you can audit.

LLMs do scoped reasoning; a typed state machine drives the flow; a Guardian gates every action; everything lands in a replayable ledger.

ConnectorsSIEM/EDR/MCP Normalize→ OCSF Orchestratordeterministic kernel Agents (14)bounded LLM GuardianACS gate Provider gateway Memory (opt-in) Connectors.act Case Ledger — append-only · hash-chained · crypto-shredded · replayable every node, tool call, model call, decision & approval is recorded here Cross-cutting: AuthN/Z (OIDC · SCIM · RBAC · per-tenant) · Secrets (OpenBao) · OpenTelemetry Control plane: FastAPI + WebSocket · Coworker dashboard: React

The triage flow

intake → L1 → (auto-close | investigate: INTEL + L2 + FUSION) → route. Triage is read-only. Response is a separate, explicit, Guardian-gated path — never auto-run. The kernel checkpoints after every node and supports human-in-the-loop suspend/resume that re-enters the exact node.

Design principles (as constraints)

Trust is the product

Evidence-cited, replayable verdicts. We ship an eval harness that reports the false-negative rate — not a marketing number.

Deterministic spine, bounded intelligence

A typed checkpointed kernel drives flow; LLMs are confined to scoped reasoning after deterministic enrichment — controlling hallucination and cost.

Human-in-the-loop; least privilege

Every state-changing action is Guardian-gated (allow/deny/modify/ask/defer, default ask), blast-radius-limited, reversible, audited.

In-network & model-agnostic

Localhost or air-gapped K8s; any provider; opt-in memory; no telemetry phone-home.

Where controls sit

Full spec: build-plan.md · security model & AISVS self-assessment.