Agent-agnostic sandboxed environments, hosted on your hardware, controlled by your whole team.
Agents eat CPU, RAM and battery even when the model is remote. Sandboxes, file watching and test loops all run locally, and everything dies the moment the lid closes.
The hosted alternatives fix that by moving your source code onto their infrastructure and charging per seat for it.
Aether is the third option.
Your hardware, your code.
Set the server up once, then this is the loop. Every command, in order →
Point the CLI at a Linux box running Docker. It talks to the server over SSH on port 2222, and the first identity to link a fresh server becomes its admin. There is no other signup.
aether link my-serverGive it a task and name an agent. The run gets its own container, git worktree and branch on the server. Nothing runs on your machine, and nothing stops when you disconnect.
aether run "fix the flaky auth test" --agent claudeWhen the agent exits its work is already committed. Pulling fetches the run branch into your clone as a remote-tracking ref. You review and merge it yourself; Aether never merges.
aether pull 01m04mhf114eap4k85n2mgcpedAgents run in containers on the server. Close the lid and the run keeps going, and the sync daemon fetches what landed when you reconnect.
Every run gets its own worktree and branch. You pull, review and merge. Aether never merges anything itself.
Skills, plugins and settings mirror to the server per member, with secrets held back by a denylist and a content scan. Teammates run side by side on the same box and can watch or steer each other's agents, with every act attributed.
Example runs, showing the shape of the receipt a finished run leaves behind.
aether gui serves the dashboard from your own machine over your SSH key and opens a browser tab. Nothing is exposed to your network and there is no separate login. The desktop app is the same dashboard in its own window, with notifications when a run needs you. Both call the same methods the CLI does, so you can use the GUI and the terminal side by side on the same runs.
Every pane, in detail →Yours and your team's, colored by member. Picking one filters the rest of the view to it.
Working, Needs You, Done. A run lands in Needs You whether it stalled or finished clean, and the card says which.
Read-only by default. With the steer capability you can type into your own run or a teammate's, and every keystroke is attributed.
Scrub through what the agent touched as it worked, file by file, before you pull the branch.
When a run needs a permission or a decision it stops and posts here, then picks up once a member with the right role answers.