(no title)
d4rkp4ttern | 17 days ago
It was trickier than I expected, to get it working well: FFMpeg pipe streaming for low-latency playback, a three-hook injection strategy because the agent forgets instructions mid-turn, mkdir-based locks to queue concurrent voice updates from multiple sessions, and /tmp sentinel files to manage async playback state and prevent infinite loops.
[1] Pocket-TTS: https://github.com/kyutai-labs/pocket-tts
[2] Claude-code voice plugin: https://pchalasani.github.io/claude-code-tools/plugins-detai...
No comments yet.