swe-swe

Your agent: containerized with its own browser for agentic testing.
Your terminal: pair live or share recordings with teammates.
Your sessions: run multiple in parallel, each on its own git worktree.

swe-swe in action: agent chat, app preview, and a live docs pane side by side

My machine running swe-swe will have

Tell the page what your machine has and it writes the commands to run. Leave everything as it is and you get the ordinary four lines. Pick one. Every check below prints its own answer, so you never have to interpret a wall of output.

swe-swe packages up the coding agent and all its tools for you. Nothing else needs installing.
how do I check?
docker info >/dev/null 2>&1 && echo "Docker works: pick Docker" || echo "No Docker here: pick one of the others"

If you have Docker Desktop, start it and run this again.

No Docker, but the agent is already installed on the machine. swe-swe runs everything directly. Linux on a 64-bit machine, Intel or ARM.
how do I check?
command -v git >/dev/null 2>&1 && command -v claude gemini codex goose aider opencode pi >/dev/null 2>&1 && echo "git and a coding agent are installed: pick this one" || echo "Missing one of them: pick none of the above"

My browser can reach it by

Pick one. This applies whichever way you answered above.

Your own laptop, or a machine on your network. Each session gets its own port for the app preview, and they all just work.
That is: anything.<the machine's hostname> reaches it, whatever you put in front of the dot. Running it locally, lvh.me already behaves this way.
how do I check?

In a browser on the machine you will actually be using, open anything.<the machine's hostname> — literally the word "anything", or any word you like. If it reaches this machine, pick this one.

You open it at a single address, like https://my-box.example.com, and nothing else on that machine opens. Usual for a hosting service, a rented server with one way in, or a work network that blocks the rest. Nothing to set up.
how do I check?

If all you were handed is one address to open, pick this one. To be sure, add :8080 to the end of that address (after the name, before any /) and try to open it in the browser you will actually use. If it does not open, pick this one.

A private network between your own machines. Every port becomes reachable, so nothing is added to the script.
how does that work?

Install Tailscale on this machine and on the one you browse from, sign both into the same account, and reach swe-swe at the name Tailscale gives it. swe-swe neither installs nor configures it; it is just a network your machines are both on.

The same machine as above, when you do want the parts that need their own address. It gives you wildcard subdomains of its own hostname and hands your ports back on those.
what do I need?

A tunnel server to connect to, which is a separate thing to run: a machine that stays up, a domain whose subdomains point at it, and your key authorised on it. See the docs. Once it is running, connecting this machine to it is the three steps below the script.

Run this

Password made at random in your browser, sent nowhere. Keep the copy you paste.