Field note

We don't listen to podcasts. We compile them.

Here is the loop we run: pull a transcript, compile it into a linked knowledge network, then work every question and every post out of that network - never out of the raw audio again. Vocateca is the first step. The compounding is the point.

Audio doesn't compound

You listen to an hour and one line stays. A month later you can't find it, can't quote it, can't hand it to a model. Audio is a locked format - Andrej Karpathy called it opaque back in 2022, and it still is. [1]

Ten podcasts a week and nothing accretes. The question was never 'how do I listen faster.' It is 'how does what I heard this year become something I can query next year.'

Read it with a model, in passes

Karpathy reads his sources with an LLM in passes - not to skim, but to end up with a deeper grip than reading alone would give. [2] The move is old. What changed is that a transcript now lets you point the same passes at a podcast, not just at a blog post.

pass 1 is manual, then pass 2 'explain/summarize', pass 3 Q&A

Andrej Karpathy, on reading text sources with an LLM · View on X · Accessed 11 July 2026

His habit is about text - blogs, articles, book chapters. [2] A spoken talk stays locked out of it until someone turns it into text. That someone, for us, is Vocateca.

How we run the loop

Four steps. The first is mechanical, the rest compound. We keep the raw archive immutable and let a model maintain the network on top of it.

  1. 1

    Ingest with Vocateca

    Vocateca transcribes the shows, videos and recordings we follow, on-device, and writes each one into an immutable archive. Timestamps and speakers survive. Nothing is uploaded.

  2. 2

    Compile into a network

    A model reads the raw transcripts and writes them up as encyclopedia pages: one concept per page, every related concept linked. Each page carries its sources in the header, so every claim traces back to a line in a transcript.

  3. 3

    Query the network

    Questions read the compiled pages, not the raw audio. The answer is already written, cross-linked and sourced - we sharpen it, we don't rebuild it from scratch each time.

  4. 4

    Create from it

    Posts, briefings and positioning come out of the network. The thinking is done once, in the wiki; the artefact is a view onto it. The non-obvious content comes from the cross-links.

Why a compiled network - not a folder of files, and not RAG

Search over raw files (RAG) re-reads the sources on every question and forgets everything the moment it answers. A compiled network does the reading once and keeps the result. The difference is whether your knowledge accretes or resets.

  • It compounds

    Every new transcript is folded into what's already written, not stacked next to it. The network is worth more after each source, not just longer.

  • The links are the value

    A page is only as useful as what it points to. A claim in a podcast that connects to a claim in an article - that is the insight, and only a linked network surfaces it.

  • Every claim is sourced

    Each page lists the transcripts it was compiled from. You can always walk back from a sentence to the exact source - no black box, no invented authority.

  • Legible to the models

    The whole network is plain text with links. That is the one format an LLM can actually read - the same reason Karpathy cleans his own talks into text for models to consume. [3]

The prompts

Three workflows plus the schema they run on - the same raw sources / wiki / schema split Andrej Karpathy uses for his own reading practice. [5] Copy a block into whatever agent or model you use. The wording matches what Vocateca actually writes to disk: Markdown frontmatter (title, show_slug, pub_date, a source URL, transcribed_at), one [[show-slug]] wikilink, and speaker turns labeled Sprecher 1, Sprecher 2.

Ingest a source

Read one transcript, fold it into the wiki, update cross-references, flag contradictions.

You are maintaining a personal knowledge wiki compiled from podcast and video transcripts. The wiki is a folder of Markdown pages linked with [[wikilinks]]. The raw transcripts are separate, immutable source files - also Markdown, one per episode, with YAML frontmatter (`title`, `show_slug`, `pub_date`, a source URL, `transcribed_at`) and speaker turns labeled **Sprecher 1**, **Sprecher 2**, and so on. Never edit a raw transcript.

Source to ingest: <path to the transcript, or paste it below>

Do this:
1. Read the source transcript end to end.
2. For every claim or concept worth keeping, find the wiki page it belongs on - search titles and [[wikilink]] mentions first, so you don't create a duplicate page for a concept that already has one.
3. If the page exists, fold the new material into the prose - don't just append a bullet list. Add a [[wikilink]] to every other wiki page a sentence relates to.
4. If a concept clearly deserves its own page and doesn't have one yet, create it, and link it from every page that already mentions it.
5. On every page you touch, add or update a "Sources" line citing the transcript file (and the speaker turn, if you can point to one) the material came from.
6. If the source contradicts something already written, do not overwrite it. Add a visible note - "Contradicts [[page]] (see <source>): ..." - and leave the decision to a human.
7. Report back: pages created, pages updated, contradictions flagged.

Query the wiki

Answer a question from the wiki with citations, file the good answer back as a page.

You are answering a question from a personal knowledge wiki: a folder of Markdown pages linked with [[wikilinks]], compiled from podcast and video transcripts.

