A mobile-first Expo app inspired by Claude's clean chat UX, wired to an OpenCode server.
- Claude-like mobile chat layout (single-thread focus, clear bubbles, warm neutral palette)
- Connects to any reachable
opencode serveinstance - Supports optional HTTP Basic Auth (
OPENCODE_SERVER_PASSWORD) - Creates one OpenCode session and sends prompts through
/session/:id/message
On your dev machine:
opencode serve --hostname 0.0.0.0 --port 4096If you want auth:
OPENCODE_SERVER_PASSWORD=your-password opencode serve --hostname 0.0.0.0 --port 4096Then use your machine LAN IP in the app (example: http://192.168.1.20:4096).
npm install
npm run startOpen with Expo Go on Android/iOS, then:
- Enter server URL
- Enter username (
opencodeby default) - Enter password only if auth is enabled
- Tap Connect and chat
App.tsx: main mobile screen and chat flowsrc/lib/opencodeClient.ts: OpenCode API clientsrc/components/ConnectionSheet.tsx: server connection panelsrc/components/Composer.tsx: input/send UIsrc/components/MessageBubble.tsx: chat bubblessrc/theme.ts: visual tokens
- This environment could not run
npm(npm: command not found), so dependencies were not installed here. - If your phone cannot reach your machine, check firewall rules and ensure both devices are on the same network.