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; originally based on 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.3.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.3.0-py3-none-any.whl (875.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: llm_wiki_plus-2.3.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.3.0.tar.gz
Algorithm Hash digest
SHA256 0d38a545c546446517d9663f41d8ef47d305f4fb78ac2a5a87844981966b9968
MD5 aee0345c300b37daa7b14882a737ce39
BLAKE2b-256 bf16c4a5706d00f6389718da8dbc2f7737927c495cb51c3e079eb801bfad9b0c

See more details on using hashes here.

Provenance

The following attestation bundles were made for llm_wiki_plus-2.3.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.3.0-py3-none-any.whl.

File metadata

  • Download URL: llm_wiki_plus-2.3.0-py3-none-any.whl
  • Upload date:
  • Size: 875.4 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.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 842634154ffece60ac716fcb5bccedafd154c26de26906a0fccbfd05f3f0bf6b
MD5 1017e1d9c9c27a98d7bc62cb8a920695
BLAKE2b-256 b7b4a73d0956496a37f15eb4b63d390653e4340cf7f421df0c2c5978a11216ab

See more details on using hashes here.

Provenance

The following attestation bundles were made for llm_wiki_plus-2.3.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

This release

2.3.0 This release

2 files

2.2.0

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