Repository navigation
Releases: buldezir/remote-agent
Release list
v0.8.0
What's new
- Sidebar layouts. A wide window (iPad, Mac, the web client, an Android tablet) shows your sessions in one of three layouts: Inbox, every server's sessions by state with Needs You first; Projects, each server's projects folding open to their sessions; and Columns, Mail's three columns of collections, their sessions and the session. Choose one in Settings › Sidebar, or on the Mac in View › as Inbox, as Projects, as Columns (⌘1–3). The iPhone and Android phones keep their list.
- Notifications on the Mac and in the browser. The Mac app and the web client tell you when a session on any server waits for an approval, a question or a plan, when its turn ends, or when the agent fails. A click opens the session. On the Mac they're on by default, and Settings › Notifications turns them off. In the web client, turn them on in Settings; they need the page on localhost or https.
- Building a Claude plan. When Claude has a plan ready, the choices are now Build with auto mode, Yolo, which builds in bypass permissions and asks nothing, and Continue planning. This comes with rad 0.8.0.
- Fixed: Bypass permissions in a Claude session. Choosing it from the session's permissions now takes effect; before, Claude stayed in its default mode. The apps now show the mode Claude actually runs in.
- Fixed: connections after sleep. After the Mac slept, the apps could show a server as connected when rad had already dropped the connection, and a prompt sent then was lost. The apps now notice a dead connection within seconds and reconnect. A prompt or new session sent meanwhile shows as pending and goes once the connection is back; if it can't reconnect, the text and images return to the composer.
Downloads
- rad (
rad-<os>-<arch>.tar.gz): the server for Linux and macOS. Unpack it, putradon your PATH and runrad serve. From then on,rad updateinstalls new releases. - Remote Agent (
Remote-Agent-macOS-arm64.zip): the client app for the Mac. - Remote Agent Server (
Remote-Agent-Server-macOS-arm64.zip): the menu bar app that runs rad on a Mac. - Remote Agent for Android (
Remote-Agent-Android.apk): the client app for Android 16 or later. Open it on the phone and allow installing from your browser; later releases install over it. - Web client: the Docker image
ghcr.io/buldezir/remote-agent-web, taggedlatestand0.8.0.web/compose.example.yamlruns it.
Both Mac apps need macOS 27 on Apple silicon. They are signed ad hoc, not notarized, so macOS blocks their first launch: allow them under System Settings › Privacy & Security, or run xattr -dr com.apple.quarantine on the app. After each update, macOS asks again for the Server app's permissions and for the client's access to its saved pairing tokens. To update only rad, and keep those permissions, use Update rad in the Server app's menu.
Full Changelog: v0.7.0...v0.8.0
v0.7.0
What's new
- Send a queued prompt now. A prompt sent while the agent works waits, marked Queued, until the turn ends. Send now on that prompt stops the running turn and sends it at once, ahead of any others still waiting. Stop still cancels every queued prompt. In every client. rad 0.7.0 is required; against an older rad the apps say to update it.
- The project is now licensed under the GNU AGPL v3.
Downloads
- rad (
rad-<os>-<arch>.tar.gz): the server for Linux and macOS. Unpack it, putradon your PATH and runrad serve. From then on,rad updateinstalls new releases. - Remote Agent (
Remote-Agent-macOS-arm64.zip): the client app for the Mac. - Remote Agent Server (
Remote-Agent-Server-macOS-arm64.zip): the menu bar app that runs rad on a Mac. - Remote Agent for Android (
Remote-Agent-Android.apk): the client app for Android 16 or later. Open it on the phone and allow installing from your browser; later releases install over it. - Web client: the Docker image
ghcr.io/buldezir/remote-agent-web, taggedlatestand0.7.0.web/compose.example.yamlruns it.
Both Mac apps need macOS 27 on Apple silicon. They are signed ad hoc, not notarized, so macOS blocks their first launch: allow them under System Settings › Privacy & Security, or run xattr -dr com.apple.quarantine on the app. After each update, macOS asks again for the Server app's permissions and for the client's access to its saved pairing tokens. To update only rad, and keep those permissions, use Update rad in the Server app's menu.
Full Changelog: v0.6.0...v0.7.0
v0.6.0
What's new
- Every server in one sidebar. On iPad, the Mac, Android tablets and the web client in a wide window, the sidebar now lists every paired server with its sessions, those waiting for you first, instead of one server at a time.
- Tap or click a server's name to hide or show its sessions; the app remembers which you hid. A hidden server shows how many sessions it has, and ✋ when one is waiting for you.
- Each server has a + that starts a session on it, and its other actions (reconnect, remove) in a ⋯ menu, or on the Mac in its context menu.
- With several servers connected, New session asks which one. On the Mac, ⌘N starts one on the server of the session you have open.
- Phones keep their list of servers.
- One window on the Mac and iPad. The Mac app has a single window, without New Window or tabs, and the iPad app no longer opens a second one. The window opens on the session you had open last.
- Reconnecting stops after five tries. When a server can't be reached, the apps try five times, over about 15 seconds, then stop and show why, instead of retrying forever. Try again, opening the server, a click on its name in the sidebar, or coming back to the app tries again. In every client.
- Select a whole reply in the Mac, iPhone and iPad app: a selection now runs across a reply's paragraphs, lists, tables and code. Code blocks wrap instead of scrolling sideways, and task-list boxes show as ☐ and ☑.
- The project in a session's header in the Mac, iPhone and iPad app: the line under the title starts with the session's project and branch, or its worktree's, before the model. Session rows lead with the project too, with the agent after it.
- Fixes
- A session opened at launch could show an empty transcript, in the Apple apps and the web client.
- On an Android phone, archiving a worktree session showed Archive and delete worktree on top of Cancel.
- rad hasn't changed since 0.5.1. Updating it to 0.6.0 is optional.
Downloads
- rad (
rad-<os>-<arch>.tar.gz): the server for Linux and macOS. Unpack it, putradon your PATH and runrad serve. From then on,rad updateinstalls new releases. - Remote Agent (
Remote-Agent-macOS-arm64.zip): the client app for the Mac. - Remote Agent Server (
Remote-Agent-Server-macOS-arm64.zip): the menu bar app that runs rad on a Mac. - Remote Agent for Android (
Remote-Agent-Android.apk): the client app for Android 16 or later. Open it on the phone and allow installing from your browser; later releases install over it. - Web client: the Docker image
ghcr.io/buldezir/remote-agent-web, taggedlatestand0.6.0.web/compose.example.yamlruns it.
Both Mac apps need macOS 27 on Apple silicon. They are signed ad hoc, not notarized, so macOS blocks their first launch: allow them under System Settings › Privacy & Security, or run xattr -dr com.apple.quarantine on the app. After each update, macOS asks again for the Server app's permissions and for the client's access to its saved pairing tokens. To update only rad, and keep those permissions, use Update rad in the Server app's menu.
Full Changelog: v0.5.1...v0.6.0
v0.5.1
What's new
- Background tasks. When an agent leaves work running after its turn, such as watching a GitHub Actions run with
gh run watchor a subagent in the background, the session now shows it at the foot of the transcript under Running in the background, and the session list shows a clock instead of the idle circle. In the Mac, iPhone and iPad app, the web client and the Android app.- When a task ends, the agent reports back in a turn of its own. That turn now starts with a notice, such as Background task finished: Wait for the Release workflow, and works like any other: the session shows as working, Stop stops it, and prompts you send meanwhile wait their turn. Before, the session stayed idle while the agent worked.
- rad no longer stops an idle agent (
idle_timeout, 30 minutes by default) while it has background tasks, which used to end them before the agent could report. - A background subagent's tool calls no longer show as failed when the turn that started it ends; they finish in place.
- Only Claude Code reports background tasks. Codex has no such tasks to report.
- Unsent prompts are kept. Text you type in a session's prompt and don't send stays there when you open another session and come back, and when the app quits or the page reloads. Drafts stay on the device; sending empties them. Attached images aren't kept.
- Update rad for background tasks: the clients show them only with rad 0.5.1. Older clients work with rad 0.5.1 and get the agent's own turns, without the list.
Downloads
- rad (
rad-<os>-<arch>.tar.gz): the server for Linux and macOS. Unpack it, putradon your PATH and runrad serve. From then on,rad updateinstalls new releases. - Remote Agent (
Remote-Agent-macOS-arm64.zip): the client app for the Mac. - Remote Agent Server (
Remote-Agent-Server-macOS-arm64.zip): the menu bar app that runs rad on a Mac. - Remote Agent for Android (
Remote-Agent-Android.apk): the client app for Android 16 or later. Open it on the phone and allow installing from your browser; later releases install over it. - Web client: the Docker image
ghcr.io/buldezir/remote-agent-web, taggedlatestand0.5.1.web/compose.example.yamlruns it.
Both Mac apps need macOS 27 on Apple silicon. They are signed ad hoc, not notarized, so macOS blocks their first launch: allow them under System Settings › Privacy & Security, or run xattr -dr com.apple.quarantine on the app. After each update, macOS asks again for the Server app's permissions and for the client's access to its saved pairing tokens. To update only rad, and keep those permissions, use Update rad in the Server app's menu.
Full Changelog: v0.5.0...v0.5.1
v0.5.0
What's new
- Android app. Remote Agent now has an app for phones and tablets on Android 16 or later, with what the iPhone and iPad app does: pairing by QR code or link, sessions with their approvals and questions, new sessions in a worktree, images, the changes a session made and reverting them, the terminal, dictation, and the theme and text sizes in Settings. On a tablet, or in a wide window, a server's sessions stay beside the open one.
- To install it, download
Remote-Agent-Android.apkon the phone, open it, and allow installing apps from your browser when Android asks. Later releases install over it. - Scan QR code uses Google Play services' scanner, so the app doesn't ask for the camera. Without Play services, paste the link that
rad pairprints. - The app talks plain
http://to rad, at any addressrad pairprints. Prefer Tailscale: on the LAN the traffic isn't encrypted.
- To install it, download
- Terminal shortcut. ⌘J or ⌘
shows and hides a session's terminal in the Mac app, on an iPad with a keyboard and in the web client. Hiding it puts you back in the prompt. The web client takes Ctrl too, except inside the terminal, where Ctrl+J and Ctrl+go to the shell. - rad itself hasn't changed since 0.4.0, so you don't need to update it. The terminal needs rad 0.4.0 or later.
Downloads
- rad (
rad-<os>-<arch>.tar.gz): the server for Linux and macOS. Unpack it, putradon your PATH and runrad serve. From then on,rad updateinstalls new releases. - Remote Agent (
Remote-Agent-macOS-arm64.zip): the client app for the Mac. - Remote Agent Server (
Remote-Agent-Server-macOS-arm64.zip): the menu bar app that runs rad on a Mac. - Remote Agent for Android (
Remote-Agent-Android.apk): the client app for Android 16 or later. Open it on the phone and allow installing from your browser; later releases install over it. - Web client: the Docker image
ghcr.io/buldezir/remote-agent-web, taggedlatestand0.5.0.web/compose.example.yamlruns it.
Both Mac apps need macOS 27 on Apple silicon. They are signed ad hoc, not notarized, so macOS blocks their first launch: allow them under System Settings › Privacy & Security, or run xattr -dr com.apple.quarantine on the app. After each update, macOS asks again for the Server app's permissions and for the client's access to its saved pairing tokens. To update only rad, and keep those permissions, use Update rad in the Server app's menu.
Full Changelog: v0.4.0...v0.5.0
v0.4.0
What's new
- Terminal. A session's ⋯ menu now opens a shell on your computer, in the session's folder (its worktree, for a worktree session). It's your login shell in a real terminal, so
git,vim,htopand the agents' CLIs work as they do at the computer.- The shell keeps running when you close the terminal, switch apps or lose the connection. Reopening it picks up where it was, from the last 256 KiB of output. It ends when you
exitit or choose Close Shell, when the session is archived, or when rad stops. Each session has one shell, shared by all your devices. - On the Mac, the iPad and the web client in a wide window, Settings › Terminal picks where it opens: instead of the messages, below them, or in a sidebar on the right. On an iPhone, or in a narrow window, it takes the place of the messages.
- On iPhone and iPad, the bar above the keyboard has Esc, Ctrl, Tab and the arrow keys. The web client shows the same keys on touch screens.
- The menu item appears with rad 0.4.0 or later: update rad with
rad updateor from the Server app's menu. - Under the Server app, the shell has the permissions you gave the app.
- The shell keeps running when you close the terminal, switch apps or lose the connection. Reopening it picks up where it was, from the last 256 KiB of output. It ends when you
- Claude Code's tool calls show files outside the project under your home folder as
~/…, such as its plan files, rather than as full paths.
Downloads
- rad (
rad-<os>-<arch>.tar.gz): the server for Linux and macOS. Unpack it, putradon your PATH and runrad serve. From then on,rad updateinstalls new releases. - Remote Agent (
Remote-Agent-macOS-arm64.zip): the client app for the Mac. - Remote Agent Server (
Remote-Agent-Server-macOS-arm64.zip): the menu bar app that runs rad on a Mac. - Web client: the Docker image
ghcr.io/buldezir/remote-agent-web, taggedlatestand0.4.0.web/compose.example.yamlruns it.
Both Mac apps need macOS 27 on Apple silicon. They are signed ad hoc, not notarized, so macOS blocks their first launch: allow them under System Settings › Privacy & Security, or run xattr -dr com.apple.quarantine on the app. After each update, macOS asks again for the Server app's permissions and for the client's access to its saved pairing tokens. To update only rad, and keep those permissions, use Update rad in the Server app's menu.
Full Changelog: v0.3.0...v0.4.0
v0.3.0
What's new
rad updateinstalls the latest release over your rad. It checks the download against the release'sSHA256SUMSand keeps the previous binary asrad.oldnext to it.rad update --checkonly tells you whether a newer release is out.- If rad runs as the background service from
rad install-service, the service is restarted andrad updatewaits for the new version to answer. - A restart interrupts running turns, so while a session is busy (a turn running, or an approval waiting) it stops before downloading and names the sessions.
--nowupdates anyway. - A rad running in a terminal needs restarting by hand. A build from source isn't replaced without
--force.
- If rad runs as the background service from
- Update rad from the Server app. When a newer release is out, the menu offers Update rad to …. The app checks once a day, or when you choose Check for Updates….
- The app downloads the new rad to
~/Library/Application Support/Remote Agent Server/and restarts rad from there. It asks first if that would interrupt a session. - The app itself doesn't change, so macOS keeps the permissions you gave it, and they apply to the new rad too.
- When you later install a newer app, its own rad takes over again.
- The app downloads the new rad to
- The Server app's menu shows which version of rad is running.
Releases up to 0.2.0 don't have rad update, so install this one by hand. From then on, rad update and the Server app's menu do it.
Downloads
- rad (
rad-<os>-<arch>.tar.gz): the server for Linux and macOS. Unpack it, putradon your PATH and runrad serve. From then on,rad updateinstalls new releases. - Remote Agent (
Remote-Agent-macOS-arm64.zip): the client app for the Mac. - Remote Agent Server (
Remote-Agent-Server-macOS-arm64.zip): the menu bar app that runs rad on a Mac. - Web client: the Docker image
ghcr.io/buldezir/remote-agent-web, taggedlatestand0.3.0.web/compose.example.yamlruns it.
Both Mac apps need macOS 27 on Apple silicon. They are signed ad hoc, not notarized, so macOS blocks their first launch: allow them under System Settings › Privacy & Security, or run xattr -dr com.apple.quarantine on the app. After each update, macOS asks again for the Server app's permissions and for the client's access to its saved pairing tokens. To update only rad, and keep those permissions, use Update rad in the Server app's menu.
Full Changelog: v0.2.0...v0.3.0
v0.2.0
What's new
- Web client. Remote Agent now runs in a browser too, with everything the apps do: sessions, approvals and questions, images, diffs and revert, slash commands, and the light and dark themes. Run it from source (
cd web && npm install && npm run dev) or from the Docker imageghcr.io/buldezir/remote-agent-web;web/compose.example.yamlruns it on port 8080. rad pair --web <url>prints a link that opens the web client at<url>with the pairing filled in.- New config option
web_origins. rad answers browsers only from the pages listed there. The default lets in pages onlocalhostand127.0.0.1; to open the web client from another address, add it, for exampleweb_origins: ["localhost:*", "127.0.0.1:*", "my-server.local:8080"]. The apps aren't affected. - A page served over
https://can't reach rad on plainhttp://: serve the web client overhttp://too, or put rad behind HTTPS, for example withtailscale serve.
Downloads
- rad (
rad-<os>-<arch>.tar.gz): the server for Linux and macOS. Unpack it, putradon your PATH and runrad serve. - Remote Agent (
Remote-Agent-macOS-arm64.zip): the client app for the Mac. - Remote Agent Server (
Remote-Agent-Server-macOS-arm64.zip): the menu bar app that runs rad on a Mac. - Web client: the Docker image
ghcr.io/buldezir/remote-agent-web, taggedlatestand0.2.0.web/compose.example.yamlruns it.
Both Mac apps need macOS 27 on Apple silicon. They are signed ad hoc, not notarized, so macOS blocks their first launch: allow them under System Settings › Privacy & Security, or run xattr -dr com.apple.quarantine on the app. After each update, macOS asks again for the Server app's permissions and for the client's access to its saved pairing tokens.
Full Changelog: v0.1.3...v0.2.0
v0.1.3
- rad (
rad-<os>-<arch>.tar.gz): the server for Linux and macOS. Unpack it, putradon your PATH and runrad serve. - Remote Agent (
Remote-Agent-macOS-arm64.zip): the client app for the Mac. - Remote Agent Server (
Remote-Agent-Server-macOS-arm64.zip): the menu bar app that runs rad on a Mac.
Both Mac apps need macOS 27 on Apple silicon. They are signed ad hoc, not notarized, so macOS blocks their first launch: allow them under System Settings › Privacy & Security, or run xattr -dr com.apple.quarantine on the app. After each update, macOS asks again for the Server app's permissions and for the client's access to its saved pairing tokens.
Full Changelog: v0.1.2...v0.1.3
v0.1.2
- rad (
rad-<os>-<arch>.tar.gz): the server for Linux and macOS. Unpack it, putradon your PATH and runrad serve. - Remote Agent (
Remote-Agent-macOS-arm64.zip): the client app for the Mac. - Remote Agent Server (
Remote-Agent-Server-macOS-arm64.zip): the menu bar app that runs rad on a Mac.
Both Mac apps need macOS 27 on Apple silicon. They are signed ad hoc, not notarized, so macOS blocks their first launch: allow them under System Settings › Privacy & Security, or run xattr -dr com.apple.quarantine on the app. After each update, macOS asks again for the Server app's permissions and for the client's access to its saved pairing tokens.
Full Changelog: v0.1.1...v0.1.2