Voice Memo to Journal.
Dictate while walking. The agent transcribes, structures, and files the entry to your second brain. Tagged and searchable. You stop losing the best thinking of your day to the gap between the thought and the keyboard.
- A voice-first capture mouth that turns a phone recording into a structured, tagged journal entry in your vault. No retyping, no manual filing, no choosing a destination.
- Verbatim transcript preserved alongside a dense initial read. If the structured version misreads your meaning, the original recording's transcript is one folder away, untouched.
- Searchable from day one because every entry lands in the same Cairns layout your other captures already use. Your librarian agent can surface a thought from three weeks ago by topic, not by date.
Wire up the voice entry point with Claude.
Hand the build off to Claude in one paste. The agent reads the foundation skill, sets up the voice-memo watch folder, runs an end-to-end test on a throwaway recording, and confirms the routing matches the rest of your capture flow.
How this fits in the OS.
The second-brain-capture skill from the workshop repo at .claude/skills/second-brain-capture/SKILL.md. That skill is the workhorse. This card adds a voice-specific entry point on top of it so a phone recording becomes a structured journal entry without you retyping anything.
A local transcription tool (MacWhisper, Parakeet, or another command-line transcriber on your computer), a folder your phone syncs voice memos into, and your existing Obsidian-friendly vault with the Cairns L1, L2 Chain of Density Card Catalog Layer (Card Catalog Layer for short), L3 layout in place.
A capture path for the thinking that does not happen at a keyboard. Walks, drives, gym sessions, the school pickup line. The recording becomes a transcript, the transcript becomes a routed scratchpad entry, and the librarian agent can surface it later by topic.
What you'll build.
This is not a new skill. The foundation skill, second-brain-capture, already classifies any input you hand it and writes it to the right place in your vault. What you are building is the short pipe in front of it that turns audio into text and hands the text to the skill the same way you would hand it a pasted block of notes.
Three moving parts:
- A watch folder for voice memos. Your phone syncs recordings into one folder on your computer. iCloud Voice Memos on Mac, a synced Documents folder on Windows, or whatever your existing workflow uses. The agent reads from this folder. It does not record audio itself.
- A local transcription step. The team's default is MacWhisper, with Parakeet as the other common choice. Transcription runs on your computer, not in the cloud. Your raw audio and your transcript both stay local. The Borrow a Working CLI card covers MacWhisper setup in depth; this card treats it as a dependency.
- A handoff to
second-brain-capture. Once the transcript exists, the rest of the flow is the skill you already have. Classification, raw scratchpad write, optional dense card, optional L1 waypoint. Voice memos enter the same routing every other capture does, so the journal is searchable next to your link captures, your screenshot notes, and your loose thoughts.
In a Lightning Lesson the team shared the pattern in production: a person speaks into a recording on their phone, the agent on the fleet's side transcribes it, reads it, takes action, and replies. The user-facing surface is "talk and send." Everything behind it (transcription, classification, routing) is the skill doing its job. Voice Memo to Journal is that same pattern, pointed inward at your own vault instead of a client's project. The recording is just another input shape. The skill does not care whether you typed it, pasted it, or spoke it.
What changes for you.
The technical build is the easy part. The bigger shift is what happens to the thinking that used to vanish:
- You stop losing the walk-thoughts. The best ideas of the day rarely arrive at a keyboard. With a voice entry point, the thought goes into the recording app, the transcript lands in the vault, and the agent files it. You return to your work without the small cost of "I'll write that down later."
- Raw audio stays raw. The original recording is preserved, the verbatim transcript is preserved, the structured initial read is layered on top. If the agent misreads the meaning of a rambling memo, the source of truth is intact and one folder away.
- Your journal becomes queryable. A traditional journal is a wall of dated entries. This one lands in the Cairns layout your librarian agent already understands. Ask "what did I think about the client onboarding question last month?" and the agent reads L1 waypoints and scans the scratchpad transcripts to answer.
Before you start.
Four prerequisites:
- The
second-brain-captureskill is installed and working. Walk through Second-Brain Capture first if you have not yet. This card extends that one. If "remember this" does not already route into your vault, fix that before adding the voice entry point. - A local transcription tool exists on your computer. MacWhisper on Mac, Parakeet on either platform, or another local transcriber. Cloud transcription works but is not the team default. The Borrow a Working CLI card has the install path for MacWhisper.
- An Obsidian vault (or any markdown viewer) is pointed at the second-brain folder. Not required for routing to work. Required for the loop to close so you actually see your journal building up.
- A voice-memo source folder. Wherever your phone syncs recordings to. iCloud Voice Memos on Mac, a synced Documents folder on Windows, an iCloud Drive folder you manually drop recordings into, anything you can point a path at. The agent does not need to know about your phone; it only needs the folder.
Walk through the build.
Confirm the foundation skill is current
~5 minThe entire voice flow rides on top of second-brain-capture. If that skill has drifted from the spec you last used, your voice entries will route to a different place than the rest of your captures.
Open .claude/skills/second-brain-capture/SKILL.md in our local workshop repo. Read it end to end. Tell me back: (1) the trigger phrases that activate the skill, (2) the six steps it walks through, (3) the exact file path templates it writes to. I want to confirm the spec is current before we layer a voice entry point on top of it.
The agent does this for you. You are not parsing the spec by hand. Claude reads the file and reports back the activation surface, the routing contract, and the write paths. If the local spec differs from what you remember, the local spec wins.
Lock in the voice-memo source folder
~10 minThe agent reads recordings from one folder. You decide which one. Pick whatever your phone already syncs to so you do not have to add a manual copy step.
- Mac default:
~/Library/Group Containers/group.com.apple.VoiceMemos.shared/Recordings, or a folder under~/Library/Mobile Documents/if you use iCloud Drive. - Windows default: a synced folder under
~/Documents/voice-memos/that your phone backs up into (Google Drive, OneDrive, iCloud for Windows).
I need to lock in a voice-memo source folder for this build. Check the obvious locations on this computer in order: (1) the iCloud Voice Memos shared group container on Mac, (2) ~/Documents/voice-memos on either platform, (3) any iCloud Drive or OneDrive folder named voice-memos. Report back what exists. If none exist, recommend the simplest path to create and ask me to confirm before you create it. Do not create the folder until I say yes.
The agent does this for you. No guessing at paths. The agent looks at what is real on your computer, reports back, and you pick. The voice flow only works if this folder is correct, so it is worth the extra minute of confirmation.
Confirm the transcription tool is callable
~10 minLocal transcription is a separate concern from this card. You either have MacWhisper or another transcriber installed, or you do not. If you do not, stop here, walk through the Borrow a Working CLI card, then come back.
Confirm I have a local transcription tool on this computer. Check for MacWhisper (Mac app), Parakeet (command line), or any other transcriber I might have installed. Do not install anything. Just verify what is present, tell me back the exact command or app path you would call to transcribe a file, and tell me what audio formats it accepts. If nothing is installed, stop and tell me to walk through the Borrow a Working CLI card first.
The agent does this for you. You are not running install commands; you are taking inventory. If the tool is there, the agent confirms the call shape. If it is not, you go install it through the existing card and come back to this one.
Make sure the vault folders exist
~5 minVoice transcripts are source material. They belong in cairns/L3/transcripts/, with a structured initial read landing in inbox/scratchpad/ the same way every other capture does.
Check my second-brain vault. Confirm these folders exist: inbox/scratchpad/, cairns/L1/, cairns/L2/cards/, cairns/L3/transcripts/. Create any that are missing. Report back the final tree.
The agent does this for you. The capture skill's spec says "create missing folders before writing." You are giving Claude permission to make sure the voice transcripts have somewhere to land before the first real run.
Run an end-to-end dry test
~20 minRecord a 20-second throwaway voice memo on your phone. Something fake. Do not start with a real thought; start with a wiring check.
Run a full dry test of the voice-memo-to-journal flow. I just recorded a 20-second test voice memo. The file is in my voice-memo source folder. Walk the full chain: (1) find the most recent audio file in that folder, (2) call my local transcription tool to produce a text transcript, (3) save the raw transcript verbatim to cairns/L3/transcripts/YYYY-MM-DD-HHMM-<slug>.md, (4) hand the transcript content to the second-brain-capture skill as if I had said "remember this" with that text, (5) report back every file path that landed. Once we're done, delete the dry-run files (the L3 transcript, the scratchpad entry, any L2 Chain of Density Card Catalog Layer card, any L1 line you appended) and confirm the vault is clean.
You should see the agent transcribe the audio, write one verbatim transcript file under L3, write one structured initial-read scratchpad entry under inbox/scratchpad/, and either skip the L1 update or append one short line. All three are correct outcomes for a short throwaway. The point is to see every path the data takes.
Use it in real life for one week
~7 days, no setupThe build is done. The habit is not. Voice capture only earns its place if you actually use it on a walk or a drive when the keyboard is not an option.
Two ways to fire the flow in real use:
- Drop the audio file path into chat. Open Claude Code on your computer, paste the path to the most recent voice memo, and say "journal this." The agent runs the same chain you tested in Step 05.
- Point at the watch folder. Ask the agent to read the latest unprocessed file in your voice-memo source folder and run the full flow on it. Useful when you have three or four recordings stacked up from a walk.
The agent does this for you. The classification, the structured initial read, the routing decisions are all the foundation skill doing its job. You are providing the audio and the trigger. Everything else is reuse.
When it works.
You will see four signs settle in:
- Your transcripts folder fills up. Open
cairns/L3/transcripts/a week in. A handful of entries means the habit is forming. Zero entries means the trigger phrase is not entering your vocabulary; force a few deliberate uses in a row. - The scratchpad has structured reads of voice memos next to your typed captures. Open
inbox/scratchpad/. The voice entries should look identical to the typed ones, because they routed through the same skill. If voice entries are formatted differently, the handoff in Step 05 is off. - L1 stays tight. Voice memos generate a lot of loose thinking. Most of it should not become an L1 waypoint. If
cairns/L1/work-builds.mdbloats by ten lines from one walk's worth of memos, the skill is over-promoting. Read the spec back to it. - The diagnostic question. Open a fresh Claude Code session and ask "what did I think about X this week?" If the agent surfaces ideas from your voice transcripts by reading L1 and scanning the scratchpad, the flow is fully wired. If it ignores transcripts, the L3 path is wrong or the skill is not seeing them as source material.
If you get stuck.
Common failure modes, ranked by how often they bite:
- Audio format the transcriber will not accept. Voice memo apps export in different formats by platform. If the transcription step fails with a format error, ask Claude to convert the file to a format your tool supports (most local transcribers accept WAV or MP3). Do not silently re-record; fix the conversion step so the next memo works too.
- Transcription accuracy is poor. Background noise, soft voice, fast speech, or unfamiliar names. Two fixes in order: (1) re-record in a quieter environment for two or three test memos to confirm the tool itself is configured correctly, (2) if accuracy is still rough, check the model size your transcriber is using. Smaller models are fast but lossy; larger models cost more time per minute of audio but produce cleaner output.
- The watch folder is wrong. Your phone is syncing recordings to one folder and you pointed the agent at another. Symptom: every dry run says "no audio files found." Fix: ask the agent to list every audio file modified in the last 24 hours across your home folder, then re-confirm which folder your phone actually uses.
- The skill is not classifying voice content the way it classifies typed content. The classification should not care about input shape; it cares about the content of the transcript. If voice entries are landing in different L1 files than equivalent typed entries, the handoff in Step 05 is passing extra context the skill is misreading. Strip it down so you hand the transcript to the skill the same way you would hand it pasted text.
- The raw transcript got summarized. Never acceptable. The L3 transcripts folder is the evidence layer; transcripts stay verbatim. If you see summarization where the verbatim should be, report it and re-run with the spec quoted back at the agent.
Still stuck? Post the audio file format, the transcription command you used, and what the skill did with the resulting text, in the workshop Slack. Someone in the cohort is solving the same thing.
Where to go next.
You added a voice entry point to your capture flow. The natural next moves on the shelf: