Inspiration
Coding agents are powerful on their own, but coordinating several native CLI sessions still too often means copy/paste, pane-focus tricks, screen scraping, or terminal-specific keyboard injection. Those approaches are fragile: a message can vanish when a recipient is busy or offline, and changing terminal applications can break the workflow. We wanted the local equivalent of email for coding agents: make delivery durable first, then treat wake-up as a separate convenience.
What it does
Roundtable Messaging v2 gives every project a durable, local mailbox for its agent seats. rt-say atomically writes a message into the recipient's project mailbox. A harness-native adapter can wake an online session; the recipient reads the message, acts on it, and rt-ack archives it while sending a quiet delivery confirmation. If the recipient is offline, the message simply waits.
The roundtable command provides one project-first entry point: adopt or create any folder (Git is optional), choose a configured harness, and launch a fenced project session. The delivery core does not depend on a terminal emulator. Terminal.app, iTerm2, Ghostty, and cmux use the same mail path; cmux contributes optional workspace and topology features rather than becoming the transport.
How we built it
The current Messaging v2 architecture was built during OpenAI Build Week, replacing an earlier cmux-centric keyboard prototype. Haiyang served as product lead and set the architecture and scope. GPT-5.6 through Codex was the primary implementation environment for the submission-period rewrite, testing, integration, diagnostics, packaging, and release work.
We used Python's standard library and small shell entry points to build atomic maildir delivery, acknowledgements, project discovery, fenced session leases, harness lifecycle adapters, macOS LaunchAgents, Codex app-server integration, onboarding, diagnostics, and a versioned user-level installer. Codex also drove the release loop: turning live-cutover findings into regression tests, validating exact executable and socket identity, building an offline dependency archive, and exercising install/setup/smoke/uninstall from the extracted artifact.
Historical Fable 5 and Hermes collaboration is preserved in PROVENANCE.md and CREDITS.md; we did not erase or relabel earlier contributions when creating the Build Week release.
Challenges we ran into
The hardest problem was identity. A terminal pane is not an agent identity, and a process ID alone is not durable enough. Roundtable instead anchors each seat to a canonical project root, harness identity, session ID, and revisioned lease. Every wake or privileged action is validated against that lease and fails closed when state is ambiguous.
Codex also required careful daemon and socket validation across npm and standalone installation conventions. Packaging had to remain idempotent and modify only owned files, links, hooks, and launch agents. Finally, one Hermes TUI session showed repeated clipboard-paste behavior while its native wake adapter was active. We contained it, documented it in the release, and use the proven Codex/Claude path for judging; the durable mailbox core is unaffected.
Accomplishments that we're proud of
- Durable send, receive, acknowledge, offline recovery, and diagnostics without screen scraping or keyboard injection.
- A public Apache-2.0 repository and downloadable macOS release archive with checksums; judges can install and test without rebuilding from source.
- A five-minute judge path, a comprehensive automated suite, and public CI across Python 3.11-3.14 on macOS and Ubuntu for the portable core.
- Real development-host wake/drain/reply tests for the supported judge path, plus explicit support boundaries instead of version-number-only claims.
What we learned
Reliable agent collaboration starts by separating delivery from notification. A native wake mechanism may fail, a session may close, or a terminal may change; none of those events should erase the message. We also learned that good agentic development is a product loop: the human keeps authority over scope and tradeoffs, while Codex can rapidly inspect evidence, implement, test, review, and package each decision.
What's next
Next we will harden the Hermes native wake path, repeat the full flow on clean accounts and more terminal environments, and qualify Codex standalone through a real live gate. Same-host tmux support is the next transport-adapter milestone. Cross-host SSH transport and multi-auth switching remain later roadmap work.
Repository: https://github.com/hyyu189/roundtable-messaging
Release: https://github.com/hyyu189/roundtable-messaging/releases/tag/v0.1.8
Built With
- claude
- codex
- domain
- github
- gpt-5.6
- hermes
- launchd
- macos
- maildir
- openai
- python
- unix
- websockets
Log in or sign up for Devpost to join the conversation.