Infrastructure Decisions — March 2026
Always-On Agent (Mac Mini)
- Claude Code with channels (Discord + iMessage)
- tmux for session persistence
- LaunchAgent for boot startup + daily 4am restart with updates
- Permission mode: acceptEdits with broad allow list
- Full Disk Access granted to tmux for iMessage chat.db access
Knowledge Management
- Obsidian as vault UI/editor (auto-launches on boot)
- QMD as local search engine (hybrid BM25 + vector + LLM re-ranking)
- QMD configured as MCP server via ~/.mcp.json
- QMD runs on node (not bun) due to sqlite-vec extension incompatibility
Connected Services (MCP)
- Gmail (ben@raydata.co)
- Google Calendar
- Notion
- Slack
- Discord (channel plugin)
- iMessage (channel plugin)
Evaluated and Deferred
- Notion as primary memory: deferred in favor of local-first Obsidian + QMD
- Basecamp: too much for current stage, revisit if team grows
- RAG database: QMD provides 80% of the benefit without infrastructure overhead
- 1Password CLI: identified as best option for agent credential management, not yet set up
- Supply chain risk: with this many dependencies, package integrity matters — see Supply Chain Security SOP for how we manage it