Chronicle KeeperDocs
Docs / The workflow

The workflow

One recording in, one finished session note out. Here's every stage of the pipeline, in the order you'll meet them.

01

Upload

Craig ZIP

02

Label

who's who

03

Transcribe

on-device

04

Summarize

your LLM

05

Export

Obsidian MD

Before you start

  • You've installed the app.
  • You've set up an LLM in Settings and the Test passed.
  • You have a Craig Bot recording downloaded — the multi-track ZIP, ideally with one track per player.

0 · Record with Craig

During your session, Craig records each person in your Discord voice channel to their own audio track. When the session ends, download the recording and choose the multi-track download (one file per speaker) — that's what gives the cleanest transcripts, since each track is one voice.

1 · Create a campaign

  1. Open the Library

    The Library is your shelf of campaigns. A seeded Example campaign is there to poke at.

  2. New campaign

    Give it a name (e.g. "The Sunless Citadel"). Everything — sessions, the Codex, exports — is scoped per campaign.

2 · Start a session & upload

  1. New session

    Inside the campaign, start a new session. The session number is suggested automatically.

  2. Drop in the Craig ZIP

    Upload the recording. Chronicle Keeper unpacks the tracks and lists them.

3 · Label the speakers

Each track gets a name so the transcript and summary know who said what. Type the player's name (or character) next to each track. This takes a minute and pays off in a far more readable write-up.

Tip

Label with the names you want to read in the notes. If your group thinks in character names, use those; the summary will follow your lead.

4 · Transcribe

Hit Transcribe. The first time, the speech model downloads once (a few hundred MB). After that, every track is transcribed locally — no audio leaves your machine, no internet needed.

  • Engine: native Parakeet TDT v3, several× realtime on CPU.
  • Languages: 25 European languages including German.
  • No diarization: because Craig gives one track per speaker, it's just clean speech-to-text per person.
How long does it take?

Roughly a fraction of the session's real length on a typical laptop CPU — a 3-hour session transcribes in well under an hour, often much less. A faster CPU is faster; no GPU is required.

5 · Summarize

With transcripts ready, generate the summary using your chosen LLM. Chronicle Keeper builds a structured prompt and — crucially — injects your campaign's Codex so the model corrects names the transcriber mangled. The result is a clean recap: what happened, who did what, decisions, loose threads.

Read it over. The summary is yours to copy, tweak, or regenerate. Chronicle Keeper deliberately stays out of in-app editing — your vault is the place to polish.

Bonus · Story-so-far recap

Need to remind the table what happened last time? The recap stitches your past summaries into a short "previously on…" for the campaign — handy to read aloud at the start of a session.

6 · Export

Export the finished note as Markdown with Obsidian frontmatter (YAML at the top with campaign, session number, date, players). Paste it into your vault or save the file. You can export the full transcript alongside the summary if you want the raw record too.

Where everything lives

State persists in a local SQLite database in your app-data folder — sessions, tracks, speaker labels, transcripts, summaries and the Codex all live there. There are no scattered loose files to manage, and nothing is uploaded unless you explicitly turn on sync.