How it works
A friendly tour of o10r.
No jargon. Where your sessions run, how approvals flow, and how the optional hub lets you check on things from your phone.
The short version
o10r is a control panel for Claude Code. Instead of opening a new terminal for every session, you open one app that shows all of them at once: the session working on your bug fix, the one cleaning up your tests, the one your colleague told you to run on the server in the corner.
You can use just the desktop app on your own machine, or — if you want — add an optional hub so you can reach the same sessions from your phone, your laptop, or a remote server.
Where your sessions actually run
Each Claude Code session runs on whichever machine you point it at. There's no shared cloud doing your edits. The desktop app talks to a small companion process on that machine — we call it the agent — and the agent is what spawns Claude, watches it work, and writes files. Your code, your environment variables, and your git history stay where they were.
If you only ever run sessions on your laptop, the agent runs there too — quietly launched by the app, invisible to you. If you want sessions inside a devcontainer or on a server, you install the same agent there and pair it with your hub. Either way, sessions never leave the box you started them on.
One inbox for approvals
Claude pauses before doing anything sensitive — running a shell command, editing a file outside what you've already allowed, calling out to the web. Every one of those prompts, from every session, lands in a single inbox in the app.
You can approve once, deny, or set a rule that remembers the answer the next time it comes up. While you're deciding, the session waits. There's no race to a terminal to catch a permission prompt before it times out.
Working from anywhere (the hub)
The hub is optional — it's a small server you (or your team) host yourselves. If you set one up, your desktop app and any standalone agents you've installed all register with it. From then on you can:
- Open the hub in a browser on your phone and check on running sessions.
- Spawn a new session on the server while you're away from your laptop.
- Answer permission prompts from any device.
- See every agent you've registered in one place, with its current version and status.
The hub never holds your code — it's just a meeting point. Your phone asks the hub to forward a request to your devcontainer; the devcontainer's agent does the work and sends results back the same way. If the hub goes down, your local sessions keep running.
Staying up to date without interrupting you
New versions of the agent appear from time to time. Standalone agents check for them every few hours; when one's available they download it quietly in the background and wait. They restart themselves only after your active sessions finish — so an update can never yank Claude out from under a half-written commit message.
If you'd rather drive updates yourself, the hub has an Agents page where you can see which version each agent is on and click Update when it suits you. The desktop app updates itself separately, the way most desktop apps do, prompting you when there's a new release.
What's where, at a glance
Stays on your machine
Your code. Your git history. Every file Claude reads or writes. Your shell.
Crosses the hub (if you use one)
Session status, approval prompts, your control inputs (start, stop, message).
Never leaves the agent
Tokens, environment secrets, the contents of files Claude inspects to decide what to do.
Is it safe to let people share it?
If you set up a hub for a small team, each person sees only the agents they registered. There's no shared visibility unless you opt in. Permissions you've granted are scoped to the agent that asked, and the system refuses to act on file paths outside the projects you've registered with that agent. The standard stuff you'd want a tool like this to do.
The pieces, in plain words
For when someone in your team asks "what's the agent? what's the hub?"
- The desktop app — the window you spend time in. Sessions panel, approvals, settings.
- The agent — the background helper that actually launches Claude. Lives on whichever machine you're using: your laptop, a remote server, a devcontainer. The desktop app starts one automatically; you install one yourself anywhere else you want to run sessions.
- The hub — optional. The shared meeting point for agents and browsers. Lets you check on things from your phone, give a colleague visibility, or run sessions on a remote box.
Building on top of o10r or curious about the protocol that wires it all together? The source is open on GitLab — that's the right place for the implementation tour.