120: The Counselors ![rw-book-cover](https://share.snipd.com/share-image/resize?url=https%3A%2F%2Fimg.transistorcdn.com%2F7-tuF7RMSNRIRfD3M2fNWLQLF-ShDgRiBeceKLOFVZc%2Frs%3Afill%3A0%3A0%3A1%2Fw%3A1400%2Fh%3A1400%2Fq%3A60%2Fmb%3A500000%2FaHR0cHM6Ly9pbWct%2FdXBsb2FkLXByb2R1%2FY3Rpb24udHJhbnNp%2Fc3Rvci5mbS9zaG93%2FLzQzNjc3LzE2OTE1%2FODI4NTItYXJ0d29y%2Fay5qcGc.jpg&width=512&height=512) ## Document Notes ## Highlights - **Use A Panel Of Models For Reviews** - Use multiple models to get diverse perspectives on a plan or code change. - Aggregate their outputs into a consolidated report to surface unique edge cases and security issues. Transcript: Aaron Francis Is a tool. Let's tell the people. Tell the people. Which is a nice little, it's a command line tool with an associated skill. And what it does, gives you a panel of counselors. And when you've made it, either change to your code or in the planning stage, and you want to get different perspectives, you can tell Claude or whatever tool you're using, hey, ask the Counselors what they think about this plan, check it for edge cases, check it for security stuff, but whatever, all that kind of stuff. And then Claude will go out and ask all the counselors who are different AIs generally, although they could be the same AI. Ian Landsman Yeah, it could be a different instance of itself, which is fun. Aaron Francis It could be a different instance of itself because sometimes it just likes a different perspective in general. It's just like even within Claude, if you say, hey, we review this, it will often add stuff, right? But now it goes out. You could get the Gemini CLI, get the Codex CLI, get AMP, throw $50 in AMP. It doesn't work on the free plan, but throw $50 in AMP because for this use case, that's going to last you a long time. That's what I have. So I have Claude gemini codex amp and so it takes your plan or your commits it makes a little custom prompt it sends that to all four of those or however many you want and then they go off and They think about it and they look through your code and they come up with their own ideas. All those ideas come back to the main instance of Claude. And then that Claude puts it all together, does a nice little report, says the counselors agree on this. They disagree about this. Only one said this thing, but it's kind of interesting. Yeah, I love that. And okay, I think we should do these changes or those changes or whatever. And every time I run it, it comes up with good shit. And that was something is great. It's so good. You just give it, it just, it just comes up with big security stuff. It comes up with permissions issues. It comes up with a pattern that you use elsewhere in the app, but that the first pass missed. ([Time 0:02:37](https://share.snipd.com/snip/4130d4a6-f1b6-4ba1-94cd-22a62205c107)) - **Run Models Via Local CLIs For Safety** - Shelling out to users' installed CLI tools preserves provider keys and avoids hidden network surfaces. - Running providers in one-shot, read-only CLI mode simplifies auditing and reduces permission risks. Transcript: Ian Landsman Just cannot tell you win cannot tell you that just the unprompted tweets of Ian saying, love the counselors. Look at what this found. Great product. Everybody try it. Just, you know, I was on cloud nine. So technical details for those that are curious. It uses your on machine, your installed CLI tools. So there's no funny business. We know that Anthropic and other providers have a lot of automated tests set up to catch abuse, right? Which is, I think, how OpenCode got caught up. I don't think it was, I'll have any inside info, but I don't think it was necessarily like, we don't like OpenCode. It was our system detected, you're using our Anthropic key from a non-anthropic surface. That feels bad. We're going to just block you. And so what counselors does is it shells out to your actual installed CLI tools. And interestingly, every one of these CLI tools has a non-interactive one-shot mode. And that's what this uses. So your main agent, your coordinator, will gather up relevant context, what you guys have been talking about, stuff like that. It writes a prompt.md somewhere in your project, which is configurable. And then it calls out these CLI tools and says, like, read this prompt, do that task, and then output a text, output your response as text. So there's no, like, permissions prompts. There's no tool calls. All of the tools are set up as best as possible to be in read-only mode. And then the main agent gathers up all of that output, puts it into a nice neat folder if you want to reference it, and then it consolidates that into a report for you. ([Time 0:05:38](https://share.snipd.com/snip/a51c8fb1-9fcf-4e3c-a1ff-51449dc5b8cf)) - **Automate Releases End-to-End** - Automate release steps with GitHub Actions and require minimal human input like a tag. - Have the workflow run tests, publish artifacts and smoke-test installations to catch publish-time failures early. Transcript: Ian Landsman So like send a Slack message with this context and these two buttons whether we should approve or deny this client basically not like hey we need attention and you're like where what What do i push what's the context um and in this process i have found um both in developing solo and counselors that um setting up gith workflows to handle literally everything is just A lifesaver. So like to publish something to NPM, somehow they still are like, yeah, just run NPM publish from your command line. And I'm like, not going to happen. Like I'm not going to do that. One, because that feels like I'm going to publish something that I have uncommitted or stash changes and it's like it's going to break for everyone two I have to remember that and in this This day and age I can't remember a freaking thing I mean you saw you saw my birthday picture you saw how little those four kids are what am I I can't remember anything and so what i have set Up on github actions now is a release uh workflow that i can trigger manually and so the only thing i have to do to release this to npm to homebrew and to uh like a install you know a curl bash Install is i go to the release workflow and I hit the like run workflow. And all I have to do is enter a tag. So I just hit run workflow. GitHub Actions has a has a UI where a a workflow can request input. And I just type V 0.4 And then what that does is it runs all the CI. So it runs all the tests. It does the building. It releases to all three install formats. And then after that, it does a smoke test that it can install the new version using all three formats. So like if I if I publish something and I like tag a new release and then the homebrew breaks well I'm kind of in a bad spot but at least I know about it right I know about it before someone tries To install it because the github action is gonna say like hey I published all the versions and then I tried to install via homebrew and something died and it's like oh great I'm glad I know That um versus hey, don't forget after you publish to go on your local machine and see if you can install. I'm not doing that. So it does a smoke check to see, can I install? And when I run counselors dash dash version, is it the version that you started this workflow with? And so it checks if it actually pulls down the new code. And so I'm constantly telling Claude or whomever, hey, can we bake this into a workflow somehow? Like just this thing that like you're telling me to do, I'm not going to do it, man. Just make it a workflow. And so and that's how I release. That's how I release solo. That's how I release faster.dev. That's how I release all of these things is I run a workflow. And for like websites, it does all the tests and the linting and all of that. And then it pings forge via their secret URL to actually release there. Cause then I can just push to ([Time 0:12:01](https://share.snipd.com/snip/94c666ae-62de-43fe-853a-09364e63c964)) - **Make Caps Lock Your Hyper Modifier** - Map a single physical key (like Caps Lock) to act as a hyper modifier to access many shortcuts. - Use a hold vs. tap behavior so single tap still sends Escape while hold triggers HyperKey actions. Transcript: Aaron Francis All right. So hyperkey solves the problem in that you want to be able to navigate around your computer quickly, but like you have an old brain, you have no memory, the AI and the kids, you can't keep All these keyboard shortcuts in your brain, right? And so it's like, you know, shift, option, W, C, right? Like, it's like, I can't remember any of that stuff, which is why I mostly never used it, because I was like, I can't, I can remember copy paste. I got a couple others. Like, that's all I got. I can't do the thousand modifier keys. But then I discovered HyperKey. And HyperKey lets you map like four keys. I actually have it here somewhere. It's technically HyperKey is Control-Shift So it's as if you held all four of those plus a letter. Okay, you're losing me already. That's a lot of things. Okay. Exactly. So you map one key. You map your control key or your caps lock key generally. You can map any key. But you map your caps lock key to be control, shift, command, option, as if you're clicking all those at once. So instead, you just hold your caps lock key and no letter. And that's like holding control command shift option. ([Time 0:24:02](https://share.snipd.com/snip/ec9d8e8b-a4bd-41e2-9ce1-10150d7b60d4)) - **Three Nights Sleeping At The Office** - Ian slept in his office three nights while monitoring heavy development and token usage. - He still made every morning routine with his kids, showing the personal cost of a concentrated crunch week. Transcript: Ian Landsman So last week, through no fault of my own, I ended up sleeping in the office three nights. That's crazy. Three nights I slept in the office. It's not good. So each night I made it home for kids' bedtime. So I made it home, you know, around 6, 630, saw the kids, put them to bed, and then grabbed a little bit of food and came back to the office because I got the situation to monitor. Aaron Francis I do have questions already because... I haven't even started. I haven't even started. I've heard computers now. They're portable. You can bring them other places with you. Okay, this is the first I'm hearing of that. Ian Landsman So no, I didn't know that. But also I've got the monitors here. You know, I've got the big Dell on this side and I've got the vertical bin queue on this side. And when you're ripping tokens, you just got to be able to see the space. You got to have a little commando. Aaron Francis Yeah. Ian Landsman I didn't go commando, but I have a command center, which is just slightly different. So, yeah, I needed the space. I needed the setup. And frankly, part of me needed like the energy, right? If you get home and you're, you know, the TV comes on and you're sitting on the couch and then you get sleepy and then you get in bed and you're like, I'm going to keep working. And then you fall asleep with the computer on your chest. It's like, I've never heard of that. Yeah, it's never happened to me a couple of times. Happened last night, actually, at home. So came back to the office and I'm like, I'm just going to, I'm going to rip some tokens for a little bit. Ended up being like, you know, midnight, 1 a.m. And I'm, I'm a sleepy guy. And I'm like, am I going to go back out to the car, get in the car, go home, get in bed? Wait, this is last night? No, last night I fell asleep at home. Oh, last night. Okay. Yeah, this is the three nights that The start of the three nights. Yeah. Okay, gotcha. And I thought, no, I don't think I am. So I went and I crashed on the couch out there. ([Time 0:33:35](https://share.snipd.com/snip/ed3b958d-259f-41aa-b6c0-fb537b2b3038)) - **Make Dev Environments Agent-Aware** - Treat development environments as agentic spaces where agents summarize and notify humans. - Summarizer agents let you surface context and attention signals across long-running agent interactions. Transcript: Ian Landsman And people are like, hey, this is really nice. I actually do really like this. Aaron Francis How do I run Claude inside of it how do i run a blank terminal inside literally the first thing my first second with it i was like okay i just put clod in here right let's go yes yeah and so in Ian Landsman In my in my uh fuzzy brain i thought oh man i should have done that um so i gotta i gotta ride the wave right and so i decided um i've got some heat right now i gotta capitalize on it and so i've Spent the past week transforming solo into not only what it was everything it did it will continue to do because i find that very valuable um but i've transformed it into um and you'll Forgive me for being buzzword guy an agentic development environment yeah let's go so now what the unreleased solo does is um what what it did previously is now one of three things it Does so what it did previously was manage your DevStack. That remains unchanged. And if you don't want any of the new stuff, that's fine. Just you don't have it. But now all of those DevStack processes are in a subgroup called commands. And so those are your commands to run the app. Then you have another sub just called terminals. Just terminals. You can just get in there, poke around, have some fun. Yes. Then there's another subgroup called agents. Aaron Francis Yes. Ian Landsman And what the agents does is similar, frankly, to counselors, is it just like uses your on-machine CLI tools, but because I know that it's an agent because of the grouping, I'm able to Do some smarter things like discussion summaries, right? So when you come back to an agent, it can say like, hey, here's what we've been working on over here. And I can do that because between the Rust backend and like the CLI, I'm seeing all the stuff stream across, not me as an individual, you know, the actual system. I don't see anything. And if you want, you can set up one of your local models. So it's all 100% in your control to be a summarizer agent. So in my case, I've set up Claude Sonnet because it's fast and it's cheap and I don't use Sonnet at all. So my quota is unlimited. Yeah. I've set up Claude Sonnet in my solo configuration to be my summarizer agent. And so now in the sidebar, we respect the, you know how when you're working with Claude and it renames your terminal tab for you, we respect that as like your naming in the sidebar, but We also append like a hundred character description of a summary as to what's going on. And so, and there are other things like we can detect notifications out of that byte stream that say, hey, we need your attention. And Solo can proxy those onto you. That's like, Claude needs your attention over here. And you go over there, you go over there and you see your list of agents and any of them that like need your attention have a little indicator. So you know which tab rung the bell. ([Time 0:37:00](https://share.snipd.com/snip/c90ab6a7-c5eb-435f-8bab-c66817481cbb)) - **Group And Collapse Project Processes** - Group related processes and hide noisy commands so projects stay navigable. - Use collapsible subgroups for NPM/process-heavy tasks to keep the main view clean. Transcript: Ian Landsman So it's been, I burned through two. Oh! Two Claude Max plans. Wow, okay. Fully. So I used my TryHardStudios account and my Gmail account. I feel torn about setting up a burner email just to register a new Claude Max. I feel like that feels a little risky to me. So I burned through two and then I burned through like $250 of extra usage in Cloud. Meanwhile, I'm still ripping codecs and doing that as well. And I'm just like, I'm moving at the speed of light, but still there's so much to do. It's insane. It's too much. So that is, that's been, that's been my journey over the past week of just being at the command center, not commando ripping tokens 24 seven. Dude. Aaron Francis I have to say, I don't like when you go this hard on stuff. I think you're overdoing it, but I feel like this was a worthwhile effort. I feel like this was, you had the strike while the iron was hot. People are into this. They did think it was maybe something a little different than it was. I think the opportunity of what you're bringing it to is way bigger and way better than what you had, which was a nice little utility. But you're not escaping the underclass with that utility, right? Like that's, you know. Ian Landsman I'm not building a garage with that utility. Aaron Francis No, definitely not. So I think either, however this turns out, this is going to be a better tool for sure. I think more people will be interested in it for sure. A week of crushing yourself isn't the end of the world. So even if it were two weeks, whatever ends up being like uh it sounds like you got really far with it all those i want every single thing you said everything single thing you said i was like I wish it did that yeah um and yeah we're all sitting there right with a terminal with 10 tabs open okay i got these three over here and i got one that's my terminal terminal for this project Right and then I got one that's my npm for this project and then I got a new set of tabs for my different project I had two or three clauds for that one and I got an npm one for that and I got three Plan modes that are ready to execute don't close them because I don't want to go between them yeah oh it's claud three or claud two which one did I put that in oh I gotta click them all like Everybody's doing the same thing who are at least the people who are fully embracing the blast shields on mentality. And so, yes, I just want my things grouped together in projects. I want the summaries. I want all that stuff, maybe like a nice little thing. It's like a bug or a feature, what it's working on, which the summary will probably give. And, yeah, I love the idea of it being like, I want to hide the NPM stuff a little more. So it's like, sounds like that'll be in its own little group. Yeah, you can collapse that subgroup if you don't want to see it. ([Time 0:41:07](https://share.snipd.com/snip/dee08e9c-00fc-45c9-83ca-66733d3ec887)) - **Match AI Plays To Your Strengths** - Choose product plays that match your strengths and risk appetite instead of copying trends. - For many, applying AI to 'boring' software yields steady business outcomes rather than chasing bleeding-edge dev tooling. Transcript: Aaron Francis I think you're right i think that now it's just a matter of like editing yourself i feel like i feel like there's a big aaron francis needs to edit himself because you like to do stuff. You like to go off on adventures. I don't think there's going to be the time for adventures. Like you did the adventure. Now you're here. Yeah. And it worked. And now it's like these two things seem very symbiotic to me, right? It's like faster.dev is by the guy who built Solo. And Solo is a thing people use to do their AI coding. And that makes sense. And then you can learn from all he's learned from both building it and working with people building an AI at Faster.dev, right? And they should probably talk about each other on their websites, right? And all that stuff, and it all feeds back into each other. And yeah, there's going to be obviously offshoots and websites you need to build and checkouts, whatever. There'll be all kinds of stuff, but I feel like these two are really good together. The universe is coalescing. Yes, we got to leverage that, optimize it, maximize it. Especially like, I mean, listen, the day you launch solo, and then like the next day there was like four of these out. And, you know, like similar, they all have their own little angles, right? But it's like, this is going to be extremely competitive space, right? So, and of course you have the labs themselves trying to get, right? You have Codex released a desktop app. And I do think these have an advantage over that. And I'd like to, your counselors and Solo to me all work together in this, like, you don't want to be pigeonholed in one lab's world. So this all works together that front too it's like no sometimes you need to go across the labs great these are all tools that let you do that that claude and codex are never going to let You do because they're not going to be like hey why don't you boot up anthropic and ask anthropic what it thinks right so that's not happening so yeah so i think that's great um yeah i'm Very excited I think it's it's all going we're going we're going we're going and you just got to keep keep kind of the metal you have other other stuff you have some database school stuff To do you got a lot to do um but yeah and the other thing I think that's worth talking about since you kind of brought up this way is like for the listeners my and this is how i'm approaching It so you are approaching it from the ai guy i'm going all in on pure ai like ai training tools for ai development and i think that's one path it's a very hard path it's like a practically Impossible path it's terrible customers with software developers and customers, right? We know we don't like that in general, generally speaking, but you are you. And I think for you, this is a good play. And I like this play because you have a certain skillset that I think merges very nicely with us. For the average person like myself and many of the listeners out there, I think this is like a terrible play and trying to compete with everybody else building dev tools for ai is a horrible Idea and so it's like about like with outro it's like all day when i work on outro this weekend i was like where's the ai hooks i haven't even built any stuff yet but i see all the connections Of like little things do they i it's like can you bring ai to all these other parts of the world that are boring and old and people don't care and all the script kiddies are wanting to build Dev tools because that's where you become a billionaire and you're probably not going to become a billionaire on your like, I brought AI to boring software, but you could become a millionaire Bringing AI to boring software. Ian Landsman Turns out millions pretty good. Aaron Francis Yeah, that's all right. If you end up with $10 million, you're going to be fine. I'm not mad about that. I think that's the angle for the rest of us. But I love this angle for you. You're obviously a little more risk-reward edgy here, but I think, yeah, I like it. I mean, it's going good so far. People are buying it. People are buying solo. People are buying faster. Ian Landsman I have an unwavering belief in myself, sometimes to my own detriment, but you know what? Better that than the other way around. Yeah, ([Time 0:46:56](https://share.snipd.com/snip/7f3845ac-4719-4ef9-9d36-456c24f02406)) - **Birthday Interrupted By Sewer Backup** - Ian's birthday night was interrupted by a sewer backup that poured bath water into a downstairs shower. - A weekend plumber visit fixed the immediate issue but revealed an expensive cast-iron pipe replacement risk. Transcript: Ian Landsman Oh, the out? Oh, it was coming up from underneath? Oh, I see what you got going on. It came from upstairs. It drained, tried to make it to the sewer, couldn't, and decided to go backwards up into the shower. Is this public sewer? No, no, no, no. This is... Okay, separate field? No, this is public sewer, but it didn't make it out. Like, it was blocked out to the sewer. So this is all kids' bath water. This is backed up into our shower all right at least your own stuff okay and so i'm like i can't there's nothing i can do about this i'll have a snake i mean some people like i told my dad my Parents came over yesterday he's like oh i got 150 foot snake and i'm like of course you do you're 70 like you just you have things i don't have anything yeah so at eight o'clock on my birthday Slash Valentine's Day, I'm on the phone with probably one of Jordan Gull's AI phone assistants because I call, you know, Mr. Reuter emergency line and it's 100 percent in AI. Right. And I'm talking to it and I say, are you an AI? And she says, I'm a helpful digital assistant. And I'm like, ah, she's actually pretty good. Aaron Francis Actually, it works fine. There's a human aspect, but yeah. I know, but like at an emergency call. Anyway. Ian Landsman So I'm talking to Mr. Reuter. I'm talking to, you know, Claude Code, basically. And they send somebody out on Saturday night. He comes and he snakes out the whole thing. And he sends a camera in, which is cool. Aaron Francis I like the camera. I've had that. Ian Landsman He sends a camera in and he's like, so I snaked it all out. The problem is not only is your main line out to the sewer cast iron, which we don't use anymore. Right. But it has settled. And so there's a big belly. Oh, we had that once too. Aaron Francis That's bad. They don't like that. Ian Landsman They don't like that. The water doesn't like the dip. The water likes to go downhill and downhill only. Yes. And so he said, you're going to have to either, you know, snake this out every now and then or dig that up and replace it. Oh, that's expensive. And I'm like, all right, just like, give me the bad news. It's been a bad day, so just give it to me. 15,000? And he said, well, you know, he was a super nice guy. Really liked this guy. He was like, you know, we are a franchise, and so we're like a corporate national thing, so it is going to be, our quote will be more expensive, so definitely get like a local quote as well But for 50 feet of digging it actually runs under your house all the way out it's not just like it goes down and jogs to the outside wall it's like it goes clear across the house under the Neighbor's house 50 feet of digging and replacing the cast iron pipe that comes out to about $37,000. Aaron Francis Oh, I was in his face. Ian Landsman I said, are you kidding me? And he laughed and he said, yeah, so I'll just let you decide on that. But for tonight, it's only $900. So I'm like, Oh, wow. I mean, you can do that. That's some price anchoring right there. Yeah, well, you can do that for 37 years. Aaron Francis 37 years. Yeah. Ian Landsman So I'm not going to be doing that. Maybe when I dig my garage, I'll, you know, fix out the pipe. But instead, I ordered some septic enzymes, and we're just going to flush some septic enzymes every now and then and keep the keep that low belly of the pipe hopefully uh toilet paper And sediment free um and then we'll snake it out once a year for a thousand bucks and i'm going to come out ahead anyway so we had a birthday redo on sunday we got to re-celebrate my birthday On sunday and sunday was fantastic sunday was a great day. My parents came over. We all went to dinner. And kids were on their best behavior. And there was no backup in the shower. ([Time 1:00:43](https://share.snipd.com/snip/dacf485a-2ef6-4f0a-8c4b-1463eb826864)) - **Cardboard Box Saw Delight** - Ian bought a handheld USB-C cardboard box saw and loved how fast it flattens boxes. - The $25 gadget turned a recurring chore into an easy, satisfying task. Transcript: Ian Landsman So we end up with these huge cardboard boxes, right? I bought a cardboard box saw. Aaron Francis Didn't we already talk about this? I thought you had this already. No, I've never had this before. You just talked about getting it perhaps. Okay. Cardboard box saw. Ian Landsman So it's this little handheld USB-C chargeable rotary blade. And so it's got this little spinning blade on it, which is awesome already. I like this idea. You hold the safety and push the button, and then you just zip through the cardboard box. And it just... Okay, I like this. And you just flatten it down, and you take it all out to the fake recycling bin that they put in the landfill anyway. But alas, it all fits. I'm not out there stomping on boxes like a clown. It's so great. It is so great. It was like 25 bucks on Amazon. And it's just... Aaron Francis You know what I love about this? Is that I'm like 99% sure we talked about this. So somewhere in your house, there's a second one of these. Maybe. This one's better. Yeah, this one's better. I told the story when I worked at this little store, whatever, a million years ago. And I have a scar right here from where I used to use it to box cutters. And I like box cutters, slice myself with a box cutter. And so I need one of these saws. I like this idea. It's a great idea. We do have those boxes occasionally as well. Yep. Because we do the Costco runs and whatever. And Yeah. Ian Landsman All right. It's great. Well worth $27 whatever dollars. I like it. And it's USB-C so it's not some goofy barrel plug that you're going to lose and have to buy a new one. ([Time 1:05:04](https://share.snipd.com/snip/ad52d1bd-44c9-4d29-961f-58d37e3ca3e7))