Skip to content

v0.1.0 — voice in, brain out

Latest

Choose a tag to compare

@tonydzi tonydzi released this 04 Aug 19:31
· 3 commits to master since this release

Voice → text → your personal knowledge base. A primitive, not a platform. First tagged release.

Four small Python scripts you can read in one sitting and fix with a hammer:

audio file ──▶ transcribe.py ──▶ ingest.py ──▶ notes/*.md ──▶ search.py
 (any source)    (Whisper)       (tags, links,     (plain        (ask your
                                  summary,          markdown)     own brain)
                                  embeddings)

What is in v0.1.0

  • transcribe.py — local Whisper, with defaults that came out of head-to-head bake-offs on real, messy phone-mic recordings: large-v3, VAD off (it ate words on phone audio), beam 5, a 0.0→0.6 temperature ladder against stuck repetition, and your own glossary.txt passed as the initial prompt — which is what stops proper nouns from being mangled.
  • ingest.py — transcript → markdown note with frontmatter, frequency-based auto-tags (0 tokens, no LLM), [[wiki-links]] grown from title-word overlap, an optional summary and an optional vector index.
  • search.py — vectors → FTS5 → substring scan. Each rung works alone, so search never hard-fails on a missing dependency.
  • watch.py — poll a folder; post-then-mark, so a failure retries instead of silently losing a note.
  • Repo-as-brain mode — push audio into brain/inbox/ and a GitHub Action transcribes it. Its first run went red; the opt-out path now finishes green, which is why this is release 0.1.0 and not 0.1.0 three days ago.

Honest scope

We looked at the shelf before building — Obsidian plugins, standalone transcribers, single-source scripts — and the README says where each of them stops and where this sits. We are not claiming to transcribe better than anyone; transcribe.py is a wrapper around faster-whisper, not a replacement for it. This repo earns its place only when you want the text to become something and stay yours afterwards.

Do not use this if you live inside Obsidian and just want to dictate into the open note — install a plugin, it is less work. If all you need is audio → text, use faster-whisper directly.

Known limits

  • No test suite yet. It runs daily on hundreds of our own voice notes, which is evidence of a kind, but not the kind you can re-run on your machine. That is the top of the queue.
  • Short titles link poorly. Linking needs 0.6 coverage of another note's distinctive title words; a two-word title has almost nothing to overlap on, so those notes stay unlinked by construction. Measured, documented, not hidden.

What's next

A self-test, better linking for short notes, more source adapters. Not planned: a server, an editor plugin, or a format you cannot open in a text editor.

Every noticeable change ships as its own release.

Full Changelog: https://github.com/Palo-Alto-AI-Research-Lab/voice2brain/commits/v0.1.0