You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
cmux send injects text as terminal input. Multi-line messages arrive as separate inputs.
Keep all messages on a single line. For large payloads, write to a file and reference it:
[FROM=surface:4 TO=surface:6 TYPE=RES CID=hoff-20260224-001] See /tmp/cmux-result-abc123.md
Coordinate multi-agent workflows across cmux panes (Claude Code + Codex) using envelope-based messaging, HELLO handshake, and ACK/RES discipline over cmux send. Use when two or more agents must delegate work, exchange status, and avoid cross-pane ambiguity.
cmux Multi-Agent Ops
Run this skill when Claude and Codex are active in separate cmux surfaces and need deterministic messaging.
Required for TYPE=REQ: CID=<id> (correlation ID, echoed in ACK/RES).
Optional: TS=<iso8601> (timestamp).
Types: HELLO, HELLO_ACK, REQ, ACK, RES, ERR, INFO
Single-Line Constraint
cmux send injects terminal input — multi-line messages fragment into separate inputs.
Always send on a single line. For large payloads, write to a file and send the path:
[FROM=surface:6 TO=surface:4 TYPE=RES CID=hoff-20260224-001] result in /tmp/cmux-res-abc.md
Protocol
HELLO first — Exchange TYPE=HELLO / HELLO_ACK before any task. Both agents must know each other's surface ref.
Envelope always — Every cmux send message includes [FROM=... TO=... TYPE=...].
cmux send as primary channel — Use cmux send + cmux send-key enter for all agent messaging. Not cmux notify.
ACK → RES flow — Receiver sends TYPE=ACK within 30 seconds, then TYPE=RES when done. Sender does NOT poll with read-screen.
One retry max — If no ACK within 30s, resend once with (RETRY) appended. Then escalate to user.
scripts/agent-handoff.sh
Purpose: Wrap a JSON payload in an envelope and deliver via cmux send (primary channel).
Auto-detects sender surface. Auto-generates CID.
scripts/agent-ping.sh
Purpose: Send a ping to check if peer is responsive.
NOTE: Only works if target agent is in an active conversation.
scripts/gist-comment.sh
Purpose: Append a turn log to a GitHub Gist comment thread.