Local, always-on household speech recall: records the house, transcribes it, attributes who said what, and makes it searchable. A memory aid. Everything stays on the household's own machines.
docs/architecture.md: what it is for and how it is builtdocs/running.md: the agents, the fleet, deployingdocs/devices.md: phone and microphone ingest, identity, livenessdocs/meetings.mdanddocs/meeting-recorder.md: one-off recordingsdocs/review.md: reading a session from the terminaldocs/conventions.md: how the code is written and checked
A Rust workspace: audiocore (what the crates share), audiod (the Mac's audio
plane), recalld (the fleet's system of record and the web API), runner (the
Mac's job loop and the live feed), doctor (the Mac's health agent), cli.
src/recall is the Python model floor: the two shims the runners drive, the
golden ASR check, and llm-host. frontend/ is the Angular app; android/ and
ios/ the microphone apps.
nix develop # rust, python, node, ffmpeg, sox, the lot
nix run ../dev-lint#gate -- . gate.json # the full gate; a commit runs it.venv is a symlink into the nix store, built by nix build .#dev-env --out-link .venv from uv.lock. Run a Python module with
nix develop --command env PYTHONPATH=src .venv/bin/python -m recall.<module>;
without PYTHONPATH=src you run the store's copy, not your edit.