Where your code lives
- Exeora
- The machine you ran it on
- ngrok, Cloudflare Tunnel
- The machine you ran it on
- Cloud sandbox
- A copy on their infrastructure
How it works
No inbound network path, no copy of your code, and a blast radius you decide when you authorize a client
The machine opens an outbound WebSocket and holds it. No inbound port, no tunnel, no VPN - the same command works behind NAT and behind a corporate firewall
Exeora routes tool calls; it does not store your repository. Files are read, searched and edited where they already are, and only the result of a call crosses the wire
A project's own URL reaches that project and nothing else, because the project is in the path rather than in anything the client sends. One account URL covers several, and you tick which ones when you authorize it
Compare
A tunnel exposes a port you then have to defend. A sandbox gives an agent a copy of your project rather than the project
Guarantees
One outbound connection, one resource per project, rules you can tighten, and a log that records what happened without recording what was in it
Nothing listens on the machine. The CLI opens an outbound connection and holds it, so home routers, corporate proxies and cloud VMs with no public address all work unconfigured
Exeora routes tool calls; it does not store the repository. Files are read, searched and edited where they already are, and only the result of a call crosses the wire
Every URL is its own OAuth resource, so a token for one project is refused at another. Paths are resolved through realpath before anything touches disk - `..` and outward symlinks are rejected
Read only, allow list, deny list, per-tool restrictions, and optional approval before edits and commands. Shell metacharacters are refused whenever a list is in force
Which tool ran, how it ended, how long it took, and which client asked. Never the arguments, never the output - a log you can show someone
Closing a machine kills the live socket that instant, not when a token expires. The whole stack is open source under AGPL-3.0 - audit it, fork it, contribute
Ten tools, one project directory - full tool reference
What you are agreeing to
A new project allows everything until you narrow it. From the dashboard you can set it to read only, name the commands it may run, refuse specific ones in any mode, choose which tools exist, and ask to confirm every change before it happens. Paths stay confined to the project root either way, but that confinement is not a sandbox: a command that runs still runs as you, with your environment and your network.
An allow list with shell turned on is only a suggestion. Confirmation only reaches a person who is there: in the conversation on MCP 2026-07-28, and otherwise on the machine's terminal or in the dashboard. Revoking a machine from the dashboard closes its connection immediately, so that is the stop button.
The full model is in what a project allows. The source is public on GitHub, so you can audit every line.
FAQ
Mostly about what Exeora can see, what it cannot stop, and how to make it stop
No. The gateway routes tool calls and returns their results; it never receives a copy of your repository. What does cross the wire is whatever a tool returns, for example the lines a grep matched, and none of that is stored. The audit log records the tool name, the outcome and the duration, never arguments or output.
The connection drops and calls to that project fail immediately with LOCAL_EXECUTOR_OFFLINE. Nothing is queued, by design: every call also carries an absolute deadline that the CLI rechecks on arrival, so a command asked for hours ago cannot run when the machine wakes up.
Yes. From the dashboard you can set a project to read only, name the commands it may run, refuse specific ones in any mode, choose which tools exist, and ask to confirm every change before it happens. A project may also carry an exeora.toml that can only narrow those rules, never widen them. See what a project allows.
If the machine can make outbound HTTPS requests, yes. The CLI opens the connection outward and keeps it, so there is no inbound rule to request, no port to forward and no VPN to join.
Revoke the machine from the dashboard. That closes its live socket at once and stops it serving anything, rather than waiting for a token to expire. Removing a project takes its MCP URL out of service the same way.
Yes. The full stack - CLI, gateway, dashboard and docs - is public on GitHub under the AGPL-3.0. You can read every line, audit the security model, open issues and send pull requests. The hosted product at exeora.dev runs that same code.
One command, one browser sign-in, and a URL you paste into whichever client you already use. Run it wherever the work is. Open source under AGPL-3.0 - every line is on GitHub.
Exeora runs on a desktop. Choose the macOS, Linux or Windows tab for the machine where you will install it.
curl -fsSL https://exeora.dev/macos/install.sh | shexeora connectOne native binary · macOS, Linux and Windows · Releases