LLM wiki in Obsidian: set up Karpathy's pattern in a vault
Updated 9 min read
To run Karpathy’s LLM wiki in Obsidian, give it its own vault (or one top-level folder in your vault) with raw/ for sources, folders for the pages an agent writes, an index.md, a log.md and a schema page that holds the rules. Then pick who maintains it: Claude Code or Codex started in that folder, Hermes Agent’s bundled llm-wiki skill, or an Obsidian plugin that ingests and answers from inside the app. Obsidian is where you read the pages and check the wiki’s shape in graph view.
What does an LLM wiki look like in Obsidian?
Karpathy’s gist has three layers: raw sources the agent never edits, a wiki of markdown pages the agent writes, and a schema that tells it how. It has three operations: ingest, query and lint. Our LLM wiki post covers the idea; this guide is the setup.
In a vault, raw sources are clipped articles and transcripts, the wiki is a set of folders the agent owns, and the schema is a note you can edit like any other. If you already run Claude Code over your personal notes, as in our Obsidian and Claude Code guide, keep the wiki in its own folder so your notes and the agent’s pages stay apart in search and in the graph.
Which folder layout should I use?
This is the layout Hermes Agent’s llm-wiki skill creates. It is the most fully specified version we have read, and it stays close to the gist:
wiki/ # a vault, or one top-level folder in your vault
SCHEMA.md # the rules every maintainer reads first
index.md # every page, one line each, grouped by type
log.md # append-only: ## [YYYY-MM-DD] action | subject
raw/ # sources; never edited
articles/
papers/
transcripts/
assets/ # images, set as Obsidian's attachment folder
entities/ # people, companies, products
concepts/ # ideas and topics
comparisons/ # side-by-side pages
queries/ # answers worth keeping
The plugins choose their own folders. The Karpathy LLM Wiki plugin writes to wiki/sources/, wiki/entities/ and wiki/concepts/. Auto LLM Wiki defaults to raw/, raw/assets/, wiki/, wiki/index.md and wiki/log.md, all configurable. Decide before the first ingest, because moving pages later means rewriting links.
From the gist: set Settings → Files and links → Attachment folder path to raw/assets/ and bind Download attachments for current file to a hotkey, so a clipped article’s images are saved where the agent can read them. Obsidian Web Clipper turns web articles into markdown for raw/articles/.
What goes in the schema page?
The gist says the schema is a file such as CLAUDE.md or AGENTS.md. In a vault, make it a page of its own, SCHEMA.md, and point each agent’s file at it. Then the rules are the same whichever agent runs the ingest, and you read and edit them in Obsidian. A starting point, adapted from the Hermes skill’s template:
# Wiki schema
## Domain
One sentence on what this wiki covers.
## Pages
- File names: lowercase-with-hyphens.md, one topic per page.
- Frontmatter: title, type (entity | concept | comparison | query),
tags, sources, created, updated.
- Tags come from the list below. Add a tag here before using it.
- Link with [[wikilinks]]. Every page links to at least 2 others.
- Make a page for anything in 2+ sources or central to one.
No pages for passing mentions.
- Split any page over 200 lines.
## Tags
(10 to 20 tags for this domain)
## Ingest
1. Read SCHEMA.md, index.md and the last 30 entries of log.md.
2. Read the new file in raw/ and tell me the key points.
3. Search for existing pages before creating any.
4. Update or write pages. When a source contradicts a page,
keep both claims with their dates and say so.
5. Add new pages to index.md. Append to log.md, listing every file.
6. If more than 10 existing pages would change, ask me first.
## Query
Read index.md, then the pages it points to. Cite them as [[page]].
File answers worth keeping in queries/ and log the query.
## Lint
Report orphan pages, links to missing pages, pages missing from
index.md, contradictions, stale claims and unknown tags.
Change nothing until I say which to fix.
Then point each agent at it:
- Claude Code: a
CLAUDE.mdin the wiki folder whose first line is@SCHEMA.md. Claude Code’s memory docs describe@pathimports in CLAUDE.md. Our CLAUDE.md guide covers the rest of the file. - Codex and other agents: an
AGENTS.mdthat says “Read SCHEMA.md before any task in this folder.” See the AGENTS.md guide. - Hermes Agent: the
llm-wikiskill readsSCHEMA.mdon its own.
How do I run ingest, query and lint?
Ingest. Drop a file into raw/, then tell the agent:
Ingest raw/articles/some-article.md following SCHEMA.md.
Karpathy ingests one source at a time, reads the summary and tells the agent what to emphasize. One source can touch 10 to 15 pages, so watch the first few closely and add a rule to the schema whenever you correct the same thing twice. For batches, the Hermes skill reads every source first, searches once, and updates index.md and the log once at the end; copy that order into your schema.
Query. Ask a question in the agent’s chat. It reads index.md, opens the pages listed there and answers with [[links]] you can click in Obsidian. When an answer took real work (a comparison, an analysis), have it filed in queries/, so your questions add to the wiki as well as your sources.
Lint. Ask for a lint pass after a batch of ingests, or weekly. The Hermes skill’s lint has 13 steps, including orphans, index completeness, frontmatter and tag checks, stale pages and contradictions. Have the agent report first and fix second.
If every log entry starts the same way, the gist’s tip shows the last five:
grep "^## \[" log.md | tail -5
To save these routines as commands in Claude Code, use a skill; our Obsidian and Claude Code guide has an example.
Which agent should maintain the wiki?
| Maintainer | What it is | Pick it when | Keep in mind |
|---|---|---|---|
| Claude Code or Codex in the folder | A coding agent; the schema is reached from CLAUDE.md or AGENTS.md | You want to steer each ingest and grow the schema as you go | You write the routines, or install a skill from our LLM wiki GitHub roundup |
Hermes Agent llm-wiki skill |
Bundled skill, version 2.1.0, MIT license | You want the routines ready-made, or ingests from a chat app or a scheduled job | The wiki path defaults to ~/wiki |
| Karpathy LLM Wiki plugin | Obsidian community plugin, Apache-2.0, about 56k downloads, Obsidian 1.11.4 or later, desktop and mobile | You want no terminal; it supports 16+ model providers, including Ollama and LM Studio | Its behavior lives in plugin settings, not a schema page you edit with the agent |
| Auto LLM Wiki plugin | Obsidian community plugin, about 2k downloads | You want to preview every change before it is written | It calls an OpenAI-compatible chat endpoint you configure |
Download counts are from each plugin’s page on 1 October 2026. Both install from Settings → Community plugins → Browse. The Karpathy LLM Wiki plugin’s page says it only creates pages under wiki/. Auto LLM Wiki shows a plan of file changes for ingest and lint, applies it only after you confirm, and rolls back if any part fails.
How do I use Hermes Agent’s llm-wiki skill with Obsidian?
We run Hermes Agent (v0.42.5 here), where llm-wiki is one of the bundled skills installed by default. Its full SKILL.md is published in the Hermes docs. From those docs:
-
Set
WIKI_PATHin your Hermes.envto the folder Obsidian opens. Without it the skill uses~/wiki. If you run several Hermes profiles, each has its own.env, so set it in each one that should write the wiki.WIKI_PATH=/Users/you/Obsidian/wiki -
Start it. Every installed skill is a slash command in Hermes, and the skill also loads when you ask to start, ingest into, query or lint your wiki.
/llm-wiki start a wiki on battery chemistry researchIt asks what the wiki covers, then writes
SCHEMA.md,index.mdandlog.mdand creates the folders above. -
Open the folder in Obsidian. If you also use Hermes’s
obsidianskill, setOBSIDIAN_VAULT_PATHto the same folder.
The part worth copying into any schema is its first step: every session, before any ingest, query or lint, the skill reads SCHEMA.md, index.md and the last 20 to 30 log entries. That stops a fresh session from writing a second page on a topic the wiki already covers. It also stores a sha256 of each raw source, so an unchanged source is skipped on re-ingest and a changed one is flagged.
If Hermes runs on a server with no display, the skill’s docs describe obsidian-headless, which syncs the folder through Obsidian Sync (a paid subscription), so you read on your laptop what the agent writes on the server. Our Hermes Agent skills guide covers how skills load across profiles, and Hermes Agent setup covers installing it.
How do I use graph view on an LLM wiki?
Graph view is where Obsidian earns its place in Karpathy’s setup. Settings from Obsidian’s graph view docs that suit a wiki:
- Groups. Color each folder: a group per search term such as
path:entities,path:conceptsandpath:queries. Hubs and gaps show up by type. - Orphans. Turn this filter on to see pages with no links. Each one is a page an ingest wrote but never linked in.
- Existing files only. Turn it off to show pages that are linked to but not written yet. These are often the next ingest worth doing.
- Local graph. Open it on one concept page and raise the depth to see what feeds it.
- Animate. Plays the graph in order of creation time, ingest by ingest.
If the agent writes YAML frontmatter, the Dataview plugin can turn it into tables. The Hermes skill’s docs give TABLE tags FROM "entities" WHERE contains(tags, "company"). In the same form, TABLE sources, updated FROM "concepts" WHERE confidence = "low" lists the pages the skill marks as weakly supported.
To see the graph outside Obsidian, open the folder in our free wiki graph viewer. It runs in your browser and uploads nothing, and it also opens public GitHub repositories of markdown.
When should the wiki move out of the vault?
A vault suits Karpathy’s reference setup: one person, one agent, one folder. It gets harder when:
- A second agent writes. Every ingest rewrites
index.mdandlog.md, so two ingests at once edit the same files, and a synced folder can lose one save. - An agent cannot reach the folder. Claude or ChatGPT in a browser cannot read files on your laptop.
- You need to know who wrote what. A folder records no author.
Share it with your other agents
Dexio is a hosted wiki that agents read and write over MCP. Claude Code, Codex, Cursor, Hermes Agent, OpenClaw, Claude and ChatGPT list, read, search, write, edit, move and link markdown pages in one wiki, and you see what your agents know as a page graph in the app. Pages use [[wikilinks]], every change keeps the name of the agent that made it, and a write can carry the version the agent last read, so one agent does not overwrite another. It is open source (AGPL-3.0) and hosted: free for one person, Team $10 and Business $20 a member a month. Any wiki downloads as markdown, so you can still open it in Obsidian.
Dexio does not sync with a vault. Move the wiki folders and make SCHEMA.md a page every agent reads first. To connect an agent that runs commands, tell it “Look at dexio.wiki and log me in.” Per-agent setup is in our guides, for example Hermes Agent. If you would rather keep the vault and expose it to more agents, see Obsidian MCP. If one agent on one machine writes your wiki, the vault is enough.
FAQ
Do I need a plugin to run an LLM wiki in Obsidian? No. The wiki is a folder of markdown files. An agent started in that folder can maintain it, and Obsidian shows the changes. Plugins are for doing it without a terminal.
Can I run it with local models? The Karpathy LLM Wiki plugin lists Ollama and LM Studio among its providers. With an agent, it depends on which models that agent supports.
Is Hermes’s llm-wiki skill the same as Karpathy’s gist? It follows the gist and adds specifics the gist leaves to you: SCHEMA.md, a tag taxonomy, rules for when to create a page, confidence fields, source hashes and a 13-step lint.
Sources
- https://gist.github.com/karpathy/442a6bf555914893e9891c11519de94f
- https://hermes-agent.nousresearch.com/docs/user-guide/skills/bundled/research/research-llm-wiki
- https://hermes-agent.nousresearch.com/docs/user-guide/features/skills
- https://community.obsidian.md/plugins/karpathywiki
- https://community.obsidian.md/plugins/auto-llm-wiki
- https://community.obsidian.md/plugins/dataview
- https://obsidian.md/help/plugins/graph
- https://obsidian.md/help/plugins/search
- https://code.claude.com/docs/en/memory
- https://dexio.wiki/agents.md
- https://dexio.wiki/llms.txt