Signal onboarding
Generate a short-lived Worker signal plus a Direct Token share URL, then connect machines and anonymous Control devices.
Click to inspectAgentMux keeps Codex, Claude, Gemini, OpenCode, and plain shells unaware of remote access. Workers own local tmux or PTY sessions, Hub routes identity and WebSockets, Control gives you browser and TUI access from anywhere.
No agent SDK, callback server, or vendor-specific remote feature. AgentMux attaches below the agent at the terminal layer.
Run Hub behind Cloudflare Tunnel or a proxy. HTTPS becomes WSS, and workers keep outbound-only connectivity by default.
Registered Control supports workspaces, previews, Worker management, and updates. Direct Token sharing stays limited to session list and terminal access.
Large technical diagrams are embedded directly into the Hub landing page and can be opened for detail review.
Generate a short-lived Worker signal plus a Direct Token share URL, then connect machines and anonymous Control devices.
Click to inspectKeep Hub and SQLite on your server while Cloudflare terminates HTTPS and WSS through a tunnel.
Click to inspectOperate multiple long-lived terminal sessions from a compact browser workspace.
Click to inspectThis Hub is already running. Follow the steps below to connect your first machine.
Only use this when you want to run your own Hub. The Docker image already defaults to port 8081 and stores data under /var/lib/agentmux.
curl -fsSL https://agentmux-prev.kinboy.wang/deploy-hub.sh | sh # optional: # AGENTMUX_PUBLIC_URL=https://hub.example.com AGENTMUX_ADDR=127.0.0.1:8081 curl -fsSL https://agentmux-prev.kinboy.wang/deploy-hub.sh | sh
docker run -d --name agentmux --restart unless-stopped -p 8081:8081 ghcr.io/kinboyw/agentmux:latest
agentmux hub --addr 0.0.0.0:8081 --data ./agentmux.db
docker run -d --name agentmux --restart unless-stopped -p 8081:8081 -v agentmux-data:/var/lib/agentmux ghcr.io/kinboyw/agentmux:latest
cloudflared tunnel --url http://127.0.0.1:8081 # open the printed https://*.trycloudflare.com URL and generate commands there