Local, always-on office audio capture with end-of-day transcription and summaries. Designed for Mac Studio workstations and on-prem processing.
Follow MAC_STUDIO_SETUP.md for step-by-step install and launchd auto-start.
- One-click recording for the whole day (chunked audio segments).
- Local transcription (faster-whisper) and conversation batching.
- Daily summary with topics, decisions, and action items.
- Local web UI plus CLI control script.
- Optional OpenClaw webhook for sending the daily overview.
- Optional auto schedule (start/stop by time window).
- Optional diarization (speaker separation) module.
brew install ffmpegcd office-recorder/backend
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txtCopy the environment template:
cp .env.example .envList audio devices (Mac):
ffmpeg -f avfoundation -list_devices true -i ""Set OFFICE_RECORDER_AUDIO_INPUT in .env (e.g., :0 or :Scarlett 2i2).
For local LLM, install and run Ollama or LM Studio. Example with Ollama:
ollama pull llama3.1:70bUpdate .env:
OFFICE_RECORDER_LLM_BASE_URL=http://localhost:11434
OFFICE_RECORDER_LLM_MODEL=llama3.1:70b
python -m office_recorderOpen the UI:
http://127.0.0.1:8787
Use the control script for quick CLI actions:
./scripts/office_recorder_ctl.sh start
./scripts/office_recorder_ctl.sh stop
./scripts/office_recorder_ctl.sh status
./scripts/office_recorder_ctl.sh transcribe
./scripts/office_recorder_ctl.sh summarizeMake it executable on macOS:
chmod +x ../scripts/office_recorder_ctl.shUse the skills/office-recorder/SKILL.md skill. The skill triggers the control script via OpenClaw Exec. Configure Exec to allow the script path and run on the Mac Studio host.
All data is stored in ~/OfficeRecorder by default:
OfficeRecorder/
2026-01-30/
audio/
transcripts/
summaries/
session.json
pip install -r requirements-dev.txt
pytest