What Reemoat is, and how it works
Reemoat is open-source, self-hosted remote control for AI coding agents. A daemon on a Linux or macOS machine you own runs Claude Code, Codex, OpenCode, Kimi Code, Grok Build and Cursor as long-lived sessions, and one app on your laptop or phone supervises them through a relay that cannot read what it carries.
The three parts
Every part is open source under AGPL-3.0-only, and none of it needs an account on reemoat.com.
- The daemon
Runs on each machine the agents work on, as your own user. It starts the agent CLIs over the Agent Client Protocol (ACP), one git worktree per session, and keeps each session's transcript on that machine.
- The control plane and its relay
Runs on a server: your own, or one whose operator you trust. It holds accounts, machines and grants, signs short-lived tokens scoped to one machine, and passes ciphertext between the app and the daemon.
- The app
Runs on macOS, Windows, Linux, Android and iOS. It shows every machine and every session, and is where you answer what an agent asks. It is a native app: there is no browser client.
For Reemoat, self-hosted means the daemon runs on a machine you operate, and the control plane and its relay can too. Anthropic's Self-hosted environments for Claude Code are something else: runners in an organisation's network for Claude Code's cloud sessions, where "The control plane remains Anthropic-hosted".
How a session reaches you
- The daemon on your machine dials out to a public relay, so nothing on your router has to be opened.
- The app reaches the daemon through that relay, and the two speak an end-to-end encrypted channel: the relay can't read what it carries.
- Sessions live on that machine, each in its own git worktree, so a closed lid or a dropped connection does not stop them.
Each agent asks under its own vendor's rules, not Reemoat's: Cursor, for one, edits files inside the session's folder without asking. A request holds its place until you open the app. The encrypted channel ends at the daemon: from there the agent sends its model vendor the prompts and the code it reads, as it does from your terminal. Who can read what covers every party, including the operator of a control plane.
Reemoat in brief
| Fact | Detail |
|---|---|
| Agents | Claude Code, Codex, OpenCode, Kimi Code, Grok Build and Cursor |
| Agent accounts | The ones you already have: each agent's own sign-in, or an API key; Codex needs its sign-in, a key alone does not start it. Claude Code and OpenCode can also be pointed at OpenRouter |
| Where the agents run | Your own machine: a Linux server, a box under the desk or a Mac. Linux needs systemd; x86_64 or arm64; with git |
| The app | macOS, Windows, Linux, Android and iOS; no browser client |
| Sessions | One git worktree each, in a git repository; they keep running with the app closed. On a Mac that uses the app's own daemon, quitting the app stops them |
| Agents messaging each other | A session can message another session, on the same machine or on another machine of yours on the same control plane; between machines the messages are end-to-end encrypted. On by default since 0.12.0, and a switch turns it off |
| If the control plane is down | Sessions already running keep running. Nobody can sign in, get a new token or add a machine, and no remote machine can be reached until the control plane is back |
| Encryption | Noise_IK, end to end; the relay carries only ciphertext |
| Network | The machine dials out: no open port, no VPN |
| Notifications | None: no push, no email, no bot |
| Sandbox | None: an agent runs as your own user |
| Licence | Open source, AGPL-3.0-only |
| Price | Free. Reemoat resells no model time; you pay each agent's vendor as you already do |
| Maturity | Pre-1.0, one maintainer |
Who it is for
Reemoat fits if:
- you have a long-running coding task you want to start and walk away from;
- you have a Linux or macOS machine of your own, and are content to let an agent operate it as you;
- you already pay for Claude Code, Codex, OpenCode, Kimi Code, Grok Build or Cursor, or hold an OpenRouter key;
- you would rather keep the repository and the credentials on your own hardware.
When this is the wrong tool
- You want the agent kept away from the rest of the machine. There is no sandbox: what is accepted.
- You need to be told when a session finishes or blocks. Nothing notifies you.
- You want to work from a browser. There is no browser client.
- The machine for the agents runs Windows. The daemon runs on Linux and macOS only, though the app runs on Windows too.
- You use one agent and its vendor's own remote covers you: the options, side by side.
Who makes it
Reemoat is made by one person and is pre-1.0. The source, the issues and every
release are on GitHub. Only the latest
release and main are supported.
| Contact | How |
|---|---|
| info@reemoat.com | |
| Telegram | @rends_east |
| A bug, or a wrong fact on this site | Open an issue |
| A vulnerability | Privately, as Reporting a vulnerability describes |