These docs are explainers. The protocol contract lives in SPEC.md in the repo — when the docs and the spec disagree, the spec wins. If you find such a disagreement, please file an issue.
The spec covers, normatively (RFC 2119 language):
  • the kb.* method surface and its envelope semantics across MCP, JSONL, and HTTP transports,
  • artifact schemas — claims, pages, entities, relations, sources — and their lifecycle states,
  • the review-gate rules: proposal → decision flow, actor separation, and what may never bypass proposals.approve(),
  • the audit-log event stream and its append-only guarantees,
  • versioned protocol snapshots under spec/.
Machine-readable schemas for validation tooling live in schemas/, and protocol evolution proposals in proposals/. Run vouch capabilities against a live server to see the exact method list it implements.