Data is passive. Skills are single verbs. Agents compose them. Orchestration — hooks,
scripts, rules — enforces the schema at every tool call.
Layer 1 · Data
An Obsidian vault
Immutable raw/ sources, an LLM-maintained wiki/, and a schema in vault/CLAUDE.md that wins every conflict. Strict-tree linking keeps the graph a clean spine — every page hangs off one parent and associations become tags — around one root entry-point node.
Layer 2 · Skills
14 short verbs
init, ingest, query, lint, fix, sync, fill-gaps… thin orchestrators over the engine, plus onboarding and agent-teaching skills.
Layer 3 · Agents
8 executors
The orchestrator routes to onboarding, ingest, curator, analyst, polish, and maintenance. Ingest fans out to a read-only extract-worker.
Layer 4 · Orchestration
Hooks that enforce the contract
Seven lifecycle events (SessionStart through SessionEnd) gate frontmatter, wikilinks, and raw-immutability at every write, with path-scoped rules.