It work!! (sort of) - my final devlog.
Last time, I said the next step was speech recognition. Well, it’s here!
I integrated Vosk, a local speech recognition engine, to detect when someone says “Clip that”. Each opted-in user gets their own speech recognition worker, running separately so it doesn’t block the audio recording thread.
Getting this working was a nightmare. I had to handle things like flushing audio after someone stops speaking, preventing repeated triggers, and making sure the speech detector doesn’t murder its worker if something goes terribly wrong (this happened a lot).
Privacy is still a big priority, too. Opting out now immediately stops your audio from being processed and clears your buffered audio, even if the bot was already listening.
Sadly, speech detection isn’t consistent yet. In my testing, it works for some voices better than others, and it refused to work entirely for one of my friends. Thankfully, /clip is there as a manual fallback! If I continue working on this after Stardance, this is definitely where I’ll start.
New features = new tests. There are now 71 in total, covering everything from audio sync and consent handling to exporting clips. These tests are isolated from Discord and Vosk, so passing them doesn’t necessarily mean a perfect product.
Lastly, a good chunk of this time was spent on cleanup. We finally have a proper README with setup instructions, and a little demo video.
Note: I used Claude a bunch towards the end of this project because I simply cannot commit much time to this before the deadline. Please don’t smite me for AI 
There is so much I’d love to improve, but the core idea is functional, and I’m pretty happy with it!
Comments 0
No comments yet. Be the first!
Sign in to join the conversation.