Topic Map
Topics found for you in your books, notes, shelves and Bases and drawn as a map.
Topic Map reads every passage, groups what it says into named topics, and gives you a map to explore and a place to ask questions. It runs on Model Hub, which holds your AI keys, and reads your Calibre books through Library Hub.
Finds the topics your books and notes share, draws them as a map, and answers a question with cards that quote their passage.
A map of what you've read
A shelf of books, or a few years of notes, holds more than anyone can keep in their head. Topic Map reads it passage by passage and writes a card for each idea, with the quote it came from. Cards that say the same thing become a topic, and topics that sit close together become a theme, each one named for you. Then it draws them: ideas that mean alike sit side by side, colored by theme.
Naturalists' shelf › Islands and how species change
Species that differ by island
31 cards · 3 books
Linked topics (↗ another theme)
Draws on
Voyage of the Beagle14
On the Origin of Species11
The Malay Archipelago6
Show its cardsOpen in theme noteUnder the hood: each card's 30 nearest cards are measured on whole vectors, and clustering runs in a Rust kernel compiled to WebAssembly, so the same cards give the same topics on every computer. Themes and Network draw with WebGL; Words draws with the page itself. Technical details →
What it does for you
It reads what you've collected, sorts it into topics, and keeps every idea tied to the words it came from.
Topics, found for you
I didn't want to tag a library by hand, and nobody can tag what's inside a book. Topic Map finds the topics itself. It works out how many there are, names each one against the others so the names stay distinct, merges clear overlaps and flags the loose ones. It asks you only when there's a real choice. Each topic lists its cards by kind, the books it draws on, and any claims inside it that disagree. Themes are written as notes in your vault, with every card and its quote, so they link and show up in Graph view like notes you wrote. Each topic and theme has a short summary, made in the background and priced first.
Islands and how species change › Topic
Species that differ by island
Each island in a group has kinds of its own, close to its neighbors' but not the same.
31 cards · 3 books
Cards by kind
Draws on
Claims that disagree1 pair
Off-topic cards2
Ask, and get the passages back
Ask a question in plain words and you get cards, not an answer from nowhere. Each card names its book and place and quotes its passage. Read the passage around the quote, or open the book in Library Hub's reader at that line. From any card, Other books finds where another author makes the same point, and Disagreements finds where one takes the other side.
12 cards. The question cost a fraction of a cent to search.
claimVoyage of the Beagle › Ch. XVII0.91
One species, changed for different ends
Seeing this gradation and diversity of structure in one small, intimately related group of birds, one might really fancy that from an original paucity of birds in this archipelago, one species had been taken and modified for different ends.
conceptVoyage of the Beagle › Ch. XVII0.86
The archipelago as a world of its own
The natural history of these islands is eminently curious… it seems to be a little world within itself.
claimOn the Origin of Species › Ch. XIV0.78
Many forms from a simple start
from so simple a beginning endless forms most beautiful and most wonderful have been, and are being, evolved.
Write-ups where every quote is real
When a list of cards isn't enough, ask for a write-up. Topic Map gathers the best card from each book, looks for books that disagree, and drafts a note in sections. Every quote is checked against its passage, and one that isn't there is flagged right where it stands. You see the cards and the price of the one writing call before anything is written.
Topic Map / Drafts / Naturalists' shelf
Is nature at peace or at war?
Lived accounts
Thoreau, alone at the pond, found the woods good company: "There can be no very black melancholy to him who lives in the midst of Nature and has his senses still." Walden, Solitude ✓ quote checked
Disagreements
Darwin answers that the calm is only on the surface: "we do not see, or we forget, that the birds which are idly singing round us mostly live on insects or seeds, and are thus constantly destroying life." Origin, Ch. III ✓ quote checked
White is said to have called his parish "a quiet theater of plenty."
▲This quote isn't in any passage the draft was given.
Your whole library on one map
With Library Hub, your books become one map. Each dot is a book, placed near the books most like it and colored by its Library Hub shelf, with a ring for a second shelf. Light a shelf to see how far its books spread and which books from other shelves sit among them. A new book finds its place and nothing else moves.
Library › Book
Walden
On Transcendentalists and Natural history
Similar books
Open in readerOpen its topic mapShelves: select one to light it
Collections from anything you keep
A collection is what Topic Map reads together: the books on a shelf, the notes in a folder or with a tag, or the rows of a Base. A lens says what to pull from each passage. Three come built in: nonfiction (concepts, claims, cases and practices), fiction (motifs, characters, places and objects) and notes (ideas, claims, decisions and open questions). Journals, saved chats from Model Hub and web clips have lenses of their own too. Ask a notes collection for its open questions and you get every question your notes leave unanswered, each with the note it came from. Customize this lens… makes one of your own. A Base or a folder of notes is on the map before anything is read: color it and filter it by any property, with a chart for each, and once it's indexed, see which properties stand out in a topic.
Your collections in Claude
If you work in Claude Code, Claude Desktop or Codex, connect them to Model Hub's MCP server. MCP is the standard way AI apps share tools. Your agent can then search your collections, follow a card to other books and read its passage, so what it writes quotes your books, not its memory.
Under the hood: six tools (topic-map.collections, search, neighbors, get, read and open_map) registered on Model Hub, served over MCP's Streamable HTTP transport, following the MCP spec of 2025-11-25. Only open_map acts, and it changes nothing in your vault. Technical details →
It works with what you have
Topic Map needs Model Hub for its models, so it never asks for a key of its own. Each job, from reading passages to naming topics, runs on the Model Hub tier you choose, and every call lands in the same receipts as your other plugins.
Books come through Library Hub, which reads your Calibre library. Without it, collections of notes and Bases work just the same.
What it writes is plain Markdown in your vault: collection notes, theme notes and drafts. Theme notes link the books and notes they quote, so backlinks and Graph view work on them, and a passage link opens the exact passage from any note.
Money and data, plainly
- Topic Map is free. The model calls go through Model Hub to your provider, who bills you for them.
- Reading a collection is priced before it starts. A dry run counts the passages and shows the cost, and a spend limit stops the run if it would go over. After that, a run reads only what changed.
- A search costs a fraction of a cent per question. Opening and exploring the map costs nothing: it makes no model call and no network request.
- Your text goes only to the providers you set up in Model Hub: the passages being read, and your questions.
- Every write is shown to you first and logged, and Undo a run takes it back.
- The index (passages, cards and vectors) lives in Topic Map's plugin folder, so uninstalling the plugin deletes it, with the reading you paid for. Copy its
corporafolder out first to keep it. - I get nothing from you: no telemetry, no account, no ads.
Things to try
Start with these in Topic Map.
Topic Map stands on its siblings. Model Hub runs every model call it makes, and Library Hub hands it your books and shelves.
Your AI keys, tiers and receipts, shared by every plugin.
Your Calibre library as notes, on shelves.
What it can't do yet
- It's desktop only.
- Topics change only when you run Find topics again. New cards from a later index wait until then.
What I'm building next
Topic Map reads your books and notes, finds the topics they share, draws them as a map, and answers your questions with the passages they come from.
Built so far: topics found and named for you; questions answered with the passages behind them; write-ups where every quote is checked; your whole library on one map; collections from shelves, folders, tags and Bases; and your collections in Claude and other AI apps.
Soon
- Gaps between themes. See where two close themes have few cards linking them, and start a write-up from that gap.
- Answers you can keep. Write-ups number their sources, and you can save an answer back into your vault as a note.
- Search inside a topic. Ask a question within one topic, right from the topic itself.
- New cards find their topics. Cards from a later index join the topics they fit, and Topic Map suggests finding topics again only when the map has drifted.
- Claims labeled by evidence. Each claim says whether it's established, emerging or a hypothesis, with the passage that backs it.
Later
- People, places and terms across books. The same person, place or term is recognized wherever it appears, so you can follow it from book to book.
- Topics shaped by your links. The links and tags in your notes pull their cards together, so your own structure shapes the topics.
- A wiki from your cards. Topics and themes compiled into pages you can read and edit, with your edits kept when the cards change.
- A richer map. Each book's footprint, a path from one topic to another, what changed since the last run, and views you can save.
- Reading with your topics beside you. Read a book with its cards and topics in the margin, and use a map of the book as a way in.
Get it running
You need desktop Obsidian 1.13.1 or later and Model Hub with one provider set up. For books, add Library Hub as well.
- Install and enable Model Hub from Community plugins, and add a provider in Settings → Model Hub.
- Install and enable Topic Map, and Library Hub too if you want collections of books.
- In Settings → Topic Map → Collections, select New collection… and pick a shelf, a folder, a tag or a Base.
- Select Index…, read the price in the dry run, and start it.
- Select Find topics…, then Open map.
Curious how it works inside? Start with Technical details →. Building a plugin on it? I've written Agent docs → for your coding agent, with an llms.txt it can read.
Join
One list for everything here: an email when a plugin ships, plus the posts I write about these projects on brianspringer.com.
Want to help build this, or join the co‑op? Email me about joining →
Insurgent Methods is where we build at a different scale, to take on the biggest problems.
- Needs
- Obsidian 1.13.1, desktop
- and Model Hub