Advanced Topics — Claude Code

Patterns that take the wiki from useful to indispensable once you've got the basics down. Each section is independent — pick what applies to you.

Your voice file

A VOICE.md file in your wiki root tells Claude who you are — your writing style, areas of expertise, how you like information structured, and what you're trying to build. Once it exists and CLAUDE.md tells Claude to read it on every session, every summary and note comes back in your voice rather than a generic one.

From a Claude Code session inside the wiki repo, paste this:

Create a VOICE.md file in my wiki root. Ask me a series of short questions to understand: my writing style preferences, my areas of expertise (so you know what to explain vs. what to assume I know), how I like information structured, and my main goal for this wiki. Then write the file based on my answers.

Then wire it into your session bootstrap:

Update CLAUDE.md to instruct that VOICE.md must be read at the start of every session, before anything else.

VOICE.md is meant to evolve. Whenever Claude produces something that sounds off, tell it to update the file with what was wrong and what your actual voice would have done.


When the wiki gets big — qmd

qmd (by Tobi Lütke) is an on-device search engine for markdown notes. It runs BM25 keyword search, vector semantic search, and an LLM reranker — all locally — and ships an MCP server so Claude Code can search your wiki natively instead of grepping blind.

Once your wiki passes a few hundred pages, grep and folder structure stop being enough; Claude either misses things or burns context loading the wrong files. qmd fixes both.

Install

npm install -g @tobilu/qmd

Index your wiki

Register the wiki as a collection, then build embeddings:

qmd collection add ~/wiki --name wiki
qmd embed

Re-run qmd embed after large ingest sessions to keep the index fresh. (Or set up a cron job, if you want it to be automatic.)

Use it from the CLI

Three flavors of search:

Hook qmd into Claude Code

This is the real unlock. qmd ships an MCP server that exposes query, get, and multi_get as native tools to Claude. Add it to Claude Code:

claude mcp add qmd -- qmd mcp

From then on Claude can answer "what did I write about X" by running a real ranked search instead of guessing which files to read — context windows go further, retrieval gets sharper. The qmd README has the full MCP setup docs.


Obsidian tricks worth knowing

Obsidian is just a viewer for your markdown folder — but a few of its features make a Claude-maintained wiki noticeably more useful.

Properties (YAML frontmatter)

Anything between --- fences at the top of a markdown file becomes structured metadata Obsidian indexes. Tell Claude to use it consistently:

For every new page you create, add a YAML frontmatter block with: created (today's date), source (where the content came from), tags (2–4 relevant tags), and status (draft|active|archived). Update CLAUDE.md so this becomes the default.

Dataview — your wiki as a queryable database

Install the Dataview community plugin. Once your pages have properties, you can drop live queries into any note. Example: a page that always shows the ten most recently touched sources, sorted by date:

```dataview
TABLE source, tags, file.mtime AS "Modified"
FROM "sources"
SORT file.mtime DESC
LIMIT 10
```

Or a "loose ends" view of every page tagged #followup:

```dataview
LIST
FROM #followup
SORT file.mtime DESC
```

Templater — prompts as templates

The Templater plugin lets you bind keystrokes to templates with variables. Pair it with Claude Code: a hotkey creates a new sources/YYYY-MM-DD-title.md stub with frontmatter filled in, then you flip to the terminal and tell Claude to summarize the actual content into it.

Daily notes as an ingest log

Enable the built-in Daily notes plugin. Every wiki update Claude makes can append a one-line entry to today's daily note ("ingested X from Y, linked into Z"). After a few months you have a searchable log of what your past self was thinking about — and Claude can read it for context.

Update CLAUDE.md so that after every ingest or significant edit, you append a single-line summary to today's daily note in dailies/YYYY-MM-DD.md.

Graph view + backlinks

Open the local graph (the connected-dots icon) on any page to see what's linked from where. Claude doesn't see this directly, but you do — and dense clusters of links are usually a signal that there's a synthesis page worth writing. Ask Claude to write it.


More patterns get added here as I find them. If something on this page is wrong or out of date, the source is at github.com/brandtam/ai-stuff.