Repository navigation
Home
Bob McGlobus edited this page Sep 23, 2026
·
9 revisions
Murdock is a self-hosted speaker-recognition Wyoming proxy for Home Assistant. It sits between your voice satellites and your STT engine, decides who is speaking, blocks unknown voices (including the TV), and publishes the speaker to Home Assistant so your conversation agent can personalise its answers.
| Page | What's in it |
|---|---|
| Installation | HA add-on and docker-compose setup |
| Transcript Correction | Getting names right — bias prompt, correction dictionary, automatic name correction |
| HA Integration | The custom component: per-turn speaker via LLM API, vocabulary mirroring, sensors |
| MQTT Integration | Auto-discovery, context push, satellite identification, all topics, event payload |
| Speaker Context | Getting the recognised speaker to your LLM — delivery modes and the local-intent trade-off |
| Experimental | Whisper detection, emotion detection, multiple speakers per utterance |
| Training | Enrolling speakers — browser, upload, and over the voice satellite |
| Tuning | Thresholds, extraction, calibration, media-restriction matrix, threshold recommendation |
| Backup and Restore | What the ZIP contains, restore modes, secrets note |
| Architecture | Pipeline, gates, and module layout |
- Repository: https://github.com/BobMcGlobus/Murdock
- Container image:
ghcr.io/bobmcglobus/murdock(amd64 + arm64) - Issues: https://github.com/BobMcGlobus/Murdock/issues
A known speaker's command is forwarded to the STT engine; the speaker
name, role and a calibrated confidence appear as auto-discovered
sensor.murdock_* entities. An unknown voice gets an empty transcript
(blocked), and the recognition log keeps its recording so it can be
listened to and assigned to a speaker in one click.