Hermes — personal AI chief of staff
A Dockerized agent I use daily. Telegram frontend, two-speed memory loop, git-synced knowledge base, voice pipeline over Tailscale.
Problem
I want a real personal assistant, not a chat window. Something that persists, remembers what I care about, and can act on my behalf across surfaces — phone, laptop, voice — without me maintaining state in my head.
Architecture
Dockerized on a VPS. Telegram bot as the primary interface. A Tailscale-tunneled voice pipeline lets me hit it hands-free from my phone. Memory runs as a two-speed loop: hot working context in a small store for the current conversation, cold knowledge base as a git-synced markdown vault I can grep and edit by hand.
Key decisions
- Git-synced markdown over a vector DB. Human-editable, diff-friendly, and it forces me to keep the agent’s memory legible instead of opaque.
- Telegram over a custom app. Infra I don’t have to build, maintain, or authenticate. My phone already runs it.
- Two-speed memory instead of one long context. Cheaper, and it matches how I actually think about “what’s on my mind right now” vs “what I know.”
What went wrong
TODO — Marco to fill in specific failure modes: memory drift, tool-call misfires, and what the fixes taught me.
Results
TODO — how much of my daily loop it now handles end-to-end, and what’s still manual.