One builds. One pushes back. You chime in.
/relay
Type it in Claude, Codex, or Cursor. Your other agent joins the chat, already caught up.
Download KanaryCache design
Use one shared cache.json for both workers. Keep reads and writes in one module.
claude: Use one shared cache.json for both workers.
Zipped when you send. Ignored files, .env and keys are left out.
What carries over
Less explaining. More moving forward.
Only what is new since the last relay goes over, quoted as it is. When a reply builds on an earlier answer, that answer comes along, and every voice stays labeled.
Context and limits
Know when to keep going. And when to hand over.
Each Claude and Codex card shows how full its context window is. The sidebar keeps your plan's limits in view, with a mark for where an even pace would be. Past halfway and ahead of it, the number turns orange.
Three in a row
Want a third opinion? Add it to the row.
Press Edit and add Cursor at the end. Each thread relays to the one next to it, and earlier answers come along, so Cursor sees Claude's fix too.
Without linking
…or ask ChatGPT about the whole repository.
Pick a repository or one of its folders and add your question. It goes to ChatGPT in the Codex app with Pro, its top setting. Git-ignored files and common sensitive files, like .env and keys, are left out by name.
claude: Use one shared cache.json for both workers.
Zipped when you send. Ignored files, .env and keys are left out.
Small things that add up.
Images travel as paths.
A screenshot you pasted, or an image Codex generated, arrives as its path. The file stays where it is.
Pick where the quote starts.
Relay proposes what is new since the last relay. Open the history to start earlier, and the quote widens.
Add a word, or two.
Whatever follows
/relaygoes along as your note. Return sends it, and so does the app's own Send button.
Why /relay?
A second opinion from a different AI.
Not more agents in parallel. Claude spreads an idea out, Codex finds the pitfall in step four. Each answer is read by a model that thinks differently, then comes back to where you started.
Keep using Claude, Codex, and Cursor.
The apps keep gaining what a terminal can't do: images and mockups right in the chat, Artifacts, computer use. Relay works around them, so each new feature is yours the day it ships.
You stay in the loop. That's the point.
Orchestrators take you out of the middle. Relay keeps you there, minus the clipboard. Read each reply, add what the other agent is missing, or don't send it. Nothing moves until you say so.
Why we built it
“The copy-paste was tedious.The reading wasn't.The reading was the job.”
Kenn · Building Kanary
I tried the subagents, the bridges, and the orchestrators, and a week later I was always back to two windows and a clipboard. This is the story of why, and what I built instead.
Tired of copy-pasting?
Type /relay. Everything else stays where it is.
Download KanaryQuestions
What does /relay send?
Your messages and the agents' replies since the last relay, quoted as they are, with who said what. Nothing is rewritten or shortened. Open Relay to see the same quote before you send.
Which apps does it work with?
The Claude, Codex, and Cursor apps on your Mac. In Cursor, it covers root agent chats and chat mode.
What happens the first time?
The first /relay opens Relay with what will go and a new thread in your other app. Start it, or pick a thread you already have. After that, /relay sends straight to it.
/relay didn't send.
Open Relay from the menu bar. The same quote is waiting there. Press Copy and paste it into the other app yourself. Copy always works, needs no permission, and never counts toward your sends. The apps change under Relay now and then, so if a send stops working, report it from the Relay window and use Copy until the next update.
What if there's nothing new?
/relay won't send an empty relay. Add a note, like /relay what are we missing?, and just your note goes.
/relay didn't find my chat.
In a brand-new chat, send one message first, then type /relay again.
Does Kanary upload my chats?
No. Kanary reads the transcripts on your Mac. Only what you send goes to the other app.
Can /relay carry attachments?
No. It carries text. If something is attached in the composer, Relay asks you to remove it first. Files and images in the conversation travel as paths: a screenshot you pasted, an image Codex generated, the files a reply edited. An artifact Claude made arrives as its link. The files stay where they are.
What does Ask ChatGPT send?
A zip of the repository or folder you pick, plus your question. Git-ignored files and common sensitive files, like .env and keys, are left out by name. Kanary does not scan file contents. It goes to ChatGPT in the Codex app with Pro selected, so it needs a ChatGPT plan with Pro. The answer stays there.
What does /relay need?
macOS Accessibility, to read your composer and write into the other app. Copy in the Relay window needs no permission.
Is it free?
Free and Personal include 75 sends a week. Pro is unlimited. Copy is always unlimited.