A developer who used to type 160 words a minute lost the use of one hand, and rebuilt his entire coding workflow around a whisper, a fleet of machines, and agents he no longer reviews before they merge.
Posted
4 days ago
Duration
Format
Essay
sincere
Views
124.6K
1.5K likes
57 · 43
Big Idea
The argument in one line.
A hand injury forced a fast typist to prove that voice dictation plus AI agents can fully replace typing and even terminal use, as long as you're willing to let agents in earlier and trust them past the merge button.
Who This Is For
Read if. Skip if.
READ IF YOU ARE…
A developer who already dictates to their computer, or wants to, and is trying to separate what actually works from what's marketing.
Anyone working around an injury, RSI, or other physical limitation that makes typing or precise mouse use painful.
A team lead or solo developer deciding how much autonomy to give AI agents on pull requests and merges.
Someone drowning in GitHub tabs, terminal sessions, or manual copy-pasting between AI tools who wants to see what got automated away.
SKIP IF…
You're looking for a step-by-step technical setup tutorial for any specific tool; this is a personal workflow account, not a how-to guide.
You want head-to-head model or tool benchmarks; there's no comparative evaluation here.
TL;DR
The full version, fast.
After a hand injury cost Theo his 160-words-per-minute typing speed, he rebuilt his coding workflow around voice and AI agents instead of typing around the problem. The core mechanism: a roughly $70 lavalier mic that transcribes a genuine whisper while rejecting background noise removed the social friction of talking to a computer at work, and an internal project called Fleet lets him direct any of his machines in plain language instead of opening a terminal. From there he pushed agents to enter his process earlier (gathering their own context, building a custom app from one voice memo) and stay later (verifying their own work, merging PRs with no human review, only two regressions across roughly 150 autonomous merges). The actionable conclusion: decide honestly how much of the distance between 'idea' and 'done' actually needs you in the middle, and hand over more of it than feels comfortable.
Free for members
Chat with this breakdown — free.
Sign in and you get 23 free chat messages on us — ask for the hook, quote a framework, find the exact transcript moment, generate a markdown action plan. Bring your own key when you want unlimited.
Theo reveals his hand has been in a cast for about a month, with one to six more months to go, and explains that even simple things like command-tabbing between apps now hurt, framing this as both a personal update and a practical workflow video.
02:01 – 03:50
02 · Sponsor break: WorkOS
A sponsored segment on WorkOS covering AuthKit and enterprise auth (SSO, SAML, Okta) and agent sign-up standards for companies selling into large businesses.
03:50 – 06:12
03 · Voice-coding doesn't literally work
Theo demonstrates that dictating a function definition directly ("let x equal 4...") doesn't produce usable code, reframes the video's real subject as staying productive without typing, and says his hand injury forced him to embrace vibe coding rather than resist it.
06:12 – 08:30
04 · Tip 1 and 2: phone and voice
He credits slide-typing on his phone, a one-handed skill he already had, as tip one, then introduces voice dictation as tip two, describing his past frustration with voice-to-text before AI could act on it, and his discomfort dictating aloud around his team.
08:30 – 13:39
05 · The whisper-quiet lavalier mic
Theo demos a roughly $70 podium mic that reliably transcribes a genuine whisper (dropping his input level from about -4dB to -40dB) while rejecting a loud video playing right next to it, and calls removing the awkwardness of talking to his computer around coworkers the single biggest change in his workflow.
13:39 – 19:35
06 · Killing the terminal: Fleet and Orchestrator V2
He declares terminals unusable by voice, then walks through Fleet, his documented map of every machine he manages, using it to transfer a game ISO mid-download between computers and to have an agent assemble a fully custom T3 Code build from a voice memo dictated on his phone.
19:35 – 23:21
07 · Computer-use outside of code: medical records
Using a computer-use agent, Theo has it log into his hospital's dashboard, locate and download 49 medical PDFs, and later upload them for his new doctor, a task he says would otherwise have taken him hours one-handed.
23:21 – 25:37
08 · The mental model shift: the idea-to-done spectrum
Theo diagrams his work as a line from "the idea is in your head" to "the task is done and you're happy with it," traces how far into that line he used to let agents operate, and explains that being limited to one task at a time on one hand pushed him toward running several tasks in parallel instead.
25:37 – 28:54
09 · Trusting agents to merge on their own
He describes eliminating the "merge hole", the point where he used to personally review before hitting merge, and reports that across roughly 150 fully autonomous agent-merged PRs, only two shipped regressions (both minor animation removals), comparing it to self-driving-car accident-rate arguments.
28:54 – 32:11
10 · Parallel jobs and tolerating typos
Theo shows a hotkey for starting a new agent thread without leaving the current prompt so he can queue up several jobs at once, audits which of his current threads he actually cares about the speed of (almost none), and says he's stopped worrying about small dictation typos since the model handles them fine.
32:11 – 38:21
11 · Killing GitHub fatigue and the final challenge
He replaces dozens of open GitHub tabs with an in-app pull request summarizer and merge button built into T3 Code, describes letting agents pass context between threads themselves even though it's slower and pricier, and closes with a challenge to hand an agent a task with zero manual setup.
Atomic Insights
Lines worth screenshotting.
A hand injury and the loss of 160 WPM typing speed forced a full-time developer to prove out a voice-and-agent-driven workflow under real pressure, not as an experiment.
Voice-to-text alone was never the unlock; it only became useful for real coding once an AI could translate spoken intent into working code and operate the computer itself.
A roughly $70 lavalier mic clipped to a desk can transcribe a genuine whisper while rejecting a loud video playing right next to it, dropping input level from about -4dB to -40dB.
Removing the social awkwardness of talking out loud to a computer in a shared office, not any new AI capability, was the single biggest unlock in this entire workflow.
Documenting your own machines, what they are, how to reach them, what's installed, as a project an agent can read turns manual SSH work into a plain-language request.
Telling an agent to act on a file transfer before the download even finishes removes the 'wait for it, then do the next step' tax that adds up across a whole day.
A fully custom build of an in-progress feature branch was assembled from a single voice memo dictated into a phone in a bathroom, with no manual cloning, branch-hunting, or building.
Computer-use agents can now complete a 49-file, multi-dashboard administrative task end to end, like downloading and re-uploading medical records, from one plain-language request.
Reframing a task as a line from 'the idea is in your head' to 'you're done and satisfied' turns the real question into how far along that line an agent is allowed to work unsupervised.
An hour-long task no longer needs a dedicated hour once you can check in at the start and the end instead of babysitting the middle; that changes what gets attempted at all.
Across roughly 150 fully autonomous agent-authored and agent-merged pull requests, only two shipped visible regressions, both minor animation removals, a better hit rate than most individual developers manage with manual review.
Deciding honestly whether a given agent thread's speed actually matters, before starting it, is what makes real parallel work possible; most threads turn out not to be urgent at all.
Small dictation typos and word-swaps rarely confuse a capable model; correcting them only when the agent actually gets confused wastes less time than proofreading every message.
The clearest way to find out how much you're still babying your agents is to hand one a task with zero manual context or hints and compare its output to what you'd have produced yourself.
Takeaway
Trust the agent past the point that feels comfortable, on both ends
WHAT TO LEARN
Losing the ability to type didn't just replace typing with voice, it pushed agent involvement earlier into the process and later past the merge button, and the result shipped more reliably than manual review did.
03Voice-coding doesn't literally work
Voice dictation can transcribe words reliably but cannot replace typing syntax directly; the value only became real once AI could translate intent into working code, not just words onto a screen.
A physical constraint forces genuine adoption of a workflow that was previously optional, which is a faster way to find out which 'AI coding' habits actually hold up under real pressure.
04Tip 1 and 2: phone and voice
A dictation tool that only converts speech to text still leaves the 'get the AI to act on it' step unsolved; the win came from pairing dictation with an agent that could both write code and operate the computer.
Reducing physical friction to using a tool, like a $70 mic versus a $500 studio mic, can matter more for adoption than the tool's raw capability.
05The whisper-quiet lavalier mic
Whisper-level input volume can still transcribe reliably and reject louder background noise, which removes the social awkwardness that normally kills a voice-dictation habit in a shared workspace.
The single biggest lifestyle-level unlock in this workflow was not a new AI capability but a cheap piece of hardware that made using an existing capability comfortable.
06Killing the terminal: Fleet and Orchestrator V2
A terminal is one of the worst places to work through voice, so route agentic work through a thread- or chat-based interface instead, even if you aren't hand-injured.
Documenting your own infrastructure, what machines exist, how to reach them, what's installed, as a project an agent can read turns 'SSH in and do it myself' into 'tell the agent what I want and where.'
Give an agent both the trigger and the follow-up instruction ahead of time, like 'when the download finishes, do X', instead of waiting for each step to complete before directing the next one.
Pulling AI into a process earlier, including the setup and discovery steps and not just the 'now build it' step, removes entire categories of manual work.
07Computer-use outside of code: medical records
Computer-use agents can now handle multi-step, multi-page administrative drudgery end to end from a plain-language ask, not just narrow single-page automations.
Splitting tool use by domain, one assistant for code and a separate one for personal admin, keeps context relevant and avoids retraining a coding agent on unrelated tasks.
08The mental model shift: the idea-to-done spectrum
Removing the assumption that a task's length determines when you can start it changes what you take on; a task no longer needs a dedicated block of time if you can check in at the start and the end instead of the middle.
Picture your own workflow as a line from 'idea in your head' to 'you're satisfied with the result,' then ask honestly where the agent currently enters and exits that line.
09Trusting agents to merge on their own
Push an agent to verify its own work, using computer-use to test changes, running review bots, spinning up a second agent to sanity-check, rather than being the one who tests every change by hand.
A roughly 1.3% regression rate across 150 fully autonomous merges beats most individual developers' review-free hit rate; judge an autonomous process by its aggregate track record, not the one visible mistake.
The instinct to require manual sign-off on every merge is a bottleneck worth interrogating directly: ask what specifically you're checking for, and whether the agent could check for that itself.
10Parallel jobs and tolerating typos
Before starting an agent thread, decide honestly whether that thread's speed actually matters; most threads don't, and treating them all as urgent is what makes single-threaded work feel slow.
A 'start a second job without leaving the first' shortcut is worth building or finding in your own tools, because it turns a queue of ideas into parallel work instead of a backlog.
Small transcription errors rarely derail a capable model's understanding of intent; correcting them only when the agent actually gets confused wastes less time than proofreading every message before sending it.
11Killing GitHub fatigue and the final challenge
When a workflow habit becomes measurably painful, look for the tool to build the missing shortcut rather than accepting the pain as the cost of the job.
Letting an agent gather its own context by using its own tools is often slower and pricier by the numbers, but it frees you to do something else in parallel, which is the actual trade being made.
Try running a task without manually feeding an agent any context at all; the gap between what you'd normally hand-hold and what it can gather itself shows you where you're doing work it could do for you.
Glossary
Terms worth knowing.
Fleet
Theo's own project that documents every computer he manages, how to SSH into each one, and what's installed on it, so an agent can act on any of his machines without him doing it by hand.
T3 Code
Theo's own AI coding application, where most of his day-to-day agent work happens, including threads, orchestration, and pull request review.
Orchestrator V2
An in-progress overhaul of how T3 Code manages agent threads, letting one agent spin up sub-threads, reference another thread for feedback, or launch sub-agents through other tools.
WhisperFlow
The voice dictation app Theo uses to turn spoken words into on-screen text; on its own it only transcribes, it doesn't write or execute code.
YOLO merge
Letting an agent merge its own pull request with no human review step, based on trusting the model's judgment that the change is safe to ship.
The merge hole
Theo's term for the point in a workflow where a human used to have to personally review code and click merge; he describes removing that checkpoint almost entirely.
“Terminals without typing are hell. Talking to your terminal is hell.”
short, blunt complaint that sets up the entire Fleet and T3 Code segment→ IG reel cold open↗ Tweet quote
25:37
“I don't have this line anymore. I trust the model to know if the code is safe to merge and to just do it for me a lot of the time.”
the clearest single statement of the video's most contrarian claim→ TikTok hook↗ Tweet quote
26:07
“That's a better hit rate than most talented developers have. Significantly better hit rate. This is similar to like the self-driving car thing where everyone freaks out when they see a self-driving car get in an accident.”
backs up the trust-the-agent claim with a concrete stat and a familiar analogy→ newsletter pull-quote↗ Tweet quote
35:25
“Lazy is good. Lazy is efficient. Lazy means you're taking advantage of the capabilities of these things more directly.”
a reframe of a normally negative word into the video's thesis, in one breath→ TikTok hook↗ Tweet quote
The Script
Word for word.
Read-along
Don't just watch it. Burn it in.
See every word as it's spoken — crank it to 2× and still catch all of it. The same dual-channel trick behind Amazon's Kindle + Audible.
17px
metaphor
A handful of y 'all have noticed something different about me recently. Obviously, I'm referring to my hair, which is currently longer than it should be, and definitely not referring to my hand that has been in and out of a cast for about a month now and will be in a cast for another one to potentially six months. This is not...
pleasant for me. And as a result, I'll be making a much more personal video than I normally do because I have to learn to deal with this. Having one hand is kind of annoying when your job is to type and code and use computers to do all these types of things.
Even if I'm doing videos about it, it's very nice to be able to do things like command tab between apps or type in the thing you want to do. And now I just can't. That said, I've been managing to ship more than ever as of late.
You can see part of this through my GitHub contributions. In fact, the day here, August 8th, was right as I was starting to get my hand bundled up like this. And since then, I have been able to maintain pace and even go further than I ever thought I'd be able to, shipping some of the biggest and widest ranging changes I've ever worked on in my career.
And you can probably guess how I've been able to do that. Yes. it is ai but i want to go deeper than that here in order to get around the fact that i'm down a hand literally i've had to change the way i work in meaningful ways and i think a lot of this is going to be useful even for those of y 'all who type and type fast i was a really fast typer before as high as 160 words per minute pretty consistently so losing that has been a tough hit for me to take and i've made a ton of adjustments to my workflow in order to stay productive despite this I think these tips will be useful well outside of me.
And I'm saying this because I've shared a lot of them with my team and they've been helping them out too, both in being more productive and enjoying using their computer more for real world work. So this video is going to be very strange. It's both a personal diary of me dealing with the hell that is my hand not working, but also a pile of useful tips for being as effective as possible working with real world AI engineering tools in order to stay productive even without having to type directly.
All that said, I'm sure you guys can guess since I'm in the US, I have a lot of medical bills to pay. So pardon me for a quick break for today's sponsor. AI has fundamentally changed how big businesses operate.
Back in my day, if you worked at a Fortune 500, they would only really buy product from other Fortune 500s. So they weren't going to try some small startups, new SaaS. That has entirely changed.
But there are some catches here too, because the company isn't just going to sign up for an account the normal way that users do where they go show up and hit the sign in button. They're going to want a lot of things different. They might want their agents to sign up.
They're almost certainly going to want to go through their OAuth platforms and all the crazy SAML, Okta, and other things those businesses might be using. Are you ready for all of those cases? Well, if you're using today's sponsor, WorkOS, you almost certainly are because these guys have it figured out.
That's why companies like OpenAI, Anthropic, Cursor, FAL, Base10, AMP, Bolt, and so many more are all building on top of WorkOS. When you start looking into WorkOS, you'll see why everyone uses them. From AuthKit, which makes it easy to set up a good sign -in flow, to the admin portal, which makes it easy for the it teams that the companies are trying to onboard to actually sign up with any of the many different auth providers they might be using seriously if you've never had to configure saml duo or key cloak for your business i wouldn't wish that on my worst enemy thankfully workerwise has it handled for you and if you're worried about agents signing up for your stuff they have that covered too with a new standard auth md that they helped pioneer with cloudflare firecrawl and many other companies that's already being adopted across the industry In order to get enterprise customers, they need to be able to sign up for your app.
Get it right at soydev .link slash workos. One last note. If anybody's interested in sponsoring my cast, I am down to have the conversation.
My email for sponsorship and all of that is in the description on YouTube. You can check that out if you want to learn more. I think it'd be fun to throw some logos on here.
Make me feel at least a little less bad. Whisper flow. Respond to our emails, please.
Anyways, let's go through this. I know it says coding without typing, but I honestly think it would be more accurate to say staying productive. As you can see, typing is hard.
Staying productive on a PC without typing. Because that's honestly what it's been for me. Talking out code doesn't work great.
If you're like trying to do a function definition, like here, I'll even try directly. Let x equal 4. Let y equal 12.
While x is less than y. x plus plus that that's not viable so yeah as much as i love the voice text tools i've been using you're not writing code with your voice and if you are one of the few people that has been doing this and i know a handful that have been for not just like years but for decades you're a goddamn trooper and a hero and i have so much respect for you i am incredibly thankful that my issues have been in the era of ai being able to both translate what I say, and also write the code.
And also, arguably most importantly, use my computer. Yeah, that has been one of the biggest things for me. So yeah, coding with your voice just by writing the code directly, not realistic.
So another way of framing this is, to be frank, my hand injury has forced me to embrace vibe coding more. And this is absolutely the case. Not even just because I can't type as well, but navigating my computer is harder.
Switching between apps is harder. I think you can probably see from here, my hand position on my keyboard now is pointer finger on the command key and ring finger on tab because I use command tab so much and my thumb doesn't function right now. So I'm suffering, but that is able to like let me switch between things a bit again, but it's uncomfortable enough that I just kind of don't bother.
So I have been doing a couple little things to make this easier. What are the silly ones I do when I'm not live and filming and have a slightly bigger screen? is I actually don't use most of my apps full screen anymore.
I do this when I have two open and I have a slight edge exposed in both. So it's easy for me with my right hand to switch between them like this and not have to hit keys to do it. A lot of my work has been not just like, how do I make it so I don't have to type as much, but how do I make it so my mouse can do more?
And I've made a ton of changes to random things across all of the things I use every day in order to improve in this way. So let's start going through my actual like core. navigating the computer without having to use your hands as much tips.
The first one, and this one's been hard for me, your phone is your friend. This was tough. I am lucky that I've always been a slide typer on mobile.
I was a big fan of swipe way, way back for those Android people in the late 2000s, early 2010s. If you're old like me, you know what I'm talking about. I learned to slide type when I was learning how to type on phones.
And that's just been how I type on my phone forever. And since that only requires one hand, I've been able to use my phone more comfortably. And the first time I had this issue with my hand, I actually moved almost entirely to using my phone and also my agents.
But this is before agents were useful. So my agent was me shouting at Mark and Julius to go do things for me because I couldn't because down a hand. For what it is worth, I have found my phone to be a lot less miserable.
to use with one hand than a computer because computers really assume that you're using two hands with this i've also been putting a lot more time into getting my surface area on ios better things like improving the apps i use and building my own plex clone which has been very nice as i've been watching more things on my phone as i try to relax but also all of the iteration we've been doing on t3 code to make it easier for me to control my computer and the agents i'm running all again from my phone But the main thing, of course, that you've already seen me using, and I'm sure a lot of you are expecting, my voice.
This one was tough for me. I have tried many a time to get into voice -to -text, and I found that while it had improved meaningfully, it wasn't solving the problems that were the most annoying for me, in particular, switching between applications. As great as WhisperFlow is at taking the things I say and putting them on my screen, it couldn't navigate my computer for me.
It was fantastic to use to just talk out what I was thinking and have it appear on my screen. There is still something that feels a little magical about it, but I'm going to be real with you guys. Despite the fact that I yap constantly on camera and doing things like this, I really don't like talking to my computer when I am surrounded with other people.
And since I am often working at my office with my whole team around, I don't want to have to like shout at my laptop while I am surrounded with my team. It's just, Feels gross and inconsiderate, and I hate it.
But at this point with my hand, I was so desperate that I tried something that I swore I never would because I just didn't think it would matter that much. This is a podium mic. I did not think I would ever want one of these.
Not only has this fundamentally changed how I use my computer, I forced my whole team to try it, and every single one of them ended up buying one of their own, and I bought them one for the office as well. I will plug it in. And I will talk to it.
When I talk at a normal volume, it behaves exactly how you would expect. There you go. It worked.
That's not the magic though. Reminder that I have a high -end professional microphone right here. This is a $500 mic plugged into an $800 interface.
It is designed to be very sensitive and pick up what I'm saying very easily. Watch this. Remember, that professional mic.
The one I'm using for recording is the one that you're hearing you guys don't hear this tiny little one next to it So watch as I use this tiny mic to dictate to my computer It's actually fucking wild there's no world in which you can hear any of the things I just said it is Hilarious how quiet you can be however quiet you think is reasonable you can get like 4x quieter like I'm watching on my monitoring and I'm going from peeking at like negative 4 dB to when I do the whisper, it's at like negative 40.
It's kind of crazy. The reason I bring this mic up isn't because I think you need it. I actually highly, highly, highly recommend you try the built -in MacBook mic for a while.
It'll work great at normal volume levels, but it will not work for the literal whispering like you just saw me doing. But the reality of being in an office environment is that you probably don't want to be loudly talking at your computer when there's people around you.
This entirely solved that for me. This tiny little mic that's around 70 bucks that I throw on my desk, not only does it make me way less insecure talking to my computer to make it make changes because it's like I can whisper now and my teammates aren't inconvenienced by me yapping constantly at my computer. It also handles background noise incredibly well.
So if my team are talking behind me while I am whispering into this mic, it handles it great. Like here. I'll find some random YouTube video on my phone with somebody talking and play it nearby while I do this.
I just found a random Primogen video.
Loud enough you can hear it in the mic.
Do you understand? This was louder than my voice was, and it still only picked up what I said. I'm personally not sure if this level of performance is available in other voice -to -text tools.
Ben Davis, who I'm sure you guys know from the podcast and whatnot, he seems to think it is, and he built his own local version of WhisperFlows and working great for him. I don't care. WhisperFlows has been great for me overall.
I do have my complaints, believe me. But it is very solid overall. And this tiny little mic with this tiny little USB cable plugged into my monitor downstairs has been revolutionary for me being willing to use voice to text.
And I'm no longer ashamed because like I was nearing the point where I would like leave and go to meeting rooms or like my private office or whatever to work because I felt so bad voice to texting when I was at my desk with my team. Now I don't anymore. So like biggest tip by far, this tiny little mic, much, much bigger impact on my livelihood than I ever.
ever would have expected. Okay, so we've now established this. What else do I got for you?
This is where we start to get into one of my favorite topics, which is how to prompt better so that you don't have to check on your agents as much. I talk about a handful of these things in other videos, but I think here it'll hit a bit different because my motivation is much more different. There are certain things that just aren't pleasant to do when you are down a hand.
One of those things is everything you would ever do in a terminal. Terminals without typing are hell. I was going to try and go with an analogy.
It's not even worth it because it will downplay how bad it is, no matter how bad the analogy is. Talking to your terminal is hell. So all of the strong stances I already had about terminals not being the right place for agentic dev.
Oh man, you have no idea. I'm a hundred X stronger in my convictions there. I have not opened a terminal for anything other than offing like a CLI or something.
Not once since my hand thing. Other than this one YOLO run I have going with TS Rust trying to use Astra to rebuild all of TypeScript and Rust. And now I'm just running there because I don't want it conceptually taking up space in my T3 code.
I just want it YOLOing in a corner somewhere. But that's the only thing I've opened my terminal for in weeks at this point. Partially because I'm over the terminal, but it is mostly because using a terminal with your voice is actually hell.
Like, it's just, it's hell. I hate it. I hate it so much.
I don't want to ever have to do it without my keyboard. I'm done with terminals. So how have I been living without terminals?
The first and arguably most important thing is two projects I have on my computer. The first is named Fleet. The Fleet project is how I manage all of the different computers that I currently have set up for real work, vibe coding, whatever else.
It has documented all of the computers, how to connect to them via SSH, what I use them for, what's installed on them, all of those things. historically i would have had to like ssh it to a computer to install something or set up the author whatever on it now i just don't now i don't even have to think about this type of thing and it has made life meaningfully better for me overall even outside of the keyboard thing because when i have a problem here i'll show a real silly example here super smash bros melee just got decompiled which by the way unbelievably cool massive achievement in the gaming world software development super hyped about it I wanted to play with it on a different computer, though, because I didn't want it interrupting me while I was filming today.
So I did a kind of silly thing. I downloaded the ISO on this computer, but I didn't have an easy way to transfer it over. That's the type of thing where I could absolutely have SSH'd in or went and wrote the SCP command or whatever else.
But then I'd also have to wait for the download, extract it manually, go to it in the terminal, and then write the command. I'll show you what I did instead. I started a thread in Fleet, because again, this repo knows where all my computers are and how to connect to them.
I'm downloading a legal copy of Super Smash Bros. Melee, hypothetically. When it's done downloading, hypothetically, I need you to transfer the ISO of a game I already own multiple copies of to Lakebed in Downloads directory so that I can access it on this computer as well.
And then I had to correct it to Leftbook because I have a lot of proper nouns in my dictation, like dictionary for Whisperflow. And since Lakebed and Leftbook are two of those words, it sometimes mixes them up. I was also doing this via the MacBook mic and probably wasn't as clear because I got too used to this tiny little guy.
But I was quite annoyed that it took the word lakebed instead of leftbook. But I made the quick correction. And this one was fun because I hadn't even finished downloading the file.
I literally just told it, it will be in this directory. I want you to copy it to the other machine in the same directory. And then left.
I stopped looking. I stopped caring. And then I got a little ping when it was done.
And it was indeed done. I know this seems silly. But no matter how good you are at computers, getting a file downloaded on one computer and then moving it to the other, even if you have a system to do this really fast, the additional steps that are necessary of just waiting for it to finish before doing the next thing is annoying.
And this is part of what I've been doing more with AI is I've been pulling it in slightly earlier and giving it the instructions necessary to go slightly further. Another somewhat silly example of this is around T3 code itself. We've been working heavily, and when I say we, I mostly mean Julius, as well as some changes from people like Shiv and Maria and a few others, but largely Julius, has been working on what's called Orchestrator V2.
Orchestrator V2 is an overhaul of how T3 code threads are exposed and managed by the agents themselves. And this will allow for an agent to spin up another thread with another model, to reference one as a sub chat, to get more feedback, to spin up a bunch of clod sub agents via codex, those types of things. And then we're very excited about it, but it's a huge overhaul of how orchestration works in T3 code, which means we're taking our time merging it, which also means I haven't been able to play with it a whole bunch because I use the T3 code nightly on my machine and I do not want anything bad happening to it because I rely on it heavily.
I use it hours a day, every day. probably averaging 10 hours a day in t3 code lately it's bad but i wanted to have the orchestrator v2 as a build i could play with on my machine there's a lot of ways i could do this i could pull down the branch and run a local dev build i could ask julius to set up a dmg and then wipe my install back it up and then use that temporarily but i had a specific thing i wanted and for those already asking like what if you just put under a feature flag you're not putting a new database under a fucking feature flag especially when that new database is constantly changing and you should expect everything to be wiped at any point you don't want a feature flag for this and it would make it way harder for us to ship not easier so no not happening we'll have a nightly with this someday just wait be patient it's happening anyways i wanted it now and i'm sure others of y 'all do as well which is why it's so convenient t3 code is open source because you can copy paste this exact prompt or i don't know voice to text it and then you will have
what i have here funny enough i sent this one from voice to text on my iphone as i was getting my hair ready in the bathroom before stream because i wanted to have it ready to use if i wanted to demo it during stream so i was on my phone i started a new thread in fleet because again fleet has all the context of all my machines also including the context of the machine i'm currently on which is useful so i told that i wanted to make a custom t3 code app slash build on this machine that uses the orchestrator v2 branch should be named t3 code v2 it should use a custom t3 v2 home directory this one was very specific because i didn't want it to override and overlap with my existing t3 code instance so i could rotate between the nightly and the v2 i want it installed the same way you install any other apps just to be very specific you know astra needs a little nudge and what you actually want because it's not the best at intent but you talk enough you can get it to figure things out and you can figure in a way where it will not interfere with my existing t3 code install and then i went and finished my hair i came upstairs i set up stream
and then went and checked and it had finished. And now I have this custom build of T3 code on my machine. Again, I pulled in the AI earlier than I normally would have.
In the past, I probably would have made a clone of the repo or a work tree. I would have went to GitHub and found the branch. I would have found the PR and everything for it.
I would have cloned that locally and then told an agent to build it, maybe. Now I'm telling it to do all of the steps before and after. I'm telling it to go find the PR.
and figure out how to get it locally and built and do it. This worked great. I was very happy with it.
And this is just some of the computer use examples. You guys ready for an extra personal one? This one's so personal, I opened up ChatGPT for it.
I am between doctors because of my hand and other things. I absolutely love my orthopedic surgeon. He's the best.
But since I'm between primary care, I've been trying to transfer everything over. a lot of the stuff i needed was available for me in a dashboard for the hospital i'm with and their web app is i'm sure we've all had to deal with this before a app or website for your doctor's office that is not the most pleasant thing to use so when i was doing my early access testing with gbd6 astra it is computer use capabilities i gave it a fun challenge i asked it to go to the website i had open with all of my medical records on it and download them all.
This took about 40 -ish minutes total, I think. Actually, it wasn't quite as bad as I thought. It was only 20 minutes or so.
And I watched it do a lot of this. It had to download 49 medical PDFs, a giant pile of these scans, and each one of these things it downloaded required going through various dashboards, various threads, waiting for things to load, scrolling, finding the attachment section, downloading it, verifying it, and organizing it.
And it did all of it. It did all of it fine. As long as you have ChatGPT open, you can also do this in T3 code.
But for me personally right now, my split is T3 code is for everything code related and ChatGPT is for everything life related. With my hand like this, though, it would have taken me hours, like legitimately hours. So having the model do it slightly faster than I could by hand by just telling it what I wanted and then coming back 20 minutes later and all my records are local.
Awesome. And then my doctor texted me the link for where they wanted me to upload it. So I told another thread, hey, get all this uploaded.
And it did it for me. I didn't have to do it on my computer the same way I would have before. And these are the tasks that I never minded because I go around my computer quickly.
I've been using computers forever. I have a bunch of custom workflows, all my hotkeys and everything. I can navigate a computer fast.
On one hand, literally, I'm down a hand. So I can't navigate it as quickly as I'm used to, which demoralizes me as I'm going. But on the other hand, the good one this time i can only do one thing on a computer at a time and what this has unlocked for me is a mental model where i am i'm doing more than one thing on my computer at once while also working on multiple things in parallel in t3 code at once and i found it almost like it's been a bit of a relief because i found that before i was prioritizing work based on a combination of what mattered the most but also how much time i had And since I would regularly have to like get up to go to a meeting or run to go grab something or run to and from my office or go film a video, all those types of things.
If I had a task that took an hour to do, as far as I would have guessed, but I have to go film in 40 minutes, I'm just not going to do it. And then that thing gets delayed indefinitely and never happens. Now with my combination of voice to texting and computer use and my fleet of computers, I can be doing things at all times.
My laptop is closed. including a dedicated MacBook that I have on my network that is literally just for doing things that need, like, macOS computer use. That's what Leftbook is.
It's my leftover MacBook that just is decomping Melee, totally legally, by the way. This ended up being, like, a weirdly big mental unlock for me, the idea that the length of a task does not bound when I have to do it anymore. That if I had an hour -long task that meant I had to find an hour in my day to do it, now I don't.
Now I check in at the start and I check in at the end. And it's so nice. This is just the start of the mental model shift though.
Again, I've been thinking a lot about when I start a task and when the task is done. And if the agent is like chunks in the middle, like if we were to think of tasks, I'll just diagram. This is the easy way to explain it.
We think of this as a spectrum where on one side, we have the idea for the task is in your head. And on the other side, the task is completed and you're content with it. Where do you stuff the agents in?
I found for a long time, my agent use was kind of like this, where it'd have like chunks here and there. Maybe even at the start, I would like ask the model, hey, what do you think of this idea? And it would give me some feedback.
And then I would pull in another agent to start iterating on it. I would give it a bunch of feedback. I'd play with what it built.
And then I'd pull in another agent to go implement the things I wanted different. And then as agents got more and more powerful, I found myself moving to a model more like this. where I would talk things out occasionally after I thought about them for a while, decide what I wanted to do with it, and then spin up a long agent run to go build the whole thing.
Then I would test it a whole bunch myself here, play with it, figure out what I like and don't like, tell an agent to fix the handful of things that are wrong. Maybe there's some review comments after that it has to address. Then the task is finally done and I can go hit merge.
And here is where everything has changed for me. First off, I started trimming these parts out. More importantly, I've taken this middle section, the like, long agent run, once everything is figured out and the agent starts building and then out comes the code, I started telling it to verify its changes more.
Instead of having to like spin up the code base locally, open the app and test a bunch of things with one hand, I told it use computer use to verify and validate your changes. Use the AI code review bots in a repo to give feedback and make sure the code is in a good state. Have some sub -agents do another pass on your code to increase your confidence and don't bother me until you're relatively confident that there will be no regressions from this that are user -facing.
I've also started moving further in the other direction where I tell it not what solution I want, but I'll give it a bit of the problem I'm having. And if it's vague enough or I'm unsure enough, I'll tell it, hey, I don't know how I want to solve this, propose some solutions. Sometimes I'll just tell it to go do the whole thing and get a PR up.
The craziest change though is this very little bit at the end here. This is the merge hole. This is where I would come in and there's almost like a line here.
Like how far can I get the model before I go hit merge? I don't have this line anymore. I trust the model to know if the code is safe to merge and to just do it for me a lot of the time.
I've had Astra merge over 100 PRs across my projects and I've had Fable merge at least 50. And of the 150 PRs that they merged and wrote and did everything themselves, fully autonomously, two kind of had regressions in them.
That's a better hit rate than most talented developers have. Significantly better hit rate. This is similar to like the self -driving car thing where like everyone freaks out when they see a self -driving car get in an accident.
When you look at miles driven, you'll suddenly realize, oh yeah, I guess that they're driving five times as much per accident. That's probably good. And the accidents seem less dangerous.
The accidents that happened from these YOLO merges, by the way, were an animation being removed in the app and an animation being removed on the marketing site those are the two regressions that accidentally merged after almost 150 prs of auto merged slop from fable and astra astra shipped those two animation regressions everything else was fine and has been massive real world improvements to these apps yolo merges can't tell if we're still talking about waymos or code now that is a phenomenal joke dran ben 11 out of 10.
That got a genuine smile out of me. Thank you. This is a theme you're going to be seeing in more and more of my content.
This idea that you should expand both sides of where you let the agent come in. The agent should come in earlier in your process, and it should go longer before it bothers you. I'm now at the point where I don't even care about how fast the model is anymore, for the most part.
Other than like emergency bug fixes and things, I'm like in the loop on because I need them out ASAP or I care a lot about some subtle specific details in it or like design iteration and things. For almost all of my threads, like if I just literally go through them, I'll be honest with you for each one. How much do I care about the speed of the thread?
Building Swift iOS app? Funny enough, I do actually care a bit in this thread, but the reason is hilariously dumb. I built 95 plus percent of the Swift UI version of the T3 Code mobile app in a single thread as an experiment.
This thread is like eight plus gigs of data now because I've been using it so heavily across models across months of work. So this one, I like the fast iteration cycle because it makes it easier for me to try two things or three things in a row because it's a hell thread. If I had just merged this code and had work trees the way I normally would, this would not affect me in the slightest.
But since I have a single thread I'm doing this work on, I would like it to be faster. So there's one so far where the faster would be nicer. Lakebed single server capacity limit increases.
I don't give a fuck. I check on this thread every like day or two. Melee decomp.
This is going to run in the background indefinitely. I don't care how long it takes. It could be three times slower.
It wouldn't make a meaningful difference in my life. More Lakebed performance games. I don't care.
Showcase T3 code performance games. I don't care. Engineer performance rating.
I don't care. This was for a shit post on Twitter. I can archive that now.
Fix image preview and rendering. I don't care. Categorize stable release changes.
I really don't care. All of these threads are things where the amount of time it takes doesn't matter because as soon as I kick off the thread, I'm off doing the next thing. One of the coolest features we recently shipped in T3 code, which admittedly is a bit harder for me because one hand, we have the ability to kick off a prompt without leaving the prompt screen.
So if I, I don't know, say, I want you to work on feature one, I could hit enter and it would send and start the thread the normal way, or I can hold down command and press enter. and it opens a new thread, and I stay here. So I can kick off another job, a third job, and if I'm feeling particularly frisky, a fourth job.
Not a part job. Thanks, Whisperflow. A fourth job.
Thank you, Whisperflow. A fourth job. Ta -da.
Voice -to -text is great. You get the idea, though. This is so nice for when you have, like...
a mind dump that you want to do of just random things you want to have worked on. It's so nice to just do it. One other thing that's been kind of hard for me to get over as someone who cares a lot about things like their grammar and text formatting.
All of the words I want to say about my relationship with grammar could potentially get me canceled or in trouble. So what I'll say is I care too much. I like properly formatted text.
I like sentences that vary well in length. I like writing well. It's probably part of why I do this whole YouTube thing now.
I care a lot about the quality and clarity of my writing, using the right words, using small, simple, and easy to understand words. So getting over the fact that every three to five sentences, one word would be wrong, started to drive me mad. But now I'm mostly over it.
I have learned over time that, believe it or not, the thing translating my voice is also AI. And its ability... to deal with the fact that certain words were the wrong word in what I said, it handled it great.
I've been really impressed. I bet if I scroll through a handful of these, we can probably find some real examples of me having typos in what I sent. Okay, I just hunted for a bit across my threads and concluded that I don't actually have as many typos as I thought in them, because I always fix them.
I guess I'm giving this advice not for y 'all, but for me even. The model handles wrong words in typos, so to speak. totally fine it really doesn't matter that much so you should just not care as much see what happens just send the message with the typos and if it gets confused you can correct them then i could also ask the model to go find some examples but i don't care enough to honestly i just wanted to make a point with an example didn't have one we'll continue my primary angle of attack for solving all of these problems i've been having has been focusing in on where my friction and pain points are like what is frustrating me when I use my computer and how do I get rid of it to the best of my ability?
How can I offload these things? And one of those things is navigating GitHub because it has gotten miserably slow. It is hell to navigate.
And not long ago, you can probably even see in some of my old videos, I would have literally 30 to 50 tabs from GitHub open in my primary work browser. Like this whole section here would just be GitHub tabs. Right now, I have one, and it's the Melee decomp.
Part of that's because I purged before stream, but most of it is because I'm not interfacing with GitHub directly anymore. Can you show me some of the recent pull requests that might be worth my attention? Things that have been done in the last three or so days?
Look for stuff that touches the surface areas I'm most concerned with, both opened and closed PRs. Give me a brief two to three sentence summary of each change, as well as an additional... sentence at the end on why you think i specifically would care about the change now in not very much time i'll have some nice readable output that describes things that would have taken me a lot of time to browse through on github but even better because again command tab hurts me right now we have a pull request viewer that below built for t3 code directly in app so i can see the pull request right here if i want to for any reason there's a lot of reasons i would want to Now I can even hit merge without having to leave T3 code at all.
To be fair, anything I would have hit merge in the T3 code app for, I probably would just let the model merge itself. But it's very nice having all of this built in there. Here we go.
A very easy to read, useful pile of summaries of real world pull requests, their current status, and also the ability to click it and open it within T3 code without ever having to touch GitHub. It's great. It's such a relief to have all of this just right here, ready to go.
I have one last pro tip I want to show you guys, though. One that I have been surprised how useful it has been. This is going to be very different in the near future once we have the orchestrator out.
But if you're in other tools like Cursor or you're directly using something like Cloud Code or Codex or whatever else, this might be really helpful for you. I hate dealing with copy pasting text right now. It's silly.
But because of the weird way I have to put my hand on the keyboard, command C and command V are unpleasant to hit. They just are. It sucks.
It is what it is. It's a chronic copy paster. It has made life much harder for me.
So what do I do instead? I regularly am passing context around between my agents. I'll still use this tiny little like copy button here.
Like let's say, for example, I want to help prioritizing these PRs. I can click copy. I can say.
Help me prioritize which of these PRs I should look at first. If any of them are simple and easy to merge, tell me and you can merge them. I'm going to delete that part because I don't actually want it to YOLO merge while I'm streaming, but you get the idea.
And I couldn't hit paste right because, again, hands don't work great. But if I two -hand it with command on left and paste on right, there's the list that I forgot to paste. That's one strategy.
But you can go a step further here. I'm going to stop this in archive and do something a little different. I have a recent P3 code thread.
Today, we're asked Codex to review recent PRs by surface and help me prioritize pull requests. Which three do you think are the best for me to prioritize right now? Is this the most efficient way to get the context handed over to a different thread or agent?
No, absolutely not. Is this going to make my request slower than if I had copy pasted it? Absolutely, yes.
It's even going to be a bit more expensive. But frankly, I don't care. I'm going to be doing other shit at the same time anyways.
The things I would do to make my agents more efficient by unblocking them and getting work done for them ahead of time, like don't do work the agents can do themselves. And the more you get in this mindset, it's weird and strange and uncomfortable because half the time you're gonna be like, well, I could have just opened the browser and did that myself.
Am I being lazy? Yes. And lazy is good.
Lazy is efficient. Lazy means you're taking advantage of the capabilities of these things more directly. And one of the lazy things you can do is not pass context around between things yourself.
The models are good enough at building context by using their tools now that you can tell it to go find the things. Will this work as well on cheaper models like Terra or Kimmy K3? Maybe, but probably not.
But if you're using frontier models with the $200 a month subscriptions and you're okay with wasting some tokens on how you get the context to the thread, it doesn't end up netting to that big a difference and it will make it way easier to just dump the thing out of your head. And if you think I'm insane, I have a challenge for you.
An exercise. The next time you have a bug you notice in your software, a feature you want to work on or something else, where your next step would have been to, I don't know, plan it out or write something down or do something other than just set off an agent to do it. Right before you start, set off the agent with everything in your brain already.
Don't help it at all. Don't give it hints. Don't...
Point it where it should go. Don't give it the additional context by manually bringing it in. Just tell it what's on your mind.
And while it runs, go do things the way you normally do. Then come back at the end and see how the way you did things differs from how the agent did things. And see if you can honestly still kid yourself into doing all that manual work yourself.
I think you'll be surprised how much of your process can just be done by the agent itself. I know I have been. I have been blown away at how quickly the agents have chewed through the boundaries I had on each side of my mental model, where I bring them in sooner and let them go longer.
And my hand has kind of been a forcing function to get me deeper in that. And I don't think I'm ever going back. So yeah, this is a strange video.
I know. I have no idea how it will perform. I'm hopeful it's good because I think this is cool.
I've fundamentally changed how I work at my computer every day. And while sure, my hand is a meaningful part of why I've had to do that. I've actually been very happy with the results.
And while I do dearly miss being able to type out my shit posts by hand, I have found this new way of working to be quite pleasant. And this tiny little mic has made it a lot more tolerable to live with my computer with only one hand. I hope these tips were helpful.
It's been a huge change in how I work. And while I know most of you guys do have both your hands, for those who don't, and for those who want to just use the computer differently, I bet these tips will be helpful. Let me know how y 'all feel.
And until next time, peace.
The Hook
The bait, then the rug-pull.
Theo opens by pointing at his hair, then admits the real change: a hand that's been in a cast for a month and counting, forcing him to rebuild how he uses a computer entirely around voice and AI agents.
Frameworks
Named ideas worth stealing.
23:21model
The Idea-to-Done Spectrum
A mental line running from "the idea is in your head" to "the task is done and you're happy with it." Theo traces how his agent use has crept toward both ends of this line over time, and argues the real lever is how far along it you let an agent operate before checking back in.
Steal fordeciding how much of any task, coding or otherwise, to hand to an agent versus do yourself
25:37concept
The Merge Hole
Theo's name for the checkpoint where a human used to have to personally review code before clicking merge. He describes removing that checkpoint almost entirely and trusting the agent's own judgment on whether a change is safe to ship.
Steal fora team debating how much review a PR needs before an agent is allowed to merge it directly
CTA Breakdown
How they asked for the click.
VERBAL ASK
02:01product
“Get it right at soydev.link slash workos.”
A standard sponsor read for WorkOS placed right after the emotional cold open; he also plugs his own sponsorship inbox and his personal mic affiliate link in the same breath, so the break does triple duty.
Add Modern Creator as a preferred source and Google shows you more of our breakdowns in Search, Top Stories, and AI Overviews. It only changes what you see, and you can undo it in your Google settings anytime.
Add to Preferred SourcesOpens your Google source preferences with us pre-loaded. Tick the box and you're done.
A four and a half hour Labor Day stream where two entire YouTube videos get filmed live, one-handed, between sub thanks, a ban, and forty agents running in the background.
Theo says he barely codes hands-on anymore, then spends 49 minutes proving he still ships more than most full-time engineers by showing exactly how he runs dozens of AI agents at once.
A developer who shipped 89 merged PRs in 24 hours breaks down Claude Fable 5.1's pricing, benchmarks and real-world coding behavior against Fable 5 and GPT-5.6 Sol.
Boris Cherny said coding is solved. Matt Pocock called it VC-funded bullshit. Theo argues they're both right, because they're using the word coding to mean two different things.
Theo spends a week testing two rival "skills" repos for AI coding agents, Matt Pocock's 215,000-star collection and Cursor engineer Lauren's PStack, and finds the real value in a handful of specific files, not the whole install.