transcribe_voice
Transcribe audio files or live mic recordings offline with faster-whisper. Capture results as ideas, journal entries, or notes while keeping all data on your machine.
Instructions
Transcribe an audio file or live mic recording and optionally capture the result.
Uses faster-whisper locally — entirely offline, no API calls, no data leaves
your machine. Supports MP3, WAV, M4A, OGG, FLAC, and most other audio formats.
Args:
audio_path: Path to an audio file to transcribe. Leave empty when using
record_seconds for live mic capture.
route_to: What to do with the transcript after transcription:
- "raw" → return the transcript text only (default)
- "idea" → capture as an idea with cross-pollination
- "journal" → add as a journal entry (mood + energy auto-extracted)
- "note" → append to today's voice-notes markdown file
record_seconds: Seconds to record from the microphone. Requires sounddevice
and numpy. Only used when audio_path is empty.
model_size: faster-whisper model size. Options: "tiny", "base", "small",
"medium", "large-v3". Defaults to METIS_WHISPER_MODEL env var,
or "base". Larger models are more accurate but slower to load.
Returns:
The transcript text and (if routed) confirmation of where it was saved.
Examples:
transcribe_voice(audio_path="/tmp/idea.m4a", route_to="idea")
transcribe_voice(audio_path="/tmp/reflection.mp3", route_to="journal")
transcribe_voice(audio_path="", record_seconds=30, route_to="idea")
transcribe_voice(audio_path="/tmp/note.wav", route_to="note")
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| audio_path | No | ||
| route_to | No | raw | |
| record_seconds | No | ||
| model_size | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |