You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[FEATURE]: Remote control of desktop sessions from anywhere (phone/web) without exposing serve directly #58368
I have verified this feature I'm about to request hasn't been suggested before.
Searched the tracker for 'remote access from anywhere', 'T3 Connect', 'control sessions from phone' — 0 hits. Related but different (all closed): #55864 and #54596 (opentunnel pairing failures), #49207 (third-party ToS policy). Nothing tracks first-class remote control as a feature.
The gap, firsthand
I run my OpenCode sessions through T3 Code instead of OpenCode Desktop. The deciding reason is mundane: when I leave my desk, my sessions are unreachable. Today remote reachability is a manual chain — service set remote true + consent + pair --remote QR — yielding a single opentunnel route for one device, and share links are read-only replay (packages/web/src/components/Share.tsx). There is no saved-environment catalog, no route fallback when the tunnel flakes, and nothing tells my phone a background run finished. A harness that keeps my agents reachable from anywhere wins my daily use, even though the underlying engine is still opencode serve.
Prior art proving users want this: T3 Connect — one environment identity reachable over direct / Tailscale / SSH / relay routes, managed cloudflared tunnels, pairing QR, push on agent activity. I'm asking for parity on the remote-control axis, not a clone of their stack.
Proposal shape (building on existing pieces)
Keep the current primitives: 5-minute pairing codes (packages/server/src/pairing.ts), per-device remote.route (packages/cli/src/services/service-config.ts), opentunnel client (remote-tunnel.ts).
Add a saved-routes catalog in the app (like the existing multi-server registry in packages/app/src/runtime/server/registry.tsx): each environment tries its routes in order with reconnect + fallback, instead of one fragile URL.
Add an activity hook for background completions (run finished / needs input) that a phone/web client can subscribe to — the missing half that makes remote sessions usable rather than just viewable.
Explicitly out of scope: multi-user ACL and team workspaces. Single user, their own devices, their own login — same trust model as pairing today.
Why it matters
Desktop is OpenCode's flagship surface, but a flagship the user can't reach from their second device loses daily-driver status to any harness that can. This closes that exact gap with pieces the repo already owns.
Thanks for the detailed write-up, @ImBIOS! As I understand it, you're asking for first-class remote control of your own desktop sessions from a second device. That would be a saved list of routes per environment that falls back from one to the next when one fails, instead of the single tunnel route pair --remote gives you today. It would also send a notification to your phone or web client when a background run finishes or needs input. Maintainers will consider it.
Related issues, in case they're useful:
[FEATURE]: OpenCode Remote Control #47692: OpenCode Remote Control through a self-hosted gateway with corporate OIDC (same goal, different trust model and approach)
Give AI your phone number. With the number you get from callmemcp.com we basically support ANY AI agent, from chatgpt dots to claude to grok bot. in the meantime, for the "nothing tells my phone a run finished" gap: point opencode at https://callmemcp.com/mcp and it can ring your iphone when a run is blocked. answer hands free while youre out and opencode keeps going with what you said. paid app, ios only
Activity
opencode-agent commentedon Oct 23, 2026
Thanks for the detailed write-up, @ImBIOS! As I understand it, you're asking for first-class remote control of your own desktop sessions from a second device. That would be a saved list of routes per environment that falls back from one to the next when one fails, instead of the single tunnel route
pair --remotegives you today. It would also send a notification to your phone or web client when a background run finishes or needs input. Maintainers will consider it.Related issues, in case they're useful:
opencode serveas a built-in mode of the desktop client for access from mobileradres commentedon Oct 24, 2026
Give AI your phone number. With the number you get from callmemcp.com we basically support ANY AI agent, from chatgpt dots to claude to grok bot. in the meantime, for the "nothing tells my phone a run finished" gap: point opencode at https://callmemcp.com/mcp and it can ring your iphone when a run is blocked. answer hands free while youre out and opencode keeps going with what you said. paid app, ios only