The agent inbox: how parallel coding agents talk to each other
An agent inbox is a message queue between AI coding sessions, used to hand off work, warn about collisions and pass context. What belongs in it, what does not, and how it differs from a shared chat.
An agent inbox is a per-session message queue that lets coding agents send each other short, structured messages while they work. It exists because parallel agents share a repository but not a context window. Without a channel between them, the only way one session learns what another did is to read the diff after the fact.
What goes in an inbox
- Handoffs. "The migration is on
feat/schema, the API layer is yours." - Collision notices. "I am rewriting
parseConfig, do not touch it." - Findings. "The retry logic assumes the old error shape; whoever owns the client will hit this."
- Requests. "Can you land your branch first? Mine depends on it."
What does not belong is code. An inbox is metadata: who is doing what, and what the next session needs to know. Passing code through it duplicates the repository, and the repository is already the place where code lives.
Inbox, radar and chat
| Channel | Direction | Used for |
|---|---|---|
| Inbox | One session to one session | Handoffs, requests, collision notices |
| Radar | Broadcast, automatic | Who is editing what, right now |
| Team messages | One person or agent to the team | Decisions humans need to see |
The distinction matters because the failure modes differ. A radar that requires anyone to post is a radar that goes stale, so it should be emitted by hooks as edits happen. An inbox that fills with broadcast noise gets ignored, so it should be addressed and quiet.
Why an agent reads its inbox at all
Agents do not poll. The practical pattern is to inject the count into the response of whatever tool the agent calls next: a line saying two unread messages are waiting, with the instruction to read them. That way the inbox reaches the model through a surface it is already using, and no separate loop is needed.
In Aura this is what the session-level messaging does. Sentinel messages go between agent sessions, team messages go to people, and both are announced in the next tool response rather than waiting for the agent to ask.
Keeping it useful
Two rules hold up over time. Messages should be about coordination, not status, because status is what the radar and the task board are for. And every message should name a symbol, a file or a branch, so the reader can act without a reply. "Working on auth" is not a message; "I own src/auth/session.rs until my branch lands" is.
See also: collision detection and handing context between agents.
What is an agent inbox?
A message queue between coding agent sessions. One agent leaves a note — I am rewriting this module, this interface changed, here is the context you need — and another reads it when it starts. It is how sessions that never overlap in time still coordinate.
How do AI coding agents communicate with each other?
Through shared state rather than conversation: a message queue, a task board, or the repository itself. Direct agent-to-agent chat is rarely worth it — a durable note that the next session reads on startup survives context limits and crashes, which a conversation does not.
What should one agent tell another?
Decisions and constraints, not narration. What was changed and why, what is now assumed, what is deliberately unfinished, and which files are mid-edit. The test is whether a session starting cold could act on the message without reading the transcript it came from.
Aura Crew vs Claude Code Loops: the autonomous work-loop, compared
Claude Code defines four loop types — turn-based, goal, time, and proactive. Aura Crew is the same idea productized: a dependency-ordered work-loop with proof, collision-safety, and any agent. Full comparison.
Autonomous coding agent loops, explained: turn-based, goal, time, and proactive
A coding agent loop is an agent repeating cycles of work until a stop condition is met. The four types explained — turn-based, goal-based, time-based, proactive — with when to use each and how to keep quality high.
How to run multiple coding agents in parallel without merge conflicts
Running several AI coding agents at once collides on shared files. The fix: a worktree per agent, a live team radar, and soft-to-hard zone claims so parallel agents never touch the same symbol. How Aura Crew does it.
Goal-based agent loops: giving a coding agent a definition of done
A goal-based loop keeps a coding agent iterating until a success criterion is met. The trick is a deterministic definition of done — tests, a score, a proof — not an LLM guessing at "good enough." How to write one.