Skip to content
chancery mark

chancery

Turn research into a verified, shared knowledge substrate — read once, judge explicitly, and let humans and agents retrieve from what you've vetted.

kb verify license MIT status early v0.x node >= 22 gate: 0 model calls
quickstart

Start in 60 seconds

Your agent supplies the judgment. The CLI supplies everything that can be deterministic.

=== "Claude Code / MCP"
$ npm install -g @amiable-dev/chancery
$ claude mcp add kb -- kb-mcp
# six tools, byte-identical to the CLI: kb_search · kb_read · kb_propose > "Ingest this post to staging and assess it against our rubric."
# the generated skills already taught your agent the loop
=== "The CLI loop"
$ kb ingest https://example.com/article
#  staging/<slug>.md, source hashed
$ kb assess staging/<slug>.md
#  judgment task for your agent
$ kb promote <slug> --draft d.json --apply
#  concepts/<slug>.md, by construction
$ kb query "what do we know about X?"
# grounded  uncited answers rejected
=== "CI gate"
# .github/workflows/kb-verify.yml  the contract, before every commit
$ kb verify
480+ files · schema / links / index / cards · ~1s
# no API keys in the gate · no network · the exit code is the contract
the gate

See it gate

verify doesn't hand you prose to parse. Evidence drift is caught mechanically — which claims, not just which links. The transcript below is real captured output: the gate on this repository, then genuine drift against a source whose content changes every fetch (capture harness).

captured output — kb verify · kb revalidate

the loop

Two phases, one gate

kb never calls a model. Walk the loop — judgment arrives from outside, everything else is a lookup table.


    
capabilities

Why chancery

Gated promotion

Sources land in staging, get judged against a rubric — knockout disqualifiers first — and only then become concepts. Nothing is auto-deleted.

Falsifiable citations

Every source is content-hashed at ingest. revalidate reports which claims' evidence drifted; support gives claim-by-claim verdicts against the exact snapshot judged.

A typed concept graph

Explicit relationship clauses ("X supersedes Y because…"), faceted classification, a generated index. The hallucination-free graph auto-extraction can't produce.

Grounded query + context

query returns ranked concepts with their graph edges — answers citing unretrieved concepts are rejected. context compiles the exact bundle a task needs, byte-stable.

A tamper-evident loop

Judgments travel in task envelopes — stale, replayed, or out-of-bounds answers are refused. Applies verify themselves and roll back; audit sweeps for rot.

Your agent already knows it

One procedure source generates skills for Claude Code, Copilot, Windsurf, and Devin — CI-diffed so they can't go stale — plus a local MCP facade.

212
concept notes — generated by the tool itself
1,112
flashcards
~1s
kb verify
0
model calls in the gate