Skip to main content

llmwiki

Your coding-agent sessions, compiled into a local wiki you can search, graph, and open as plain files.

Live demo · Karpathy's LLM Wiki pattern

License: MIT Python 3.12+ Version CI Link check Wiki checks

llmwiki turns transcripts from Claude Code, Codex, Cursor, OpenClaw and others into redacted markdown, then builds a static site: session browser, topic graph, candidate review, MCP tools. Your data stays in a vault outside git. Nothing has to be running to read the site — open site/index.html.

What you get

  • A searchable static site — sessions, projects, topics, graph, analytics. Dark mode, Cmd+K search, syntax highlighting. Open the files; there is no server.
  • A knowledge layersynth writes source summaries and harvests entity/concept candidates. You review those on /candidates.html and apply decisions with llmwiki candidates apply. That review is a real gate, not an optional extra.
  • Exports agents can readllms.txt, llms-full.txt, JSON-LD, sitemap, RSS, plus an MCP server.
  • Your data never lands in git. Transcripts, wiki pages and the built site live in a vault directory you choose. This repository is code plus a public demo.

Page kinds and where each field comes from: docs/reference/page-kinds.md. Every screen: docs/reference/ui.md.

Install

Requires Python ≥ 3.12 (CI verifies 3.12 only; newer interpreters are installable but not matrix-tested). Runtime dependency is markdown only.

pip install llm-wiki-plus
# or: brew install AlexanderMakarov/tap/llmwiki
llmwiki init --vault ~/llmwiki-vault

Point a gitignored config.json at the vault so later commands need no --vault:

{
  "vault": { "default_path": "/home/USER/llmwiki-vault" }
}

From a clone, ./setup.sh installs the package and reports which agents it can see. The clone itself is not a vault — bare llmwiki init / sync / build against this repository are refused; name --vault or demo.

Agent commands (slash commands and skills) ship inside the package. After install:

llmwiki install-agent-kit --dest ~/.claude

That is what a Homebrew or pip user runs so /wiki-sync and friends work from their project, not from this repository. See docs/reference/cli.md.

The install also drops a small .llmwiki-agent-kit.json manifest in --dest, recording which files it wrote and their checksums. It is safe — and useful — to commit alongside .claude/commands/: it is what lets a later upgrade recognise its own files and remove ones it has retired, while leaving anything you wrote or edited alone.

The loop

sync / add  →  synth  →  review candidates  →  build  →  open site/index.html
llmwiki sync                         # new transcripts → vault/raw/sessions/
llmwiki add notes.md                 # optional: drop a document into raw/docs/
llmwiki synth                        # source pages + harvest candidates
# open vault/site/candidates.html, set decisions, paste the printed command
llmwiki build                        # vault/wiki/ → vault/site/

synth does not rebuild the site. build does. candidates apply rebuilds after a successful batch so /candidates.html matches the wiki (--no-rebuild skips that). Candidate review is the human gate: a row starts with no decision, Apply assembles llmwiki candidates apply --vault … --actions '…', and only that command writes the wiki.

One-shot: llmwiki all --graph-engine builtin runs the whole loop — sync → synth → build → graph → lint. Opt out of a stage with --no-sync, --no-synth, --skip-graph, or --skip-lint.

Agents

One row per agent. Supplies sessions = llmwiki sync can read its transcript store. Reads the wiki = slash commands / MCP after install-agent-kit (any MCP client can also call python3 -m llmwiki.mcp). Core adapters run on a default sync when their store exists; contrib adapters need --adapter <name> or adapters.<name>.enabled in config.

Agent Supplies sessions Reads the wiki Core or contrib
Claude Code ~/.claude/projects/*/*.jsonl slash commands, MCP core (claude_code)
Codex CLI ~/.codex/sessions/ AGENTS.md workflow, MCP core (codex_cli)
ChatGPT contrib store MCP contrib (chatgpt)
Copilot Chat VS Code workspaceStorage MCP contrib (copilot_chat)
Copilot CLI ~/.copilot/session-state/ MCP contrib (copilot_cli)
Cursor IDE workspaceStorage MCP contrib (cursor)
Cursor CLI ~/.cursor/chats/ MCP contrib (cursor_cli)
Gemini CLI ~/.gemini/ MCP contrib (gemini_cli)
Obsidian markdown vault intake wikilinks in the vault contrib (obsidian)
OpenCode shared OpenClaw schema MCP contrib (opencode)
OpenClaw ~/.openclaw/agents/*/sessions/ MCP contrib (openclaw)
llmwiki adapters --wide
llmwiki sync --adapter openclaw

Configuration

Shipped defaults: examples/sessions_config.json. Personal overrides: gitignored config.json at the clone root, merged on top. Full keys: docs/configuration.md.

Skip projects or dates with a .llmwikiignore next to the vault (one path or glob per line).

Documentation

Topic Link
Hub docs/index.md
Install + first vault docs/getting-started.md
Page kinds docs/reference/page-kinds.md
CLI docs/reference/cli.md
Site UI docs/reference/ui.md
Architecture docs/architecture.md
Upgrading docs/UPGRADING.md
GitHub Pages docs/deploy/github-pages.md

This repository's CLAUDE.md and AGENTS.md are for people changing llmwiki itself. Vault workflows for users live in the installed agent kit.

Acknowledgements

License

MIT © Alexander Makarov; based on upstream Pratiyush/llm-wiki

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

llm_wiki_plus-2.2.0.tar.gz (1.4 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

llm_wiki_plus-2.2.0-py3-none-any.whl (867.0 kB view details)

Uploaded Python 3

File details

Details for the file llm_wiki_plus-2.2.0.tar.gz.

File metadata

  • Download URL: llm_wiki_plus-2.2.0.tar.gz
  • Upload date:
  • Size: 1.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for llm_wiki_plus-2.2.0.tar.gz
Algorithm Hash digest
SHA256 5786b44a9da77d982c254b48c06a59c44da30ea06739ce13b2a730fd37589273
MD5 43a27ab173c10f0137a9b6111c90ff19
BLAKE2b-256 58976bd6ca5ffd17755b2b72a37cdf2c87debc7532d004abfd70dfd3d85df0cd

See more details on using hashes here.

Provenance

The following attestation bundles were made for llm_wiki_plus-2.2.0.tar.gz:

Publisher: release.yml on AlexanderMakarov/llm-wiki

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file llm_wiki_plus-2.2.0-py3-none-any.whl.

File metadata

  • Download URL: llm_wiki_plus-2.2.0-py3-none-any.whl
  • Upload date:
  • Size: 867.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for llm_wiki_plus-2.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a924998f1afa5f6bcf2ef56f4c8c7733a49d2ffd8c03a01c517f8c26df281a13
MD5 27b2a72fdb42ee5a3136c86939426a6b
BLAKE2b-256 99a318b1234ec139aa0fa3264597d942b43a0965739836f2714ea8315c014706

See more details on using hashes here.

Provenance

The following attestation bundles were made for llm_wiki_plus-2.2.0-py3-none-any.whl:

Publisher: release.yml on AlexanderMakarov/llm-wiki

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

2.3.0

2 files

This release

2.2.0 This release

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page