@micuintus/llm-wiki
LLM wiki kit
First committed by micuintus
Published in micuintus/llm-wiki. Publisher page
32 GitHub stars
What it is
As minimal as Pi. Karpathy's LLM Wiki pattern as a minimal, agent-agnostic skill.
AutoGineer overview, from the brain’s own files
llm-wiki is a lightweight, dependency-free skill designed to implement the Karpathy LLM Wiki pattern. It functions as a persistent memory layer where an AI agent curates, summarizes, and cross-links information from raw sources into a structured knowledge base. By relying on conventions defined within the skill text rather than complex code or external infrastructure, it ensures that data remains portable and readable by any agent. The system consists of a single core skill file and a set of lazy-loaded reference files, keeping the footprint minimal while allowing for complex knowledge compounding.
How it works
Memory model: LLM wiki
AutoGineer overview, from the brain’s own files
The system operates by placing a single SKILL.md file into an agent's skill directory. This file contains the instructions and conventions the agent follows to process information. It uses a references folder containing lazy-loaded recipes for specific tasks, such as handling session transcripts or code repositories. The agent reads these instructions to summarize, link, and maintain the wiki, which is stored as plain markdown files on the user's disk.
| Folder | Role | Files |
|---|---|---|
| llm-wiki | folder | 8 |
Requirements
Runtimes: Node.js
Databases: SQLite
Set it up
- Download the brain as a ZIP and unzip it where you keep your notes or project: https://mp-staging.autogineer.com/agent-brains/micuintus/llm-wiki/download
cd llm-wiki && claude
AutoGineer scanned these files at commit e03cd38.
First committed by micuintus. Published in micuintus/llm-wiki. Licence: MIT License.
Usage
AutoGineer overview, from the brain’s own files
- Curating research papers into a searchable, interlinked knowledge base.
- Documenting project architecture, decisions, and open questions.
- Mapping complex ecosystems or taxonomies through agent-assisted ingestion.
- Synthesizing book chapters into concept pages and theme threads.
- “Summarize the last five research papers I uploaded and link them to the existing 'Quantum Computing' concept page.”
- The agent updates the 'Quantum Computing' markdown file with new summaries and creates cross-references to the specific paper files.
- “Review my project documentation and identify any contradictions between the architecture decisions and the current bug list.”
- The agent scans the wiki files and flags conflicting information, suggesting updates to maintain consistency.
Documentation by micuintus
@micuintus/llm-wiki
As minimal as Pi.
Karpathy's LLM Wiki pattern as a skill. One file. ~6 KB. No dependencies, no CLI, no web server, no Obsidian plugin.
The user curates sources. The LLM does the bookkeeping — summarizing, cross-linking, flagging contradictions. Knowledge compounds instead of being re-derived from raw chunks on every query.
Install
Pi (npm):
pi install npm:@micuintus/llm-wikiPi (GitHub):
pi install git:github.com/micuintus/llm-wikiEveryone else:
# Copy the skill directory (SKILL.md + its lazy-loaded recipes). Start ingesting.
curl -L https://github.com/micuintus/llm-wiki/archive/refs/heads/main.tar.gz \
| tar -xz --strip-components=1 -C ~/your-agent/skills/ llm-wiki-main/llm-wikiThat lands ~/your-agent/skills/llm-wiki/SKILL.md with its
references/ alongside, so the lazy-loaded recipes resolve. (SKILL.md
is the only always-loaded file — the rest is read on demand.)
What you get
One file: SKILL.md. Everything else is lazy-loaded — referenced by
path in the skill text, never loaded until you actually need it.
Agent session recipes (lazy-loaded):
Pi sessions — JSONL trees with fork detection
Claude Code / opencode / Gemini CLI — transcripts, SQLite, JSON
Code-source recipe (lazy-loaded) — grep+cite-by-line conventions for when the source is a repository rather than prose.
Web chat ingestion — Claude.ai, ChatGPT, Gemini via CDP. A
separate package:
ingest-web-chat
(pi install npm:@micuintus/ingest-web-chat).
The lazy-loaded subskills sleep forever until you wake them. (Don't forget to kiss these sleeping beauties.)
Use cases
Reading a book — chapter summaries, character/concept pages, theme threads, all interlinked.
Researching a topic across many papers — concept pages cite multiple sources; contradictions surface instead of getting lost.
Mapping an ecosystem (e.g., the Pi extension landscape) — taxonomies, comparisons, primitive mappings.
Documenting your own project — decisions, architecture, bugs, open questions, all linked through one schema.
Why this exists
Most wiki implementations ship a CLI, a web server, a static site generator, and 2,000 tests. That's fine if you want infrastructure. This is for people who want a pattern — a convention the agent already understands — and nothing else.
Conventions live in the skill text, not in code. The wiki itself is plain markdown on disk — if you ever switch agents or skills, your data travels with you unchanged.
Related work
The Karpathy gist has spawned a diverse ecosystem. Every implementation below shares the same three-layer foundation (raw sources → compiled wiki → schema); they differ in shape (how the agent consumes the pattern) and weight (how much tooling ships alongside the skill).
What makes @micuintus/llm-wiki different: it is a pure skill
— a single SKILL.md (~6 KB) plus lazy-loaded reference files that
any agent (Pi, Claude Code, Codex, Cursor) can read directly. No
runtime dependencies, no generated code, no CLI to install, no web
server to run, no Obsidian plugin to manage. Conventions are enforced
by the skill text itself, not by code. If you want the lightest
possible commitment to the pattern — copy one file, start ingesting —
this is it. Other implementations add value in exchange for weight:
IDE plugins, static-site generators, code-based guardrails, or
self-driving agents. Pick the shape that matches your workflow.
| Repo | Stars | Contributors | License | Language | Shape | Notes |
|---|---|---|---|---|---|---|
| Astro-Han/karpathy-llm-wiki | 651 | 1 | MIT | Markdown | Skill | Agent Skills-compatible. Single-file SKILL.md, no session recipes. Closest to a vanilla skill. |
| toolboxmd/karpathy-wiki | 66 | 1 | — | Shell | Skill | Two Claude Code skills: setup + maintenance. Hooks-driven. |
| balukosuri/llm-wiki-karpathy | 125 | 1 | — | — | Skill | Article + implementation walkthrough. |
| lewislulu/llm-wiki-skill | 447 | 2 | MIT | TypeScript | Skill + ecosystem | Skill + Obsidian audit plugin + local web viewer + shared TypeScript audit library. For users who want IDE-like tooling. |
| lucasastorian/llmwiki | 808 | — | Apache-2.0 | Python + TypeScript | CLI tool | Upload documents, connect Claude via MCP, agent writes the wiki. MCP-native. |
| Pratiyush/llm-wiki | 229 | 1 | MIT | Python | CLI tool | llmwiki CLI: session ingestion, static site generation, 2,651 tests, 16 lint rules, MCP server, Playwright E2E, AI exports. Most feature-rich; heaviest. |
| Kausik-A/pi-llm-wiki | 9 | 1 | MIT | TypeScript | Pi-native | Pi package with bundled skill + Pi extension. Enforces guardrails via code rather than convention. |
| yologdev/karpathy-llm-wiki | 43 | 2 | — | TypeScript | Self-growing | "Yoyo" AI agent grows the wiki from Karpathy's founding prompt. Commits are the agent's work. Includes web viewer. |
| hsuanguo/llm-wiki | 11 | 2 | MIT | Python | Self-growing | Wiki that "evolves with you" + Python scaffolding. |
Changelog
See CHANGELOG.md.
License
MIT
CHANGELOG.md
Changelog
[1.4.12] — 2026-10-26
Changed
Package author and LICENSE copyright now read
Michael Voigt (micu), matching the other packages.
[1.4.11] — 2026-10-25
Removed
ingest-web-chatstub. A second skill with the same name collides with the real one once both are installed. Install@micuintus/ingest-web-chatfor web chat ingestion.
[1.4.10] — 2026-10-25
Changed
ingest-web-chatmoves out into its own repo and package (micuintus/ingest-web-chat, npm@micuintus/ingest-web-chat), extracted with full history. Install it withpi install npm:@micuintus/ingest-web-chat. The old path keeps a stub pointer for this release only.
[1.4.9] — 2026-10-23
Added
ChatGPT extractor for
ingest-web-chat: dedicated provider alongside the Claude/Gemini fallback, with a gate guard (a Cloudflare challenge page was once saved as a chat and reported success) and CDP auto-launch for cold Chrome starts.
Fixed
Subskill discovery: Pi treats a directory containing
SKILL.mdas a skill root and does not recurse, sollm-wiki/skills/ingest-web-chatwas never discovered; folded the shadowing shim in and exposed it in the manifest.Scroll Gemini history to top before extracting.
[1.4.8] — 2026-05-30
Fixed
Non-Pi install now fetches the whole
llm-wiki/directory (tarball →tar) instead of justSKILL.md. The single-file copy left the lazy-loadedreferences/*recipes unresolvable; the skill pointed at paths that weren't there.
[1.4.7] — 2026-05-30
Fixed
Page-type consistency —
pi-session-recipe.mdusedtype: session, which isn't in the canonical type list and would be rejected by the type-validity lint; switched tosource(matching the agent-session recipe).SCHEMA.template.mdpage-types list was missingstub.
Added
log.mdvs git clarified in SKILL.md: it's the VCS-independent, semantic operation log — keep entries about what knowledge changed, not the file diffs git already records.Parallel ingest note: dispatch one subagent per independent source, but serialize writes to shared files (
index.md,log.md,raw-sources/index.md).
[1.4.6] — 2026-05-30
Added
Confidentiality guidance in SKILL.md: for proprietary or confidential sources, prefer reference-by-path over copying and don't reproduce confidential identifiers in any page you may publish.
Changed
references/code-source-recipe.mdexamples now use a fictional generic engine rather than identifiers from a private codebase.
[1.4.3] — 2026-05-09
Fixed
README install command —
pi install github:micuintus/llm-wikidoesn't work; pi has nogithub:source handler (onlynpm:,git:, and protocol URLs). Replaced withpi install git:github.com/micuintus/llm-wiki.references/pi-session-recipe.md— verification preamble now references@earendil-works/pi-coding-agent(the package was renamed from@mariozechner/pi-coding-agent; session layout is unchanged).
[1.4.2] — 2026-05-07
Fixed
str_replace→ "targeted edits" in SKILL.md Compile step. Pi's tool is namededit; the termstr_replaceis Anthropic-tool-API jargon. When the model readsstr_replacein the skill text, it may look for a tool that doesn't exist in Pi. Reworded to be tool-agnostic. (Thanks to a friendly reviewer for spotting.)
[1.4.1] — 2026-05-07
Added
Tagline: "As minimal as Pi." Added to README subtitle and package.json description.
Pi GitHub install:
pi install github:micuintus/llm-wikialongside existing npm install.
Changed
README — Restructured Install section with three explicit paths: Pi (npm), Pi (GitHub), everyone else (curl).
package.json keywords — Added
"minimal".
[1.4.0] — 2026-05-07
Added
references/code-source-recipe.md— lazy-loaded recipe for ingesting code repositories: register-by-path (don't copy), grep-driven inventory,path:linecitations, source-size heuristic (~1 page per ~1000 lines per cohesive subsystem), commit-SHA recording. Closes a gap exposed by real-world stress testing on a 6,400-line C++ engine source.references/synthesis-and-archive.md— lazy-loaded recipe for filing query answers: synthesis vs. archive distinction, when each cascade-updates, decision rule ("if value disappears with citation changes, it's synthesis; else archive").PDF guidance in SKILL.md Special sources: extract to text first, register the extracted text path.
Source-size heuristic in
quality.md: ~1 page per ~1000 lines is a useful starting point; under-mining is the common failure.
Changed
SKILL.md trimmed 6,957 → 6,260 bytes by lazy-loading the archive-on-request workflow and the correction pattern. Both are now one-line pointers in the Query section.
README byte claim corrected: "~4 KB" → "~6 KB". The previous figure was stale since 1.2.x growth.
Special sources section in SKILL.md reorganized: code repositories first (most common case), then sessions, web-chat, binaries, PDFs. Reliability paragraph moved into the same section.
Why
Review after a 49-page real-world code ingest found three gaps: code-as-source had no recipe, the README's byte claim was stale, and two SKILL.md subsections (archive workflow, correction pattern) were content that earned their place but didn't earn always-loaded bytes.
[1.3.0] — 2026-05-07
Added
type: stubfor registered-but-not-compiled sources and forward-reference placeholders. Lint flags stubs older than 30 days. Depth rule: frontmatter + one-paragraph rationale + link to raw source.Source reliability protocol. New
reliability: high|mixed|unverifiedfield for sources, with documented per-claim attribution pattern inquality.mdfor compiling frommixed/unverifiedmaterial (typical of LLM chat exports). Lint flagsmixed/unverifiedsources cited in compiled pages without a## Source reliabilitysection.Archive-on-request workflow in Query section. Explicit rule: synthesised answers always become new pages (never merged into existing concept pages); index summary prefixed
[Synthesis]or[Archive]; logged asarchiveverb.
Changed
Lint rewritten with deterministic / heuristic split. Auto-fix list (index-FS sync, internal links, raw refs, See Also bidirectionality, frontmatter validity, stub aging) separated from report-only list (contradictions, stale claims, orphans, concept gaps, unattributed mixed-source claims, archive-page drift). Sharper authority boundary; modeled after Astro-Han/karpathy-llm-wiki's lint structure.
Fixed
ingest-web-chat:## Conversationscasing bug. Section header detection was case-sensitive and would write a duplicate capital-C section if the existing wiki used lowercase. Now case-insensitive match preserves whatever casing the wiki already uses.
[1.2.3] — 2026-05-07
Changed
Page types collapsed back to Karpathy's 7. Removed
taxonomyandimplementationfrom the canonical type list; they're nowconceptvariants documented inquality.mdwith their own depth rules. Same depth bar, less type proliferation.Sharpened trigger phrases: "add to wiki", "save this", "file this", "remember this", "ingest this paper/article/chat/video", "what do I know about X", "knowledge base". Broader and more natural than the old "ingest into the wiki" / "lint the wiki" set.
Session recipes are self-correcting: added Verification preamble to
pi-session-recipe.mdandagent-session-recipe.mdinstructing the LLM to peek at one session file and confirm the schema before applying. If drifted, adapt the recipe and update the preamble — don't silently work around it.
Removed
Cross-wiki links section from SKILL.md. The lint rule "every
](path.md)must resolve from the file's directory" already covers it; the worked example was just path arithmetic.
Fixed
Tarball bloat: nested
.npmignoreexcludespackage-lock.jsonfrom theingest-web-chatsubskill on publish. Tarball: 59.6kB → 41.7kB.
[1.2.0] — 2026-05-07
Added
New page types:
taxonomy(categorized enumeration with comparison matrix) andimplementation(concrete code with architecture diagram + design decisions table).Tags frontmatter: Optional but recommended
tags: [tag1, tag2]for discoverability on wikis >20 pages.Correction pattern: Document corrections explicitly rather than silently rewriting — preserves learning arc.
Cross-wiki links: Convention for sibling-project wikis at same repo level (
../../../../sibling/llm-wiki/page.md).Relative path verification lint rule: Every
](*.md)link must resolve from the file's directory.Bidirectional link lint rule: If page A links to page B, page B must link back.
Tag presence lint rule: Warn if
tags:is missing on pages >100 lines.Proper CHANGELOG.md: Generated from full git history (1.0.0 → 1.2.0).
Changed
Depth rules (
references/quality.md): Added minimums fortaxonomyandimplementation.SCHEMA template (
references/SCHEMA.template.md): Addedtaxonomy/implementationtypes, tags convention, lint rules.SKILL.md: Added new types, tags, correction pattern, cross-wiki links, path verification.
README: Rewritten — cut bloat, replaced with direct opinion. Session recipes and web chat listed as lazy-loaded core features.
[1.1.5] — 2026-05-05
Added
Ingest vocabulary:
registervscompilevsingestwith precise log conventions.Raw-sources format:
raw-sources/index.mdregistry withpath | slug | topicstable.Forward references: Links to not-yet-compiled pages are explicitly allowed.
HTML/auth source handling: Acknowledged in Register step.
Related work table: Single table with Shape column and differentiation paragraph.
Changed
README: Related work consolidated into one table with Shape and Notes columns.
[1.1.2] — 2026-04-30
Added
ingest-web-chat subskill: CDP-driven web chat ingestion from Claude.ai, ChatGPT, Gemini, Le Chat.
Changed
SKILL.md slimmed: 252 → 77 lines. Quality heuristics and tooling lazy-loaded from
references/.Subskill cleanup: Dropped dead code, unused deps, orphan refs.
[1.0.2] — 2026-04-29
Added
Page quality heuristics (
references/quality.md): Minimum depth per type so pages don't stay stubs.Query filing: Syntheses that connect ≥2 pages get offered as
type: synthesis.Lint rules: Deterministic fixes (broken links, orphans, type consistency) + heuristic reports (stale claims, thin pages, concept gaps).
Schema co-evolution: Triggers that prompt SCHEMA.md updates.
Changed
README: Clarified minimal design, lazy-loaded recipes, Karpathy authority.
[1.0.1] — 2026-04-28
Added
Agent session recipe (
references/agent-session-recipe.md): Claude Code JSONL, Gemini CLI JSON, opencode SQLite.Pi session fork traversal (
references/pi-session-recipe.md): Fork detection, custom event extraction, branch-by-branch reading.npm install instructions in README.
Changed
SKILL.md: Auto-fix deterministic lint, dropped search paragraph.
[1.0.0] — 2026-04-28
Added
Initial release: Karpathy's LLM Wiki pattern as a minimal skill.
Three operations: ingest, query, lint.
Three-layer architecture: raw sources → compiled wiki → schema.
7 canonical page types:
concept,decision,bug,open-question,source,reference,synthesis.Pi package manifest for
pi install.
16 files
- .gitignore
- .npmignore
- ATTRIBUTION.md
- CHANGELOG.md
- LICENSE
- README.md
- llm-wiki/SKILL.md
- llm-wiki/references/SCHEMA.template.md
- llm-wiki/references/agent-session-recipe.md
- llm-wiki/references/code-source-recipe.md
- llm-wiki/references/pi-session-recipe.md
- llm-wiki/references/quality.md
- llm-wiki/references/source.template.md
- llm-wiki/references/synthesis-and-archive.md
- package-lock.json
- package.json
Advantages
- Zero runtime dependencies, CLI tools, or web servers required. evidence: README.md
- Data is stored as plain markdown, ensuring portability across different agents. evidence: README.md
- Lazy-loading of reference files keeps the memory footprint minimal. evidence: README.md
Limitations
- Lacks built-in IDE plugins or graphical interfaces for those preferring visual tooling. evidence: README.md
- Relies on agent-driven convention adherence rather than hard-coded guardrails. evidence: README.md
Security
Risk level: No risk found
This brain runs
Agent instructions that run or fetch something (2)
llm-wiki/SKILL.md:git already records the diff.llm-wiki/SKILL.md:For many independent sources, ingest can run in parallel: dispatch one subagent per source to compile concurrently.
Attribution and licence
- First committed by
micuintus
- Declared authors
- Michael Voigt (micu) (declared in package.json)
- Publisher
- micu (Community)
- Source
- micuintus/llm-wiki · commit e03cd38
- Licence
- MIT License (files served here)
- ATTRIBUTION.md (written by AutoGineer)
- Synced
- Contributors
- micuintus
AutoGineer is not affiliated with or endorsed by micuintus.
Download
The ZIP holds the files AutoGineer serves, with ATTRIBUTION.md and the licence. Download llm-wiki.zip