Minimal CLI for capturing voice notes, transcribing, rewriting, and syncing to Notion.
src/application codedocs/documentationtests/test suitesrequirements.txtPython dependenciesdata/local storage (ignored by git)
- Create a virtual environment
- Install dependencies from
requirements.txt - Run the CLI
Record a note (press Enter to stop). This will also transcribe, rewrite, and sync to Notion by default:
python -m note_taker recordOptional flags:
python -m note_taker record --out data/raw/custom.m4a
python -m note_taker record --input ":0"
python -m note_taker record --no-processNotes:
- Recording uses
ffmpeg+avfoundation(macOS only). - Set
NOTE_TAKER_DATA_DIRto change the storage location.
Transcribe an audio file:
python -m note_taker transcribe data/raw/note_YYYYMMDD_HHMMSS.m4aRewrite a transcript with Ollama:
python -m note_taker rewrite data/transcripts/note_YYYYMMDD_HHMMSS.txtSync a rewritten note to Notion:
python -m note_taker sync data/rewritten/note_YYYYMMDD_HHMMSS.txtEnd-to-end:
python -m note_taker process data/raw/note_YYYYMMDD_HHMMSS.m4a/Users/cedrichelewaut/Documents/note-taker/bin/note-taker recordffmpeginstalled locally.- Ollama running locally (default
http://localhost:11434) with modelllama3.1:8b. - Notion integration token and database ID in
.env.
Create these properties in your database for richer entries:
Summary(text)Tags(multi-select)Type(multi-select)Date(date)
Property names can be overridden via .env:
NOTION_TITLE_PROPERTY=Title
NOTION_SUMMARY_PROPERTY=Summary
NOTION_TAGS_PROPERTY=Tags
NOTION_TYPE_PROPERTY=Type
NOTION_TYPE_MODE=multi_select
NOTION_DATE_PROPERTY=Date