Personal AI Agent team Architecture
What I Built.
I have been experimenting with a personal AI agent team architecture running on a Mac mini.
The structure is currently divided into two main layers.
Hermes
Hermes is the main agent, based on OpenAI.
It works as the Planner / Orchestrator layer.
Its role is to receive user intent, understand the surrounding context, break down the task, design the execution plan, and coordinate the overall workflow.
NanoClaw
NanoClaw is the execution agent group, based on Claude.
It works as the Execution Worker layer.
Hermes defines what needs to be done, while NanoClaw handles the actual execution.
At the moment, NanoClaw is structured as a 3-part agent group.
I am also improving the communication layer between agents.
Previously, I used Telegram for basic agent status notifications and simple message passing.
Now, I am moving toward a dedicated monitoring and collaboration environment using Tailscale.
The current direction includes:
Agent Status Dashboard
Workflow Pipeline View
Agent-specific Chat Rooms
Workflow-specific Comments
Remote Monitoring via Tailscale
The core idea is not to build “one AI tool.”
The goal is to build a small personal AI team with clearly separated roles.
One agent plans.
Another agent executes.
A separate communication layer tracks status, context, and workflow-level feedback.
By separating planning, execution, and communication, I want to explore whether a personal automation system can become more stable, observable, and scalable.
Architecture.
flowchart TD
User[Charles - User<br/>Highest Authority, Can Intervene Anytime]
Hermes[Hermes Agent<br/>Single Gateway / Planner / Orchestrator]
Nano[NanoClaw<br/>Execution Worker]
Shell[macOS / Shell / Filesystem]
TG[Telegram Group<br/>For Status Alerts]
User -- Intent / Context / Memory --> Hermes
User -. "!stop / !direct / !pause<br/>(Emergency Direct Intervention)" .-> Hermes
Hermes -- Task Delegation / Result Collection --> Nano
Nano --> Shell
Nano -. Real-time Execution Status Alerts .-> TGBackground.
I chose Hermes because it treats AI models as interchangeable resources and allows me to develop my project pipeline independently, much like Tamaguchi, while adhering to this philosophy. I set the agent to OpenAI. Based on my experience using it, I found it to be more flexible than other agents in terms of planning, empathy, and rule-breaking.
I chose NanoClaw and set it up as a sub-expert because I wanted to handle specialized tasks in parallel while slightly expanding the scope of work. It serves as a replacement for OpenClaw.
The reason I developed a separate interface for communication tools instead of using Telegram is that both environments run in Docker containers. This imposes limitations on real-time data sharing and decision-making. Additionally, the process of collaborating with other network agents is very cumbersome. To address this, I created a page designed as an online meeting room for agents. This meeting room allows for sharing project progress and policy documents, as well as conducting individual interviews with each agent.
