Relay

Release notes

Relay 0.8.0

← ALL RELEASES

Relay 0.8.0 is the biggest release yet. Agents now get a chat beside their terminal, with seven threads each. Routines send prompts on a schedule. Notes stack into notebooks. And your agents can run more of the canvas themselves: they can post status, land layers, write roles and notify you.

Chat with your agents

Any agent terminal can now show a chat in place of its terminal grid. The agent keeps running underneath, and you can switch back with one click.

  • Turn it on from the node. Use Chat on the node's bar, in its right-click menu or in the command palette. The agent replies with relay say, and the skill that ships with Relay teaches it how.
  • Write at the bottom. The prompt box sits at the foot of the chat. Enter sends and Shift+Enter starts a new line. Your message is saved before the agent sees it, so nothing is lost if the agent restarts.
  • See the work happen. While the agent works, its progress updates appear as a live list under a small animated orb, with the time elapsed. When it answers, the steps fold into one line you can open again.
  • Readable answers. Code comes in highlighted blocks with a copy button, each answer can be copied, messages are grouped by day, and a pill takes you back to the newest message after you scroll up.
  • Images and files. An agent can show a screenshot right in its reply (relay say --file shot.png) and attach up to 8 files of up to 25 MB each (--attach). Click an image to open it in your viewer. Images in Markdown are shown only when they are files in your project; Relay never downloads a remote image.
  • Agents can catch up. relay chat recall reads the conversation back after a restart or a compacted context, including by date: --last day|week|month, or --from and --to.

Seven threads, as bookmarks

Each agent has seven chat threads, one per colour: red, orange, yellow, green, blue, purple and grey. Each thread is its own conversation.

  • Bookmarks on the node. Every thread you have used hangs a bookmark ribbon from the top of the agent's node, in its colour. The thread on screen hangs longest, and the header names it, for example "Claude Code · Blue". The bookmarks show in the terminal view too, so you can see which threads are in use without opening the chat.
  • One click to switch. Click a bookmark to open that thread. From the terminal view, the click opens the chat on that thread.
  • Start a new thread. Hover over the bookmarks to show a dashed one for each empty thread, then click it.
  • See who's waiting. A thread where you are waiting for an answer shows a small green light under its bookmark.
  • Right-click for the list. Right-click any bookmark for all seven threads, with how many turns each has had and when it was last used.
  • The agent follows you. The agent answers in the thread you last wrote in. Use relay chat recall blue to read one thread, or relay chat recall list for all seven.

Chat is not available on server workspaces yet.

Routines

Routines send a prompt to an agent on a schedule, or show you a desktop reminder.

  • Schedules. Run every few minutes or hours, daily at a time, on chosen weekdays, or once. A routine can stop after a number of runs or on a date.
  • Built-in checks. By default a routine skips an agent that is still busy with a task or a reply. An optional script runs first, and its output is placed in the prompt wherever you write {{output}}.
  • The Routines panel. Open Routines from the command palette, or choose Schedule a routine… from an agent's menu. Each routine shows its schedule in plain words, the agent it goes to and when it will run next. A switch pauses it, and the History tab shows each run, skip and failure.
  • Clear form. The form shows when the routine would run next as you type. If something is wrong, the message appears under the field that needs fixing.
  • For agents too. Orchestrator agents can manage routines with relay routine.

Routines run while Relay is open. A run missed by more than ten minutes while Relay was closed is skipped, not run late.

Notebooks

Stack notes into a notebook: one card with a tab for each note.

  • Stack and unstack. Select some notes and press Ctrl+Shift+B (Cmd+Shift+B on macOS), or drop a note onto a notebook. Unstack note puts the note on top back on the canvas.
  • Looks like a notebook. A spiral binding runs down the side, with divider tabs on top and ruled paper inside. When you click to edit, you write on the same paper in the same size, so the text does not jump.
  • Tabs you can rearrange. Drag a tab to reorder it, move it to another notebook, or drop it on the canvas. Right-click a tab to rename, unstack or delete it. When there are many tabs, they shrink evenly and the strip scrolls, and the tab you are on always stays readable.
  • One connection for all of it. Connecting an agent to a notebook gives it every note inside, including notes added later.
  • Agents can use them. Orchestrators can stack, unstack, create and delete notes with relay note. A note an agent deletes goes to a trash for seven days, and undo brings it back.

Agents that run more of the canvas

  • Layer status. Agents can post a one-line status for their layer with relay layer status, shown under the layer in the sidebar. A layer marked blocked or ready for review notifies you, which you can turn off in Settings. relay layer list shows every layer at a glance.
  • Land a layer. Land… in a layer's menu, or in the command palette, shows a dry run first, then merges the layer's branch into your project. Relay never resets a branch, forces a change or stashes your work, and it refuses if a branch moved since the check. Landed layers are archived unless you keep them.
  • Agents manage layers. Orchestrators can create, archive, restore and land layers, and place a new agent on a layer with relay recruit --layer. Every terminal now knows its layer through RELAY_LAYER_NAME and RELAY_LAYER_PATH.
  • Roles from the terminal. Saved roles can now belong to one workspace or to all of them. Any agent can read roles with relay role list and relay role show, and Orchestrators can create, edit and assign them. Assigning a role never restarts the agent.
  • Presets and notifications. relay preset list shows the agents that recruit can start. With Allow agents to notify you turned on in Settings (it is off by default), Orchestrators can send you a one-line desktop notification with relay notify.

Devices and browsers

  • Apple simulators. On a Mac with Xcode, device portals can now show iOS simulators. The screen streams live, and touches, keys and hardware buttons work. Agents can read the app's accessibility tree when they launch the app with relay portal launch. If Xcode's frameworks are not available, Relay falls back to idb.
  • Place devices like terminals. The rail's device tool now works like the terminal tool: tap or drag to draw the frame, then choose what streams into it. Cancelling leaves nothing behind.
  • Finds your tools. Browser portals now find Chrome and other Chromium browsers in Homebrew, /Applications and the usual Windows and Linux install locations, not only on PATH. Device portals find adb and the Android emulator through ANDROID_HOME, Homebrew and the SDK's default folders. This fixes Relay not finding them when opened from the Dock or Finder.

Changes

  • Lighter with many agents. A finished terminal keeps 1,000 lines of history instead of 10,000. Closed terminals no longer hold memory through background threads, the history of finished tasks has a limit, and portal frames that are off screen are released.
  • Smoother rounded corners. Content inside rounded cards is now clipped to the curve instead of to a square box.

Fixes

  • Typing quickly in a note no longer shows a false "changed on disk" conflict.
  • In a crowded notebook, the tabs no longer slide under the notebook's name or cut off the tab you are on.

Your next build

Put your agents on the same canvas.

Get Relay · $10