When you're running 5 agents across 8 scheduled sessions a day, inter-agent communication becomes a bottleneck fast.
Here's the problem: agents don't talk to each other directly. They talk through files. And if the handoff message is verbose — a full JSON blob, a prose summary, a copy of the previous output — you're paying for tokens that don't add intelligence.
We built PAX (Pantheon Agent eXchange Protocol) to fix this. Full repo: github.com/Wh0FF24/whoff-automation
The Core Problem: Token Waste at Handoff
Typical verbose handoff:
"Atlas has completed the morning market brief covering cryptocurrency movements,
equity performance, and priority tasks. Output saved to:
~/Desktop/Agents/Atlas/sessions/2026-04-15-morning.md.
Prometheus should review and proceed with content creation."
PAX equivalent:
[ATL→PRO] task:morning-brief | file:2026-04-15-morning.md | status:✓
11 tokens. Same information. 85% reduction.
The PAX Spec
[FROM→TO] SUBJ | field:value | field:value | …
Agent Codes
| Code | Agent | Role | Model |
|---|---|---|---|
| ATL | Atlas | CEO / Orchestrator | Opus |
| PRO | Prometheus | CMO / Reviewer | Opus |
| HRM | Hermes | Trading | Sonnet |
| ATH | Athena | Revenue | Sonnet |
| APL | Apollo | Intel | Sonnet |
| WIL | Will | Principal | Human |
Hero agents (Haiku tier) route through their god:
ACH → HRM (Achilles: trade execution)
ORP → PRO (Orpheus: copy/scripts)
HEP → PRO (Hephaestus: rendering)
Status Symbols
| Symbol | Meaning |
|---|---|
| ✓ | done |
| ✗ | blocked |
| → | handoff/routed |
| ⚡ | urgent |
| ? | needs decision |
| ~ | in progress |
Real Examples
# Atlas hands off research to Prometheus
[ATL→PRO] research-complete | task:competitor-analysis | file:competitor-intel-apr15.md | next:content-brief | status:✓
# Apollo flags a blocker
[APL→ATL] ✗ blk:rate-limit | task:ph-scrape | eta:+2h | next:retry-at-0300
# Hero delivers to god
[ORP→PRO] scripts-done | task:reel-scripts-apr15 | file:reel-scripts-5x.md | count:5 | status:✓
# Broadcast
[ATL→ALL] ⚡ priority-shift | task:ph-launch-window-open | drop:non-critical | eta:Apr21
Implementation (~40 lines)
# pax.py
from dataclasses import dataclass
AGENT_CODES = {
"Atlas": "ATL", "Prometheus": "PRO", "Hermes": "HRM",
"Athena": "ATH", "Apollo": "APL", "Will": "WIL",
"Achilles": "ACH", "Orpheus": "ORP", "Hephaestus": "HEP",
}
@dataclass
class PAXMessage:
from_agent: str
to_agent: str
subject: str
fields: dict
def encode(self) -> str:
frm = AGENT_CODES.get(self.from_agent, self.from_agent[:3].upper())
to = AGENT_CODES.get(self.to_agent, self.to_agent[:3].upper())
parts = [f"[{frm}→{to}] {self.subject}"]
parts += [f"{k}:{v}" for k, v in self.fields.items()]
return " | ".join(parts)
@classmethod
def decode(cls, s: str) -> "PAXMessage":
header, *rest = s.split(" | ")
route = header.split("] ")[0][1:]
frm, to = route.split("→")
subject = header.split("] ")[1]
fields = {}
for part in rest:
if ":" in part:
k, v = part.split(":", 1)
fields[k.strip()] = v.strip()
return cls(frm, to, subject, fields)
# [ATL→PRO] research-complete | task:ph-analysis | file:ph-intel-apr15.md | status:✓
The Escalation Protocol
Hard rule — gods escalate to Atlas ONLY when:
- Objective is complete
- There's a blocker they cannot solve
Not on hero completions. Not mid-task. Cuts Atlas interrupt load ~70%.
def should_escalate(agent_tier: str, event_type: str) -> bool:
if agent_tier == "hero":
return False # heroes report to their god, never Atlas
return event_type in ("objective_complete", "hard_blocker")
Why This Works
- Agents are stateless between sessions. PAX gives 1-line context restore.
- Humans can read it. Scan 12 PAX messages in 30 seconds.
-
It's grep-able.
grep "ATL→PRO" logs/— you can't grep prose. - It composes. PAX messages can reference other PAX messages.
Full spec in docs/pax-protocol.md:
git clone https://github.com/Wh0FF24/whoff-automation.git
cat docs/pax-protocol.md
Tools I use:
- HeyGen (https://www.heygen.com/?sid=rewardful&via=whoffagents) — AI avatar videos
- n8n (https://n8n.io) — workflow automation
- Claude Code (https://claude.ai/code) — AI coding agent
My products: whoffagents.com (https://whoffagents.com?ref=devto-3508305)
Top comments (0)