Leave the desk, not the loop
Prompts, tool calls, diffs and permission requests stream to your phone the moment they happen. Approve a command from the train, not from your chair.
A native mobile client for opencode serve. Watch sessions stream token by token, run parallel agents in worktrees, review diffs, and open a remote shell — on your LAN or through the encrypted relay.
Works with any opencode serve instance. Direct connections need no account.
Fix flaky auth tests
fix/flaky-auth· Connected
Run the auth test suite and fix the flaky ones.
Build · claude-sonnet · 14:32
Found the race: the refresh token is rotated before the old one is revoked. Applying a fix and re-running the suite.
bash · flutter test
test/features/chat/chat_controller_test.dart
Ask anything…
Built on the real opencode server protocol
Why mobile
Long-running agents are the whole point. opencode mobile keeps you in the loop while life happens — commuting, away from the keyboard, or just on the couch.
Prompts, tool calls, diffs and permission requests stream to your phone the moment they happen. Approve a command from the train, not from your chair.
Worktrees let several agents work at once without stepping on each other. Glance at all running sessions, jump into whichever needs you next.
The app connects directly to your own opencode serve instance, or through the encrypted relay when you are away. Relay traffic is encrypted in transit and never stored — your opencode password never leaves your computer.
Features
opencode mobile is not a thin wrapper. It mirrors the full server model: sessions, events, worktrees, files, terminals and notifications — rendered natively.
Every state change arrives over a single SSE stream. Tokens, tool calls, diffs, todos and permission requests render as they happen.
Found the race: the refresh token is rotated before the old one is revoked. Applying a fix and re-running the suite.
Save multiple opencode serve endpoints and switch between them in one tap. Credentials stay isolated and encrypted.
Register git worktrees across projects and start independent sessions inside each one. Run several agents at once without collisions.
Review what the agent changed without leaving your phone. Browse the whole tree and open any file with syntax highlighting.
Every directory gets a real PTY over WebSocket, rendered with the same engine family used by the desktop app.
PTY connected
~/projects/opencode_mobile
$ flutter test test/features/chat
00:12 +42: All tests passed!
Configure providers, models and API keys, watch MCP and LSP status, and reload the instance — all from the app.
Showcase
The four screens you will use every day — natively rendered, no web views, with Flutter performance on a real-time event stream.
Fix flaky auth tests
fix/flaky-auth· Connected
Run the auth test suite and fix the flaky ones.
Build · claude-sonnet · 14:32
Found the race: the refresh token is rotated before the old one is revoked. Applying a fix and re-running the suite.
bash · flutter test
test/features/chat/chat_controller_test.dart
Ask anything…
Comparison
Those work in a pinch. opencode mobile is built around the server's event stream and touch input, so it stays useful where a terminal or a desktop layout falls short.
| Why not just use a browser or SSH? | opencode mobileNative client | Web clientSelf-hosted UI | SSH / TUITerminal apps |
|---|---|---|---|
| Live streaming timeline | |||
| Inline diffs & file browser | Desktop layout | ||
| Permission & question prompts | |||
| Parallel worktree sessions | Multiple tabs | tmux | |
| Remote PTY terminal | |||
| Push notifications & auto-approve | |||
| Touch & keyboard ergonomics | Pinch & zoom | ||
| Code never stored by a middleman |
The opencode web client is a separate open-source UI that you host yourself — it is not served by opencode serve. Comparison reflects typical usage and may vary with custom setups.
How it works
Start opencode serve on your computer, install the app, and connect directly on your LAN — then add the encrypted relay only if you need it. The full walkthrough lives in the guide.
Run opencode serve on the machine that holds your projects. Set OPENCODE_SERVER_PASSWORD to require authentication.
Enter the server address, username and password, then pick the project directory you want to work in.
Away from your network? Install the ocrelay client on your machine and pair it once in the app — no public IP, no port forwarding.
Open a session or start a new one. Everything the agent does streams back to your phone in real time.
opencode relay
The relay gives your phone a TLS-encrypted path to the opencode serve instance on your computer — no public IP, no port forwarding. Pair once in the app, connect from anywhere.
Optional companion service · Free tier included
Install the app, point it at your server, and take the next prompt from wherever you are.
Free to download · iOS & Android
Free to download · iOS & Android