The goal: a personal operating system made of AI agents, organized like a small company. A chief of staff sits at the top, and specialists handle daily life, home tech, dev projects, and finances. It took three designs to get there.
Version 1: separate Claude Projects
Each agent lived in its own Claude Project. Nothing ran unless a conversation was opened by hand, and agents couldn’t see each other’s work. Discord was added as a shared log: agents post updates to channels, and other agents read them.
One early assumption didn’t hold. Agents can’t hold live conversations with each other, because each one is a separate session. Coordination works like a team chat: one agent posts an update, and the next one reads it the next time it runs.
Version 2.0: one session, two roles
The chief of staff and the personal assistant were merged into one Discord session to keep things simple. It didn’t last. The combined instructions grew long, and the agent got worse at both jobs.
Version 2.1: a channel per agent
The final design uses claudecode-discord, an open-source bot that connects each Discord channel to its own Claude Code session. Each session has its own instruction file (CLAUDE.md) and its own working folder. The bot runs on the existing Claude subscription, with no separate paid API key. Before it was installed, the bot’s code was reviewed, including its access controls and rate limiting.
Hardware: an Intel N100 mini PC running Windows, on 24/7.
The Discord server (“HQ”):
- #personal: the Personal Assistant, which runs live and answers in real time
- #cos-briefings: the Chief of Staff’s briefings
- #daily-log: updates that span more than one area
- #dev-projects, #home-tech, #rental-ops, #bookkeeping: one channel per area
- #alerts: urgent items, always read first
The Personal Assistant handles hobby and trip planning, home maintenance reminders, and vehicle upkeep. It follows up on its own: after an appointment or errand, it asks how it went and what it cost. It can draft emails but never sends one without confirmation.
The Chief of Staff runs as a Claude Code cloud scheduled task: a full briefing at 6 AM, and a check of every channel every two hours. It flags anything left unaddressed for three or more days, marks items by priority, and stays quiet when there’s nothing worth reporting.
Logging rules: updates that span areas go to #daily-log, and expenses go to #bookkeeping so the finance agent picks them up.