- ApiClient HTTP/SSE: login, sessioni, chat/start, stream SSE, transcribe, tts - ChatModel: streaming live + risincronizzazione dallo stato del server - CookieJar persistente (0600, mai la password); Settings - Recorder OGG/Opus (fallback WAV/PCM, retry); Player TTS (QMediaPlayer) - UI Silica: splash, login, sessioni, chat (dettatura + read-aloud), settings, cover - Sailjail Internet;Audio;Microphone; icone; spec RPM; docs PROTOCOL/BUILD - tests/core_test: unit parser SSE + integrazione live (probe :8899)
1.3 KiB
1.3 KiB
harbour-hermes
Native Sailfish OS client for the Hermes Web UI (hermes-webui):
chat with your Hermes agent from the phone — and use it with your voice.
Features
- Sign in to your Hermes Web UI (session cookie persisted; password never stored)
- Sessions list, new session, open any session
- Chat with live streaming replies (SSE token deltas)
- Voice dictation: tap Mic, speak, tap Stop → server-side Whisper transcription lands in the composer
- Read aloud: server-side TTS (edge engine, Italian voices) played through QMediaPlayer; optional auto-read of every completed reply
- Cancel a running turn, resync from server state, cover page
Requirements
- Sailfish OS 4.4+ (developed against Sailfish 5.1)
- A running
hermes-webuiinstance reachable over HTTPS (default:https://hermes.hackatoniclife.com) - Sailjail permissions
Internet;Audio;Microphone(declared in the .desktop)
Build
See docs/BUILD.md (Sailfish SDK, sfdk build / sfdk deploy)
and docs/PROTOCOL.md for the HTTP/SSE protocol the app
speaks (validated live against a real instance).
Status
Version 0.1.0 — protocol and C++ core validated against a real hermes-webui
(login, sessions, streaming chat, TTS, STT); on-device testing (audio paths,
Sailjail prompts, keyboard handling) still pending.