Bringing It Together
You've built the brain, the voice, and the visuals as separate pieces. This last stage ties them into one launch, tunes the voice line to how you actually want it to behave, and explains what's really happening under the hood of everything you just built.
Running Voice and Visualizer When Starting Claude: Opening Jarvis
From here on, you'll have three things to launch, each answering to two phrasings — "run" or "start" both work: "run voice" or "start voice" for just Backtalk, "run visualizer" or "start visualizer" for just the display, and "run voice and visualizer" or "start voice and visualizer" to bring both up together. Let's teach your assistant all of these now, so they stick for good.
Close any other command windows or Claude Code windows you have open. In a fresh PowerShell window, we are going to be opening Claude Code from your main jarvis folder, not the ai-visualizer subfolder. It needs to be able to reach both programs:
cd $HOME
cd jarvis
claude
Then paste this in:
From now on, set up three separate standing instructions in
CLAUDE.md, so all of these work as trigger phrases going forward —
each one should fire on either "run" or "start":
- "run voice" or "start voice" — launch Backtalk by running "uv run
python -m backtalk.main" from the backtalk folder.
- "run visualizer" or "start visualizer" — start the ai-visualizer
server in the background (python server.py, run from the
ai-visualizer folder) and open my default browser to the address it
prints.
- "run voice and visualizer" or "start voice and visualizer" — do both
of the above together.
Save all three in CLAUDE.md so every future session remembers them,
not just this one. Then go ahead and run voice and visualizer for me
right now.
You should see your chosen face sitting idle in the browser tab that opens, with Backtalk running in its own window. Hold your talk key — the display should shift states live as you speak and it replies. From now on, "run voice" or "start voice," "run visualizer" or "start visualizer," and "run voice and visualizer" or "start voice and visualizer" are all you need to say to launch them individually or together.
Using Your Voice Line Day to Day
A few things worth knowing now that Backtalk is actually part of your daily routine, beyond just holding the key and talking.
Typing works too. You don't have to talk every time. Typing directly into Backtalk's terminal window (the one that opened when you launched voice) is the exact same conversation — your assistant still replies out loud, it just skipped listening for your voice that one turn. Handy when you're somewhere quiet, or when what you want to say is easier to type than speak.
Copy and paste work normally. It's a regular PowerShell window (the same one that opened when voice launched) under the hood, so a normal paste (Ctrl+V, or right-click) drops in whatever's on your clipboard — a link, an error message, a paragraph from a syllabus, anything you want your assistant to look at.
Drag and drop gets you a file path. Drag a file from File Explorer straight into the terminal window (the window that opened on voice launch), and Windows types out that file's full path for you — no hunting for it by hand. You can mix voice and text in the same turn: hold your talk key and say something like "I want to summarize a document," then let go of the key, drag the actual file into the terminal window so its path lands right after what you just said, and press Enter. Claude reads the file and gives you a spoken summary back — and if you want it saved for later, you can ask it to write that summary out to a new text document too.
Backtalk also has its own built-in voice commands — exact phrases, spoken alone, that control the session itself without ever touching the keyboard:
- "clear the session" or "compact the session" — start fresh or trim the conversation down.
- "switch to the deep model" or "back to the fast model" — change which model you're talking to mid-conversation.
- "set effort to low" (or medium, high, max) — change how hard it thinks, and it remembers this as your new default.
- "usage report" — hear how much of your usage you have left, the spoken equivalent of typing /usage.
- "go hands free" or "push to talk mode" — switch between always-listening and hold-the-key modes.
- "stop asking for permission" or "start asking again" — flip auto-approve on or off on the spot for that session, separate from the Step 3 change above.
Advanced: Auto-Approve Permissions
By default, Backtalk asks for spoken permission before doing anything sensitive — a reasonable safety net. But there's a real catch with a voice-only assistant: if it ever needs a typed or clicked "yes" instead of a spoken one, you'd have no way to give it. This is the same reason a fully voice-driven assistant typically runs with every tool call auto-approved instead of prompted.
With Claude Code open, paste this in:
Switch my permissions mode from the default "ask_first" to
"bypassPermissions" in backtalk.json (or wherever this setting
actually lives) — I understand this means every tool call auto-
approves with no prompt, which is the right tradeoff for a voice-only
assistant. Confirm the change and tell me exactly what you edited.
Claude in Chrome
Claude in Chrome is Anthropic's own official browser extension — not something bespoke to this tutorial. Once it's connected, Claude Code can see and act inside a real Chrome window: click things, fill out forms, read what's on a page, and test a website you're building, all from the same conversation you're already having in the terminal.
You'll need Google Chrome, Microsoft Edge, or another Chromium-based browser (Brave, Arc, Vivaldi, or Opera all work), and the Claude Pro subscription or higher you already set up back in Machine Setup.
- Open the Claude in Chrome extension in the Chrome Web Store and click Add to Chrome.
- Sign in with your Claude account when prompted, and grant the permissions it asks for.
- Pin the extension for easy access: click the puzzle-piece icon in Chrome's toolbar, then the pin next to "Claude."
Now connect it to Claude Code. First, close any Claude Code sessions or PowerShell windows you already have open. Then open a fresh PowerShell window, get to your jarvis folder, and launch Claude Code with the --chrome flag:
cd $HOME
cd jarvis
claude --chrome
The first time you do this, Claude Code shows a one-time dialog explaining how site permissions work — press Enter to continue. From here, just ask it to do something in a real website you actually use — open a class portal like Brightspace and check what's due, pull up a page you're building yourself and click through it to test it, or navigate to any site you're already logged into and have Claude read or interact with what's there. Tell it in plain language where to go and what to do, the same way you'd talk a person through it if they were sitting at your computer.
Claude opens a new tab and does it live, in a visible Chrome window. If it needs your permission first, the prompt starts with "Claude in Chrome wants to" — approve it, and there's an option to allow all actions on that site for the rest of the session. If it ever hits a login page or a CAPTCHA, it pauses and hands that part back to you.
A few things this is actually good for as a student: pull up a website you're building and have it click through and test your own forms; ask it to check something on a page you're already logged into, like a Brightspace assignment or a Google Doc, without setting up any separate login; or have it pull specific information off a page into a plain summary for you. Run /chrome at any time to check the connection status or reconnect the extension if it stops responding.
Set Your Question Timeout
With Claude Code still open, you're about to paste in a second command — this one sets your question timeout.
By default, if Claude Code asks you a multiple-choice question, it waits for your answer indefinitely — however long that takes. That's fine most of the time, but now that you've got Claude in Chrome open to more autonomous browser work, it's worth giving it a timeout so it doesn't just sit frozen if you've stepped away.
This setting only accepts three values: 60 seconds, 5 minutes, or 10 minutes. 5 minutes is a solid starting point — enough time to actually think it over, short enough that your assistant doesn't stall out completely. You can change it any time.
With Claude Code open, paste this in:
Set my askUserQuestionTimeout setting to "5m" in my settings.json
(or wherever this actually lives). Confirm the change and tell me
exactly what you edited.
A Couple More Habits
You already know how to launch your assistant from Step 1. A few more Claude Code habits worth knowing — these are typed slash commands inside your Claude Code chat itself, not the spoken voice commands back in Step 2:
One more habit worth knowing isn't a typed command at all — it's a button combination inside Claude Code:
How It All Actually Works
Here's the part we held off explaining until now: Backtalk and the visualizer aren't directly wired to each other at all — they don't call each other's code, and they don't even need to know the other one exists. Instead, they share a folder.
As Backtalk moves through a conversation, it writes tiny plain text files into that shared folder — one saying which state it's currently in (idle, listening, thinking, or speaking), and another carrying a live sample of the audio while it talks. That's the entire connection. The visualizer never talks to Backtalk directly; it just checks those same few files, many times every second, and redraws itself to match whatever they currently say.
This pattern is sometimes called a "bus" — a shared, simple point of contact that lets two programs that know nothing about each other's internals still work together. It's the same idea behind how the pinned boot file and the vault index work together in your brain: separate pieces, connected by a plain, simple contract rather than tangled-together code.
What You've Built
Take a moment on this one. Starting from a blank Windows machine, you've now got: a persistent memory system that remembers who you are and what you're working on across every session; a real voice you can talk to and hear back from; a live, reactive display that shows what your assistant is doing at a glance; and all of it wired together to start with a single phrase.
From here, it's yours to keep shaping. Add more to your vault as the semester goes on. Try a different visualizer face or tweak the swarm's colors. Ask your assistant to explain anything in this build you're still curious about — it has full context on everything you just made, and explaining its own code back to you is something it's good at.
Take It Further
You've got a fully working setup now. Here are three ideas worth trying next — each one stands on its own, so pick whichever sounds most useful to you.
Project 1: Load Your Syllabus and Coursework Into Your Voice Line
Step 2 taught you that dragging a file into Backtalk's terminal window hands it straight to your assistant. Try pointing that at your own schoolwork — a syllabus, an assignment sheet, anything with dates and requirements in it.
Start fresh — close any other command windows or Claude Code windows you have open. In a new PowerShell window, get into your jarvis folder and launch Claude Code:
cd $HOME
cd jarvis
claude
Then say or type the phrase that starts Backtalk and the visualizer together:
run voice and visualizer
Once Backtalk's terminal window is up, drag your syllabus or assignment file straight into it — or type or paste if you'd rather — and tell it what to do with it, something like:
Everything in this file is coursework for one of my classes. Pull out
every assignment, deadline, and requirement, and add it to how I
track my schoolwork going forward.
Project 2: Fine-Tune Your Visualizer
Your visualizer already shows a reactive swarm and the four voice states. Go back in and make it genuinely yours — wire in your real academic priorities, your course deadlines, a notes panel, or any other feature you want, like a name badge reading "Jarvis."
Start fresh — close any other command windows or Claude Code windows you have open. In a new PowerShell window, get into your jarvis folder, then into ai-visualizer, and launch Claude Code from there:
cd $HOME
cd jarvis
cd ai-visualizer
claude
Then tell it what you want built or changed — same as the custom-dashboard build back in the Visualizer stage, just picking up where that left off.
Project 3: Get Backtalk Working With Claude in Chrome
Start fresh — close any other command windows or Claude Code windows you have open. In a new PowerShell window, get into your jarvis folder and launch Claude Code with the --chrome flag:
cd $HOME
cd jarvis
claude --chrome
Then paste this in to kick off the project:
I want to try giving my voice line, Backtalk, the ability to
actually drive a web browser — click things, read pages, fill out
forms — similar to what Claude Code's own Claude in Chrome extension
does, but through my voice line instead. I understand this isn't a
built-in Backtalk feature and may not be possible without real
changes to Backtalk's own code, and could break the next time
Backtalk gets updated from its original repo — I'm treating this as
an open-ended experiment, not a guaranteed feature.
First, read through Backtalk's own source code, starting with
brain.py, and tell me exactly how it currently sets up its Claude
Agent SDK session, and confirm whether it currently loads any MCP
servers at all.
Then look into whether the Claude Agent SDK generally supports
loading custom MCP servers, and research real, publicly documented
MCP servers built for browser automation — Playwright's official MCP
server is one worth checking.
If this looks genuinely possible, walk me through wiring one of
those browser-automation MCP servers into Backtalk's own session
setup, explain exactly what you're changing and why, and then let's
actually test it live — ask it to open a real website through my
voice line and see if it works. If it turns out not to be possible,
or only partially works, tell me plainly rather than forcing
something fragile.
Build Your Own Jarvis