Files
hermes-mobile/docs/ROADMAP.md
T
2026-07-24 07:16:56 +00:00

2.9 KiB

Hermes Mobile Beta Roadmap

Current Milestone: Native Android Beta Chat and Connection UX

Status: in progress, close to beta validation. F0 source landing is complete; Android debug build validation remains environment-blocked.

Done:

  • Native Kotlin/Compose Android shell replaces the web-first mobile path for the beta surface.
  • Companion settings flow stores companion URL and access key locally, validates bearer auth, and surfaces health errors in-app.
  • Chat UI supports conversation list/thread navigation, native composer, busy state, selectable replies, error bubbles, and new-chat reset.
  • Companion /api/chat invokes Hermes through the CLI with hermes chat -Q --source tool -q <prompt>.
  • Companion chat responses sanitize terminal banners/help/control output, truncate large replies for mobile, report CLI availability, and return structured failure responses.
  • Workspace utilities remain native: command runner, health view, file browsing, read, and write.
  • Local build artifacts, Android transient build output, .gradle-user/, and .dev/ are ignored.
  • Companion and workspace TypeScript typecheck, build, and lint pass as of 2026-07-24.

Remaining for beta:

  • Validate Android debug build in an environment where Gradle can fetch or reuse the Gradle 8.11.1 distribution. On 2026-07-24, GRADLE_USER_HOME=/root/hermes-mobile/.gradle-user ./gradlew :app:assembleDebug failed before compilation because network socket creation is blocked while downloading https://services.gradle.org/distributions/gradle-8.11.1-all.zip.
  • Exercise a real paired device against a running companion and authenticated Hermes CLI.
  • Exercise upstream-compatible transport/auth/session/streaming behavior end to end: bearer auth, health, chat request/response, session continuity expectations, streamed/final output handling, and failure recovery.
  • Add or run focused Android UI validation for chat/settings flows on small and large screens.
  • Confirm adaptive accessibility: font scaling, TalkBack labels, contrast, keyboard/IME behavior, and reduced-motion tolerance.
  • Document beta install/run steps after the native build is verified.

Beta Release Criteria

  • Native Kotlin/Compose Android app is the shipped beta client.
  • No WebView, Capacitor runtime dependency, fake backend, embedded secrets, or new external infrastructure is introduced for beta.
  • Companion transport and auth are upstream-compatible and exercised against the real Hermes CLI.
  • Chat/session/streaming behavior is exercised with Hermes, including success, CLI unavailable, timeout, non-zero exit, and malformed response cases.
  • Settings connection flow is reliable: save, validate, health, Hermes test, offline/unauthorized states, and recovery are clear.
  • Adaptive accessibility passes on target Android devices or emulators.
  • Required checks pass: ./gradlew :app:assembleDebug from apps/mobile/android, companion typecheck/build, and relevant lint.
  • Release notes clearly list remaining known beta limitations.