A proper guide to Fable 5
Read full transcript 33 segments
-
Saying Fable 5 has one shot me would be Saying Fable 5 has one shot me would be a criminal understatement. I really a criminal understatement. I really a criminal understatement. I really appreciated the model the first day I appreciated the model the first day I appreciated the model the first day I tried it, but over the next two I tried it, but over the next two I tried it, but over the next two I started to genuinely love it and was started to genuinely love it and was started to genuinely love it and was blown away with what it was capable of. blown away with what it was capable of. blown away with what it was capable of. And then it got taken from us and I I And then it got taken from us and I I And then it got taken from us and I I struggled. I did my best to make decent struggled. I did my best to make decent struggled. I did my best to make decent work come out of Opus 48 and GPT-5.5, work come out of Opus 48 and GPT-5.5, work come out of Opus 48 and GPT-5.5, but it just it wasn't the same and I but it just it wasn't the same and I but it just it wasn't the same and I found myself just kind of running in found myself just kind of running in found myself just kind of running in circles waiting. And then the model came circles waiting. And then the model came circles waiting. And then the model came back and I honestly can't believe I'm back and I honestly can't believe I'm back and I honestly can't believe I'm saying this, it's better than I saying this, it's better than I saying this, it's better than I remembered. There are a lot of things remembered. There are a lot of things remembered. There are a lot of things that aren't perfect about it and there's that aren't perfect about it and there's that aren't perfect about it and there's ways to work around some of them. God ways to work around some of them. God ways to work around some of them. God damn, when I'm actually trying to use damn, when I'm actually trying to use damn, when I'm actually trying to use this model for my day-to-day work, it this model for my day-to-day work, it this model for my day-to-day work, it blows me away. And the first day of blows me away. And the first day of blows me away. And the first day of having it back, I got more work done having it back, I got more work done having it back, I got more work done than I had in the month prior. It just than I had in the month prior. It just than I had in the month prior. It just it was incredible to watch as the model it was incredible to watch as the model it was incredible to watch as the model cranked through all of these things that cranked through all of these things that cranked through all of these things that I'd been planning and thinking about and I'd been planning and thinking about and I'd been planning and thinking about and starting but not finishing and it just starting but not finishing and it just starting but not finishing and it just shipped. It fixed a bunch of code, it shipped. It fixed a bunch of code, it shipped. It fixed a bunch of code, it merged a bunch of stuff and it got me merged a bunch of stuff and it got me merged a bunch of stuff and it got me pumped for not just the work I was doing pumped for not just the work I was doing pumped for not just the work I was doing but for the future of how we'll be doing but for the future of how we'll be doing but for the future of how we'll be doing work. It is incredible what you can do work. It is incredible what you can do work. It is incredible what you can do with this model, but there's one big with this model, but there's one big with this model, but there's one big catch.
-
catch. catch. If you treat this model the way you did If you treat this model the way you did If you treat this model the way you did previous ones, you're not going to see previous ones, you're not going to see previous ones, you're not going to see the benefits. To put it simply, this the benefits. To put it simply, this the benefits. To put it simply, this model isn't a better Opus. If you take model isn't a better Opus. If you take model isn't a better Opus. If you take prompts that worked for Opus and you prompts that worked for Opus and you prompts that worked for Opus and you give them to Fable, it's not going to be give them to Fable, it's not going to be give them to Fable, it's not going to be much better. The difference in this much better. The difference in this much better. The difference in this model isn't just how much smarter it is model isn't just how much smarter it is model isn't just how much smarter it is or how much better the code is, it's how or how much better the code is, it's how or how much better the code is, it's how much further it can go. Not just on like much further it can go. Not just on like much further it can go. Not just on like harder code tasks, but on end-to-end harder code tasks, but on end-to-end harder code tasks, but on end-to-end implementations, testing, verifying and implementations, testing, verifying and implementations, testing, verifying and all the other pieces you need to write all the other pieces you need to write all the other pieces you need to write great software, especially once it has great software, especially once it has great software, especially once it has to break tasks up into smaller pieces to break tasks up into smaller pieces to break tasks up into smaller pieces and hand those off to sub agents. This and hand those off to sub agents. This and hand those off to sub agents. This model does incredible stuff and I've model does incredible stuff and I've model does incredible stuff and I've been doing my best to get as much as been doing my best to get as much as been doing my best to get as much as possible out of it during this limited possible out of it during this limited possible out of it during this limited window where we have it in the subs, window where we have it in the subs, window where we have it in the subs, although it is coming back soon. And although it is coming back soon. And although it is coming back soon. And with that, I do want to make sure you with that, I do want to make sure you with that, I do want to make sure you guys know I already filmed a video today guys know I already filmed a video today guys know I already filmed a video today about a lot of this, specifically about about a lot of this, specifically about about a lot of this, specifically about all the misconceptions people have with all the misconceptions people have with all the misconceptions people have with the model. the model. the model. They're frustrating me because this They're frustrating me because this They're frustrating me because this model is great. So, if you're confused model is great. So, if you're confused model is great. So, if you're confused because you read Twitter and saw all because you read Twitter and saw all because you read Twitter and saw all these people saying the model's nerfed, these people saying the model's nerfed, these people saying the model's nerfed, it's terrible, it's way too expensive, it's terrible, it's way too expensive, it's terrible, it's way too expensive, all that type of stuff, go watch that all that type of stuff, go watch that all that type of stuff, go watch that video first. It'll help clear the air. video first. It'll help clear the air. video first. It'll help clear the air. It's not a necessary first view, but it It's not a necessary first view, but it It's not a necessary first view, but it will help a decent bit.
-
will help a decent bit. will help a decent bit. This video is different, though. This is This video is different, though. This is This video is different, though. This is the video where I show you all the the video where I show you all the the video where I show you all the things I've been doing with Fable, all things I've been doing with Fable, all things I've been doing with Fable, all the awesome stuff I've been able to the awesome stuff I've been able to the awesome stuff I've been able to ship, most importantly, the ways that ship, most importantly, the ways that ship, most importantly, the ways that I've been doing it. The prompts I've I've been doing it. The prompts I've I've been doing it. The prompts I've been sending, the systems I have built, been sending, the systems I have built, been sending, the systems I have built, the changes I've made to my Claude MDs, the changes I've made to my Claude MDs, the changes I've made to my Claude MDs, to my skills, and all these other to my skills, and all these other to my skills, and all these other things, and how I've most importantly things, and how I've most importantly things, and how I've most importantly changed the way my brain works when changed the way my brain works when changed the way my brain works when working with models in order to maximize working with models in order to maximize working with models in order to maximize what I can get out of this new era. And what I can get out of this new era. And what I can get out of this new era. And this really is a new era. Fable isn't this really is a new era. Fable isn't this really is a new era. Fable isn't just an improvement, it is a fundamental just an improvement, it is a fundamental just an improvement, it is a fundamental change in what these models are capable change in what these models are capable change in what these models are capable of, enough that it makes it sound like of, enough that it makes it sound like of, enough that it makes it sound like I'm reading a script when I'm not. This I'm reading a script when I'm not. This I'm reading a script when I'm not. This is all off top. Like this model's is all off top. Like this model's is all off top. Like this model's screwing with me, if you can't tell. I screwing with me, if you can't tell. I screwing with me, if you can't tell. I have effectively been one-shot. This is have effectively been one-shot. This is have effectively been one-shot. This is my psychosis moment, and I can't wait to my psychosis moment, and I can't wait to my psychosis moment, and I can't wait to share it all with you, but someone's share it all with you, but someone's share it all with you, but someone's going to have to pay for my therapy, and going to have to pay for my therapy, and going to have to pay for my therapy, and it'll probably come from the budget, it'll probably come from the budget, it'll probably come from the budget, thanks to today's sponsor. My agents get thanks to today's sponsor. My agents get thanks to today's sponsor. My agents get a lot right when I'm building. It's a lot right when I'm building. It's a lot right when I'm building. It's honestly really impressive, but there's honestly really impressive, but there's honestly really impressive, but there's a few things they always get wrong, no a few things they always get wrong, no a few things they always get wrong, no matter how good the tooling gets. The matter how good the tooling gets. The matter how good the tooling gets. The two that hurt me the most are off and two that hurt me the most are off and two that hurt me the most are off and billing. They're just like the billing. They're just like the billing. They're just like the kryptonite of AI agents. They could kryptonite of AI agents. They could kryptonite of AI agents. They could never get it right, especially the never get it right, especially the never get it right, especially the billing side, and trying to get that billing side, and trying to get that billing side, and trying to get that linked to the user in a way that makes linked to the user in a way that makes linked to the user in a way that makes sense. The amount of weird, random, sense. The amount of weird, random, sense. The amount of weird, random, transient billing failures we get across transient billing failures we get across transient billing failures we get across services is so annoying. Well, it was services is so annoying. Well, it was services is so annoying. Well, it was until I started using today's sponsor until I started using today's sponsor until I started using today's sponsor more, Clerk. Because not only do they more, Clerk. Because not only do they more, Clerk. Because not only do they have the best off platform that is the have the best off platform that is the have the best off platform that is the easiest to integrate across everything, easiest to integrate across everything, easiest to integrate across everything, be it web, mobile, or anything else.
-
be it web, mobile, or anything else. be it web, mobile, or anything else. We're actually working with them right We're actually working with them right We're actually working with them right now in order to get the T3 Code Electron now in order to get the T3 Code Electron now in order to get the T3 Code Electron desktop app off for our new remote stuff desktop app off for our new remote stuff desktop app off for our new remote stuff that I'm really excited about. What's that I'm really excited about. What's that I'm really excited about. What's way more exciting to me is the way more exciting to me is the way more exciting to me is the subscription platform that's now built subscription platform that's now built subscription platform that's now built in. Having tried pretty much everything in. Having tried pretty much everything in. Having tried pretty much everything like this, I can confidently say Clerk like this, I can confidently say Clerk like this, I can confidently say Clerk is the easiest and has the best is the easiest and has the best is the easiest and has the best abstraction. Instead of all the abstraction. Instead of all the abstraction. Instead of all the obnoxious effort trying to set up a obnoxious effort trying to set up a obnoxious effort trying to set up a staging and production environment for staging and production environment for staging and production environment for Stripe with their own separate keys, Stripe with their own separate keys, Stripe with their own separate keys, their own separate product IDs, their their own separate product IDs, their their own separate product IDs, their own separate everything, that you now own separate everything, that you now own separate everything, that you now have to mirror in your real database have to mirror in your real database have to mirror in your real database just to make sure it works, you just get just to make sure it works, you just get just to make sure it works, you just get to configure it in the clerk dashboard. to configure it in the clerk dashboard. to configure it in the clerk dashboard. Once a user pays, that payment Once a user pays, that payment Once a user pays, that payment information is attached to the user information is attached to the user information is attached to the user itself, where it belongs. I don't care itself, where it belongs. I don't care itself, where it belongs. I don't care what subscriptions exist, I care if this what subscriptions exist, I care if this what subscriptions exist, I care if this user is subscribed, and clerk gets that user is subscribed, and clerk gets that user is subscribed, and clerk gets that right. They have custom components and right. They have custom components and right. They have custom components and helpers where you can check what state a helpers where you can check what state a helpers where you can check what state a user's in and what plan they have to user's in and what plan they have to user's in and what plan they have to make it trivial to render the right UI make it trivial to render the right UI make it trivial to render the right UI or go down the right path, and it ends or go down the right path, and it ends or go down the right path, and it ends up costing the exact same as going to up costing the exact same as going to up costing the exact same as going to stripe directly, which is unbelievable. stripe directly, which is unbelievable. stripe directly, which is unbelievable. Any one of these pieces would be worth Any one of these pieces would be worth Any one of these pieces would be worth moving to clerk for, especially having moving to clerk for, especially having moving to clerk for, especially having the user profile component with all the the user profile component with all the the user profile component with all the billing info built in. The amount of billing info built in. The amount of billing info built in. The amount of time Mark loses dealing with billing time Mark loses dealing with billing time Mark loses dealing with billing disputes and email is obnoxious, and disputes and email is obnoxious, and disputes and email is obnoxious, and this would have saved us so much of that this would have saved us so much of that this would have saved us so much of that trouble. Fun fact, if you Google search trouble. Fun fact, if you Google search trouble. Fun fact, if you Google search stripe recommendations, my repo is the stripe recommendations, my repo is the stripe recommendations, my repo is the first one to come up. This is a first one to come up. This is a first one to come up. This is a multi-page guide on how to try and get multi-page guide on how to try and get multi-page guide on how to try and get stripe to work properly in your apps, stripe to work properly in your apps, stripe to work properly in your apps, but at this point when people ask me how but at this point when people ask me how but at this point when people ask me how to get it right, I usually just point to get it right, I usually just point to get it right, I usually just point them at clerk. Set up auth and payments them at clerk. Set up auth and payments them at clerk. Set up auth and payments right at swyd.link/clerk.
-
right at swyd.link/clerk. right at swyd.link/clerk. The amount of work I've done with this The amount of work I've done with this The amount of work I've done with this model in the last few days is still just model in the last few days is still just model in the last few days is still just kind of screwing with me, especially kind of screwing with me, especially kind of screwing with me, especially because I was at a conference for half because I was at a conference for half because I was at a conference for half of it. Shout out to the T3 Code mobile of it. Shout out to the T3 Code mobile of it. Shout out to the T3 Code mobile app, by the way. I was doing a ton of app, by the way. I was doing a ton of app, by the way. I was doing a ton of work on my phone while also at this work on my phone while also at this work on my phone while also at this event, and it shows. I got a ton done, event, and it shows. I got a ton done, event, and it shows. I got a ton done, like an unbelievable amount done. This like an unbelievable amount done. This like an unbelievable amount done. This is the closed PRs in Lakebed, where is the closed PRs in Lakebed, where is the closed PRs in Lakebed, where reminder, I'm still the only reminder, I'm still the only reminder, I'm still the only contributor. I have not forced this contributor. I have not forced this contributor. I have not forced this project onto my team yet. They don't project onto my team yet. They don't project onto my team yet. They don't deserve the slop. It's cleaning up fast, deserve the slop. It's cleaning up fast, deserve the slop. It's cleaning up fast, thank you Fable, but all of these PRs thank you Fable, but all of these PRs thank you Fable, but all of these PRs were done in literally two to three were done in literally two to three were done in literally two to three days. The sheer volume of work here, days. The sheer volume of work here, days. The sheer volume of work here, especially if you're looking at the ones especially if you're looking at the ones especially if you're looking at the ones that actually merge, like this pile that actually merge, like this pile that actually merge, like this pile here, that's like, I think 11 or 12 PRs here, that's like, I think 11 or 12 PRs here, that's like, I think 11 or 12 PRs that merged all, not just in one day, that merged all, not just in one day, that merged all, not just in one day, but from one thread. but from one thread. but from one thread. And I keep going, and I'm on page two. And I keep going, and I'm on page two. And I keep going, and I'm on page two. We're still in things from two days ago. We're still in things from two days ago. We're still in things from two days ago. Then there's a four-day ago one, Then there's a four-day ago one, Then there's a four-day ago one, five-days ago, then a huge jump to two five-days ago, then a huge jump to two five-days ago, then a huge jump to two weeks, because I was just not really weeks, because I was just not really weeks, because I was just not really feeling it. When I lost access to this feeling it. When I lost access to this feeling it. When I lost access to this model, I tried to run around in circles model, I tried to run around in circles model, I tried to run around in circles and get the best stuff I could out of and get the best stuff I could out of and get the best stuff I could out of Opus, but it wasn't at the bar I needed Opus, but it wasn't at the bar I needed Opus, but it wasn't at the bar I needed to ship. And what ended up happening is to ship. And what ended up happening is to ship. And what ended up happening is in this particular project, Lakebed, I in this particular project, Lakebed, I in this particular project, Lakebed, I had a bunch of these PRs stack up of had a bunch of these PRs stack up of had a bunch of these PRs stack up of work that was like 50 to 80% complete, work that was like 50 to 80% complete, work that was like 50 to 80% complete, but I didn't like the SDK changes it but I didn't like the SDK changes it but I didn't like the SDK changes it made. I didn't really have confidence in made. I didn't really have confidence in made. I didn't really have confidence in the implementation, and cleaning it up the implementation, and cleaning it up the implementation, and cleaning it up would just take too long. And the result would just take too long. And the result would just take too long. And the result was that I kept having ideas, I kept was that I kept having ideas, I kept was that I kept having ideas, I kept making PRs, and they kept sitting there making PRs, and they kept sitting there making PRs, and they kept sitting there doing nothing. I probably had 20 or 30 doing nothing. I probably had 20 or 30 doing nothing. I probably had 20 or 30 PRs just sitting in this repo not
-
PRs just sitting in this repo not PRs just sitting in this repo not moving, and the project has been sitting moving, and the project has been sitting moving, and the project has been sitting there as a result. And I don't like there as a result. And I don't like there as a result. And I don't like that. I really want to ship Lakebed. that. I really want to ship Lakebed. that. I really want to ship Lakebed. I've talked about what Lakebed is in I've talked about what Lakebed is in I've talked about what Lakebed is in some other videos. I don't want to bog some other videos. I don't want to bog some other videos. I don't want to bog you down with the details until I you down with the details until I you down with the details until I actually have it launched. I haven't actually have it launched. I haven't actually have it launched. I haven't earned the right to market this yet. I earned the right to market this yet. I earned the right to market this yet. I want it done. So, we'll do that later, want it done. So, we'll do that later, want it done. So, we'll do that later, but I want to talk about the workflows but I want to talk about the workflows but I want to talk about the workflows that got me this far in the project, as that got me this far in the project, as that got me this far in the project, as well as some of the cool things I'm well as some of the cool things I'm well as some of the cool things I'm doing on other projects that I've been doing on other projects that I've been doing on other projects that I've been working on. I'm going to start in a working on. I'm going to start in a working on. I'm going to start in a weird place here, but I promise it will weird place here, but I promise it will weird place here, but I promise it will help. I'm going to start with min-maxing help. I'm going to start with min-maxing help. I'm going to start with min-maxing tips and like cost reduction things in tips and like cost reduction things in tips and like cost reduction things in order to make sure that when you adopt order to make sure that when you adopt order to make sure that when you adopt this workflow, you don't immediately this workflow, you don't immediately this workflow, you don't immediately bankrupt yourself. Because if you were bankrupt yourself. Because if you were bankrupt yourself. Because if you were to go to the second half of this video to go to the second half of this video to go to the second half of this video and skip straight to that part, it will and skip straight to that part, it will and skip straight to that part, it will be expensive. That's what I did in the be expensive. That's what I did in the be expensive. That's what I did in the first 3 days we had Fable and it was first 3 days we had Fable and it was first 3 days we had Fable and it was expensive. I didn't pay cash. I bounced expensive. I didn't pay cash. I bounced expensive. I didn't pay cash. I bounced between two subs, but I looked at how between two subs, but I looked at how between two subs, but I looked at how much it would have cost and it was in much it would have cost and it was in much it would have cost and it was in the thousands of dollars. And all the the thousands of dollars. And all the the thousands of dollars. And all the work I just shared here, all of the PRs work I just shared here, all of the PRs work I just shared here, all of the PRs that were closed, fixed, updated, that were closed, fixed, updated, that were closed, fixed, updated, recreated, merged, I want you to just recreated, merged, I want you to just recreated, merged, I want you to just think in your head and guess how much think in your head and guess how much think in your head and guess how much you would expect that to cost with Fable you would expect that to cost with Fable you would expect that to cost with Fable running in a loop for 5 and 1/2 hours running in a loop for 5 and 1/2 hours running in a loop for 5 and 1/2 hours getting all that work done. You're getting all that work done. You're getting all that work done. You're probably thinking in the thousands cuz probably thinking in the thousands cuz probably thinking in the thousands cuz that's what I would have expected. But that's what I would have expected. But that's what I would have expected. But it was only around 150 bucks. Not just it was only around 150 bucks. Not just it was only around 150 bucks. Not just Fable, but all of the other models I had Fable, but all of the other models I had Fable, but all of the other models I had Fable calling throughout. Wait, but Fable calling throughout. Wait, but Fable calling throughout. Wait, but Fable's so smart. Why are you using Fable's so smart. Why are you using Fable's so smart. Why are you using other models, Theo?
-
other models, Theo? other models, Theo? And here's where the tips start. I And here's where the tips start. I And here's where the tips start. I mentioned in my previous video that I mentioned in my previous video that I mentioned in my previous video that I was teaching Fable how to use Codex, and was teaching Fable how to use Codex, and was teaching Fable how to use Codex, and I'm going to show you how. But first, I I'm going to show you how. But first, I I'm going to show you how. But first, I just want to make sure I emphasize this just want to make sure I emphasize this just want to make sure I emphasize this point. I talked about it before. Do not point. I talked about it before. Do not point. I talked about it before. Do not use Fable on higher than high reasoning use Fable on higher than high reasoning use Fable on higher than high reasoning efforts. The X high and max options are efforts. The X high and max options are efforts. The X high and max options are dangerous and ultra code causes it to dangerous and ultra code causes it to dangerous and ultra code causes it to use workflows when it shouldn't. Those use workflows when it shouldn't. Those use workflows when it shouldn't. Those three options, pretty much everything to three options, pretty much everything to three options, pretty much everything to the right of high, these are dangerous. the right of high, these are dangerous. the right of high, these are dangerous. They look so enticing though, the fancy They look so enticing though, the fancy They look so enticing though, the fancy gradient when you hop over it. Like it's gradient when you hop over it. Like it's gradient when you hop over it. Like it's a slot machine begging you to put a slot machine begging you to put a slot machine begging you to put another coin in. I'm going to beg you to another coin in. I'm going to beg you to another coin in. I'm going to beg you to not fall for it. not fall for it. not fall for it. High is way smarter. I know that sounds High is way smarter. I know that sounds High is way smarter. I know that sounds like I just made a mistake. I didn't. X like I just made a mistake. I didn't. X like I just made a mistake. I didn't. X high and max, since they are thinking high and max, since they are thinking high and max, since they are thinking themselves too much because they run in themselves too much because they run in themselves too much because they run in loops, they'll just go longer and longer loops, they'll just go longer and longer loops, they'll just go longer and longer with their reasoning and the result is with their reasoning and the result is with their reasoning and the result is often worse code that is way overdone often worse code that is way overdone often worse code that is way overdone that has way too many changes for the that has way too many changes for the that has way too many changes for the simple thing you're asking for at a cost simple thing you're asking for at a cost simple thing you're asking for at a cost that is absurdly higher than it should that is absurdly higher than it should that is absurdly higher than it should have been. Low, medium, and high might have been. Low, medium, and high might have been. Low, medium, and high might not be as efficient as like GPT 5.5, but not be as efficient as like GPT 5.5, but not be as efficient as like GPT 5.5, but they are capable of things that 5.5 is they are capable of things that 5.5 is they are capable of things that 5.5 is just not even close to capable of. And just not even close to capable of. And just not even close to capable of. And they can still run for really long they can still run for really long they can still run for really long times. The reasoning effort does not times. The reasoning effort does not times. The reasoning effort does not determine how long it can work for, determine how long it can work for, determine how long it can work for, which a lot of people seem to think that which a lot of people seem to think that which a lot of people seem to think that max can solve harder problems and work max can solve harder problems and work max can solve harder problems and work longer than high can. But the reasoning longer than high can. But the reasoning longer than high can. But the reasoning effort only applies per tool call and effort only applies per tool call and effort only applies per tool call and per change. So, if you have work that per change. So, if you have work that per change. So, if you have work that takes 500 steps, takes 500 steps, takes 500 steps, max isn't going to do more steps max isn't going to do more steps max isn't going to do more steps necessarily, it's going to think more necessarily, it's going to think more necessarily, it's going to think more per step. And most of the steps don't per step. And most of the steps don't per step. And most of the steps don't require that much thought. The problem require that much thought. The problem require that much thought. The problem is that X high and max, since they are
-
is that X high and max, since they are is that X high and max, since they are thinking too much per step, they're thinking too much per step, they're thinking too much per step, they're going to overthink the thing. And they going to overthink the thing. And they going to overthink the thing. And they do, and they do aggressively. As does do, and they do aggressively. As does do, and they do aggressively. As does Sonnet 5, as arguably Opus 48 does as Sonnet 5, as arguably Opus 48 does as Sonnet 5, as arguably Opus 48 does as well, although not quite as bad. I am well, although not quite as bad. I am well, although not quite as bad. I am admittedly a little scared that this 5 admittedly a little scared that this 5 admittedly a little scared that this 5 family of models from Anthropic might family of models from Anthropic might family of models from Anthropic might have a big problem with over reasoning have a big problem with over reasoning have a big problem with over reasoning with these two options. So, honestly, with these two options. So, honestly, with these two options. So, honestly, just keep it on low through high. I just keep it on low through high. I just keep it on low through high. I personally leave it on high and don't personally leave it on high and don't personally leave it on high and don't think about it. I'm only thinking about think about it. I'm only thinking about think about it. I'm only thinking about it now because I saw people complaining it now because I saw people complaining it now because I saw people complaining about their bills and I talked to them about their bills and I talked to them about their bills and I talked to them and every single person complaining and every single person complaining and every single person complaining about blasting through their usage too about blasting through their usage too about blasting through their usage too fast It on X high, max, or Ultra code. fast It on X high, max, or Ultra code. fast It on X high, max, or Ultra code. By the way, you might not have known By the way, you might not have known By the way, you might not have known this, Ultra code uses High under the this, Ultra code uses High under the this, Ultra code uses High under the hood. It just spins up a ton more of hood. It just spins up a ton more of hood. It just spins up a ton more of them. So, even Anthropic agrees High is them. So, even Anthropic agrees High is them. So, even Anthropic agrees High is the best bang for your buck. Trust me, the best bang for your buck. Trust me, the best bang for your buck. Trust me, just just go with that. It's a default just just go with that. It's a default just just go with that. It's a default for a reason. It's their default in for a reason. It's their default in for a reason. It's their default in other things for a reason. It's the other things for a reason. It's the other things for a reason. It's the right level. right level. right level. Now that that's out of the way and I've Now that that's out of the way and I've Now that that's out of the way and I've probably cut your bill by half or more probably cut your bill by half or more probably cut your bill by half or more just by making that one change, let's just by making that one change, let's just by making that one change, let's talk about the rest. Specifically, all talk about the rest. Specifically, all talk about the rest. Specifically, all the fun things with how I taught Claude the fun things with how I taught Claude the fun things with how I taught Claude code to use Codex. I talked about this a code to use Codex. I talked about this a code to use Codex. I talked about this a good bit in the other videos, so I'll do good bit in the other videos, so I'll do good bit in the other videos, so I'll do a brief recap before showing the a brief recap before showing the a brief recap before showing the implementation. The TLDR here is that implementation. The TLDR here is that implementation. The TLDR here is that the usage you get for the Codex sub is the usage you get for the Codex sub is the usage you get for the Codex sub is insanely generous. So, things that it insanely generous. So, things that it insanely generous. So, things that it makes sense to use for, you probably makes sense to use for, you probably makes sense to use for, you probably should. One of those things is computer should. One of those things is computer should. One of those things is computer use, which OpenAI just kind of use, which OpenAI just kind of use, which OpenAI just kind of slaughters Anthropic at right now. The slaughters Anthropic at right now. The slaughters Anthropic at right now. The Codex desktop app has a ton of cool Codex desktop app has a ton of cool Codex desktop app has a ton of cool hacks that let it use your Mac in full, hacks that let it use your Mac in full, hacks that let it use your Mac in full, not just like opening up a tab in Chrome not just like opening up a tab in Chrome not just like opening up a tab in Chrome and poorly navigating it. More like and poorly navigating it. More like and poorly navigating it. More like setting up Xcode for you or navigating setting up Xcode for you or navigating setting up Xcode for you or navigating complex applications and pulling data complex applications and pulling data complex applications and pulling data between different things and sending you
-
between different things and sending you between different things and sending you a video when it's done. The computer use a video when it's done. The computer use a video when it's done. The computer use in Codex is insane. So, teaching Claude in Codex is insane. So, teaching Claude in Codex is insane. So, teaching Claude code how to call that is awesome. But, code how to call that is awesome. But, code how to call that is awesome. But, the biggest thing is the tasks that the biggest thing is the tasks that the biggest thing is the tasks that require a lot of token usage. Things require a lot of token usage. Things require a lot of token usage. Things like digging through logs, things like like digging through logs, things like like digging through logs, things like reading giant PDFs and implementation reading giant PDFs and implementation reading giant PDFs and implementation specs, things like doing computer use specs, things like doing computer use specs, things like doing computer use and looking at hundreds of screenshots and looking at hundreds of screenshots and looking at hundreds of screenshots over an hour as it tries to navigate over an hour as it tries to navigate over an hour as it tries to navigate your machine. Teaching Fable how to your machine. Teaching Fable how to your machine. Teaching Fable how to designate those tasks and route to the designate those tasks and route to the designate those tasks and route to the right models didn't take too much time. right models didn't take too much time. right models didn't take too much time. I spent maybe an hour on this. And it I spent maybe an hour on this. And it I spent maybe an hour on this. And it has massively cut my costs. All those has massively cut my costs. All those has massively cut my costs. All those PRs I was showing, as I said, my usage PRs I was showing, as I said, my usage PRs I was showing, as I said, my usage across all the models is like 150-ish across all the models is like 150-ish across all the models is like 150-ish dollars, but that all fit easily in my dollars, but that all fit easily in my dollars, but that all fit easily in my two subs, my Claude code sub and my two subs, my Claude code sub and my two subs, my Claude code sub and my Codex sub. Neither broke 40% usage. In Codex sub. Neither broke 40% usage. In Codex sub. Neither broke 40% usage. In fact, my Codex sub was at like 15% or so fact, my Codex sub was at like 15% or so fact, my Codex sub was at like 15% or so for the whole week. And my Claude code for the whole week. And my Claude code for the whole week. And my Claude code sub, admittedly, reset on like, I think sub, admittedly, reset on like, I think sub, admittedly, reset on like, I think it was Friday evening and we got the it was Friday evening and we got the it was Friday evening and we got the model back on, uh, model back on, uh, model back on, uh, was it Thursday or Wednesday? I think it was it Thursday or Wednesday? I think it was it Thursday or Wednesday? I think it was Wednesday we it back in my reset was was Wednesday we it back in my reset was was Wednesday we it back in my reset was Thursday night and I got to 40% of my Thursday night and I got to 40% of my Thursday night and I got to 40% of my weekly while pushing it my hardest.
-
weekly while pushing it my hardest. weekly while pushing it my hardest. Their usage is totally reasonable as Their usage is totally reasonable as Their usage is totally reasonable as long as you take advantage of these long as you take advantage of these long as you take advantage of these tips. Most of my work was in my global tips. Most of my work was in my global tips. Most of my work was in my global Claude.md. I spent a good bit of time in Claude.md. I spent a good bit of time in Claude.md. I spent a good bit of time in here. I already made some changes here here. I already made some changes here here. I already made some changes here about specific behaviors I want like about specific behaviors I want like about specific behaviors I want like which tech should it use when which tech should it use when which tech should it use when initializing a new app. Honestly, I'm initializing a new app. Honestly, I'm initializing a new app. Honestly, I'm going to change a lot of this to Lake going to change a lot of this to Lake going to change a lot of this to Lake Bed soon. Bed soon. Bed soon. The style of code I like, general The style of code I like, general The style of code I like, general preferences, just like the normal stuff preferences, just like the normal stuff preferences, just like the normal stuff you probably have or at least played you probably have or at least played you probably have or at least played with putting in your Claude.md. I could with putting in your Claude.md. I could with putting in your Claude.md. I could do a very long video about how to do a very long video about how to do a very long video about how to influence your agents to have the same influence your agents to have the same influence your agents to have the same psychosis as you. It's a thing I think a psychosis as you. It's a thing I think a psychosis as you. It's a thing I think a lot about. I haven't went quite as hard lot about. I haven't went quite as hard lot about. I haven't went quite as hard in my global Claude.md on that yet, but in my global Claude.md on that yet, but in my global Claude.md on that yet, but I did go a lot harder in this file last I did go a lot harder in this file last I did go a lot harder in this file last week because again, I wanted to try and week because again, I wanted to try and week because again, I wanted to try and teach it how to use these types of teach it how to use these types of teach it how to use these types of things. things. things. It all starts here. If computer uses It all starts here. If computer uses It all starts here. If computer uses helpful for completing or verifying helpful for completing or verifying helpful for completing or verifying work, shell out to GPT 55 with Codex for work, shell out to GPT 55 with Codex for work, shell out to GPT 55 with Codex for it. Specifically, the words shell out it. Specifically, the words shell out it. Specifically, the words shell out here are important because what I'm here are important because what I'm here are important because what I'm telling the model is that it can call telling the model is that it can call telling the model is that it can call GPT 55 via the shell, via bash because GPT 55 via the shell, via bash because GPT 55 via the shell, via bash because it has the ability to use bash. It's it has the ability to use bash. It's it has the ability to use bash. It's using Claude code. Of course, it does. using Claude code. Of course, it does. using Claude code. Of course, it does. And then I give more hints. I have And then I give more hints. I have And then I give more hints. I have another set of skills that we'll get to another set of skills that we'll get to another set of skills that we'll get to in a bit, but I think reading through in a bit, but I think reading through in a bit, but I think reading through here is the best starting point. I have here is the best starting point. I have here is the best starting point. I have a section in my Claude.md for picking a section in my Claude.md for picking a section in my Claude.md for picking the right models for workflows and the right models for workflows and the right models for workflows and sub-agents. If you're not familiar with sub-agents. If you're not familiar with sub-agents. If you're not familiar with the difference here, sub-agents are the the difference here, sub-agents are the the difference here, sub-agents are the idea that the agent can call a tool to idea that the agent can call a tool to idea that the agent can call a tool to spawn another agent to go do a thing, spawn another agent to go do a thing, spawn another agent to go do a thing, which is useful if you have like five which is useful if you have like five which is useful if you have like five files that you want to have analyzed and files that you want to have analyzed and files that you want to have analyzed and you want five sub-agents to analyze each you want five sub-agents to analyze each you want five sub-agents to analyze each one. Workflows are different. Workflows one. Workflows are different. Workflows one. Workflows are different. Workflows are programmatically defining all of the are programmatically defining all of the are programmatically defining all of the cool things that you need your cool things that you need your cool things that you need your sub-agents to do. So, if maybe you have
-
sub-agents to do. So, if maybe you have sub-agents to do. So, if maybe you have different stages where the stage one is different stages where the stage one is different stages where the stage one is to go through each file and then stage to go through each file and then stage to go through each file and then stage two is if flagged, do another thing with two is if flagged, do another thing with two is if flagged, do another thing with two additional reviewers. Workflows two additional reviewers. Workflows two additional reviewers. Workflows allow that where they allow you to allow that where they allow you to allow that where they allow you to programmatically take the results of a programmatically take the results of a programmatically take the results of a stage and use that to dynamically queue stage and use that to dynamically queue stage and use that to dynamically queue things in a different stage. It's all things in a different stage. It's all things in a different stage. It's all just a big JavaScript file the model just a big JavaScript file the model just a big JavaScript file the model will write and then use that to trigger will write and then use that to trigger will write and then use that to trigger and break down all of the work for these and break down all of the work for these and break down all of the work for these types of big long-running tasks. For types of big long-running tasks. For types of big long-running tasks. For example, it was super helpful when example, it was super helpful when example, it was super helpful when triaging all of the pull requests that I triaging all of the pull requests that I triaging all of the pull requests that I had left open and stale on Lakebed. It had left open and stale on Lakebed. It had left open and stale on Lakebed. It made a workflow to go through all of made a workflow to go through all of made a workflow to go through all of them and categorize them. And once they them and categorize them. And once they them and categorize them. And once they were categorized, they could be thrown were categorized, they could be thrown were categorized, they could be thrown to other stages with other types of sub to other stages with other types of sub to other stages with other types of sub agents to do different types of things. agents to do different types of things. agents to do different types of things. People have tried to build custom flows People have tried to build custom flows People have tried to build custom flows for this in their own tools like for this in their own tools like for this in their own tools like defining, this is what a review sub defining, this is what a review sub defining, this is what a review sub agent is. This is what an adversarial agent is. This is what an adversarial agent is. This is what an adversarial review sub agent is. This is what an review sub agent is. This is what an review sub agent is. This is what an exploratory sub agent is. That was all exploratory sub agent is. That was all exploratory sub agent is. That was all stupid and never made sense. Now it stupid and never made sense. Now it stupid and never made sense. Now it makes even less sense because Fable can makes even less sense because Fable can makes even less sense because Fable can invent those different archetypes invent those different archetypes invent those different archetypes depending on the needs for your specific depending on the needs for your specific depending on the needs for your specific task. Every time I'm trying to get an task. Every time I'm trying to get an task. Every time I'm trying to get an agent to review things, the needs are agent to review things, the needs are agent to review things, the needs are slightly different and the model is now slightly different and the model is now slightly different and the model is now smart enough and understands sub agents smart enough and understands sub agents smart enough and understands sub agents well enough to define that itself. And well enough to define that itself. And well enough to define that itself. And this is where the power of the model this is where the power of the model this is where the power of the model starts to really shine. But at the same starts to really shine. But at the same starts to really shine. But at the same time, it's a awareness of the specific time, it's a awareness of the specific time, it's a awareness of the specific benefits and negatives of given models benefits and negatives of given models benefits and negatives of given models is not quite there. When they trained is not quite there. When they trained is not quite there. When they trained this model, Phi-2 didn't exist and all this model, Phi-2 didn't exist and all this model, Phi-2 didn't exist and all these cool computer use capabilities these cool computer use capabilities these cool computer use capabilities weren't there. Opus 4 also didn't exist weren't there. Opus 4 also didn't exist weren't there. Opus 4 also didn't exist so it's not sure what it is and isn't so it's not sure what it is and isn't so it's not sure what it is and isn't capable of. So I had a good gut feel for capable of. So I had a good gut feel for capable of. So I had a good gut feel for where to put things. I also want to call
-
where to put things. I also want to call where to put things. I also want to call something out because you might have something out because you might have something out because you might have read it on the screen. I say OpenAI is read it on the screen. I say OpenAI is read it on the screen. I say OpenAI is near free for me due to a deal. I near free for me due to a deal. I near free for me due to a deal. I promise you I have no special deal with promise you I have no special deal with promise you I have no special deal with OpenAI at this point in time. This is OpenAI at this point in time. This is OpenAI at this point in time. This is just how Claude interpreted what I told just how Claude interpreted what I told just how Claude interpreted what I told it, which was that there was a current it, which was that there was a current it, which was that there was a current deal on the amount of usage you got in deal on the amount of usage you got in deal on the amount of usage you got in Codex where it was double at the time. Codex where it was double at the time. Codex where it was double at the time. It's no longer double but it's still It's no longer double but it's still It's no longer double but it's still insanely generous. As I said before, insanely generous. As I said before, insanely generous. As I said before, I've been using this heavily and I've I've been using this heavily and I've I've been using this heavily and I've only used 15% of my weekly limit. That's only used 15% of my weekly limit. That's only used 15% of my weekly limit. That's nothing special. I'm using this model nothing special. I'm using this model nothing special. I'm using this model for hours a day every day. It's just for hours a day every day. It's just for hours a day every day. It's just genuinely hard to exhaust your limits on genuinely hard to exhaust your limits on genuinely hard to exhaust your limits on Codex. I think it's like 14 grand or so Codex. I think it's like 14 grand or so Codex. I think it's like 14 grand or so a month of inference you get right now. a month of inference you get right now. a month of inference you get right now. It's insane. And that's also outside of It's insane. And that's also outside of It's insane. And that's also outside of the resets of which I've stacked a ton. the resets of which I've stacked a ton. the resets of which I've stacked a ton. So, while Fable interprets that as a So, while Fable interprets that as a So, while Fable interprets that as a deal, that's the same deal you get to. deal, that's the same deal you get to. deal, that's the same deal you get to. Don't read into that. As such, I ranked Don't read into that. As such, I ranked Don't read into that. As such, I ranked the cost in 5.5 to be relatively good. the cost in 5.5 to be relatively good. the cost in 5.5 to be relatively good. The scores here are the score 1 to 10 on The scores here are the score 1 to 10 on The scores here are the score 1 to 10 on how beneficial is it for this thing. how beneficial is it for this thing. how beneficial is it for this thing. 5.5's cost to me is relatively low 5.5's cost to me is relatively low 5.5's cost to me is relatively low because my usage there is basically because my usage there is basically because my usage there is basically infinite it feels, especially when you infinite it feels, especially when you infinite it feels, especially when you combine that with the resets available.
-
combine that with the resets available. combine that with the resets available. So, I gave this a cost in quotes of So, I gave this a cost in quotes of So, I gave this a cost in quotes of nine. This is me telling Fable, "Yo, by nine. This is me telling Fable, "Yo, by nine. This is me telling Fable, "Yo, by the way, you can basically use 5.5 for the way, you can basically use 5.5 for the way, you can basically use 5.5 for anything. I don't care. This model's anything. I don't care. This model's anything. I don't care. This model's just really efficient." And it does just really efficient." And it does just really efficient." And it does that. I also ranked intelligence and that. I also ranked intelligence and that. I also ranked intelligence and taste. These are the categories I chose taste. These are the categories I chose taste. These are the categories I chose because I care about these things and I because I care about these things and I because I care about these things and I have a lot of problems with GPT models have a lot of problems with GPT models have a lot of problems with GPT models writing code that isn't necessarily the writing code that isn't necessarily the writing code that isn't necessarily the code that I would have wanted in my code code that I would have wanted in my code code that I would have wanted in my code base. They could solve any problem at base. They could solve any problem at base. They could solve any problem at any level of complexity and they can any level of complexity and they can any level of complexity and they can match patterns they are shown very well. match patterns they are shown very well. match patterns they are shown very well. But, 5.5 writes TypeScript like a Python But, 5.5 writes TypeScript like a Python But, 5.5 writes TypeScript like a Python dev and it writes Rust like a super dev and it writes Rust like a super dev and it writes Rust like a super paranoid C++ dev. It's just not the code paranoid C++ dev. It's just not the code paranoid C++ dev. It's just not the code I necessarily want, especially for like I necessarily want, especially for like I necessarily want, especially for like public-facing SDKs and APIs. So, even public-facing SDKs and APIs. So, even public-facing SDKs and APIs. So, even when I was using 5.5 more heavily, I when I was using 5.5 more heavily, I when I was using 5.5 more heavily, I used to have it call Opus in order to used to have it call Opus in order to used to have it call Opus in order to get feedback on APIs and SDKs in order get feedback on APIs and SDKs in order get feedback on APIs and SDKs in order to clean up the code. Now, I've just to clean up the code. Now, I've just to clean up the code. Now, I've just inverted and I let Fable steer inverted and I let Fable steer inverted and I let Fable steer everything and life has been much better everything and life has been much better everything and life has been much better since. So, I call out that GPT 5.5's since. So, I call out that GPT 5.5's since. So, I call out that GPT 5.5's cost and intelligence are both very cost and intelligence are both very cost and intelligence are both very high, but it's taste, not necessarily high, but it's taste, not necessarily high, but it's taste, not necessarily quite as much so. If you're customizing quite as much so. If you're customizing quite as much so. If you're customizing your Claude MD and Agent MD, the biggest your Claude MD and Agent MD, the biggest your Claude MD and Agent MD, the biggest thing you can do in there is effectively thing you can do in there is effectively thing you can do in there is effectively a glossary. The terms you like to use to a glossary. The terms you like to use to a glossary. The terms you like to use to describe things that might be understood describe things that might be understood describe things that might be understood by the model, might not be, just write by the model, might not be, just write by the model, might not be, just write them down and what you mean by it. So, them down and what you mean by it. So, them down and what you mean by it. So, for me, intelligence is how hard of a for me, intelligence is how hard of a for me, intelligence is how hard of a problem the model can handle problem the model can handle problem the model can handle unsupervised and taste is things like unsupervised and taste is things like unsupervised and taste is things like UI/UX, code quality, API design, and UI/UX, code quality, API design, and UI/UX, code quality, API design, and copy. This both helps me explain to the copy. This both helps me explain to the copy. This both helps me explain to the model what I have in mind when I'm model what I have in mind when I'm model what I have in mind when I'm describing tasks and work and the issues
-
describing tasks and work and the issues describing tasks and work and the issues I have with things, but it also helps I have with things, but it also helps I have with things, but it also helps the model understand what I mean further the model understand what I mean further the model understand what I mean further in the document with intelligence and in the document with intelligence and in the document with intelligence and taste and how to apply this information taste and how to apply this information taste and how to apply this information when it decides what models to call for when it decides what models to call for when it decides what models to call for different things. So, as I said, 55 different things. So, as I said, 55 different things. So, as I said, 55 intelligent, no taste. And with Sonnet intelligent, no taste. And with Sonnet intelligent, no taste. And with Sonnet 5, not much cheaper, much less 5, not much cheaper, much less 5, not much cheaper, much less intelligent, slightly more taste. Opus intelligent, slightly more taste. Opus intelligent, slightly more taste. Opus 48, slightly more expensive because 48, slightly more expensive because 48, slightly more expensive because again Sonnet 5 is so token hungry that again Sonnet 5 is so token hungry that again Sonnet 5 is so token hungry that Opus 48's often cheaper. Meaningfully Opus 48's often cheaper. Meaningfully Opus 48's often cheaper. Meaningfully more intelligent but still not quite as more intelligent but still not quite as more intelligent but still not quite as smart as 55, way higher taste. And then smart as 55, way higher taste. And then smart as 55, way higher taste. And then Fable, where the cost sucks, Fable, where the cost sucks, Fable, where the cost sucks, intelligence is best in class and taste intelligence is best in class and taste intelligence is best in class and taste is also best in class. This is genuinely is also best in class. This is genuinely is also best in class. This is genuinely how I feel about these models, by the how I feel about these models, by the how I feel about these models, by the way, so I just told the model how I way, so I just told the model how I way, so I just told the model how I feel. Then I told it how to apply these feel. Then I told it how to apply these feel. Then I told it how to apply these things. These are defaults, not limits. things. These are defaults, not limits. things. These are defaults, not limits. You have standing permission to override You have standing permission to override You have standing permission to override them. If a cheaper model's outputs don't them. If a cheaper model's outputs don't them. If a cheaper model's outputs don't meet the bar, rerun or redo the work meet the bar, rerun or redo the work meet the bar, rerun or redo the work with a smarter model without asking. with a smarter model without asking. with a smarter model without asking. Judge the output, not the price tag. Judge the output, not the price tag. Judge the output, not the price tag. Escalating costs less than shipping Escalating costs less than shipping Escalating costs less than shipping mediocre work. You couldn't tell, I did mediocre work. You couldn't tell, I did mediocre work. You couldn't tell, I did not write anything from here down. not write anything from here down. not write anything from here down. The next point is around cost. It says The next point is around cost. It says The next point is around cost. It says cost is a tiebreaker only when axes cost is a tiebreaker only when axes cost is a tiebreaker only when axes conflict for anything that ships.
-
conflict for anything that ships. conflict for anything that ships. Intelligence is greater than taste is Intelligence is greater than taste is Intelligence is greater than taste is greater than cost. Honestly, again, the greater than cost. Honestly, again, the greater than cost. Honestly, again, the model wrote this. I don't like it. Don't model wrote this. I don't like it. Don't model wrote this. I don't like it. Don't let cost prevent you from using the let cost prevent you from using the let cost prevent you from using the right model for the job. Instead, take right model for the job. Instead, take right model for the job. Instead, take advantage of cheaper options to get more advantage of cheaper options to get more advantage of cheaper options to get more information and try things before moving information and try things before moving information and try things before moving the work to a more expensive option. the work to a more expensive option. the work to a more expensive option. There. That's much better aligned with There. That's much better aligned with There. That's much better aligned with how I feel. Real changes happening on how I feel. Real changes happening on how I feel. Real changes happening on the fly, guys. Isn't that cool? the fly, guys. Isn't that cool? the fly, guys. Isn't that cool? Thanks for giving me incentive to Thanks for giving me incentive to Thanks for giving me incentive to actually read the slop. Next, I can talk actually read the slop. Next, I can talk actually read the slop. Next, I can talk about bulk mechanical work, like clear about bulk mechanical work, like clear about bulk mechanical work, like clear spec implementations, data analysis, spec implementations, data analysis, spec implementations, data analysis, migrations. 55 is effectively free. migrations. 55 is effectively free. migrations. 55 is effectively free. Anything user-facing like UI copy, API Anything user-facing like UI copy, API Anything user-facing like UI copy, API design needs taste greater than seven. design needs taste greater than seven. design needs taste greater than seven. Reviews of plans and implementations, Reviews of plans and implementations, Reviews of plans and implementations, Fable 5 or Opus 48, optionally 55 is an Fable 5 or Opus 48, optionally 55 is an Fable 5 or Opus 48, optionally 55 is an extra independent perspective. A big extra independent perspective. A big extra independent perspective. A big callout here, never use Haiku. Just callout here, never use Haiku. Just callout here, never use Haiku. Just don't at this point. It's not useful for don't at this point. It's not useful for don't at this point. It's not useful for anything real, especially with 55 being anything real, especially with 55 being anything real, especially with 55 being effectively free. I then call out the effectively free. I then call out the effectively free. I then call out the mechanic of 55 only being reachable mechanic of 55 only being reachable mechanic of 55 only being reachable through the Codex CLI. I say use the through the Codex CLI. I say use the through the Codex CLI. I say use the Codex implementation, Codex review, and Codex implementation, Codex review, and Codex implementation, Codex review, and Codex computer use skills for work that Codex computer use skills for work that Codex computer use skills for work that they don't cover. Investigation data they don't cover. Investigation data they don't cover. Investigation data analysis. Run Codex exec {dash} s read analysis. Run Codex exec {dash} s read analysis. Run Codex exec {dash} s read only directly with a self-contained only directly with a self-contained only directly with a self-contained prompt. Instructions again on how to use prompt. Instructions again on how to use prompt. Instructions again on how to use Codex. I give some instructions here on Codex. I give some instructions here on Codex. I give some instructions here on how to use 55 inside of workflows with how to use 55 inside of workflows with how to use 55 inside of workflows with sub-agents because you can't just call sub-agents because you can't just call sub-agents because you can't just call 55 as an option when defining a 55 as an option when defining a 55 as an option when defining a workflow. You have to call the Claude workflow. You have to call the Claude workflow. You have to call the Claude model when using Claude code's model when using Claude code's model when using Claude code's workflows. So, I gave it some workflows. So, I gave it some workflows. So, I gave it some instructions here that I can use Sonnet instructions here that I can use Sonnet instructions here that I can use Sonnet on low in order to spawn 55, get its on low in order to spawn 55, get its on low in order to spawn 55, get its results, and then report those back. It results, and then report those back. It results, and then report those back. It ends up being really cheap. It lets that ends up being really cheap. It lets that ends up being really cheap. It lets that spin up and use 55 for real work and spin up and use 55 for real work and spin up and use 55 for real work and then come back with results. I was
-
then come back with results. I was then come back with results. I was getting annoyed that I couldn't see getting annoyed that I couldn't see getting annoyed that I couldn't see which sub-agents and workflows were which sub-agents and workflows were which sub-agents and workflows were using 55. So, I requested that it put a using 55. So, I requested that it put a using 55. So, I requested that it put a prefix in front so I can more easily see prefix in front so I can more easily see prefix in front so I can more easily see it, and that ended up helping a ton. The it, and that ended up helping a ton. The it, and that ended up helping a ton. The tasks can time out, so I call this out. tasks can time out, so I call this out. tasks can time out, so I call this out. A lot of these are things that got A lot of these are things that got A lot of these are things that got appended as I ran into problems, and I appended as I ran into problems, and I appended as I ran into problems, and I hope you take that lesson here. Most of hope you take that lesson here. Most of hope you take that lesson here. Most of this wasn't me having this epiphany on this wasn't me having this epiphany on this wasn't me having this epiphany on how to get it all right. I spent about how to get it all right. I spent about how to get it all right. I spent about half an hour getting it mostly working, half an hour getting it mostly working, half an hour getting it mostly working, and then as I ran into problems, I would and then as I ran into problems, I would and then as I ran into problems, I would go back to the original thread and tell go back to the original thread and tell go back to the original thread and tell Claude, "Hey, I have this problem. How Claude, "Hey, I have this problem. How Claude, "Hey, I have this problem. How can we prevent this going forward?" And can we prevent this going forward?" And can we prevent this going forward?" And it would suggest changes. I would tell it would suggest changes. I would tell it would suggest changes. I would tell it to cut them in half and then put them it to cut them in half and then put them it to cut them in half and then put them in here. Went pretty well. And with in here. Went pretty well. And with in here. Went pretty well. And with that, let's look at my skills, which you that, let's look at my skills, which you that, let's look at my skills, which you might have noticed here, there are not a might have noticed here, there are not a might have noticed here, there are not a whole lot of skills. I'm normally not a whole lot of skills. I'm normally not a whole lot of skills. I'm normally not a big skills user. In fact, I plan to big skills user. In fact, I plan to big skills user. In fact, I plan to delete these once better models come out delete these once better models come out delete these once better models come out or better yet, Anthropic gets good at or better yet, Anthropic gets good at or better yet, Anthropic gets good at computer use. But for now, having these computer use. But for now, having these computer use. But for now, having these here has been very helpful. I have Codex here has been very helpful. I have Codex here has been very helpful. I have Codex review with a description that says you review with a description that says you review with a description that says you can ask the Codex CLI 55 for an can ask the Codex CLI 55 for an can ask the Codex CLI 55 for an independent code review of uncommitted independent code review of uncommitted independent code review of uncommitted changes, a branch diff, a commit, or a changes, a branch diff, a commit, or a changes, a branch diff, a commit, or a specific implementation. Yada yada this specific implementation. Yada yada this specific implementation. Yada yada this is how you use it for review work. I is how you use it for review work. I is how you use it for review work. I then call out here that Codex is an then call out here that Codex is an then call out here that Codex is an independent reviewer when the user wants independent reviewer when the user wants independent reviewer when the user wants a second pass review or when the change a second pass review or when the change a second pass review or when the change is broad enough that another perspective is broad enough that another perspective is broad enough that another perspective is useful. Yada yada yada I define a is useful. Yada yada yada I define a is useful. Yada yada yada I define a workflow. You identify the review workflow. You identify the review workflow. You identify the review target. You create a temporary artifact target. You create a temporary artifact target. You create a temporary artifact directory for the Codex report, you run directory for the Codex report, you run directory for the Codex report, you run Codex review with a focused review Codex review with a focused review Codex review with a focused review prompt, and then you read Codex's report prompt, and then you read Codex's report prompt, and then you read Codex's report and verify the important claims against and verify the important claims against and verify the important claims against the code before presenting them.
-
the code before presenting them. the code before presenting them. Again, this is meant to be called by a Again, this is meant to be called by a Again, this is meant to be called by a sub-agent that is triggering Codex, and sub-agent that is triggering Codex, and sub-agent that is triggering Codex, and it gets the feedback and then passes it it gets the feedback and then passes it it gets the feedback and then passes it back up to the parent model. The most back up to the parent model. The most back up to the parent model. The most important piece here is the commands, important piece here is the commands, important piece here is the commands, not because the model can't get them not because the model can't get them not because the model can't get them right, but because the one or two times right, but because the one or two times right, but because the one or two times they get it wrong, it's really annoying. they get it wrong, it's really annoying. they get it wrong, it's really annoying. So, you ask the model when that happens, So, you ask the model when that happens, So, you ask the model when that happens, what did you get wrong? What is the what did you get wrong? What is the what did you get wrong? What is the right structure for this? And then once right structure for this? And then once right structure for this? And then once you have that, you can go add it here. you have that, you can go add it here. you have that, you can go add it here. And for me, it has worked pretty damn And for me, it has worked pretty damn And for me, it has worked pretty damn well. There are then some instructions well. There are then some instructions well. There are then some instructions on how to prompt Codex because I've on how to prompt Codex because I've on how to prompt Codex because I've noticed that Claude likes to prompt noticed that Claude likes to prompt noticed that Claude likes to prompt Codex as though it is Claude, which it Codex as though it is Claude, which it Codex as though it is Claude, which it is not. The prompt should be much is not. The prompt should be much is not. The prompt should be much simpler, and this is an example of a simpler, and this is an example of a simpler, and this is an example of a very simple prompt that makes sense very simple prompt that makes sense very simple prompt that makes sense here. I would even argue things like do here. I would even argue things like do here. I would even argue things like do not edit files does not really not edit files does not really not edit files does not really necessarily need to be here because necessarily need to be here because necessarily need to be here because again, it's a Codex model, it's not again, it's a Codex model, it's not again, it's a Codex model, it's not going to do things you don't tell it to, going to do things you don't tell it to, going to do things you don't tell it to, unlike Claude models, which love to do unlike Claude models, which love to do unlike Claude models, which love to do things you don't tell them to. Another things you don't tell them to. Another things you don't tell them to. Another problem I had is that sometimes Codex problem I had is that sometimes Codex problem I had is that sometimes Codex wouldn't find anything, and that would wouldn't find anything, and that would wouldn't find anything, and that would confuse the parent model and it would confuse the parent model and it would confuse the parent model and it would rerun. So, I added a bunch of these rerun. So, I added a bunch of these rerun. So, I added a bunch of these call-outs like if Codex finds nothing, call-outs like if Codex finds nothing, call-outs like if Codex finds nothing, say that clearly and mention what the say that clearly and mention what the say that clearly and mention what the review target is that it inspected. That review target is that it inspected. That review target is that it inspected. That ended up reducing the issues I had a ended up reducing the issues I had a ended up reducing the issues I had a ton. Again, you need to set this up for ton. Again, you need to set this up for ton. Again, you need to set this up for yourself. Don't just blindly copy-paste yourself. Don't just blindly copy-paste yourself. Don't just blindly copy-paste my stuff. There's a reason I'm not my stuff. There's a reason I'm not my stuff. There's a reason I'm not posting the links anywhere. I want you posting the links anywhere. I want you posting the links anywhere. I want you guys to learn from this, maybe guys to learn from this, maybe guys to learn from this, maybe screenshot it and pass it to the model screenshot it and pass it to the model screenshot it and pass it to the model and say, "Hey, I want to set up and say, "Hey, I want to set up and say, "Hey, I want to set up something similar. Can you guide me something similar. Can you guide me something similar. Can you guide me through it?" Do it, learn it, change it, through it?" Do it, learn it, change it, through it?" Do it, learn it, change it, experiment. If you're scared of going in experiment. If you're scared of going in experiment. If you're scared of going in and editing these files, you need to get and editing these files, you need to get and editing these files, you need to get over that. And if I let you guys just over that. And if I let you guys just over that. And if I let you guys just copy-paste my stuff, you'll be afraid of copy-paste my stuff, you'll be afraid of copy-paste my stuff, you'll be afraid of breaking things when you make small breaking things when you make small breaking things when you make small changes. I need to know you won't be changes. I need to know you won't be changes. I need to know you won't be scared of that because this is where the scared of that because this is where the scared of that because this is where the fun comes in. I have a Codex
-
fun comes in. I have a Codex fun comes in. I have a Codex implementation sub-agent that's very implementation sub-agent that's very implementation sub-agent that's very similar for doing bounded work usually similar for doing bounded work usually similar for doing bounded work usually on a work tree in order to set up the on a work tree in order to set up the on a work tree in order to set up the model to go make changes and bring back model to go make changes and bring back model to go make changes and bring back useful results. It's a little more useful results. It's a little more useful results. It's a little more guarded than I would like, but it works guarded than I would like, but it works guarded than I would like, but it works pretty well overall. I haven't had pretty well overall. I haven't had pretty well overall. I haven't had enough issues to care. If I do, I will enough issues to care. If I do, I will enough issues to care. If I do, I will change it, and I will let you guys know change it, and I will let you guys know change it, and I will let you guys know in future videos, but my favorite by far in future videos, but my favorite by far in future videos, but my favorite by far is the computer use one because this is is the computer use one because this is is the computer use one because this is what allows Claude to have Codex's what allows Claude to have Codex's what allows Claude to have Codex's computer use powers without having to computer use powers without having to computer use powers without having to build it into Claude, or more build it into Claude, or more build it into Claude, or more importantly, waste a ton of your money importantly, waste a ton of your money importantly, waste a ton of your money and usage. Remember, the model only sees and usage. Remember, the model only sees and usage. Remember, the model only sees the description of the skill until it the description of the skill until it the description of the skill until it uses it. And once it uses it, it pulls uses it. And once it uses it, it pulls uses it. And once it uses it, it pulls all of the rest of the text in. So, the all of the rest of the text in. So, the all of the rest of the text in. So, the description should have all of the info description should have all of the info description should have all of the info that Claude needs to know whether or not that Claude needs to know whether or not that Claude needs to know whether or not it should call this and get the rest of it should call this and get the rest of it should call this and get the rest of the context. This one's a little wordier the context. This one's a little wordier the context. This one's a little wordier than I would like, but it's been good than I would like, but it's been good than I would like, but it's been good about calling it when it should and not about calling it when it should and not about calling it when it should and not calling it when it shouldn't. It says, calling it when it shouldn't. It says, calling it when it shouldn't. It says, "Ask Codex CLI with GVD 55 to run local "Ask Codex CLI with GVD 55 to run local "Ask Codex CLI with GVD 55 to run local app verification that needs computer app verification that needs computer app verification that needs computer use, browser automation, simulators, use, browser automation, simulators, use, browser automation, simulators, screenshots, app launching, or screenshots, app launching, or screenshots, app launching, or independent runtime infection. This is independent runtime infection. This is independent runtime infection. This is how 55 is invoked for computer use work.
-
how 55 is invoked for computer use work. how 55 is invoked for computer use work. Use when the user asks Claude to have Use when the user asks Claude to have Use when the user asks Claude to have Codex or 55 test a flow, verify user Codex or 55 test a flow, verify user Codex or 55 test a flow, verify user behavior, inspect a running app, capture behavior, inspect a running app, capture behavior, inspect a running app, capture screenshots, or report confirmation and screenshots, or report confirmation and screenshots, or report confirmation and feedback about implemented behavior." I feedback about implemented behavior." I feedback about implemented behavior." I might even change this now from when the might even change this now from when the might even change this now from when the user asks Claude to have Codex or GVD 55 user asks Claude to have Codex or GVD 55 user asks Claude to have Codex or GVD 55 test a flow to just when the user asks test a flow to just when the user asks test a flow to just when the user asks Claude to test a flow to default here Claude to test a flow to default here Claude to test a flow to default here instead. In fact, we're going to do instead. In fact, we're going to do instead. In fact, we're going to do that. Use when the user asks Claude to that. Use when the user asks Claude to that. Use when the user asks Claude to test a flow, verify UI behavior, inspect test a flow, verify UI behavior, inspect test a flow, verify UI behavior, inspect a running app, capture screenshots, or a running app, capture screenshots, or a running app, capture screenshots, or report confirmation and feedback about report confirmation and feedback about report confirmation and feedback about implemented behavior that benefits from implemented behavior that benefits from implemented behavior that benefits from computer use functionality. computer use functionality. computer use functionality. There we go. Again, adapt these as you There we go. Again, adapt these as you There we go. Again, adapt these as you go, think about your experience, and go, think about your experience, and go, think about your experience, and don't be afraid to make changes. It's so don't be afraid to make changes. It's so don't be afraid to make changes. It's so cheap to do, and it can meaningfully cheap to do, and it can meaningfully cheap to do, and it can meaningfully improve your workflow. Once you get in improve your workflow. Once you get in improve your workflow. Once you get in the habit of changing, editing, and the habit of changing, editing, and the habit of changing, editing, and getting these things how you want, getting these things how you want, getting these things how you want, you'll end up much happier overall. you'll end up much happier overall. you'll end up much happier overall. And now is when we start diving into how And now is when we start diving into how And now is when we start diving into how I actually got all of this work done. I actually got all of this work done. I actually got all of this work done. Claude code is admittedly broken in a Claude code is admittedly broken in a Claude code is admittedly broken in a lot of ways, so it won't be the easiest lot of ways, so it won't be the easiest lot of ways, so it won't be the easiest thing to showcase, but I will do my thing to showcase, but I will do my thing to showcase, but I will do my best, and I will break down how I was best, and I will break down how I was best, and I will break down how I was thinking about things and how I took thinking about things and how I took thinking about things and how I took advantage of them as well. I started advantage of them as well. I started advantage of them as well. I started with a really simple prompt, with a really simple prompt, with a really simple prompt, "Investigate and review the open PRs for "Investigate and review the open PRs for "Investigate and review the open PRs for Lakebed right now." This was a simple Lakebed right now." This was a simple Lakebed right now." This was a simple request. I wanted to ask the model to request. I wanted to ask the model to request. I wanted to ask the model to deal with all of the things that I had deal with all of the things that I had deal with all of the things that I had left open. Remember I said I had a bunch left open. Remember I said I had a bunch left open. Remember I said I had a bunch of open? We now have the number. It was of open? We now have the number. It was of open? We now have the number. It was 16 open PRs of somewhat finished, 16 open PRs of somewhat finished, 16 open PRs of somewhat finished, somewhat trumped, somewhat dead work.
-
somewhat trumped, somewhat dead work. somewhat trumped, somewhat dead work. And it the variety of the work there was And it the variety of the work there was And it the variety of the work there was crazy. I called this out accordingly in crazy. I called this out accordingly in crazy. I called this out accordingly in the prompt. I think this is actually a the prompt. I think this is actually a the prompt. I think this is actually a good example of a prompt for this era of good example of a prompt for this era of good example of a prompt for this era of working. Investigate and review the open working. Investigate and review the open working. Investigate and review the open PRs for Lakebed right now. I want a list PRs for Lakebed right now. I want a list PRs for Lakebed right now. I want a list that indicates the following: which are that indicates the following: which are that indicates the following: which are ready to merge, which are mostly good ready to merge, which are mostly good ready to merge, which are mostly good but need a rebase or other small but need a rebase or other small but need a rebase or other small touch-ups, which have been trumped touch-ups, which have been trumped touch-ups, which have been trumped either with better PRs or things that either with better PRs or things that either with better PRs or things that have already merged, and which have good have already merged, and which have good have already merged, and which have good ideas but are better off scrapped and ideas but are better off scrapped and ideas but are better off scrapped and rewritten. Use a workflow to break up rewritten. Use a workflow to break up rewritten. Use a workflow to break up the work in multiple reviewers to help the work in multiple reviewers to help the work in multiple reviewers to help solidify your decisions. And then it ran solidify your decisions. And then it ran solidify your decisions. And then it ran for a while. for a while. for a while. Not too long, but a meaningful amount. Not too long, but a meaningful amount. Not too long, but a meaningful amount. It spawned a workflow. You can see here It spawned a workflow. You can see here It spawned a workflow. You can see here the code that it wrote for said the code that it wrote for said the code that it wrote for said workflow. It ran for a while, and then workflow. It ran for a while, and then workflow. It ran for a while, and then it came back with a list. All 48 agents it came back with a list. All 48 agents it came back with a list. All 48 agents finished. finished. finished. 16 investigators, one per PR. Each 16 investigators, one per PR. Each 16 investigators, one per PR. Each verdict then stress tested by Fable plus verdict then stress tested by Fable plus verdict then stress tested by Fable plus Opus judge panel. 14 of 16 calls were Opus judge panel. 14 of 16 calls were Opus judge panel. 14 of 16 calls were unanimous. I resolved the two contested unanimous. I resolved the two contested unanimous. I resolved the two contested ones below. Here's the triage. First, we ones below. Here's the triage. First, we ones below. Here's the triage. First, we have one PR that was ready to merge, have one PR that was ready to merge, have one PR that was ready to merge, which was the separation of docs. Cuz I which was the separation of docs. Cuz I which was the separation of docs. Cuz I had both both 55 and Opus 48 were kind had both both 55 and Opus 48 were kind had both both 55 and Opus 48 were kind of blurring the line between docs for my of blurring the line between docs for my of blurring the line between docs for my users and docs for the maintainers of users and docs for the maintainers of users and docs for the maintainers of Lakebed. So I did a hard cut, and that Lakebed. So I did a hard cut, and that Lakebed. So I did a hard cut, and that PR was pretty good and easy to merge, so PR was pretty good and easy to merge, so PR was pretty good and easy to merge, so that got merged fast. Then there was a that got merged fast. Then there was a that got merged fast. Then there was a couple others that were mostly good but couple others that were mostly good but couple others that were mostly good but needed some touch-ups. Then there was a needed some touch-ups. Then there was a needed some touch-ups. Then there was a pile of PRs that have been trumped, and pile of PRs that have been trumped, and pile of PRs that have been trumped, and then the good ideas that should be then the good ideas that should be then the good ideas that should be scrapped and rewritten, as well as scrapped and rewritten, as well as scrapped and rewritten, as well as pairing them together for the things pairing them together for the things pairing them together for the things that were similar. It gave a suggested that were similar. It gave a suggested that were similar. It gave a suggested order of operations. Start by merging order of operations. Start by merging order of operations. Start by merging 69, then fix the allow list for 68 and 69, then fix the allow list for 68 and 69, then fix the allow list for 68 and merge, rebase 61 then 48, yada yada.
-
merge, rebase 61 then 48, yada yada. merge, rebase 61 then 48, yada yada. Calls the ones to close out and all of Calls the ones to close out and all of Calls the ones to close out and all of this. I liked how it was thinking. I this. I liked how it was thinking. I this. I liked how it was thinking. I liked the feedback it gave. I actually liked the feedback it gave. I actually liked the feedback it gave. I actually did read all of this cuz I wanted to did read all of this cuz I wanted to did read all of this cuz I wanted to understand what it wanted to do. And understand what it wanted to do. And understand what it wanted to do. And once I was content with what it said, I once I was content with what it said, I once I was content with what it said, I realized, "You know, I have a staging realized, "You know, I have a staging realized, "You know, I have a staging environment set up here. It won't affect environment set up here. It won't affect environment set up here. It won't affect prod if it gets things wrong. prod if it gets things wrong. prod if it gets things wrong. Let's YOLO a little bit. This was a goal Let's YOLO a little bit. This was a goal Let's YOLO a little bit. This was a goal I set. I set. I set. First, I said to close all PRs that have First, I said to close all PRs that have First, I said to close all PRs that have been trumped or otherwise not worth been trumped or otherwise not worth been trumped or otherwise not worth keeping around. Then, help me spec and keeping around. Then, help me spec and keeping around. Then, help me spec and prioritize the work for the other PRs prioritize the work for the other PRs prioritize the work for the other PRs you think you should close. Write up new you think you should close. Write up new you think you should close. Write up new HTML plans for a best path forward HTML plans for a best path forward HTML plans for a best path forward implementation for those features and implementation for those features and implementation for those features and fixes honoring the goal of simplicity fixes honoring the goal of simplicity fixes honoring the goal of simplicity that we strive for in Lakebed. Break up that we strive for in Lakebed. Break up that we strive for in Lakebed. Break up the planning work into sub-agents. the planning work into sub-agents. the planning work into sub-agents. Review the plans with sub-agents as Review the plans with sub-agents as Review the plans with sub-agents as well. A workflow may be helpful. Once well. A workflow may be helpful. Once well. A workflow may be helpful. Once you have plans you're happy with for you have plans you're happy with for you have plans you're happy with for each of those pieces of work, share the each of those pieces of work, share the each of those pieces of work, share the links with me so I can review them. Make links with me so I can review them. Make links with me so I can review them. Make sure the plans you write have links to sure the plans you write have links to sure the plans you write have links to the PRs that they are inspired by. If the PRs that they are inspired by. If the PRs that they are inspired by. If multiple PRs implement the same feature, multiple PRs implement the same feature, multiple PRs implement the same feature, link all of them. Make sure to describe link all of them. Make sure to describe link all of them. Make sure to describe where the existing implementation is and where the existing implementation is and where the existing implementation is and how you feel we should handle the next how you feel we should handle the next how you feel we should handle the next one. I was wrong. This one wasn't to the one. I was wrong. This one wasn't to the one. I was wrong. This one wasn't to the goal. This is the go clean up destroy goal. This is the go clean up destroy goal. This is the go clean up destroy all the dead PRs and then tell me in all the dead PRs and then tell me in all the dead PRs and then tell me in detail what you want to do to the detail what you want to do to the detail what you want to do to the remaining stuff.
-
remaining stuff. remaining stuff. And after a couple more minutes, it had And after a couple more minutes, it had And after a couple more minutes, it had done just that. It gave me links using done just that. It gave me links using done just that. It gave me links using my HTML planning skill for all the my HTML planning skill for all the my HTML planning skill for all the different things it wants to add and how different things it wants to add and how different things it wants to add and how it thinks they should be implemented. it thinks they should be implemented. it thinks they should be implemented. That was actually a really pleasant That was actually a really pleasant That was actually a really pleasant read, which by the way, I did on my read, which by the way, I did on my read, which by the way, I did on my phone. phone. phone. Super convenient. So, I read through Super convenient. So, I read through Super convenient. So, I read through most of these. I looked at the PRs that most of these. I looked at the PRs that most of these. I looked at the PRs that had inspired the changes and had inspired the changes and had inspired the changes and made an executive decision. made an executive decision. made an executive decision. All of them looked pretty damn good. All of them looked pretty damn good. All of them looked pretty damn good. Yeah, five of these remaining pieces Yeah, five of these remaining pieces Yeah, five of these remaining pieces looked really damn good. I did have one looked really damn good. I did have one looked really damn good. I did have one PR that I wanted to possibly merge at PR that I wanted to possibly merge at PR that I wanted to possibly merge at this point. So, I asked it about that this point. So, I asked it about that this point. So, I asked it about that one. It took a look. It said it was one. It took a look. It said it was one. It took a look. It said it was good. So, I merged it. Wait, no. I had good. So, I merged it. Wait, no. I had good. So, I merged it. Wait, no. I had to rebase it. Yeah. I asked it a to rebase it. Yeah. I asked it a to rebase it. Yeah. I asked it a question, which by the way, ask your question, which by the way, ask your question, which by the way, ask your models questions when you're not sure models questions when you're not sure models questions when you're not sure about things. It's a great opportunity about things. It's a great opportunity about things. It's a great opportunity to align yourself and the model and what to align yourself and the model and what to align yourself and the model and what the plan is for something. So, I asked the plan is for something. So, I asked the plan is for something. So, I asked it, "What are the streams of work we it, "What are the streams of work we it, "What are the streams of work we need to complete to address all the PRs need to complete to address all the PRs need to complete to address all the PRs that we've discussed? Is it as simple as that we've discussed? Is it as simple as that we've discussed? Is it as simple as rebase 61, merge 48 and 68, re-implement rebase 61, merge 48 and 68, re-implement rebase 61, merge 48 and 68, re-implement the rest? If I wanted you to implement the rest? If I wanted you to implement the rest? If I wanted you to implement all of the plans you made, would it be all of the plans you made, would it be all of the plans you made, would it be best to do that as a single workflow or best to do that as a single workflow or best to do that as a single workflow or to make multiple work trees and threads to make multiple work trees and threads to make multiple work trees and threads by hand myself?" I expected it here to by hand myself?" I expected it here to by hand myself?" I expected it here to push back and say, "Yeah, you obviously push back and say, "Yeah, you obviously push back and say, "Yeah, you obviously need to break this up into different need to break this up into different need to break this up into different threads." It decided to break this down threads." It decided to break this down threads." It decided to break this down into multiple streams. The first one into multiple streams. The first one into multiple streams. The first one being to land the four open PRs that being to land the four open PRs that being to land the four open PRs that were ready to go, then to implement the were ready to go, then to implement the were ready to go, then to implement the five plans that were left over. So, five plans that were left over. So, five plans that were left over. So, eight-ish PRs total. Also, note that eight-ish PRs total. Also, note that eight-ish PRs total. Also, note that each plan deliberately decomposes into each plan deliberately decomposes into each plan deliberately decomposes into bounded PRs. The third plan, apparently, bounded PRs. The third plan, apparently, bounded PRs. The third plan, apparently, was going to be three separate PRs, dual was going to be three separate PRs, dual was going to be three separate PRs, dual write, read path flip, then the column write, read path flip, then the column write, read path flip, then the column drop, and then yada yada. You get the drop, and then yada yada. You get the drop, and then yada yada. You get the idea. I don't want to bore you with the idea. I don't want to bore you with the idea. I don't want to bore you with the details of that. And then we talked
-
details of that. And then we talked details of that. And then we talked about the workflow to get this all done. about the workflow to get this all done. about the workflow to get this all done. Single workflow versus handmade work Single workflow versus handmade work Single workflow versus handmade work trees. Neither, honestly. And you don't trees. Neither, honestly. And you don't trees. Neither, honestly. And you don't need to make a work tree by hand, need to make a work tree by hand, need to make a work tree by hand, either. A single workflow is the wrong either. A single workflow is the wrong either. A single workflow is the wrong tool for the umbrella. Workflows are tool for the umbrella. Workflows are tool for the umbrella. Workflows are deterministic scripts that shine for fan deterministic scripts that shine for fan deterministic scripts that shine for fan out and verify, but this program is out and verify, but this program is out and verify, but this program is checkpoint driven. Each PR needs CI, checkpoint driven. Each PR needs CI, checkpoint driven. Each PR needs CI, your review, and a merge before the next your review, and a merge before the next your review, and a merge before the next rebase. In midstream, you'll make rebase. In midstream, you'll make rebase. In midstream, you'll make product calls, like the open questions product calls, like the open questions product calls, like the open questions that are below, that a script can't that are below, that a script can't that are below, that a script can't anticipate. One giant workflow would anticipate. One giant workflow would anticipate. One giant workflow would either barrel past those checkpoints or either barrel past those checkpoints or either barrel past those checkpoints or stall at the first one. So, it stall at the first one. So, it stall at the first one. So, it recommended that it orchestrate the recommended that it orchestrate the recommended that it orchestrate the streams from the session that we're streams from the session that we're streams from the session that we're already in, spawn work trees itself to already in, spawn work trees itself to already in, spawn work trees itself to actually do the implementations, and actually do the implementations, and actually do the implementations, and then use workflows only where they're then use workflows only where they're then use workflows only where they're strong, which is for multi-agent review strong, which is for multi-agent review strong, which is for multi-agent review passes one before it merges the PRs. It passes one before it merges the PRs. It passes one before it merges the PRs. It also identified that certain places had also identified that certain places had also identified that certain places had parallelism possible, like a plan two parallelism possible, like a plan two parallelism possible, like a plan two and three could be run in parallel cuz and three could be run in parallel cuz and three could be run in parallel cuz they don't touch each other's stuff as they don't touch each other's stuff as they don't touch each other's stuff as much, and it wouldn't have too many much, and it wouldn't have too many much, and it wouldn't have too many merge conflicts. I then asked it to take merge conflicts. I then asked it to take merge conflicts. I then asked it to take all of this work and write it as a to-do all of this work and write it as a to-do all of this work and write it as a to-do list in the directory, so it would be list in the directory, so it would be list in the directory, so it would be easier to just crank through all of it. easier to just crank through all of it. easier to just crank through all of it. And then we get to the goal, or more And then we get to the goal, or more And then we get to the goal, or more correctly put, the insane world we now correctly put, the insane world we now correctly put, the insane world we now live in.
-
live in. live in. I started a goal, which basically tells I started a goal, which basically tells I started a goal, which basically tells the model, "Keep going until the the model, "Keep going until the the model, "Keep going until the conditions pass." In this case, the conditions pass." In this case, the conditions pass." In this case, the conditions were to complete all of the conditions were to complete all of the conditions were to complete all of the work that we have discussed here. work that we have discussed here. work that we have discussed here. Information to create work trees, Information to create work trees, Information to create work trees, rebase, branch, merge PRs, close PRs, rebase, branch, merge PRs, close PRs, rebase, branch, merge PRs, close PRs, etc. This is me explicitly telling the etc. This is me explicitly telling the etc. This is me explicitly telling the model, "You have my thumbs up. Merge model, "You have my thumbs up. Merge model, "You have my thumbs up. Merge away." This might sound insane, kind of away." This might sound insane, kind of away." This might sound insane, kind of is, but I'll I'll show you why it's not is, but I'll I'll show you why it's not is, but I'll I'll show you why it's not as bad as you think it a little bit. as bad as you think it a little bit. as bad as you think it a little bit. But, if we're all going to go insane But, if we're all going to go insane But, if we're all going to go insane here, and we all very well might, I'm here, and we all very well might, I'm here, and we all very well might, I'm going to do a second outbreak quick. going to do a second outbreak quick. going to do a second outbreak quick. Building out of the react is really Building out of the react is really Building out of the react is really easy. That's why agents are so good at easy. That's why agents are so good at easy. That's why agents are so good at it. It's never been easier to build for it. It's never been easier to build for it. It's never been easier to build for the web, but it's still not that easy to the web, but it's still not that easy to the web, but it's still not that easy to build for mobile. And believe me, I've build for mobile. And believe me, I've build for mobile. And believe me, I've tried everything from Kotlin and Swift tried everything from Kotlin and Swift tried everything from Kotlin and Swift to react native. It seems like AI just to react native. It seems like AI just to react native. It seems like AI just doesn't get it anywhere near as well. doesn't get it anywhere near as well. doesn't get it anywhere near as well. Getting those things right is super Getting those things right is super Getting those things right is super difficult, and having a good code base difficult, and having a good code base difficult, and having a good code base with a good team is essential. That's with a good team is essential. That's with a good team is essential. That's why knowing about Infinite Red is such a why knowing about Infinite Red is such a why knowing about Infinite Red is such a powerful hack right now. They can come powerful hack right now. They can come powerful hack right now. They can come in and modernize your code base if you in and modernize your code base if you in and modernize your code base if you already have a mobile app. They can help already have a mobile app. They can help already have a mobile app. They can help start from scratch. They can onboard start from scratch. They can onboard start from scratch. They can onboard your team to do these things correctly, your team to do these things correctly, your team to do these things correctly, but in the end, what they're here to do but in the end, what they're here to do but in the end, what they're here to do is set you up to get your mobile app is set you up to get your mobile app is set you up to get your mobile app right. They obviously lean heavily into right. They obviously lean heavily into right. They obviously lean heavily into Expo and React Native, but if you want Expo and React Native, but if you want Expo and React Native, but if you want to build on Swift and Kotlin, they can to build on Swift and Kotlin, they can to build on Swift and Kotlin, they can help with that, too. They can even build help with that, too. They can even build help with that, too. They can even build the native bindings you need to get the native bindings you need to get the native bindings you need to get those parts right. In a world where those parts right. In a world where those parts right. In a world where GPT-55 can invent a cloud from scratch GPT-55 can invent a cloud from scratch GPT-55 can invent a cloud from scratch in a few minutes, but can't lay out a UI in a few minutes, but can't lay out a UI in a few minutes, but can't lay out a UI correctly on Xcode. Yes, I'm speaking correctly on Xcode. Yes, I'm speaking correctly on Xcode. Yes, I'm speaking from experience. It's actually insane from experience. It's actually insane from experience. It's actually insane how bad 55 is at mobile without having how bad 55 is at mobile without having how bad 55 is at mobile without having the right guidance, at least, which is the right guidance, at least, which is the right guidance, at least, which is what Infinite Red is here to provide.
-
what Infinite Red is here to provide. what Infinite Red is here to provide. We'll get your team set up with a good We'll get your team set up with a good We'll get your team set up with a good working code base, and more importantly, working code base, and more importantly, working code base, and more importantly, a good working understanding of how to a good working understanding of how to a good working understanding of how to work in that code base, and then you can work in that code base, and then you can work in that code base, and then you can do the same with your agents. That's why do the same with your agents. That's why do the same with your agents. That's why everyone from Zoom and Microsoft to everyone from Zoom and Microsoft to everyone from Zoom and Microsoft to Domino's and Starbucks has worked with Domino's and Starbucks has worked with Domino's and Starbucks has worked with Infinite Red to polish up their mobile Infinite Red to polish up their mobile Infinite Red to polish up their mobile apps and get their teams ready to build apps and get their teams ready to build apps and get their teams ready to build better on React Native. So, if you're better on React Native. So, if you're better on React Native. So, if you're curious about React Native, or you're curious about React Native, or you're curious about React Native, or you're trying to fix an old broken app, or you trying to fix an old broken app, or you trying to fix an old broken app, or you want to get things right from the start, want to get things right from the start, want to get things right from the start, hit them up at soiddev.link/infinitered. hit them up at soiddev.link/infinitered. hit them up at soiddev.link/infinitered. Okay, as I was saying, create the goal Okay, as I was saying, create the goal Okay, as I was saying, create the goal to complete rebase, branch, merge, work to complete rebase, branch, merge, work to complete rebase, branch, merge, work tree, all of the things it has to do to tree, all of the things it has to do to tree, all of the things it has to do to deal with this insane amount of work I deal with this insane amount of work I deal with this insane amount of work I put in front of it. This is like a month put in front of it. This is like a month put in front of it. This is like a month of work in a to-do.md now, by the way. I of work in a to-do.md now, by the way. I of work in a to-do.md now, by the way. I tell it to go through all of the work tell it to go through all of the work tell it to go through all of the work step by step and mark each to-do in step by step and mark each to-do in step by step and mark each to-do in to-do.md done when completed. To-do.md to-do.md done when completed. To-do.md to-do.md done when completed. To-do.md changes should be committed and merged changes should be committed and merged changes should be committed and merged as you go. Use the tools available to as you go. Use the tools available to as you go. Use the tools available to you to break this work up logically, you to break this work up logically, you to break this work up logically, review it thoroughly, and merge with review it thoroughly, and merge with review it thoroughly, and merge with confidence. Do not merge code until my confidence. Do not merge code until my confidence. Do not merge code until my automated code reviewers have approved automated code reviewers have approved automated code reviewers have approved it. In this case, BugBot, Microscope, it. In this case, BugBot, Microscope, it. In this case, BugBot, Microscope, and Code Rabbit because it's what I have and Code Rabbit because it's what I have and Code Rabbit because it's what I have set up in this org. set up in this org. set up in this org. Goal set, goal acknowledged, and then it Goal set, goal acknowledged, and then it Goal set, goal acknowledged, and then it ran ran ran for 5 hours. And every time I checked for 5 hours. And every time I checked for 5 hours. And every time I checked GitHub on my phone, more code had GitHub on my phone, more code had GitHub on my phone, more code had landed. And that's how we got here with landed. And that's how we got here with landed. And that's how we got here with this giant pile of work this giant pile of work this giant pile of work that actually landed. My whole month that actually landed. My whole month that actually landed. My whole month road map that I'd been running around in road map that I'd been running around in road map that I'd been running around in circles not shipping, just thinking too circles not shipping, just thinking too circles not shipping, just thinking too much about, now is in lakebed. It did much about, now is in lakebed. It did much about, now is in lakebed. It did the thing. This might sound insane, like the thing. This might sound insane, like the thing. This might sound insane, like merging straight to main when the agent merging straight to main when the agent merging straight to main when the agent thinks it's good enough, but when you thinks it's good enough, but when you thinks it's good enough, but when you see all of the comments and all of the see all of the comments and all of the see all of the comments and all of the pushback it got to clean up the pushback it got to clean up the pushback it got to clean up the implementations and keep them simple
-
implementations and keep them simple implementations and keep them simple before merging, and you combine that before merging, and you combine that before merging, and you combine that with the most important fact, which is with the most important fact, which is with the most important fact, which is that production deployments are still a that production deployments are still a that production deployments are still a human in the loop. This is just the human in the loop. This is just the human in the loop. This is just the staging deployments that happen when you staging deployments that happen when you staging deployments that happen when you merge to main. So, the model cannot ship merge to main. So, the model cannot ship merge to main. So, the model cannot ship or touch prod. The model can use staging or touch prod. The model can use staging or touch prod. The model can use staging for basically whatever it wants. I for basically whatever it wants. I for basically whatever it wants. I haven't done a prod deploy in a bit haven't done a prod deploy in a bit haven't done a prod deploy in a bit because also there were some things because also there were some things because also there were some things broken in my staging environment because broken in my staging environment because broken in my staging environment because of other models merging things they of other models merging things they of other models merging things they shouldn't have, and I had Fable clean shouldn't have, and I had Fable clean shouldn't have, and I had Fable clean all of that up before even doing this all of that up before even doing this all of that up before even doing this work. So, I started by having Fable get work. So, I started by having Fable get work. So, I started by having Fable get staging to a place I liked enough that I staging to a place I liked enough that I staging to a place I liked enough that I would be happy merging main and shipping would be happy merging main and shipping would be happy merging main and shipping it to prod. But, instead of just rushing it to prod. But, instead of just rushing it to prod. But, instead of just rushing there, I decided to clean up everything there, I decided to clean up everything there, I decided to clean up everything else. And it did it. It just went and else. And it did it. It just went and else. And it did it. It just went and went and went until everything was done. went and went until everything was done. went and went until everything was done. And then I had it on main, I had it in And then I had it on main, I had it in And then I had it on main, I had it in staging, and I went and personally staging, and I went and personally staging, and I went and personally stress tested it, and also spun up other stress tested it, and also spun up other stress tested it, and also spun up other agents to go try out all the new agents to go try out all the new agents to go try out all the new features, and also try out all the old features, and also try out all the old features, and also try out all the old features. Maybe try some apps that were features. Maybe try some apps that were features. Maybe try some apps that were built the old way and see how they port built the old way and see how they port built the old way and see how they port over to the new way. And then I had over to the new way. And then I had over to the new way. And then I had other agents look over all the changes other agents look over all the changes other agents look over all the changes between prod and main because a lot had between prod and main because a lot had between prod and main because a lot had changed on this branch since, and see changed on this branch since, and see changed on this branch since, and see what things needed to be de-risked, and what things needed to be de-risked, and what things needed to be de-risked, and then spin up more tests to go check then spin up more tests to go check then spin up more tests to go check those things. And there was basically those things. And there was basically those things. And there was basically nothing that needed to be fixed. I'm nothing that needed to be fixed. I'm nothing that needed to be fixed. I'm still kind of blown away. I burned way still kind of blown away. I burned way still kind of blown away. I burned way more tokens trying to verify the work more tokens trying to verify the work more tokens trying to verify the work that Fable did here than that burned that Fable did here than that burned that Fable did here than that burned getting Fable to do the work here. And getting Fable to do the work here. And getting Fable to do the work here. And it was all good. There was nothing to it was all good. There was nothing to it was all good. There was nothing to change. Which means again, I'm not change. Which means again, I'm not change. Which means again, I'm not pushing it hard enough. And I'm still pushing it hard enough. And I'm still pushing it hard enough. And I'm still looking for more ways to do that.
-
looking for more ways to do that. looking for more ways to do that. Believe me, there will be plenty as I Believe me, there will be plenty as I Believe me, there will be plenty as I go. But god damn, Blake bit is now a go. But god damn, Blake bit is now a go. But god damn, Blake bit is now a month ahead of schedule when it had month ahead of schedule when it had month ahead of schedule when it had fallen admittedly a month behind. I was fallen admittedly a month behind. I was fallen admittedly a month behind. I was really hyped. And this workflow was just really hyped. And this workflow was just really hyped. And this workflow was just so cool to watch as it went. Like so cool to watch as it went. Like so cool to watch as it went. Like truly unbelievable. I wanted to keep truly unbelievable. I wanted to keep truly unbelievable. I wanted to keep working. working. working. But this one was running on my main But this one was running on my main But this one was running on my main laptop cuz I didn't think I would get laptop cuz I didn't think I would get laptop cuz I didn't think I would get this far. If I did, I would have done it this far. If I did, I would have done it this far. If I did, I would have done it on a different computer. But I was just on a different computer. But I was just on a different computer. But I was just playing around with the new Claude code playing around with the new Claude code playing around with the new Claude code and the new model and got way further and the new model and got way further and the new model and got way further than expected. But I wanted to do other than expected. But I wanted to do other than expected. But I wanted to do other work on other projects. So that's when I work on other projects. So that's when I work on other projects. So that's when I started connecting to my Mac mini, to my started connecting to my Mac mini, to my started connecting to my Mac mini, to my other Linux boxes, and to the other other Linux boxes, and to the other other Linux boxes, and to the other machines I have. Check out my Linux machines I have. Check out my Linux machines I have. Check out my Linux video if you haven't. It covers a lot of video if you haven't. It covers a lot of video if you haven't. It covers a lot of this stuff. And I started setting up this stuff. And I started setting up this stuff. And I started setting up Claude on those. And as usual, I got Claude on those. And as usual, I got Claude on those. And as usual, I got really frustrated trying to use Claude really frustrated trying to use Claude really frustrated trying to use Claude over SSH because all of these nice over SSH because all of these nice over SSH because all of these nice things I rely on like image pasting, things I rely on like image pasting, things I rely on like image pasting, decent select behaviors, scroll that decent select behaviors, scroll that decent select behaviors, scroll that works, just weren't really viable. works, just weren't really viable. works, just weren't really viable. And I did what I always do. I went back And I did what I always do. I went back And I did what I always do. I went back to T3 Code. And god damn has T3 Code to T3 Code. And god damn has T3 Code to T3 Code. And god damn has T3 Code helped me maximize my utilization of helped me maximize my utilization of helped me maximize my utilization of this model a ton. The cool thing with T3 this model a ton. The cool thing with T3 this model a ton. The cool thing with T3 Code is that you don't have to use it on Code is that you don't have to use it on Code is that you don't have to use it on the same machine that's running your the same machine that's running your the same machine that's running your agents. It's very easy to set up agents. It's very easy to set up agents. It's very easy to set up something like Tailscale and connect to something like Tailscale and connect to something like Tailscale and connect to your other computer on the T3 Code your other computer on the T3 Code your other computer on the T3 Code website or on the T3 Code app on your website or on the T3 Code app on your website or on the T3 Code app on your computer. Or if you're a little bold and computer. Or if you're a little bold and computer. Or if you're a little bold and you're down to try and build it you're down to try and build it you're down to try and build it yourself, the T3 Code mobile app, which yourself, the T3 Code mobile app, which yourself, the T3 Code mobile app, which is also open source, which by the way, is also open source, which by the way, is also open source, which by the way, all this open source, we have no way to all this open source, we have no way to all this open source, we have no way to charge for it. Yeah, we don't make charge for it. Yeah, we don't make charge for it. Yeah, we don't make money. I've probably spent over 250 money. I've probably spent over 250 money. I've probably spent over 250 grand both in tokens and salaries for grand both in tokens and salaries for grand both in tokens and salaries for the people working on T3 Code. This is a the people working on T3 Code. This is a the people working on T3 Code. This is a gift. Enjoy it before I have to start
-
gift. Enjoy it before I have to start gift. Enjoy it before I have to start charging. That all said, the T3 Code charging. That all said, the T3 Code charging. That all said, the T3 Code mobile app is in the repo and you can mobile app is in the repo and you can mobile app is in the repo and you can build it yourself for your phone. And build it yourself for your phone. And build it yourself for your phone. And it's really god damn cool. I had no idea it's really god damn cool. I had no idea it's really god damn cool. I had no idea how much I was underrating it because I how much I was underrating it because I how much I was underrating it because I tried the first version when Julius was tried the first version when Julius was tried the first version when Julius was like 3 days in. He's been grinding on it like 3 days in. He's been grinding on it like 3 days in. He's been grinding on it for a month and it has gotten absurdly for a month and it has gotten absurdly for a month and it has gotten absurdly good. So I set that up on my phone, good. So I set that up on my phone, good. So I set that up on my phone, connected to Tailscale, connected to my connected to Tailscale, connected to my connected to Tailscale, connected to my computers, instantly blown away. computers, instantly blown away. computers, instantly blown away. I was so blown away that we started I was so blown away that we started I was so blown away that we started working on T3 Connect, which is a working on T3 Connect, which is a working on T3 Connect, which is a service we'll hopefully ship in the near service we'll hopefully ship in the near service we'll hopefully ship in the near future that lets you not need to set up future that lets you not need to set up future that lets you not need to set up Tailscale to get all these benefits. Tailscale to get all these benefits. Tailscale to get all these benefits. You're a nerd, though, you can set up You're a nerd, though, you can set up You're a nerd, though, you can set up Tailscale, just do that. It's totally Tailscale, just do that. It's totally Tailscale, just do that. It's totally fine. Don't pay us money or wait for us fine. Don't pay us money or wait for us fine. Don't pay us money or wait for us when you could just have it yourself. when you could just have it yourself. when you could just have it yourself. The reason I bring all of this up is The reason I bring all of this up is The reason I bring all of this up is because it made paralyzing my work because it made paralyzing my work because it made paralyzing my work trivial. Every time I had an idea for a trivial. Every time I had an idea for a trivial. Every time I had an idea for a thing, or even when I was just on my thing, or even when I was just on my thing, or even when I was just on my phone and running into problems, I would phone and running into problems, I would phone and running into problems, I would just spin up a workflow for it, or spin just spin up a workflow for it, or spin just spin up a workflow for it, or spin up a work tree, or just get something up a work tree, or just get something up a work tree, or just get something done. When I was working from my phone, done. When I was working from my phone, done. When I was working from my phone, I kept noticing small bugs, so I kept I kept noticing small bugs, so I kept I kept noticing small bugs, so I kept spinning up new work trees to fix the spinning up new work trees to fix the spinning up new work trees to fix the bugs. Like I wanted to have the repo for bugs. Like I wanted to have the repo for bugs. Like I wanted to have the repo for T3 Code with a favicon at the root T3 Code with a favicon at the root T3 Code with a favicon at the root level, because then it would have the level, because then it would have the level, because then it would have the little icon in the corner here like little icon in the corner here like little icon in the corner here like other projects do, as you see with T3 other projects do, as you see with T3 other projects do, as you see with T3 Chat, Lakebed, and other things that we Chat, Lakebed, and other things that we Chat, Lakebed, and other things that we have a easily findable favicon in. T3 have a easily findable favicon in. T3 have a easily findable favicon in. T3 Code's a little too hard to find, so I Code's a little too hard to find, so I Code's a little too hard to find, so I bumped it up higher so T3 Code would see bumped it up higher so T3 Code would see bumped it up higher so T3 Code would see it. I then asked it to commit and make a it. I then asked it to commit and make a it. I then asked it to commit and make a PR following the repo guidelines, and it PR following the repo guidelines, and it PR following the repo guidelines, and it did.
-
did. did. And it looks like it had a transient And it looks like it had a transient And it looks like it had a transient failure, because testing is hard and the failure, because testing is hard and the failure, because testing is hard and the cursor adapter is not as reliable as we cursor adapter is not as reliable as we cursor adapter is not as reliable as we want it to be. Cool. You know what this want it to be. Cool. You know what this want it to be. Cool. You know what this is? This is an opportunity to show you is? This is an opportunity to show you is? This is an opportunity to show you guys how I work. Here's what I do. guys how I work. Here's what I do. guys how I work. Here's what I do. First, I take a screenshot of the First, I take a screenshot of the First, I take a screenshot of the problem. Then I go to something like T3 problem. Then I go to something like T3 problem. Then I go to something like T3 Code. I open this, and I can pick which Code. I open this, and I can pick which Code. I open this, and I can pick which machine and which T3 Code directory to machine and which T3 Code directory to machine and which T3 Code directory to use, because this is a repo I have in a use, because this is a repo I have in a use, because this is a repo I have in a lot of different places. I have it on lot of different places. I have it on lot of different places. I have it on four different machines, and one of them four different machines, and one of them four different machines, and one of them has it in three different places. I'm has it in three different places. I'm has it in three different places. I'm just going to do this in the standard T3 just going to do this in the standard T3 just going to do this in the standard T3 Code repo on this project. I'm going to Code repo on this project. I'm going to Code repo on this project. I'm going to pick whichever of my favorite models, in pick whichever of my favorite models, in pick whichever of my favorite models, in this case I'm just going to ask Fable to this case I'm just going to ask Fable to this case I'm just going to ask Fable to do it. I'm going to paste the image, I'm do it. I'm going to paste the image, I'm do it. I'm going to paste the image, I'm going to say, "Figure out why this test going to say, "Figure out why this test going to say, "Figure out why this test fails randomly. It just failed for no fails randomly. It just failed for no fails randomly. It just failed for no reason on PR number 3683." reason on PR number 3683." reason on PR number 3683." And then a link to the bad run. It is on And then a link to the bad run. It is on And then a link to the bad run. It is on a work tree, so that won't affect other a work tree, so that won't affect other a work tree, so that won't affect other work. It has now been spawned, and now work. It has now been spawned, and now work. It has now been spawned, and now I'm not as worried clicking the rerun I'm not as worried clicking the rerun I'm not as worried clicking the rerun job button. And hopefully in just a job button. And hopefully in just a job button. And hopefully in just a moment, this PR will pass. And as you've moment, this PR will pass. And as you've moment, this PR will pass. And as you've probably noticed, the slowest part of probably noticed, the slowest part of probably noticed, the slowest part of this workflow by far is waiting for this workflow by far is waiting for this workflow by far is waiting for GitHub load times. I cannot believe how GitHub load times. I cannot believe how GitHub load times. I cannot believe how bad of a state GitHub is in. I would bad of a state GitHub is in. I would bad of a state GitHub is in. I would gladly pay 100 bucks a month for gladly pay 100 bucks a month for gladly pay 100 bucks a month for something just like GitHub with all the something just like GitHub with all the something just like GitHub with all the core features we need that is way core features we need that is way core features we need that is way faster. Ideally, I would just pay to faster. Ideally, I would just pay to faster. Ideally, I would just pay to GitHub and they would make their GitHub and they would make their GitHub and they would make their suck less, but that's never going to suck less, but that's never going to suck less, but that's never going to happen at this point. You get the idea happen at this point. You get the idea happen at this point. You get the idea though. And now I have this work going, though. And now I have this work going, though. And now I have this work going, and while that's going, I can go see the and while that's going, I can go see the and while that's going, I can go see the status of other work I'm doing, like my status of other work I'm doing, like my status of other work I'm doing, like my attempts to improve the connection attempts to improve the connection attempts to improve the connection experience when you're using SSH into a experience when you're using SSH into a experience when you're using SSH into a box and setting up T3 code on it so
-
box and setting up T3 code on it so box and setting up T3 code on it so another machine can control it. I want another machine can control it. I want another machine can control it. I want that to be buttery smooth, and I'm that to be buttery smooth, and I'm that to be buttery smooth, and I'm really hoping we can get it there soon. really hoping we can get it there soon. really hoping we can get it there soon. For now, just ask your agent, it'll For now, just ask your agent, it'll For now, just ask your agent, it'll figure it out, but I want it to be one figure it out, but I want it to be one figure it out, but I want it to be one command. I then was working on a new command. I then was working on a new command. I then was working on a new machine I just set up, and I wanted to machine I just set up, and I wanted to machine I just set up, and I wanted to see if I could get T3 code and the see if I could get T3 code and the see if I could get T3 code and the mobile app working properly so I could mobile app working properly so I could mobile app working properly so I could not have to rely on this laptop as much not have to rely on this laptop as much not have to rely on this laptop as much for all of my iOS work. And it got for all of my iOS work. And it got for all of my iOS work. And it got pretty far. Had some computer use pretty far. Had some computer use pretty far. Had some computer use issues, I'm going to fix that after I issues, I'm going to fix that after I issues, I'm going to fix that after I finish recording. This one was actually finish recording. This one was actually finish recording. This one was actually really fun though. This is an experiment really fun though. This is an experiment really fun though. This is an experiment I was trying. I had all of these work I was trying. I had all of these work I was trying. I had all of these work trees I spawned on my phone, and most of trees I spawned on my phone, and most of trees I spawned on my phone, and most of them were further along than expected them were further along than expected them were further along than expected and relatively simple changes. And and relatively simple changes. And and relatively simple changes. And rather than make Julius deal with like rather than make Julius deal with like rather than make Julius deal with like five different PR's, I decided instead five different PR's, I decided instead five different PR's, I decided instead to just ask Fable to combine them to just ask Fable to combine them to just ask Fable to combine them because some of them had overlap, some because some of them had overlap, some because some of them had overlap, some of them would have conflicted. I didn't of them would have conflicted. I didn't of them would have conflicted. I didn't want to deal with it. So I made an want to deal with it. So I made an want to deal with it. So I made an executive decision. I asked, "Can you executive decision. I asked, "Can you executive decision. I asked, "Can you access all these work trees on my access all these work trees on my access all these work trees on my machine? I'd love to pull the changes machine? I'd love to pull the changes machine? I'd love to pull the changes from all of them into one branch with from all of them into one branch with from all of them into one branch with conflicts handled so I can test them all conflicts handled so I can test them all conflicts handled so I can test them all at once." 5 minutes later, it did. And at once." 5 minutes later, it did. And at once." 5 minutes later, it did. And now I have this branch I can pull down now I have this branch I can pull down now I have this branch I can pull down on my laptop in order to test all the on my laptop in order to test all the on my laptop in order to test all the changes. It's great. It handled the changes. It's great. It handled the changes. It's great. It handled the conflicts that existed because of conflicts that existed because of conflicts that existed because of multiple things that touched on each multiple things that touched on each multiple things that touched on each other's stuff.
-
other's stuff. other's stuff. And now I have all of this in one place And now I have all of this in one place And now I have all of this in one place where I can file a single PR and easily where I can file a single PR and easily where I can file a single PR and easily document everything that changed. I document everything that changed. I document everything that changed. I could even pull this onto a different could even pull this onto a different could even pull this onto a different computer like a Mac and have it go computer like a Mac and have it go computer like a Mac and have it go verify all of the changes too. I do want verify all of the changes too. I do want verify all of the changes too. I do want to be really clear about something. I to be really clear about something. I to be really clear about something. I don't expect the majority of the code I don't expect the majority of the code I don't expect the majority of the code I spawn this way to be ever used or spawn this way to be ever used or spawn this way to be ever used or merged. Part of this is just seeing how merged. Part of this is just seeing how merged. Part of this is just seeing how complex the problem is. Like if I ask complex the problem is. Like if I ask complex the problem is. Like if I ask the model to go solve this problem and the model to go solve this problem and the model to go solve this problem and it takes under 3 minutes, it was it takes under 3 minutes, it was it takes under 3 minutes, it was probably a simple fix and I won't feel probably a simple fix and I won't feel probably a simple fix and I won't feel bad filing that PR and telling Julius to bad filing that PR and telling Julius to bad filing that PR and telling Julius to get it merged. If it takes 15 minutes, get it merged. If it takes 15 minutes, get it merged. If it takes 15 minutes, that's a little scary and I might want that's a little scary and I might want that's a little scary and I might want to pay more attention. If it takes an to pay more attention. If it takes an to pay more attention. If it takes an hour or more, oh, something's wrong with hour or more, oh, something's wrong with hour or more, oh, something's wrong with our architecture. We need to go deeper our architecture. We need to go deeper our architecture. We need to go deeper and figure out what's up. The amount of and figure out what's up. The amount of and figure out what's up. The amount of time it takes and the amount of changes time it takes and the amount of changes time it takes and the amount of changes it has to make in order to make any of it has to make in order to make any of it has to make in order to make any of these things happen is a really good these things happen is a really good these things happen is a really good indicator for where the good and bad indicator for where the good and bad indicator for where the good and bad parts of your code base are. And for a parts of your code base are. And for a parts of your code base are. And for a lot of these, the changes were so lot of these, the changes were so lot of these, the changes were so simple, it's like an easy merge. Like simple, it's like an easy merge. Like simple, it's like an easy merge. Like obviously you want to go put that up and obviously you want to go put that up and obviously you want to go put that up and do it. But for some of them, it took do it. But for some of them, it took do it. But for some of them, it took long enough that I'm a little bit long enough that I'm a little bit long enough that I'm a little bit concerned. For example, with the mobile concerned. For example, with the mobile concerned. For example, with the mobile thread scroll jumping stuff, this one it thread scroll jumping stuff, this one it thread scroll jumping stuff, this one it took a while on it. It took over an hour took a while on it. It took over an hour took a while on it. It took over an hour and a half. That scares me. I'm not and a half. That scares me. I'm not and a half. That scares me. I'm not going to blindly merge this code. I'm going to blindly merge this code. I'm going to blindly merge this code. I'm going to go put a lot more time in here.
-
going to go put a lot more time in here. going to go put a lot more time in here. Especially compared to the issue that Especially compared to the issue that Especially compared to the issue that annoyed me more, which was sliding back annoyed me more, which was sliding back annoyed me more, which was sliding back not behaving properly, which it fixed in not behaving properly, which it fixed in not behaving properly, which it fixed in 2 minutes and 20 seconds. It was so 2 minutes and 20 seconds. It was so 2 minutes and 20 seconds. It was so simple it concerned me cuz it talked simple it concerned me cuz it talked simple it concerned me cuz it talked about a drawer behavior. We didn't have about a drawer behavior. We didn't have about a drawer behavior. We didn't have a drawer. I think we might have in the a drawer. I think we might have in the a drawer. I think we might have in the past though, so I just asked, do we even past though, so I just asked, do we even past though, so I just asked, do we even have a drawer anymore? Apparently we do, have a drawer anymore? Apparently we do, have a drawer anymore? Apparently we do, but the edge swipe gesture is the only but the edge swipe gesture is the only but the edge swipe gesture is the only entry point. No, we don't then. But now entry point. No, we don't then. But now entry point. No, we don't then. But now I know like it was kind of wrong about I know like it was kind of wrong about I know like it was kind of wrong about that, so I have to put a little more that, so I have to put a little more that, so I have to put a little more time in. You get the idea. You got to time in. You get the idea. You got to time in. You get the idea. You got to think with your brain a bit, not just think with your brain a bit, not just think with your brain a bit, not just like reading the code thinking, but like reading the code thinking, but like reading the code thinking, but thinking about the architecture, thinking about the architecture, thinking about the architecture, thinking about the request, thinking thinking about the request, thinking thinking about the request, thinking about how fast or slow it was, how many about how fast or slow it was, how many about how fast or slow it was, how many things it touched, and then make a good things it touched, and then make a good things it touched, and then make a good decision accordingly. And if you don't decision accordingly. And if you don't decision accordingly. And if you don't know, just ask. You'll be amazed how know, just ask. You'll be amazed how know, just ask. You'll be amazed how useful the models are when you ask them useful the models are when you ask them useful the models are when you ask them questions about things. It's almost like questions about things. It's almost like questions about things. It's almost like that's what they were originally built that's what they were originally built that's what they were originally built for or something. Crazy. for or something. Crazy. for or something. Crazy. Hopefully this has been a good overview Hopefully this has been a good overview Hopefully this has been a good overview of how I have been working with Fable. of how I have been working with Fable. of how I have been working with Fable. As you can see, the sheer volume of work As you can see, the sheer volume of work As you can see, the sheer volume of work I'm doing in all of my projects has I'm doing in all of my projects has I'm doing in all of my projects has massively ramped up. I am more ambitious massively ramped up. I am more ambitious massively ramped up. I am more ambitious than ever. I'm having more fun than than ever. I'm having more fun than than ever. I'm having more fun than ever, and I'm pushing myself harder than ever, and I'm pushing myself harder than ever, and I'm pushing myself harder than ever. I do have one last pro tip for ever. I do have one last pro tip for ever. I do have one last pro tip for you, though.
-
you, though. you, though. Vibe proxy. If you're scared of hitting Vibe proxy. If you're scared of hitting Vibe proxy. If you're scared of hitting your limits, this might be worth setting your limits, this might be worth setting your limits, this might be worth setting up. It will auto split your traffic up. It will auto split your traffic up. It will auto split your traffic across multiple different accounts. I across multiple different accounts. I across multiple different accounts. I had heard about this before, and I had heard about this before, and I had heard about this before, and I thought it would be a little sketchier thought it would be a little sketchier thought it would be a little sketchier or harder to set up. It really wasn't or harder to set up. It really wasn't or harder to set up. It really wasn't too bad. It is using the API key version too bad. It is using the API key version too bad. It is using the API key version of Claude code, so you do lose like the of Claude code, so you do lose like the of Claude code, so you do lose like the built-in slash remote control and a few built-in slash remote control and a few built-in slash remote control and a few other features like that. I haven't other features like that. I haven't other features like that. I haven't really missed it that much. I've really missed it that much. I've really missed it that much. I've actually found this pretty pleasant. As actually found this pretty pleasant. As actually found this pretty pleasant. As you can see, I'm not getting close to my you can see, I'm not getting close to my you can see, I'm not getting close to my limits yet, but I do also have another 4 limits yet, but I do also have another 4 limits yet, but I do also have another 4 days before they take Fable from us in days before they take Fable from us in days before they take Fable from us in the subs. So, I'm probably going to get the subs. So, I'm probably going to get the subs. So, I'm probably going to get a lot closer, especially once I finish a lot closer, especially once I finish a lot closer, especially once I finish recording. I thought this video would be recording. I thought this video would be recording. I thought this video would be short. That was foolish of me. I'm going short. That was foolish of me. I'm going short. That was foolish of me. I'm going to go back to coding. I hope this to go back to coding. I hope this to go back to coding. I hope this inspires you to do the same. Let me know inspires you to do the same. Let me know inspires you to do the same. Let me know what you think of my workflow. Am I what you think of my workflow. Am I what you think of my workflow. Am I insane for even sharing this, much less insane for even sharing this, much less insane for even sharing this, much less doing it? Or is this actually inspiring doing it? Or is this actually inspiring doing it? Or is this actually inspiring and helpful for you as you try to go and helpful for you as you try to go and helpful for you as you try to go build using these models yourself? I build using these models yourself? I build using these models yourself? I have had so much fun, and I hope you do, have had so much fun, and I hope you do, have had so much fun, and I hope you do, too. So, until next time, too. So, until next time, too. So, until next time, peace, nerds.
Summary
The main theme is the immensely powerful and impressive capabilities of the Fable 5 model, highlighted by its transformative impact on productivity even surpassing previous models like Opus 48 and GPT-5.5. Key subjects include comparisons between AI models, coding tasks, end-to-end implementations, and sub-agent delegation, with a brief religious exclamation ("God damn"). The practical takeaway is that Fable 5 requires a new approach to prompting to unlock its full potential, moving beyond old methods to achieve significant advancements in software development.