13 Commits

Author SHA1 Message Date
jenkins
91cfb901a2 hermes(voice): continuous mic, barge stitching, 1.15x speech
Three conversational fixes for hands-free chat:
- The microphone now stays hot for the whole session: capture runs on
  its own epoch, re-arms immediately after each utterance endpoints,
  and keeps recording through transcribing/thinking/speaking - speech
  is never lost to Hermes being busy. Speech onset during a response
  cancels it through the live capture path (echo-guarded exactly like
  the old monitor) without touching the running recorder.
- When the user talks over Hermes before any visible reply appeared,
  the interrupted utterance and the follow-up are stitched into one
  message (20s window), so the response addresses the whole thought.
- TTS speaks 15% faster by default (server-side length_scale, no pitch
  shift), user-tunable via hermes-voice-tts-speed (0.5-2.0), honored on
  streaming, WAV fallback and thinking-cue paths.

245 voice-lane tests pass; single getUserMedia site preserved;
Dockerfile grep guards verified.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BvMSXH8VH2tMWXanb8SJdf
2026-08-24 06:27:38 -03:00
jenkins
91eb4f92b7 perf(hermes): isolate rolling speech inference 2026-08-24 00:36:28 -03:00
jenkins
d254931a14 feat(hermes): ship full-duplex voice release 2026-08-23 22:13:52 -03:00
jenkins
708d611101 feat(hermes): stream hands-free voice turns 2026-08-23 18:29:12 -03:00
jenkins
0f9b43c8ba perf(hermes-voice): reduce conversational latency 2026-08-23 16:50:48 -03:00
jenkins
ef32843a76 fix(hermes-voice): finalize mobile audio and reduce latency 2026-08-23 15:59:43 -03:00
Hermes Agent
820872e117 feat(hermes-voice): route Whisper language to multilingual Piper
Port the original #27 detected-language pipeline onto the verified PR #39 prerequisite while preserving the current-main conversation instrument and host continuity changes.

Keep voice selection server-side with no user selector or client voice field. Reuse 207c16ab only for its stricter exact-code trust boundary, omitting malformed or absent language so Piper defaults to Amy.
2026-08-21 13:58:50 +00:00
Hermes Agent
cfd8a75e95 fix(hermes-voice): preserve MediaRecorder container headers 2026-08-21 11:12:15 +00:00
Hermes Agent
79be4d1c71 refactor(hermes): rename chat and triage public hosts 2026-08-21 06:43:19 +00:00
Hermes Agent
c8f53ecdf5 feat(hermes-voice): add conversation state instrument 2026-08-20 23:13:51 +00:00
jenkins
5b208ae9c4 fix(hermes): isolate workers and gate noisy speech 2026-08-10 01:47:51 -03:00
jenkins
20873e7a4d perf(hermes): pipeline conversational voice playback 2026-08-10 01:21:51 -03:00
jenkins
4d029f85b7 feat(hermes): add private voice and isolated workflows 2026-08-10 00:43:10 -03:00