Karpathy's LLM Wiki, shipped as a Claude Code plugin — four layers, hook-enforced.
A Claude Code plugin that turns an Obsidian vault into a maintained, provenance-tracked knowledge base following Andrej Karpathy's LLM Wiki pattern. The human curates sources; the plugin maintains the wiki; hooks enforce the schema at every tool-call boundary.
The system is spec-driven: the contract lives in SPEC.md, the schema in docs/vault-example/CLAUDE.md, the canonical terms in docs/VOCABULARY.md. Every skill, agent, and hook binds to them.
| Layer | Surface | Count |
|---|---|---|
| Data | docs/vault-example/ — immutable raw/, LLM-maintained wiki/, schema in vault/CLAUDE.md |
1 |
| Skills | 9 plugin-authored llm-wiki-* + obsidian-graph-colors + 3 third-party obsidian-* (MIT, kepano) |
13 |
| Agents | Orchestrator (entry) + ingest, curator, analyst, polish — see docs/operations.md | 5 |
| Commands | /llm-wiki-stack:wiki, /llm-wiki-stack:wiki-doctor |
2 |
| Hooks | SessionStart + UserPromptSubmit + 4 PreToolUse + 2 PostToolUse + 2 SubagentStop |
10 |
| Rules | Path-scoped guidance under rules/ |
4 |
| Tests | Five tiers — Tier 0 static, Tier 1 Bats unit, Tier 2 smoke, Tier 3 release, Tier 4 adversarial | 5 |
Long-form architecture: docs/architecture.md. Feature list and competitor comparison: docs/features.md.
| Tool | Purpose | Install |
|---|---|---|
| Claude Code | >= 2.0 |
docs.claude.com/code |
bash, git, find |
Hook scripts and file walking | Pre-installed on macOS / Linux |
jq |
JSON parsing in hooks and resolvers | brew install jq / apt-get install jq |
| Obsidian | Optional — for graph view, Dataview, Web Clipper | obsidian.md |
OS: macOS or Linux verified. Windows/WSL unverified for hook scripts; markdown-only paths should work.
/plugin marketplace add odere-pro/llm-wiki-stack
/plugin install llm-wiki-stack
/llm-wiki-stack:wiki-doctor
wiki-doctor should print all green. If it does not, fix the prerequisite it flags. Local-clone install, update, and uninstall: see docs/install.md.
/llm-wiki-stack:wiki
The orchestrator probes vault state and dispatches:
- No vault yet → runs the
llm-wikiwizard. Scaffoldsdocs/vault/from the example, writes the schema, prints the next three things to do. - New files in
raw/→ runsllm-wiki-stack-ingest-agent. Produces typed wiki pages with citations and awiki/log.mdentry, then runsllm-wiki-stack-polish-agentto refresh graph colors and indexes. - Pending lint after an ingest → runs
llm-wiki-stack-curator-agentto audit and repair. - Analytical prompt (
what,why,compare,summarize, …) → runsllm-wiki-stack-analyst-agent. Every answer cites[[wikilinks]]back to source.
First-time walkthrough (~30 minutes): docs/playbooks/200-foundational.md. Full operations reference: docs/operations.md.
| Topic | Guide |
|---|---|
| Install / update / uninstall | docs/install.md |
| Day-to-day operations | docs/operations.md |
| Features and comparison | docs/features.md |
| Architecture (four layers) | docs/architecture.md |
| Spec (every contract) | SPEC.md |
| Vocabulary | docs/VOCABULARY.md |
| Security and threat model | docs/security.md |
| Step-by-step user guides | docs/llm-wiki/ |
| Playbooks (200 / 300 / 500) | docs/playbooks/ |
| ADRs | docs/adr/ |
| Risk and follow-up tracker | docs/risk-report-0.2.0.md |
| Test harness | tests/README.md |
| Contributing | CONTRIBUTING.md |
| Release log | CHANGELOG.md |
| Vulnerability disclosure | SECURITY.md, SUPPORT.md |
No telemetry. The plugin never phones home. Your vault, your hooks, your shell. Settings are local at .claude/llm-wiki-stack/settings.json.
Licensed under Apache 2.0. See NOTICE for bundled third-party code and THIRD_PARTY_LICENSES.md for full license text.
Not affiliated with Anthropic, Obsidian, or Andrej Karpathy — this is an independent implementation built on their public work. Credits:
- Andrej Karpathy's LLM Wiki gist — the pattern this implements.
- kepano/obsidian-skills — MIT —
obsidian-markdown,obsidian-bases,obsidian-cliskills, included unmodified. - Anthropic — Claude Code and the plugin format.
- Obsidian — the vault format this plugin maintains.
Author: odere-pro on GitHub.