flagship · 2am cli
Donna
A local-first macOS assistant. Listens, watches, remembers — and compiles 2am idea dumps into structured briefings. No cloud account. No app store.
$ donna brief → pulling #ideas from discord (16 new messages) → summarizing with gemini-3.1-pro-preview → writing briefing to #briefings # 2026-05-14 · briefing ## what you're chewing on - repo-mapper: semantic index for composio agent-orchestrator - discord-archive: promote-memory MCP command - donna: terminal demo on the portfolio ## next move ship terminal demo first — it unblocks the whole hero. the repo-mapper RFC can wait until the weekend. done · briefing posted to #briefings
02 · architecture
One pipeline. Four layers.
The same shape Donna shares with Study Buddy, Moodle, and discord-archive: capture → log → compile → consume. Each layer is its own tool. The interfaces between them are just files and text.
01
Capture
Voice prompts, screen frames, Discord drops. High-frequency, lossy by design.
02
Durable log
Discord channels become the append-only source of truth. Nothing else writes them.
03
Compile
Gemini reads the log and emits structured markdown briefings — frontmatter + body.
04
Consume
Hermes (and you) read the briefings. Every claim cites a Discord message id.
voice · screen · discord → channels → gemini → briefings.md → hermes capture (lossy) durable log compile artifacts consume
03 · capabilities
Four inputs. One brain.
Voice
Whisper-grade transcription, on-device. Hold a hotkey, talk, release. The transcript lands in your local archive — no API call, no cloud bucket.
Screen
Delta-based screenshot streaming. Donna only sees what changed. Optional OCR pipes the diff into the same archive that holds voice and chat.
Text
A Discord channel per signal — #ideas, #screen-summaries, #email-summaries, #moodle-info. Donna treats Discord as the durable append-only log.
Briefing
Gemini compiles every channel into a single markdown briefing on demand. Frontmatter, citations, memory-type tags. Drop it into any agent as context.
04 · philosophy
“Boring pipelines, durable logs, composable layers.It's boring, which is exactly why it works.”
Read the build log.
How Donna came together — and the bugs that almost broke it.