opencode/packages/mobile-voice
Ryan Vogel df3276fc87 refactor mobile web color hydration
Replace the hydration state effect with useSyncExternalStore so the web color-scheme hook keeps its static-render fallback without triggering the set-state-in-effect lint warning.
2026-03-30 08:28:25 -04:00
..
.cursor
assets update to the apn and server management 2026-03-29 16:17:57 -04:00
relay
scripts
src refactor mobile web color hydration 2026-03-30 08:28:25 -04:00
.gitignore
AGENTS.md update mobile voice quality guardrails 2026-03-30 08:15:29 -04:00
README.md feat: improve mobile model download UX and relay defaults 2026-03-28 14:03:57 -04:00
app.json update to the apn and server management 2026-03-29 16:17:57 -04:00
eas.json update for app and bun 2026-03-28 14:03:57 -04:00
eslint.config.js update mobile voice quality guardrails 2026-03-30 08:15:29 -04:00
metro.config.js
notes.md update to the apn and server management 2026-03-29 16:17:57 -04:00
package-lock.json
package.json update mobile voice quality guardrails 2026-03-30 08:15:29 -04:00
refactor.md update mobile voice quality guardrails 2026-03-30 08:15:29 -04:00
tsconfig.json update 2026-03-28 19:03:13 -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.