---
title: 'Building an AI-Controlled Twitch Stream with Voice and Chat Commands'
source: 'https://youtube.com/watch?v=ym8A3-mVtFo'
video_id: 'ym8A3-mVtFo'
date: 2026-07-14
duration_sec: 0
---

# Building an AI-Controlled Twitch Stream with Voice and Chat Commands

> Source: [Building an AI-Controlled Twitch Stream with Voice and Chat Commands](https://youtube.com/watch?v=ym8A3-mVtFo)

## Summary

The video demonstrates building an AI-powered Twitch streaming setup that allows seamless switching between multiple devices (DJX Spark, Mac Mini, MacBook) using voice commands and Twitch chat. The creator uses an agentic engineering loop with Claude Code and CodeRabbit to develop the system in phases, with automated code review and testing.

### Key Points

- **Project Goal** [00:00] — Create a system to switch between multiple devices on Twitch stream using voice control and chat commands.
- **Tools Used** [01:30] — Claude Code (Opus 7), CodeRabbit for AI code review, OBS WebSocket, GitHub, and a PRD (Product Requirements Document) to guide development.
- **Agentic Engineering Loop** [03:00] — Development is done in phases: post plan, branch, implement, run CodeRabbit agent, open PR, review, fix, and merge. The loop is autonomous.
- **CodeRabbit Integration** [05:00] — CodeRabbit is installed as a GitHub app to review PRs. The CLI agent is used for local review, and findings are fed back to Claude Code for fixes.
- **Phase 1 Execution** [08:00] — Phase 1 includes director core, HTTP API, OBS integration. Tests pass, CodeRabbit finds major and minor issues, which are autonomously fixed.
- **PR Review and Merge** [12:00] — After fixes, PR is clean, merged. The loop repeats for subsequent phases.
- **Final Setup** [15:00] — System includes FFmpeg listeners, Parakeet voice model on DGX Spark, Twitch chat integration, and OBS scene switching.
- **Demonstration** [17:00] — Voice commands like 'switch to DGX' work. Chat commands like '!park DGX' also work. Stream can be started/ended via voice.

### Conclusion

The project successfully created an AI-controlled streaming setup with voice and chat control, developed efficiently using an autonomous agentic loop with Claude Code and CodeRabbit.

## Transcript

Okay, so today I think we have a really interesting problem I want to solve. So, I just wanted to do a video on this. So, I want to get a bit back into streaming. I want to stream some AI automation on Twitch. So, I just call it AI Twitch. So, I have all of these devices, right? So, I have my DJX Spark on one machine connected to one screen. I have a Mac Mini that I'm recording on now connected to this camera. I have a MacBook. So, what I want to do is I want to be able to switch seamlessly between these um devices on stream. And that is a bit I think it's a bit difficult. I don't really know how to do it. But, uh Code Rabbit reached out and wanted to sponsor a video. So, I thought this was a perfect project to kind of do this autonomously. So, what I want to do is connect these devices with Twitch, right? To, for example, TTS. I really want that. I want voice control so I can just say, "Switch to the DJX Spark." I want to do everything by voice. Go to the Mac Mini. Switch to camera one. But, I also want kind of the chat to be able to do that. So, the Twitch chat can do like exclamation park, cam one, something like that, and go to the camera. Uh we need some maybe some delay or something here, but yeah, you kind of get the point. And I think we're going to use OBS uh web socket for this. This is also a bit over my head. So, we're going to leverage like uh I wanted to use Codex, but I kind of ran out of tokens. Uh let's use Claude Point Claude Code 47, and we're going to connect that to Code Rabbit. We're going to yeah, have a GitHub so we can do this in phases. And I think this going to be a really good showcase of how we can kind of set up like an agentic engineering loop here and try to solve this problem I have. And I already prepared my stream PRD. So, basically this is just a Yeah, everything I want here, right? So, I just went through this, created this PRD. This is really good if you want to do like a full project, let's say, with Code Rabbit and stuff like that. A PRD is a really good start. And I created like a cloud MD file for this that is just talking about how we have set this up now with we want a GitHub workflow. We want to use Code Rabbit, right, in between phases to check review the code. So, you're going to see how that works really smooth when we kind of get into it. So, I think we just going to get started and I really hope we can solve this because I think it's going to work really cool on stream this weekend where I'm going to do some AI automation stuff. Okay, so I went ahead, I created a prompt. I kind of want to kick this project off phase build AI stream from stream PRD phase by phase using Code Rabbit as the quality gate. And you can see, yeah, we have our setup and then we're going to do like phase by phase, post a short plan, branch, implement, run the Code Rabbit agent, and open a PR, wait for the PR review, and we're just going to continue and continue with each phase, right? And all the phases are of course yeah, described here in the PRD. So, I'm just going to grab this prompt here, right? Copy that, and let's just head over to Claude Code. I'm going to go dangerously skip, and we are on Opus 7, and I'm just going to paste in this prompt here, and I think we're just going to kick it off, right? So, you can see, this is the prompt we're just going to run. And hopefully that should be basically it. So, of course we need to create a GitHub and everything. So, let's just see what happens here. So, while we wait for that, if you didn't know what Code Rabbit is, basically it's an AI code review tool. So, Code Rabbit is an AI-powered platform for code review, planning, development workflows, review pull requests from GitHub, plan from Jira issues, open PR Slack, and get real-time feedback in your IDE or CLI. I'm going to run this on what they call like CLI Code Rabbit CLI and we're going to use the dash or the flag agent as you will see. But they also have this dashboard that we're going to monitor. So I'm going to kind of connect my repo to this and we're going to try that out. So you can see now what should the new repo be and product use? Yeah, we're just going to call it AI Stream. Fresh start, new repo. Uh yeah, GitHub auth, that's fine. Uh let's just do that. And when we have kind of created our GitHub now, we want to connect our Code Rabbit so we can access that and we should get going. So what I'm going to do now is I'm going to head over to github.com/apps and Code Rabbit. I'm just going to install this, right? I'm signed in as me. Yeah, I want to install that on my and I want to pick one repo here. So you can do all your repos, but I only want to do the repo we just created and that was AI Stream, was it? Yeah, AI Stream. So we're going to select that. And I'm going to install and authorize. And this means now that Code Rabbit has access to my repo and it can do like this more agentic PR checks, right? On GitHub. So that would be really useful. You can see that later, but we also going to leverage the their CLI agent as you will see. So okay, install Code Rabbit on Yeah, we have done that and continue. So now we're just going to get into our first phase here of kind of this agentic setup and hopefully we can start building this out now. Okay, so you can see kind of now the phase one plan is going to be the director core, the HTTP API, the OBS integration and that is going to be our preferred branch. So I'm just going to say go. So I really like this way of setting this up like doing this in phases where we can do some tests and we can do some automatic code review with Code Rabbit after each phase. Okay, so you can see now we have a kind of done our first batch, but now we're going to run all the tests. So, we did pass all our tests, great. And now we're going to start actually running the CodeRabbit to kind of review everything we have done so far. If we go down to our shell now, you can see this is kind of launching and we're using the agent from CodeRabbit, the CLI agent. And here you can see we're connecting to the review service. We're setting up we're preparing a sandbox. And you can see it's summarizing and we're just going to analyze the first phase here now, right? Okay. So, we're just going to let this run. So, maybe I'm doing this double now because I'm running this CLI agent and we also have the review on GitHub, but it's fine. I just wanted to try it out setting it up like this. And from my testing yesterday, I think it worked pretty good. So, let's just let this run now and we're going to see kind of what CodeRabbit finds on our first uh branch here. >> [singing] >> Okay, so you can see now we have some findings here, right? Okay, that's pretty good. Severity major. I don't know how major it is, but you can see we have some findings here. And this What I like about this is that this now we will of course report back to CloudCode as you will see soon. And you can see now we kind of go back to CloudCode because the agent kind of finished the loop. It reports back to CloudCode with the log here and now we can actually look at those. CloudCode will autonomously fix those error that CodeRabbit found in the review, right? We should see that happen now. We found one major and one minor. And now, yeah, you can see we're updating the package because that was one of them. And we have a minor one in OBS TS. Yeah, we will fix that. We're going to check it again. And this is just going to it's a a genetic loop, right? So, the idea is that you're not going to sit here following every single thing. It should be autonomous. And you should just come back to it when Code Rabbit, Cloud Code, and everything has done its job. Maybe check in once in a while, but it should be mostly autonomous. And that is the whole idea, right? Okay, so you can see loop two was clean, no findings. Now we're going to continue, commit, push, opening the PR. And when we open the PR, we push this, we kind of get into our second thing I wanted to show off with Code Rabbit AI, we kind of get into the pull request review, right? So, we're also going to showcase that. So, you can see our first phase is good. We have the PR open. And if you head to our GitHub now, you can see we have a pull request here. And if you go into that, you can see down here now uh Code Rabbit should start here. Yeah, you can see it started. Some checks haven't completed yet. We have one pending check. And now kind of Code Rabbit is also checking our pull request. And yeah, when this is going to We could do like polling. So, yeah, let's do uh poll each uh minute for uh complete, something like that. So, we can check like every minute to see if you want to set up this autonomously. So, we can check uh if we have any comments before we kind of merge this PR here into our yeah, project. So, now we're going to pull each moment. You can see it's pending, review in progress. And let's just wait until it's complete, and then we kind of can follow along with the merging here. Okay, so you can see now our PR review is done. So, Code Rabbit kind of completed this on uh if you refresh here now, if you scroll down, you can see Yeah, we have some things to change here. config.ts, config.ts, and we have a lot of things we can do here. And if you go back here now, you can see the PR view is in four actionables. And we have three nitpicks. So, this is right nice, right? So, what I really like about this is that this get autonomously now pulled into Cloud Code, and this fixes it, right? And we kind of run into this nice loop where now it's going to push back again and we can review it a second time. And hopefully that should conclude everything, and we are kind of done with phase one, and we can kind of go back to continue working on phase two. But uh it's really nice because we kind of get into this autonomous loop of all uh yeah, you can see we are adding some new tests here of testing, reviewing, fixing, testing, reviewing, fixing until everything is done. And then we can just continue onto the next phase. So, I like to do it this way if I have a more serious project that is not just a demo. So, I've been really happy with this so far. 42 of 42 tests passed. And we're going to try it again, and let's see what happens. Okay, so there we have it. So, you can see now uh PR1 is clean from Cloud Rabbit. So, we kind of went through the loop. Everything looks good now. We have done all the tests. We have checked all the findings. So, now we can say, "Yeah, we can merge now." Perfect. Uh now we can kind of go from uh if you go to our uh GitHub here, you can see now we're going to go from one pull request, we're going to merge that. Hopefully. Yeah, we are probably going to merge that. Let's refresh. And we have our first kind of fully reviewed, fully tested phase of this project. So, I'm super happy with this workflow and kind of how it works. So, now we can just continue. Of course, I don't really need to take you with me on this because it's just going to be the same loop every time, but I think you kind of got a good understanding of how this works now. Also, if you kind of want to look at Code Rabbit kind of on this dashboard here, you can see we can also monitor what we have done so far. We have some active repositories, and you can see we have Yeah, we have done this. 100% accepting rate. Yeah, you can kind of see. There's a lot of information here if you kind of want to dive deeper in, but I'm really happy with kind of the loop we set up, right? By running the agent, running the the PR review, and then merging, and everything is tested and ready for the next phase. So, I'm just going to let everything run out, and then I'm going to show you hopefully at the end of now how everything works, how we can kind of use our voice, agent, chat, and everything to control our stream, right? So, hopefully when I take you back, that is ready to go now. Okay, so so time Time had passed, but uh basically, I think we are ready now. And everything went pretty smooth. Uh I had to spend some time setting up kind of all my scenes here because I would need it like a DGX Spark scene and stuff like that in OBS, but uh I have done that. And you can see everything is listening now, so I have some FFmpeg listeners on the MacBook, on the DGX. I'm running like a small voice model, Parakeet uh on the DGX Spark. And I have also created like a left check left shift uh press to dictate, right? So, we can do that. We have connected our Twitch chat, so we going to run this headless using FFmpeg. OBS is connected, and everything looks pretty good, so I'm kind of excited. So, let me kind of show you now how this works now. So, let's just start here on OBS so you can kind of see the switching. Hopefully that works. So, if I say something like switch to DGX. Yeah, that works. So you can see now we kind of switch to our DGX park. Switch to full cam. Okay, that works and let's switch to MacBook screen. Yes, and here you can see editing the video and now let's do switch to MacBook camera. Okay, that's pretty cool. It's a bit of lag but you can see it's working. And now switch to Mac mini. Yeah. Okay, so we are back here but we don't have our camera but this should be our screen recording. So I'm just going to manually go here and I'm going to reset this. But basically everything is working. So that is pretty cool. Okay, so I'm just going to press down left shift and I'm going to try to dictate something. Hello YouTube. Hope you're having a great day and I wish you a good weekend and I'm going to let go. Yeah. Okay, to dictate something hello YouTube. So now we kind of have our push to talk in like cloud code and stuff in all text fields. That works pretty good. And one thing we need to test now is the chat, right? So I'm just going to go here and I'm going to say start stream. So hopefully this is going to let's see here now. This is going to start our Twitch stream. So if you want to follow me on me on Twitch, I'm going to probably be streaming this weekend. So I'm going to leave a link to the description. Hopefully the stream kicks off now. Let's see. Uh stream is live. Let's see. Yeah, we are streaming. You can see me here. So let's see if we can change the camera here on chat now. So if I do exclamation mark park park mark DGX. Yeah. So that works too and we can do I can't remember all the What's it? MacBook? MB I can't remember all the shortcuts now. But, basically, it works, right? So, that's pretty cool. So, everything kind of worked out of the box now when we kind of set up this pipeline here. So, I was super happy with that, actually. Uh I guess I can just say switch to Mac mini. Yeah. But, I need to go to the scene here because I'm recording. So, hopefully, that works. But, basically, all in all uh okay, I can end the stream now. Let's try it. End stream. Okay, so we can end the stream now. I think I can also say send here and actually do enter. Send. Send. Send. Okay, so it did work at the end, but it was a bit laggy. But, basically, let's end the stream, and I think everything worked pretty good. So, I'm going to be testing out this uh over the weekend on Twitch. So, if you want to kind of drop by and kind of test out everything. Uh there's a few more things I kind of wanted to add. Maybe I want to add some kind of um TTS. I didn't really do that now, but that should be really easy. So, reading text messages with TTS because we already have the Parrot Kit installed and everything. But, all in all, kind of this setup with Code Rabbit and with Cloud Code Code X in this case was super smooth. So, it was a really authentic workflow, and all the tests passed, and all the reviews we did kind of made it super smooth. I didn't really have to struggle with this. So, that was pretty interesting, and I'm going to keep working on this. And hopefully, we can do some more interesting thing. I was thinking maybe doing some kind of agentic stuff on Twitch by having like uh Claude code or something like that kind of kind of controlling the stream or something. But that's going to be in a future project. But definitely go check out Code Rabbit. I really enjoyed it. So they have a lot of cool stuff if you are doing some more serious code and you kind of need to manage like a code base. You do a lot of Git review code review on GitHub and stuff like that. They're probably super easy to get into. So I'm going to leave a link in the description where you can get started. And one more thing, you don't really have to have you can get really started like for free. You get a lot of requests and reviews for free. So you don't really need like a pro account from the get-go if you just want to try it out. So follow the link in the description, check out Code Rabbit. A big thanks to them for sponsoring this video. Check out me on Twitch this uh weekend uh for AI automation. And yeah, thank you for tuning in and have a great weekend.
