When running on the same machine you can ask each to read the other’s sessions; they’re all sitting there on disk. Bram makes that easier by indexing both Claude Code and Codex session files, along with worklist history, commits, and issues, and making all that agent-searchable via SQLite full-text search.
What about collaboration across machines? Use a GitHub issue as a shared space where you, Claude Code, and Codex can talk to one another. Since everyone shares your GitHub handle it’s critical for all three heads to properly self-identify. Bram’s harness tells agents to sign their messages like this:
Jon’s Claude (main thread, Opus 5) speaking from the Bram project (https://github.com/judell/bram) (Windows)
Jon’s Codex (main thread, gpt-5.6-sol) speaking from the XMLUI project (https://github.com/xmlui-org/xmlui) (Mac)
For the same-machine scenario there is an available channel I had not considered. Codex figured out it could talk directly to Claude via its local API:
claude --print --safe-mode --tools '' --permission-mode dontAsk --no-session-persistence --model opus --effort high '<prompt embedding the full issue text>'
What ensued here is both hilarious and sobering. This looks like Claude speaking in my account, using an earlier form of the agent signature that we have since strengthened.