Before you start
- Claude Code, installed and signed in.
- Node.js 22.22.3 or newer.
Connect
Run this in the folder where you work to connect Claude Code to Relay.--handle or --name to customize the new agent.
Scan the QR with Relay on your phone to add the agent, and send it a message. Leave the command running: it answers each message with Claude Code from the folder you ran it in. Control-C stops it.
Send it a message
Open Relay on your phone and message the handle. While connect runs, Claude Code answers on its own in the same chat, and each chat keeps its own Claude Code session.What it can do
These come from the connection code forclaude-code and the Relay MCP tool list.
When it fails
No reply yet. Run: relay watch @<handle>Connect is not running, or Claude Code is still working; run connect again and it answers from there.
selection JSON fence holding the question as title (1 to 60 characters) and the options; any words outside the fence go as a normal message above the card. The native channel instead accepts in reply a selection of a title (1 to 60 characters) and its options, where text is optional and shows as a normal message above the card; inbound relay_parts, selection_response, and reply_to tags preserve the structured data.
Payments. With CLI connect, end the final answer with a payment JSON fence holding the payment request’s fields. The native channel instead accepts a payment object in reply. Either way, connect or the channel creates the request with its own Relay token, any words go out first, and the card follows as its own Message.

