opencode/packages/mobile-voice
Ryan Vogel 0f58efe030 fix: advertise MagicDNS hosts for Tailscale pairing
Prefer .ts.net names and allow Tailscale CGNAT HTTP on iOS so mobile pairing avoids ATS-blocked raw tailnet IPs.
2026-04-03 13:02:58 +00:00
..
.cursor mobile-voice commit 2026-03-28 13:30:21 -04:00
assets update to the apn and server management 2026-03-29 16:17:57 -04:00
relay mobile-voice commit 2026-03-28 13:30:21 -04:00
scripts mobile-voice commit 2026-03-28 13:30:21 -04:00
src feat: refine mobile voice reader interactions 2026-04-02 20:38:49 +00:00
.gitignore mobile-voice commit 2026-03-28 13:30:21 -04:00
AGENTS.md feat: enhance mobile voice build and UI layout 2026-04-02 13:01:17 +00:00
README.md feat: improve mobile model download UX and relay defaults 2026-03-28 14:03:57 -04:00
app.json fix: advertise MagicDNS hosts for Tailscale pairing 2026-04-03 13:02:58 +00:00
eas.json update app hanlding 2026-03-30 13:07:30 -04:00
eslint.config.js update mobile voice quality guardrails 2026-03-30 08:15:29 -04:00
metro.config.js mobile-voice commit 2026-03-28 13:30:21 -04:00
notes.md update mobile pairing flow and audio session handling 2026-03-30 16:53:35 -04:00
package-lock.json mobile-voice commit 2026-03-28 13:30:21 -04:00
package.json feat: enhance mobile voice build and UI layout 2026-04-02 13:01:17 +00:00
refactor.md update mobile voice quality guardrails 2026-03-30 08:15:29 -04:00
tsconfig.json refactor mobile screen orchestration 2026-03-30 08:57:35 -04:00
tsconfig.typecheck.json refactor mobile screen orchestration 2026-03-30 08:57:35 -04:00

README.md

Mobile Voice

Expo app for voice dictation and OpenCode session monitoring.

Current monitoring behavior

  • Foreground: app reads OpenCode SSE (GET /event) and updates monitor status live.
  • Background/terminated: app relies on APNs notifications sent by apn-relay.
  • The app registers its native APNs device token with relay route POST /v1/device/register.

App requirements

  • Use a development build or production build (not Expo Go).
  • expo-notifications plugin is enabled with enableBackgroundRemoteNotifications: true.
  • Notification permission must be granted.

Server entry fields in app

When adding a server, provide:

  • OpenCode URL
  • APN relay URL
  • Relay shared secret

Default APN relay URL: https://apn.dev.opencode.ai

The app uses these values to:

  • send prompts to OpenCode
  • register/unregister APNs token with relay
  • receive background push updates for monitored sessions

Local dev

npx expo start

Use your machine LAN IP / reachable host values for OpenCode and relay when testing on a physical device.