Bug Description
TUI voice mode crashes Python process on the 2nd transcription attempt. First transcription works, 2nd always crashes with SIGABRT.
CLI ancient (without --tui) works correctly — no crashes, Ctrl+B stops and transcribes, auto-stop by silence works, TTS works.
Steps to Reproduce
- Start Hermes with TUI:
hermes --tui
- Enable voice mode:
/voice on
- Press Ctrl+B to start recording, speak, press Ctrl+B to stop — 1st transcription works ✓
- Press Ctrl+B again to start new recording, speak briefly, press Ctrl+B — Python crashes (SIGABRT)
Environment
- OS: Linux (openSUSE Tumbleweed)
- Hermes: latest from NousResearch/hermes-agent
- Python: 3.11
- Audio: sounddevice + PortAudio + PipeWire
- STT: faster-whisper (local, GPU)
Crash Stack Trace
frame.abi3.so + CFFI + libportaudio + scipy_openblas
__pyx_pf_2av_5frame_5Frame_2__dealloc__
PyThread_acquire_lock_timed + _queue.cpython-311
epoll_wait + libspa-support.so + libpipewire-0.3
Multiple threads: libgomp, blas_thread_server, ctranslate2 Worker, libpipewire.
Root Cause
TUI uses hermes_cli/voice.py with start_continuous(). The 2nd transcription crashes — likely accumulated state in cTranslate2/OpenBLAS thread pool. CLI ancient avoids this because each transcription runs in a fresh thread that terminates.
Workaround
Use CLI ancient (without --tui). Voice mode works correctly there.
Severity
Medium — TUI voice unusable. CLI ancient is working alternative.
Bug Description
TUI voice mode crashes Python process on the 2nd transcription attempt. First transcription works, 2nd always crashes with SIGABRT.
CLI ancient (without
--tui) works correctly — no crashes, Ctrl+B stops and transcribes, auto-stop by silence works, TTS works.Steps to Reproduce
hermes --tui/voice onEnvironment
Crash Stack Trace
Multiple threads: libgomp, blas_thread_server, ctranslate2 Worker, libpipewire.
Root Cause
TUI uses
hermes_cli/voice.pywithstart_continuous(). The 2nd transcription crashes — likely accumulated state in cTranslate2/OpenBLAS thread pool. CLI ancient avoids this because each transcription runs in a fresh thread that terminates.Workaround
Use CLI ancient (without
--tui). Voice mode works correctly there.Severity
Medium — TUI voice unusable. CLI ancient is working alternative.