Question: <your question>

Do this:
1. Search the wiki first, not the raw transcripts. Follow [[wikilinks]] to gather everything connected to the question, not just the first page that matches.
2. Answer using only what the wiki says. Where a claim needs more backing, open the "Sources" line on the page it came from and trace it to the transcript (and speaker turn, if named) it was compiled from.
3. Cite as you go - name the wiki page, and the transcript underneath it, after each claim.
4. If the wiki doesn't have enough to answer well, say so instead of filling the gap from general knowledge. Flag it as a page that needs a source.
5. Write the final answer to a new page, or extend an existing one, and link it into the pages it draws on - so the next question on this topic starts from a written answer, not the raw transcripts again.

Lint the wiki

Health check: orphaned pages, unlinked mentions, stale sourcing.

You are running a health check on a personal knowledge wiki: a folder of Markdown pages linked with [[wikilinks]].

Do this:
1. Orphaned pages - list every page no other page links to with a [[wikilink]]. A page nobody links to won't surface during a query pass.
2. Unlinked mentions - for each page, scan the others' prose for that page's title (or an obvious synonym) written as plain text instead of a [[wikilink]], and flag the missing link.
3. Stale sourcing - list every page whose "Sources" line is missing, or points at a transcript older than <N months> - a claim nobody can trace back to audio anymore.
4. Thin pages - list pages under <N words> - likely stubs that need more source material, or merging into a bigger page.
5. Open contradictions - list any "Contradicts [[page]]" notes left by an earlier ingest pass that are still unresolved.
6. Output one checklist, grouped by the five categories above, so a human or the next ingest pass can work through it.

The schema

Drop this in the wiki root. It pins down conventions so ingest, query, and lint don't have to guess them each time.

# Wiki schema

Read this before running ingest, query, or lint on this wiki.

## Layers
- Raw sources (wherever your transcripts live) - immutable. Markdown, one file per episode: YAML frontmatter (`title`, `show_slug`, `pub_date`, a source URL, `transcribed_at`), one `[[show-slug]]` wikilink near the top, and speaker turns labeled **Sprecher 1**, **Sprecher 2**, and so on. Never edit these.
- The wiki (this folder) - one Markdown page per concept, cross-linked with [[wikilinks]]. What ingest writes to and query reads from.
- This schema - the conventions layer. Update it when a convention changes; don't let pages drift from what's written here.

## Page conventions
- One concept per page. File name = the page title, kebab-case.
- Open with a one-paragraph summary, then detail.
- Every claim that comes from a source gets a "Sources" line at the bottom, citing the transcript file (and speaker turn, where possible).
- Link liberally - any concept named in the prose that has, or deserves, its own page gets a [[wikilink]].
- Contradictions between sources are recorded inline, not silently resolved: "Contradicts [[page]] (see <source>): ..."

## Workflows
- ingest - fold a new source into the wiki, update cross-references, flag contradictions.
- query - answer a question from the wiki with citations, file the answer back as a page.
- lint - health check for orphaned, unlinked, stale, or thin pages.

Where Vocateca sits

Vocateca is the ingest edge of this loop - the step that turns opaque audio into the text everything downstream is built from. In 2022 Karpathy transcribed 322 podcast episodes by hand with a cloud pipeline to make one show searchable. [4] The instinct was right; the effort was the problem.

Vocateca does that step on-device: batch a back catalogue, keep speakers and timestamps, export straight into the markdown a wiki compiles from - and the recordings never leave the machine. The loop above starts here, or it doesn't start.

Start at the ingest edge.

Download for Mac

Andrej Karpathy is not affiliated with Vocateca and does not endorse it. The quote and references above are cited for commentary; the compiled-knowledge-network method described here is our own practice, not his. Podcast, YouTube and other third-party names are trademarks of their respective owners.

Sources

  1. [1]Andrej Karpathy, X post on audio being opaque, 26 September 2022. https://x.com/karpathy/status/1574474952446615552 Accessed 11 July 2026.
  2. [2]Andrej Karpathy, X post on reading text sources with an LLM in passes. Note: about text media generally, not spoken audio. https://x.com/karpathy/status/1990577951671509438 Accessed 11 July 2026.
  3. [3]Andrej Karpathy, 'Sequoia Ascent 2026 summary,' karpathy.bearblog.dev, 30 April 2026. https://karpathy.bearblog.dev/sequoia-ascent-2026/ Accessed 11 July 2026.
  4. [4]Andrej Karpathy, X post announcing Lexicap, 26 September 2022. https://x.com/karpathy/status/1574474950416617472 Accessed 11 July 2026.
  5. [5]Andrej Karpathy, 'llm-wiki.md' (GitHub Gist): a raw sources / wiki / schema split, with ingest, query and lint as the three workflows on top. https://gist.github.com/karpathy/442a6bf555914893e9891c11519de94f Accessed 17 July 2026.