KB Init
One-time setup, migration, and repair for the review-gated workflow.
Quick Start
For a fresh vault, the happy path is four steps:
- Init — run
kb-initto create the support layer (raw/,wiki/,outputs/,AGENTS.md) - Ingest — run
kb-ingestto register raw sources intoraw/_manifest.yaml - Compile — run
kb-compileto build reviewable drafts - Review — run
kb-reviewto approve drafts into the permanent wiki underwiki/live/
After that, use kb-query to ask questions, kb-render to generate deterministic outward artifacts, and kb-review maintenance mode to audit drift.
This mirrors Karpathy's LLM Wiki pattern: raw sources are immutable evidence, the LLM compiles and maintains the wiki, and you curate by sourcing documents and asking the right questions.
If the user arrives with the simpler raw/wiki/output language from Chinese-LLM-Wiki, keep that as onboarding vocabulary only. The implementation still lands on the review-gated support layer.
Read before writing
Read these shared references first:
../obsidian-notes-karpathy/scripts/skill-contract-registry.json../obsidian-notes-karpathy/references/file-model.md../obsidian-notes-karpathy/references/lifecycle-matrix.md../obsidian-notes-karpathy/references/chinese-llm-wiki-compat.md../obsidian-notes-karpathy/references/index-home-template.md../obsidian-notes-karpathy/references/source-manifest-contract.md../obsidian-notes-karpathy/references/memory-lifecycle.md
Treat skill-contract-registry.json as the canonical source for role, baseline command, required references, and expected write surfaces.
If onkb is available, use these commands first:
onkb --json status <vault-root>to distinguish setup, repair, andneeds-migrationonkb --json init <vault-root> ...for fresh setup and non-destructive repair scaffoldingonkb --json migrate <vault-root> ...for legacy single-layer vault migrationonkb --json review governance <vault-root> --writewhen optional governance scaffolding should be materialized
If onkb is missing, follow the install fallback in ../obsidian-notes-karpathy/references/lifecycle-matrix.md, then rerun the same command.
Load on demand
Load these only when the trigger applies:
../obsidian-notes-karpathy/references/schema-template.md— when vault-wide frontmatter fields beyond this skill's core schema need checking../obsidian-notes-karpathy/references/summary-template.md— when creating or repairing draft source summaries../obsidian-notes-karpathy/references/review-template.md— when repairingoutputs/reviews/**records../obsidian-notes-karpathy/references/briefing-template.md— when rebuilding or repairingwiki/briefings/**../obsidian-notes-karpathy/references/activity-log-template.md— when appending an entry towiki/log.md../obsidian-notes-karpathy/references/questions-template.md— when scaffolding or repairingwiki/live/indices/QUESTIONS.md../obsidian-notes-karpathy/references/provenance-and-alias-policy.md— when alias overlap, duplicate candidates, or provenance drift surfaces../obsidian-notes-karpathy/references/query-writeback-lifecycle.md— when writeback candidates,writeback_status, or archive backlog work is involved../obsidian-notes-karpathy/references/taxonomy-and-hubs.md— when repairing the topics layer or curated hubs../obsidian-notes-karpathy/references/graph-contract.md— when graph exports,relatededges, or relationship candidates are involved../obsidian-notes-karpathy/references/topic-template.md— when shaping or promoting browse-layer topic pages../obsidian-notes-karpathy/references/profile-contract.md— when account profiles orsource_profilemetadata is involved../obsidian-notes-karpathy/references/automation-hooks.md— when wiring or invokingonkb review automationmodes../obsidian-notes-karpathy/references/procedure-template.md— when the durable delta is procedural (workflow or playbook)../obsidian-notes-karpathy/references/episode-template.md— whenoutputs/episodes/**work is involved
Profile choice
Surface the operating profile during init or repair:
governed-teamfor the strictest default governancestandardfor lighter maintenance noise without widening truthfast-personalfor solo use where briefings can stay out of default query scope
Persist the chosen profile in scaffolded starter files so later lifecycle and query tooling can see it deterministically.
MEMORY.md is recommended collaboration scaffolding but not a blocking requirement. Solo / fast-personal vaults can skip it by running onkb --json init <vault-root> --skip-memory. The rest of the support layer still lands.
Create or repair the canonical structure
Create the required support layer:
raw/human/{articles,papers,podcasts,repos,assets}
raw/human/data
raw/agents/{role}/
raw/_manifest.yaml
wiki/drafts/{summaries,topics,concepts,entities,procedures,overviews,comparisons,indices}
wiki/live/{summaries,topics,concepts,entities,procedures,overviews,comparisons,indices}
wiki/briefings/
wiki/index.md
wiki/log.md
outputs/reviews/
AGENTS.md
CLAUDE.md
Create downstream output directories such as outputs/qa/, outputs/health/, outputs/reports/, outputs/slides/, outputs/charts/, and outputs/content/** only when the user wants full scaffolding or the later stages need them.
Treat MEMORY.md as recommended collaboration scaffolding. It should hold preferences, editorial priorities, and coordination context, not source-grounded topic knowledge.
Optional governance scaffolding may include:
wiki/live/indices/QUESTIONS.mdwiki/live/indices/GAPS.mdwiki/live/indices/ALIASES.mdwiki/live/indices/ENTITIES.mdwiki/live/indices/RELATIONSHIPS.md
Optional latest-capability scaffolding may include:
outputs/episodes/outputs/audit/operations.jsonloutputs/health/graph-snapshot.json
Migration posture
For legacy-layout vaults:
- preserve legacy content
- explain that direct
wiki/summaries//wiki/concepts/pages must move intowiki/live/ - scaffold the review-gated directories first
- treat migration as a repair step, not as a normal compile or query pass
Checkpoint
Before creating or repairing the support layer, confirm with the user:
- which operating profile to use (
governed-team,standard, orfast-personal) - whether optional governance scaffolding (
QUESTIONS.md,GAPS.md,ALIASES.md) is wanted - whether this is a fresh setup, a repair of an existing vault, or a legacy-layout migration
For a fresh vault with no existing content, proceed after profile selection without further confirmation.
Contract guarantees
raw/stays immutablekb-compilewrites only towiki/drafts/kb-reviewowns promotion intowiki/live/and briefing refreshkb-querymust not read drafts as truthAGENTS.mdandCLAUDE.mdstay aligned on the review-gated file model- downstream outputs beyond
outputs/reviews/are optional scaffolding, not minimum support-layer requirements
Starter files
Create:
wiki/index.mdwiki/log.mdMEMORY.mdraw/_manifest.yamlwiki/live/indices/INDEX.mdwiki/live/indices/CONCEPTS.mdwiki/live/indices/SOURCES.mdwiki/live/indices/TOPICS.mdwiki/live/indices/RECENT.mdwiki/live/indices/EDITORIAL-PRIORITIES.md- optional
wiki/live/indices/QUESTIONS.mdwhen the user wants governance scaffolding - optional
wiki/live/indices/ENTITIES.mdandRELATIONSHIPS.mdwhen the user wants graph-friendly navigation - at least one example briefing or a placeholder in
wiki/briefings/ - a review template example in
outputs/reviews/when the user wants a demonstrable starter
Output to the user
Report:
- what was created or migrated
- whether a legacy-layout /
needs-migrationstate was detected - what existing content was preserved
- the next recommended command, usually
kb-compileorkb-review