YouTube2Text

LIVE: Poteto (creator of pstack) on shipping 1,000's of PR's a month at SpaceX — Transcript

by Matt Pocock · 12,075 words · 1,698 segments · language en · Watch on YouTube

Full transcript

  1. 0:00So, hello folks. I've got another treat
  2. 0:02for you today. Last time on this kind of
  3. 0:05podcasty thing, I suppose, we had Uncle
  4. 0:07Bob and we talked about software
  5. 0:09quality. We talked about agents. We
  6. 0:10talked about lots of cool stuff. Now, we
  7. 0:13have uh an incredible guest, someone who
  8. 0:15I'm delighted to welcome on, who's been
  9. 0:18exploding on Twitter recently about
  10. 0:21software factories, um about increasing
  11. 0:24the quality of your work, about
  12. 0:26increasing your velocity and climbing
  13. 0:28the trust ladder with agents so that you
  14. 0:30can ship more and more and more. And it
  15. 0:32is potato. Welcome. Thank you so much
  16. 0:35for joining.
  17. 0:36>> Thanks for having me. Yeah, very excited
  18. 0:38to be here. Yeah, big fan of yours
  19. 0:41>> and a huge fan of yours. I think people
  20. 0:43have been talking about this like it's
  21. 0:44like the meeting of the skill minds, the
  22. 0:47skill Mount Olympus or something because
  23. 0:49both of us have very popular skill
  24. 0:51libraries. Um I've not, as I was saying
  25. 0:53before we started, I've not used a ton
  26. 0:55of yours and like I want to get all of
  27. 0:58the juice out of your brain so that I
  28. 0:59can go and use it properly and use it
  29. 1:01better. And I think where I want to
  30. 1:04start with this is you gave a talk um
  31. 1:06pretty recently like um about 10 days
  32. 1:08ago and posted on X which went
  33. 1:10absolutely nuts as about how I shipped
  34. 1:132,500 PRs last month to production got
  35. 1:16about 3 million views or something on X
  36. 1:19and I watched it and I loved it and I
  37. 1:21recommended it and I kind of want to run
  38. 1:24this as almost like a Q&A of that talk
  39. 1:26basically of giving you because it just
  40. 1:29I just had tons of questions about it
  41. 1:31and I wanted to dive into it. And I
  42. 1:33think where I want to start is you talk
  43. 1:36about a trust ladder with agents where
  44. 1:39you as you trust agents more, you can
  45. 1:42get them to do better and better things
  46. 1:44and or scale them to up to use more and
  47. 1:47more agents. So what is your story of
  48. 1:50how you climbed the trust ladder and how
  49. 1:53did that work when like you got SpaceX
  50. 1:55and
  51. 1:56>> started climbing more and more?
  52. 1:58So I think this the the journey sort of
  53. 2:00began even before I joined cursor uh
  54. 2:03which is now SpaceX AI. Uh so the story
  55. 2:07is um
  56. 2:09after Meta so I I used to work at Meta
  57. 2:12on the React team. Uh I took a month off
  58. 2:15uh because I was feeling kind of burnt
  59. 2:16out and of course when what what do you
  60. 2:19do when you're burnt out? You go and
  61. 2:20start a new side project. Um and so I
  62. 2:23started a side project. you know, I was
  63. 2:25uh of course using AI to to write code.
  64. 2:28Uh but then I started to realize uh you
  65. 2:31know, I was spending like so many hours
  66. 2:32just micromanaging one agent, right? And
  67. 2:36you know, at the time, this was back in
  68. 2:38February, maybe February, early February
  69. 2:41or January, you know, people were really
  70. 2:43obsessed with this idea of like
  71. 2:44orchestration. This was like, you know,
  72. 2:46before, you know, things like cursor,
  73. 2:48you know, like the agents window was had
  74. 2:50become popular. So people were still in
  75. 2:53like like 2 land you know in their
  76. 2:55terminal and they were all talking about
  77. 2:56okay here you know I built a custom
  78. 2:58orchestrator right and so of course I
  79. 3:01had I was a bit nerd sniped by that and
  80. 3:03you know as I was building my toy
  81. 3:05project uh I got nerd sniped by oh how
  82. 3:08do I make my AI coding setup more
  83. 3:10efficient and so you know I I kind of
  84. 3:13started the journey there where I just
  85. 3:16you know took a step back and realized
  86. 3:18you know I was spending all this time
  87. 3:20micromanaging a single agent you know I
  88. 3:23was creating skills and I was like
  89. 3:25finding it quite difficult to measure
  90. 3:27the output or the the result the impact
  91. 3:30of the skill as well so I was kind of
  92. 3:32flying blind but I was you know
  93. 3:34iterating really fast um and um so that
  94. 3:39project eventually sort of became the
  95. 3:42basis of PAC even though I didn't know
  96. 3:44it at the time um and a lot of some
  97. 3:48tricks I had learned like building that
  98. 3:50early set of skills. Actually, it's
  99. 3:52still open source if you want to if
  100. 3:54anybody wants to take a look. It's on my
  101. 3:56GitHub like potato
  102. 3:58noodle n o d l e. Um, and in there you
  103. 4:02will see some skills and a brain
  104. 4:04directory. And so I was really
  105. 4:06interested in this idea of how do I, you
  106. 4:09know, extract my own ability, if that
  107. 4:12makes sense, and give it to the agent,
  108. 4:14right? cuz I was I I realized that you
  109. 4:16know all I was trying to do was trying
  110. 4:18to teach the agent to write code more
  111. 4:19like me you know do do you do do
  112. 4:22workflows more like me. So you know the
  113. 4:24skills were like an entry point to doing
  114. 4:27that.
  115. 4:28Um and then you know after I joined
  116. 4:31cursor uh I was starting to work on the
  117. 4:33agents window and uh it had a lot of
  118. 4:36performance issues. Uh it was it was it
  119. 4:39was pretty laggy. Uh and so since I had
  120. 4:41experience working in React, I was asked
  121. 4:43like, "Hey, do you want to come and help
  122. 4:45out uh with the agents window?" Um and
  123. 4:48so the the this beginning of the cursor
  124. 4:52journey was very manual. Uh I was deep
  125. 4:56in like looking at like flame graphs and
  126. 4:59heap snapshots and trying to see like
  127. 5:01why exactly is the app so slow. Uh but
  128. 5:04then coming back to the same realization
  129. 5:06like you know I was sort of the
  130. 5:07bottleneck. I was doing everything
  131. 5:09manually. I was sort of the meat proxy
  132. 5:11in a way, right? I was the meat proxy
  133. 5:13between my agent and Chrome DevTools. Uh
  134. 5:16and I was like really annoyed by that.
  135. 5:18>> And what month of the year is that?
  136. 5:20Let's say where are we in the timeline?
  137. 5:22>> Uh so I joined Cursor in March. So this
  138. 5:25was like early early April probably
  139. 5:28early April is when you know uh I joined
  140. 5:31and I didn't have any skills, right? I
  141. 5:32had I I sort of abandoned my personal
  142. 5:35skills because I didn't think they'd be
  143. 5:36relevant anymore. Uh but then working on
  144. 5:39the agents window uh and now working on
  145. 5:42grockbot uh I sort of realized that a
  146. 5:45lot of the lessons I had learned from
  147. 5:48those skill time building the the
  148. 5:49initial set of skills were very relevant
  149. 5:52especially around things like
  150. 5:54verification
  151. 5:55uh you know being very rigorous in your
  152. 5:57work um because I think from my
  153. 6:02experience even the the frontier ones
  154. 6:05tend to
  155. 6:07tend to take shortcuts. Uh they tend to
  156. 6:10do the easy thing. Uh so uh a lot of the
  157. 6:14skills that I've built have been around
  158. 6:16how do I make the easy thing the right
  159. 6:19thing? You know, how do I make that the
  160. 6:20best thing?
  161. 6:22>> The idea of sort of distilling your
  162. 6:25expertise and turning what you do every
  163. 6:28day into processes, that's something
  164. 6:30that feels super familiar to me. That's
  165. 6:32exactly what I've been doing with the
  166. 6:34skills. And I suppose there's something
  167. 6:37in that which is a lot of people think
  168. 6:39domain expertise is getting less useful
  169. 6:41now as people uh start to rely more on
  170. 6:44AI where what do you think about that
  171. 6:47just as a sort of vibe check before we
  172. 6:49start talking
  173. 6:51>> I actually feel like domain expertise is
  174. 6:52is more important than ever you know uh
  175. 6:56I think I wrote this on my ex at some
  176. 6:58point but you know at times I sometimes
  177. 7:01think of you know AI as is like
  178. 7:05especially as the models get smarter and
  179. 7:06smarter and more capable and the
  180. 7:08frontier models are just getting so good
  181. 7:10like I love Opus 5.5 by the way um uh
  182. 7:15you know as the models get really really
  183. 7:17really good it almost becomes like the
  184. 7:19bottleneck is no longer the agent right
  185. 7:22it becomes your ability to express your
  186. 7:25intent and your goals in a clear way
  187. 7:28that the agent can understand and
  188. 7:31actually carry out and That's why I
  189. 7:33think you know like people with a lot of
  190. 7:35domain expertise are extremely have a
  191. 7:38have a huge advantage in my opinion
  192. 7:41especially if you're a little bit like
  193. 7:42you know tech technoc curious you know
  194. 7:45so I I think of people like you know
  195. 7:47like uh like a doctor or a lawyer or you
  196. 7:50know someone who who has a deep
  197. 7:52expertise in a particular
  198. 7:54non-engineering domain and if they're
  199. 7:56actually just a little bit techsavvy and
  200. 7:59they can figure out how to use agents
  201. 8:00they can actually build really really
  202. 8:02great products, right? If they if they
  203. 8:05have a clear enough vision in their head
  204. 8:07and they can articulate it in a way that
  205. 8:09the agent can build it, you know, I
  206. 8:12think that that is really the the
  207. 8:15bottleneck these days is is like the
  208. 8:18transfer of your intent, right, and your
  209. 8:20vision to the agent.
  210. 8:23>> Yeah. I've been obsessed with language
  211. 8:25basically since agents um dropped. are
  212. 8:27just obsessed 100% and thinking
  213. 8:30constantly about the the composition of
  214. 8:32words, how I can make things sharper,
  215. 8:35what um what might be hidden in the
  216. 8:37phrases that I'm using. And it's and
  217. 8:40finding what I love is when you find a
  218. 8:42word that the agent then hooks on to and
  219. 8:45then goes, "Okay, I'm going to reinforce
  220. 8:47that word. I'm going to reuse that in my
  221. 8:49thinking traces." You know, I found that
  222. 8:51with um TDD was an early example of
  223. 8:53that. a lot of chat about TDD recently
  224. 8:55of like, you know, people say, should
  225. 8:57you use TDD with agents? Doesn't matter.
  226. 8:59What you're doing is you're getting the
  227. 9:00agent to think about TDD, getting it to
  228. 9:03write tests, getting it to prioritize
  229. 9:04things in a different way than it did
  230. 9:06before. And that's why sort of grilling,
  231. 9:08I think, works effectively. Grilling is
  232. 9:10a
  233. 9:11>> Yeah. Yeah. It it draws those words out
  234. 9:13of you, right? or or at least it helps
  235. 9:16the agent understand your thinking so
  236. 9:19that they can propose those words to you
  237. 9:20and you can pick up and say yes exactly
  238. 9:22that.
  239. 9:23>> Uh I've actually copied some of the the
  240. 9:25tips that you've shared as well where
  241. 9:27you know one of my favorite ones that
  242. 9:28you've shared recently or or not or like
  243. 9:30maybe in the past couple weeks is about
  244. 9:33uh reducing or eliminating tautological
  245. 9:36tests. Like one of my pet peeves of
  246. 9:38agents is like all of the useless tests
  247. 9:40that they write. And so, you know, that
  248. 9:43was one thing where, you know, the word
  249. 9:45tutology, right, is is is I guess, you
  250. 9:47know, not many people necessarily know
  251. 9:49that if if especially if English isn't
  252. 9:50your first language, but there's a lot
  253. 9:53of meaning to that word. And it's like
  254. 9:56it's almost like compressed, right? Like
  255. 9:58you compress a lot of intent and meaning
  256. 10:00into words. And so I I I totally agree
  257. 10:04with you. I think language I've always
  258. 10:06been interested in language actually uh
  259. 10:08like programming languages natural human
  260. 10:11languages and how they came to be and
  261. 10:13it's so interesting that now with agents
  262. 10:15it's sort of like this meeting of
  263. 10:18natural language with programming
  264. 10:20language but it's all it's all language
  265. 10:21out of the hood it's all communication
  266. 10:23>> totally I did a drama degree right so
  267. 10:25you know I've been thinking about
  268. 10:26language and Shakespeare and stuff for a
  269. 10:28long time and so this all feels very
  270. 10:30familiar
  271. 10:31>> um so okay there's sort
  272. 10:34before we get into like because I think
  273. 10:36the thing I want from you is like
  274. 10:38software factory stuff, right? Software
  275. 10:40factory is the big buzzword. Software
  276. 10:42factory is the thing that I'm thinking
  277. 10:43about too. I'm sort of releasing a
  278. 10:45course in that direction too.
  279. 10:47>> And it's this sort of scaling yourself
  280. 10:50up to un unrealistic numbers of PRs
  281. 10:53basically or PR numbers that sound
  282. 10:56ridiculous to people who don't
  283. 10:57understand how this works. So where I
  284. 10:59want to get to is sort of from people
  285. 11:01who are doing kind of like one to five
  286. 11:03agents today up to, you know, hundreds
  287. 11:06of agents running at once and how that
  288. 11:08sort of functions. And so I'd love to
  289. 11:10hear about your metaphor of the Michelin
  290. 11:12Kitchen instead of the software factory
  291. 11:15because I think that says a bit about
  292. 11:16the way you think about this stuff.
  293. 11:18>> Yes.
  294. 11:20Yeah. I I I've I've never really liked
  295. 11:22the term software factory. Not because
  296. 11:25you know it's not accurate but I think I
  297. 11:28think the a lot of people when they
  298. 11:29think factory right they don't
  299. 11:31necessarily equate that with quality or
  300. 11:34craft right things which are very
  301. 11:36important to me and a lot of people and
  302. 11:39technologists who work you know building
  303. 11:41products we care about the user
  304. 11:44experience we care about the things
  305. 11:45we're building. So while so while I do
  306. 11:48think software factory is an apt term,
  307. 11:51it also I guess maybe conjures up
  308. 11:53negative, you know, maybe sometimes
  309. 11:55negative connotations. So Michelin
  310. 11:58Kitchen is the thing that I've sort of
  311. 12:00landed on where it's much more I feel
  312. 12:02like it's much more aspirational and uh
  313. 12:05I like the metaphor a lot cuz you know I
  314. 12:06like food. I'm called potato of course
  315. 12:09and I like cooking and I see a lot of
  316. 12:11parallels right like with food right
  317. 12:14when you're cooking a meal for yourself
  318. 12:16for example it's both utilitarian like
  319. 12:19you're trying to just feed yourself
  320. 12:20right and and survive uh but it can
  321. 12:23actually be transformed into art right
  322. 12:25and that's what what a Michelin starred
  323. 12:28chef or even just a chef or a cook can
  324. 12:31do with food is take something very
  325. 12:33ordinary and turn it into a delicious
  326. 12:36meal that you know takes you back to
  327. 12:38your childhood days or something like
  328. 12:39that. Um and so it almost like mirrors
  329. 12:43that trust letter that I talk about
  330. 12:45where uh you can sort of imagine your
  331. 12:48own journey as a home cook, right? Uh as
  332. 12:50a home cook, you are doing all of the
  333. 12:52food, the cooking yourself. You cut all
  334. 12:55the vegetables, you do all the prep
  335. 12:57work, you do all the cleanup, you know,
  336. 12:59you are the one man or one woman show
  337. 13:03really. Um, and it's an interesting
  338. 13:07thought experiment like, okay, if you
  339. 13:09were to cook a meal and then you add
  340. 13:11people, right, your your your partner
  341. 13:14trying to your brother, your sister, and
  342. 13:16now suddenly you have your whole family
  343. 13:18in the kitchen. I think most people
  344. 13:19would get very stressed by that, right?
  345. 13:21The thought of, oh, so many people are
  346. 13:23just mocking around in my kitchen. They
  347. 13:24have no no idea where all the utensils
  348. 13:26are.
  349. 13:27>> I have a max capacity of one person in
  350. 13:28the kitchen. Yeah, absolutely. So, I
  351. 13:31feel like that that's really apt because
  352. 13:33when you ask yourself that question of
  353. 13:35how do I go from being a solo cook,
  354. 13:37right, to having an army or even not not
  355. 13:41even an army but a few sue chefs, right,
  356. 13:44that that are helping me in the kitchen.
  357. 13:45How do I think about dividing the work
  358. 13:48in a way that makes sense? You know, I'm
  359. 13:50not dividing work just for the sake of
  360. 13:52it, but in a way that actually makes the
  361. 13:55sum the to the better than, you know,
  362. 13:57the total of its parts. And so the
  363. 14:00Michelin kitchen metaphor to me like
  364. 14:02works really well in that regard because
  365. 14:05you know as a chef you're you know if
  366. 14:08you become a chef you're in a position
  367. 14:10where you're not necessarily cooking all
  368. 14:12the food yourself anymore but you are
  369. 14:14thinking you're almost like the tech
  370. 14:17lead right for the kitchen where uh you
  371. 14:20know chefs have to think about you know
  372. 14:21not just cooking but they have to
  373. 14:23basically organize the whole kitchen and
  374. 14:25they're like the CEO of the kitchen they
  375. 14:27have to think about when do you order
  376. 14:29ingredients, how do you store them, how
  377. 14:30do you prepare them, when do they have
  378. 14:32to be prepared, you know, it's a whole
  379. 14:34it's a whole job, right? That's not just
  380. 14:36cooking. Um, and I think that again it
  381. 14:39mirrors so much of how engineers write
  382. 14:42code today where you are not writing the
  383. 14:45code yourself anymore. You have agents,
  384. 14:47right? But you as the human are still
  385. 14:49responsible for the final outcome,
  386. 14:51right? your name still is associated
  387. 14:53with the work that you do, your
  388. 14:55reputation and you know so how you set
  389. 14:58up your kitchen right and how you set up
  390. 15:01your skills your environment your
  391. 15:03codebase I think are ultimately the new
  392. 15:07ingredients that go into um building
  393. 15:10product
  394. 15:12>> yeah I think what I love about your
  395. 15:14approach is the amount of focus that you
  396. 15:16put into the environment that the agent
  397. 15:18operates in right because I think a lot
  398. 15:20of people they think, right, the agent
  399. 15:22is good. I'm probably not going to be
  400. 15:25able to make it better. Let's just trust
  401. 15:27what these magic model people have put
  402. 15:29into the harness and the model
  403. 15:31combination. Uh, there's nothing I can
  404. 15:33really do, like I can't mess about with
  405. 15:35claw codes internals or something or
  406. 15:36whatever you're using. Um, but what I
  407. 15:40love about your approach, and it's
  408. 15:42something I advocate for too, is that
  409. 15:43you can change the environment the agent
  410. 15:45operates in, right? you can make changes
  411. 15:48in the codebase and also give it tools
  412. 15:51for verification as well and allow it to
  413. 15:54verify its own work. So the thing I I
  414. 15:56loved about watching that talk is the
  415. 15:58amount of focus you put in verification
  416. 16:01and like that is the lever that you can
  417. 16:03start to generate trust. Can you talk
  418. 16:05about that and what that concretely
  419. 16:07looks like? Let's start like looking at
  420. 16:09practical ways that people can improve
  421. 16:10their own processes, their own kitchens.
  422. 16:14Yeah, I've I've I've said this a lot
  423. 16:16actually that you know even if you don't
  424. 16:18use PAC or you know your skills I think
  425. 16:21that the single most important skill
  426. 16:24that should be in your toolkit is
  427. 16:27verification because without
  428. 16:29verification and for for by the way for
  429. 16:32those watching who don't know what that
  430. 16:33means it's this idea that you can give
  431. 16:35you can sort of give your agent uh hands
  432. 16:38and eyes in a way that's the the analogy
  433. 16:42I
  434. 16:43where the agent is able to run the code,
  435. 16:46right? And actually uh interact with it
  436. 16:49like a normal human user would and also
  437. 16:52do things like you know debug it, you
  438. 16:54know, take traces and snapshots. Um and
  439. 16:59uh funnily enough like that was actually
  440. 17:00the first skill I built when I joined
  441. 17:01Cursor. uh that gave me a lot of that
  442. 17:04was that was the thing that actually
  443. 17:05started to let me ascend the trust
  444. 17:07ladder a little bit in a way that some
  445. 17:09of the other skills I had looked at or
  446. 17:12built had not really let me do because
  447. 17:15no matter how good you know some of the
  448. 17:17other skills were like the how skill,
  449. 17:19the why skill, the unsop skill were, I
  450. 17:23was still relying on me right as the
  451. 17:25proxy between my agent and the output.
  452. 17:29So that you know if the agent can't
  453. 17:30actually see the result of its work
  454. 17:32there's no way it can actually iterate
  455. 17:35right and so this is where people start
  456. 17:36to talk about loops this idea of a loop
  457. 17:39and really I think the term loop you
  458. 17:41know seems kind of uh almost abstract
  459. 17:45like people like what what what is a
  460. 17:47loop what is an agent loop but really to
  461. 17:49me like the most important part of a
  462. 17:51loop that allows it to be a loop is the
  463. 17:54verification part because the agent is
  464. 17:56able to to verify by its own work and uh
  465. 18:01you know that takes you out of the
  466. 18:02equation where now I can actually do
  467. 18:04something like so the very one of the
  468. 18:06very first use cases I had for
  469. 18:08verification was you know like the
  470. 18:10performance work that I was doing on
  471. 18:11cursors agent window and I want I wanted
  472. 18:14to get to a point where I could do
  473. 18:15something called hill climbing uh which
  474. 18:17is a term that I I think the labs uh
  475. 18:20talk about a lot which is this idea that
  476. 18:22you know you have some kind of rubric or
  477. 18:25a way to judge or score something And
  478. 18:28now because you have a loop, you can
  479. 18:30have an agent continually try to make
  480. 18:33improvements to that. Uh I think
  481. 18:35Carpathy, Andre Carpathy also famously
  482. 18:38released uh something called auto
  483. 18:40research that has a lot of these ideas.
  484. 18:43Um but yeah, verification I would say is
  485. 18:46probably the most important skill in PAC
  486. 18:49uh and many other you know tool sets. Uh
  487. 18:53and I think it's the most important
  488. 18:55thing to focus on. So a lot of the a lot
  489. 18:59of I spent a lot of time actually you
  490. 19:01know tuning the verification the
  491. 19:04creative verification skill um and also
  492. 19:07internally the the we have so many
  493. 19:09verification skills now like every app
  494. 19:11that cursor has or spaceexai has has a
  495. 19:15uh verification skill that is
  496. 19:17automaintained as well
  497. 19:19>> uh and it's become critical
  498. 19:21infrastructure for our team because
  499. 19:22everybody uses it
  500. 19:24>> and you went pretty far with that too
  501. 19:26right like you had a um in your talk I
  502. 19:28saw that you actually built a custom CLI
  503. 19:30for that too. So what does that CLI do?
  504. 19:32Like how does it execute things and why
  505. 19:34did you I mean that's proof of how deep
  506. 19:36you're going right of how much you're
  507. 19:37pushing that.
  508. 19:39>> Yeah. So this is actually a tip I
  509. 19:42learned early on where
  510. 19:45um I guess you know back in January or
  511. 19:49or late last year the thing that people
  512. 19:51were concerned about was context window,
  513. 19:54right? That was the big the big topic at
  514. 19:56the time was how do I you know manage
  515. 19:58the context window because you know
  516. 20:00compaction summarization wasn't really
  517. 20:02that good yet and people were always
  518. 20:05people had this there was almost this
  519. 20:07meme in the community that you know once
  520. 20:10your agent summarized or compacted once
  521. 20:13it would become sort of stupid right for
  522. 20:15the rest of your session. So there was a
  523. 20:18lot of thinking around like
  524. 20:20you know being very efficient with your
  525. 20:22context usage and so that was actually
  526. 20:25the inspiration for some of the uh the
  527. 20:28CLI work inside of the verification
  528. 20:31skills. I guess now it's less so about
  529. 20:34context because uh you know agents are
  530. 20:38much better or harnesses have gotten a
  531. 20:40lot better with summarization.
  532. 20:42Um, I still think there's some benefits
  533. 20:45to, you know, uh, having a clean context
  534. 20:49window. Uh, so the CLI is really just
  535. 20:51more of a way for me to take the
  536. 20:53deterministic parts of what the skill
  537. 20:56does and encode that into a script or
  538. 20:58CLI to reduce to kind of take away the
  539. 21:03judgment that would otherwise
  540. 21:05unnecessarily be used because with
  541. 21:08judgment so I also think of you know
  542. 21:10agents and skills in sort of like it's
  543. 21:13like a gradient
  544. 21:15you have some parts of the work that are
  545. 21:18entirely judge measurement based right
  546. 21:20you know something that requires thought
  547. 21:22you know putting together multiple
  548. 21:24pieces of context thinking um and then
  549. 21:27you have the more deterministic parts
  550. 21:28like I don't know if you wanted to uh
  551. 21:31refactor some code right from one
  552. 21:34pattern to another that's very
  553. 21:35mechanical right you don't you don't
  554. 21:37need an agent to think about it and come
  555. 21:40up with it in a novel way each time
  556. 21:43right and so that that was really the
  557. 21:45inspiration for the CLI and you'll see
  558. 21:47this in a lot of the other skills that I
  559. 21:48built is like I try to extract out the
  560. 21:52deterministic parts and turn that into
  561. 21:54code and just leave only the parts that
  562. 21:56actually require judgment to the agent.
  563. 22:00So in a way I think of the seal as kind
  564. 22:01of like your wrapper, right? It's a
  565. 22:03wrapper with some light instructions
  566. 22:04around how to use these custom tools
  567. 22:06that are inside of the skill. Um but
  568. 22:10yeah, I don't think the CL is really
  569. 22:11that interesting in its own really. It's
  570. 22:13not like a novel piece of software. It's
  571. 22:16just something that interacts with like
  572. 22:17Playright and the Chrome DevTools
  573. 22:20protocol and calls a bunch of APIs. It's
  574. 22:22like it's just a bunch of glue.
  575. 22:24>> No, it's fascinating because it's a way
  576. 22:25of hiding information from the skill,
  577. 22:27right? It's a way of conserving the
  578. 22:28skill, keeping the skill quite small, I
  579. 22:31imagine, and then you're able to
  580. 22:32delegate more of the complicated
  581. 22:33deterministic stuff into a script within
  582. 22:36the skill. So it's almost you're
  583. 22:38compressing information and making the
  584. 22:41agent do more consistent things more
  585. 22:44consistently.
  586. 22:45>> Yeah,
  587. 22:45>> that's fascinating.
  588. 22:47And it it also helps I guess if you care
  589. 22:49about context window it it does help
  590. 22:52because now the agent doesn't need to uh
  591. 22:54you know re reinvent uh things cuz uh
  592. 22:58one thing I had noticed early on when we
  593. 23:00didn't have a CLI
  594. 23:02was that uh well the the agent would try
  595. 23:05to verify it work but it would basically
  596. 23:07rebuild the world each time and then
  597. 23:09every agent did it differently and I was
  598. 23:11starting to notice like that's very
  599. 23:12inefficient right I was wasting it it
  600. 23:14was actually not just about context
  601. 23:16usage but also speed, right? Like
  602. 23:18because now an agent had to actually go
  603. 23:19off and write the scripts or the CLI and
  604. 23:22test it and you know and it doesn't work
  605. 23:24and the last agent did it and it worked
  606. 23:26but it discarded it. So it was just very
  607. 23:28obvious at that point like I should just
  608. 23:30turn this into a CLI and put that inside
  609. 23:32of the skill uh so that every agent that
  610. 23:35uses it now benefits from that same
  611. 23:38piece. Um but I I also think like you
  612. 23:42know it's a good push for people to
  613. 23:43think about is how much of your skills
  614. 23:46and rules could actually be
  615. 23:48deterministic.
  616. 23:50Um that's like another core thing or or
  617. 23:53one of my core principles that I like to
  618. 23:55think about is yeah how do I uh make
  619. 23:59very efficient use of determinism and
  620. 24:02non-determinism
  621. 24:04and you know let Asians shine at the
  622. 24:07non-deterministic parts right because
  623. 24:09that's what they're trained to do. Um
  624. 24:11and the other parts which are much more
  625. 24:14mechanical or you know straightforward
  626. 24:16can be just pure determinism. Um, and
  627. 24:19you'll see this as well for things like
  628. 24:21doing migrations. Um, which is another
  629. 24:24big thing that I've I've talked about
  630. 24:26is, you know, going from one technology
  631. 24:29to another, especially one that is
  632. 24:32better for agents, right? And a lot of
  633. 24:34how you can do that migration is, I
  634. 24:36think, through things like scripts and
  635. 24:38CLIs, like the deterministic parts like
  636. 24:40code mods, you know, like crawling the
  637. 24:44abstract syntax tree and transforming
  638. 24:46code literally mechanically, right? like
  639. 24:48a script does it for you instead of the
  640. 24:50agent.
  641. 24:52>> Totally makes sense. I I mean I think
  642. 24:55what there's another thing there which
  643. 24:57is you're taking stuff away from the
  644. 25:00agent and you're kind of putting it in
  645. 25:03the environment too a little bit which
  646. 25:05is let's say you have a a thing that you
  647. 25:08notice the agent always gets wrong. You
  648. 25:10want to make that um just impossible
  649. 25:13within the environment. And that sort of
  650. 25:15comes down to code quality as well. I
  651. 25:18mean, I talk about a lot like having a
  652. 25:22what a good codebase means, right? What
  653. 25:24is a good codebase? And there's a
  654. 25:26definition I like which is a a good
  655. 25:28codebase is a codebase that's easy to
  656. 25:30make changes in, right? Easy to um
  657. 25:34change stuff without things screwing up.
  658. 25:36And that means that you have a lot of
  659. 25:37guard rails that you have a lot of um
  660. 25:40the agent or the human is constrained to
  661. 25:42very narrow paths. And that's again
  662. 25:44something you talk about in your talk.
  663. 25:46>> And you talk about this not only on the
  664. 25:48kind of sort of automated checks side of
  665. 25:52things. So linting and type checking
  666. 25:53blah blah blah but also in the way you
  667. 25:55design abstractions. And you guys even I
  668. 25:58think built a framework uh for your
  669. 25:59agent to work in too.
  670. 26:01>> I think what I'd love to hear is you
  671. 26:04obviously think of that as very
  672. 26:06important, right? And that's how
  673. 26:08important is that compared to other
  674. 26:10things you could be doing like building
  675. 26:11features or shipping work.
  676. 26:14Yeah, I think that's a um I almost feel
  677. 26:17like the new job of the engineer is
  678. 26:19really to to spend time on the
  679. 26:21environment. Um I almost actually wrote
  680. 26:23a tweet about this yesterday, but I but
  681. 26:25I didn't. But I think that
  682. 26:29I think that you you know if you if you
  683. 26:31haven't really spent time, you know,
  684. 26:33building trust in your agents and
  685. 26:34building skills and tools, you can get
  686. 26:37stuck in this mode where you're very low
  687. 26:39on that trust ladder, right? you don't
  688. 26:41have a lot of trust in your agents work.
  689. 26:43And so the only way to cope in that when
  690. 26:47you're in that situation is just to kind
  691. 26:48of lock in and micromanage your agents.
  692. 26:51And that's very time consuming. And when
  693. 26:53you're stuck in that mode, you don't
  694. 26:55really have the luxury to think about,
  695. 26:58you know,
  696. 27:00uh higher level things like like making
  697. 27:03yourself more productive. In the same
  698. 27:05way that uh I guess analogy would be
  699. 27:09like if you've never taken the time to
  700. 27:11learn like your tools right as a
  701. 27:13developer when you were writing code
  702. 27:14yourself and you know you've never heard
  703. 27:17of VS Code, you've never heard of Vim,
  704. 27:19you only knew about Notepad
  705. 27:22uh and you had hadn't even heard about
  706. 27:23Git. That's sort of the analogy. It's
  707. 27:25like you you haven't spent the time
  708. 27:27sharpening your own knives, right? And
  709. 27:29so, of course, if you have a dull knife,
  710. 27:32then everything's going to take a long
  711. 27:33time. Um, and you're going to be you're
  712. 27:36just going to be and and especially if
  713. 27:38you know deadlines are looming, then you
  714. 27:41don't have the now you're stuck in this
  715. 27:42rut, right? Where where you you you
  716. 27:45don't have sharp knives, you don't have
  717. 27:47good tools, but you're under all this
  718. 27:49pressure to ship, right? And so, all you
  719. 27:51can do is just focus on that. But I do
  720. 27:54think that, you know, if you can find
  721. 27:55yourself the time to actually spend time
  722. 27:58thinking about your setup, it's again
  723. 28:00going back to the cooking, you know,
  724. 28:02analogy,
  725. 28:04it's like uh, you know, if you, for
  726. 28:06example, if if cutting cutting cutting
  727. 28:09the garlic is like super slow, right?
  728. 28:11There are garlic mashers, right? You can
  729. 28:13you can buy and you put it in the thing
  730. 28:14and you like squeeze it out, right? It's
  731. 28:17super fast. Uh, machines and tools were
  732. 28:20invented for a reason, right? And so if
  733. 28:22you're operating a Michelin kitchen and
  734. 28:25your your your cooks had no tools, then
  735. 28:27of course everything's going to be
  736. 28:29extremely inefficient, very very, you
  737. 28:31know, every every every cook is going to
  738. 28:33make something up of their own. So I
  739. 28:35think the tools and the determinism to
  740. 28:37me are you know taking that part away
  741. 28:41and and just like you said about
  742. 28:42constraints as well. It's the
  743. 28:44constraints are are to me as well like
  744. 28:48uh actually a slight tangent on that is
  745. 28:50uh I think we should talk about
  746. 28:53TypeScript cuz like we we actually both
  747. 28:55share like a background in Typescript
  748. 28:57where you know you obviously have done a
  749. 28:58lot of work with TypeScript and total
  750. 29:00TypeScript and you know you're a leader
  751. 29:02in that space and I uh had adopted
  752. 29:05TypeScript pretty early and I had given
  753. 29:07like a talk or two at Typescript conf uh
  754. 29:10many years ago and so one of the the
  755. 29:13talk that I did actually was about type
  756. 29:15systems and constraining the
  757. 29:18constraining types. Like one of my most
  758. 29:20favorite things about Typescript is
  759. 29:22actually type narrowing, right? This
  760. 29:23idea that you go from a very broad type,
  761. 29:26right? That could be anything and then
  762. 29:28you through type guards and you know
  763. 29:31type narrowing and you know runtime
  764. 29:33checks you can actually narrow the space
  765. 29:35and say like oh this isn't just a string
  766. 29:38this is a very special type of string.
  767. 29:40It's a constant, right? like I but I I
  768. 29:42determine that through the type system
  769. 29:45and in a way it's like uh there's a lot
  770. 29:47of parallels I think to that with
  771. 29:49constraints in your codebase where is it
  772. 29:52you're you're constraining the space
  773. 29:55right if you if you think about category
  774. 29:57theory as well you know you're
  775. 29:58constraining the the number of possible
  776. 30:01types right that can can exist
  777. 30:05and you're saying there's only one type
  778. 30:07right and for for us like that framework
  779. 30:10that I'm called Dune. Uh it's not an
  780. 30:13open source framework. It's the the way
  781. 30:15I describe it to people. It's it's kind
  782. 30:17of like a internal Nex.js for our
  783. 30:20Electron apps. Uh but it comes with a
  784. 30:23lot of really really restrictive lit
  785. 30:25rules and the codebase is designed in a
  786. 30:28way that there's really only one way to
  787. 30:30do something. So we make use a we make
  788. 30:32use of a lot of conventional
  789. 30:35patterns. So like features all go into a
  790. 30:38specific directory. Well, every feature
  791. 30:41has its own directory. As an example,
  792. 30:43you know, there's like a a thing that
  793. 30:44discovers features like through a
  794. 30:46registry and like crawling the codebase
  795. 30:48and stuff like that. But this
  796. 30:51conventional pattern and the lint rules
  797. 30:55make for an environment where it's
  798. 30:57actually very hard to write bad code.
  799. 31:01And that sort of frees up the it both
  800. 31:04frees up your own mental uh you know
  801. 31:09capacity as well as the agent sort of
  802. 31:11doesn't have to think about that anymore
  803. 31:14where it's just like oh there's only
  804. 31:15there's I should just if I want to add a
  805. 31:17new feature it just goes in the feature
  806. 31:18the new feature directory and all the
  807. 31:20code goes in there and I'm not going to
  808. 31:22append to a god file right that was
  809. 31:25really actually the inspiration for
  810. 31:26those feature directories is the very
  811. 31:29first couple of versions of Grockbot
  812. 31:32were composed of like eight god files
  813. 31:36which were like at least 10,000 lines
  814. 31:38long if not longer and so I kind of had
  815. 31:40to break it up into smaller pieces.
  816. 31:43Uh but it was just observing you know
  817. 31:46actually that's another important part
  818. 31:47is observing how agents fail and then
  819. 31:50every time you see a mistake every time
  820. 31:52you see something that could be done
  821. 31:54better you think you step back and think
  822. 31:57how do I turn this into a lint rule? How
  823. 31:58do I make it so that the code base makes
  824. 32:01this impossible? Right? And it comes
  825. 32:03back to me for my you know my background
  826. 32:05learning Typescript and types uh type
  827. 32:08systems is how do I constrain the space
  828. 32:12so that you know I know precisely what
  829. 32:15I'm working with and I think yeah
  830. 32:16there's a lot of parallels there.
  831. 32:18>> Totally makes sense. And don't I mean
  832. 32:21it's funny that you mentioned TypeScript
  833. 32:22and Goth files in the same sentence
  834. 32:23because Typescript famously has a
  835. 32:2525,000line type uh file.
  836. 32:30Although I don't know if they've
  837. 32:30rewritten that and go as they probably
  838. 32:32have, haven't they? Um,
  839. 32:34okay. So, environment is important. You
  840. 32:38should watch your agent like a hawk to
  841. 32:39make sure that any mistakes it makes.
  842. 32:42You turn them into things in the
  843. 32:44environment. And the benefit of the
  844. 32:45environment is you're not overloading
  845. 32:47your agent, right, in terms of rules, in
  846. 32:49terms of things it has to remember. It's
  847. 32:51just in the environment. And so it
  848. 32:53stumbles into the rules and exactly um
  849. 32:56you know bounces off them and hits them
  850. 32:57at the right moment.
  851. 32:59>> So okay, we still haven't talked about
  852. 33:01the 2,500 PRs. Where do those come from?
  853. 33:03Like how do you you've built your trust
  854. 33:06ladder, you've worked on your
  855. 33:07environment, and you understand, okay,
  856. 33:09um I now want to scale up. So what are
  857. 33:13the mechanics of that scaling? Are you
  858. 33:16um initiating 2500
  859. 33:19like chats per month? That can't be
  860. 33:21right. So there must be are there any
  861. 33:23kind of automated triggers that trigger
  862. 33:26stuff in your repo? Like how do you get
  863. 33:28the software factory kind of triggering
  864. 33:30work by itself?
  865. 33:32>> Right.
  866. 33:34Um I'll definitely say that the
  867. 33:36prerequisite to you know something like
  868. 33:40a very high volume of of pull requests
  869. 33:43um is the environment. you know, the the
  870. 33:46stuff we just talked about where I
  871. 33:48definitely would not have been able to
  872. 33:49do this if I had not spent the time, you
  873. 33:52know, thinking about the kitchen, right,
  874. 33:53and the knives and the tools for my
  875. 33:55Asians. And so, in a way, I I think of
  876. 33:58this as
  877. 34:00I've spent the time building one kitchen
  878. 34:02and one restaurant. And now I I'm in a
  879. 34:05position where I don't actually have to
  880. 34:07be there anymore because the
  881. 34:10environment, you know, that the same
  882. 34:12analogy, right? It works really well.
  883. 34:14Yeah. You open chain of restaurants,
  884. 34:16right? That's
  885. 34:16>> Yeah. Exactly. Yeah. Exactly. It's like
  886. 34:19you're Gordon Ramsay and you know, you
  887. 34:21you've taught your executive chef like
  888. 34:23all the tricks of the of coming up with
  889. 34:25great menu. Uh and like the kitchen is
  890. 34:28set up really well. Everything's just
  891. 34:30perfect and you're now in a position
  892. 34:32where you can open your second your
  893. 34:33third restaurant. And I guess I I sort
  894. 34:37of see each project that I work on, like
  895. 34:39each big chat is sort of like a
  896. 34:41restaurant, right? and and I'm I'm I
  897. 34:44have multiple of them operating at the
  898. 34:46same time and I'm sort of like
  899. 34:48helicoptering between them sometimes
  900. 34:51some more than others depending on how
  901. 34:53in the loop I am but yeah definitely I
  902. 34:55think there's there there are external
  903. 34:59triggers and context that those projects
  904. 35:02don't have that
  905. 35:05for a long time I was the proxy for that
  906. 35:08so uh the best example I have is like
  907. 35:10you know you have a project that's
  908. 35:11working on a feature
  909. 35:13uh or you're trying to fix a bug and
  910. 35:15you're getting bug reports, but the bug
  911. 35:17reports are going to things like Slack
  912. 35:19or linear or X, right? And these are
  913. 35:24external systems that aren't connected
  914. 35:26to your inner loop. So, I like to talk
  915. 35:28about this outer loop and the inner
  916. 35:30loop.
  917. 35:32Uh I don't know if I'm using the
  918. 35:33definition correctly but to me my inner
  919. 35:35loop is like basically my engineers my
  920. 35:38agent engineers working on the code to
  921. 35:41an building towards an intent or
  922. 35:45snapshot of my intent right and the
  923. 35:48thing about that is that the snapshot
  924. 35:50can go stale right new information comes
  925. 35:52to light that I then have to be the
  926. 35:54proxy of and you know transfer that
  927. 35:57context to my agent so you know if you
  928. 35:59if you don't have these triggers pulling
  929. 36:02information back into the interloop,
  930. 36:04then you sort of have to play that role
  931. 36:07where you're you're off, you know, in
  932. 36:09Slack or X or or whatever and you're
  933. 36:12gathering context, right? You're getting
  934. 36:14context about bug reports, about feature
  935. 36:16requests, about, you know, something
  936. 36:19someone said about, you know, our
  937. 36:20backend infrastructure has some
  938. 36:22limitation, you know, all that
  939. 36:24information, you have to f that across
  940. 36:27to your agent. So that's where I think
  941. 36:29like tools like Grogbot are really good
  942. 36:32because they help you automate the outer
  943. 36:35loop as well. And when you connect those
  944. 36:37two loops, it's very very powerful
  945. 36:39because now all of a sudden your agents
  946. 36:41have the ability to get context for this
  947. 36:44for themselves, right? If for example
  948. 36:48uh you know either through just as a
  949. 36:51simple example like maybe you have the
  950. 36:52Slack MCP, right? Or you have uh your
  951. 36:56own harness, right, that you've built a
  952. 36:58Slack subscription into for a particular
  953. 37:00Slack channel. Now all of a sudden you
  954. 37:03can tell your agents, okay, subscribe to
  955. 37:05the Slack channel. Every time there's a
  956. 37:08uh, you know, bug report about
  957. 37:11something, go off and triage that thing,
  958. 37:14right? Go reproduce the issue, right?
  959. 37:16Using the verification skills that we've
  960. 37:18already spent time building and all of
  961. 37:20those other skills that we've set up so
  962. 37:22that I have a lot of trust, right? I
  963. 37:24have a lot of trust that these agents
  964. 37:25can actually go off and understand the
  965. 37:28bug, you know, uh verify that the bug
  966. 37:31actually still exists on main and it
  967. 37:34wasn't
  968. 37:35something about you maybe the users
  969. 37:38setup or their data or maybe I don't
  970. 37:40know they didn't install a dependency or
  971. 37:42something like that like uh basically I
  972. 37:45think uh creating that yeah creating
  973. 37:49those two loops and connecting them is
  974. 37:52really a very important part of the job
  975. 37:53these days. Um, especially if you are
  976. 37:56thinking about how to scale yourself.
  977. 37:58So, a big theme here is really just like
  978. 38:01always thinking about like what where am
  979. 38:04I the bottleneck in this process? Why do
  980. 38:07my agents need me, you know, to answer
  981. 38:09this question? I I always like to think
  982. 38:11about that. And so I try to think about
  983. 38:13how do I actually get the agent to
  984. 38:15answer its own question, right? But not
  985. 38:17by hallucinating, not by guessing, but
  986. 38:19actually real data. And you know, a lot
  987. 38:22of people talk about this idea of a
  988. 38:23company brain, right, or a context
  989. 38:25graph. I feel like those terms are
  990. 38:27unnecessarily
  991. 38:29complex uh or even abstract. To me, it's
  992. 38:33just about um how do I take information
  993. 38:37that my agent needs that I would
  994. 38:39otherwise have to go and pass it myself
  995. 38:42and just teach it how to do it, right?
  996. 38:44And that removes me from the equation.
  997. 38:47And so how I arrive at 2,000 or however
  998. 38:50many PRs is the fact that I have all
  999. 38:53these loops set up, right? And so uh it
  1000. 38:57allows me to open chain restaurants,
  1001. 39:00right? I can I can really parallels
  1002. 39:02myself. So yeah, I'm not sitting there
  1003. 39:04creating 2,500 chats, right? Of course,
  1004. 39:06it's really like these projects are um
  1005. 39:10actually cursor has a new feature called
  1006. 39:12projects which are these like
  1007. 39:13coordinator agents. Um and so the
  1008. 39:17coordination co coordinator agents are
  1009. 39:19really good at sort of delegating and
  1010. 39:21not doing work of their own but they
  1011. 39:23manage and supervise like almost a list
  1012. 39:25of tasks and they spawn sub agents to go
  1013. 39:28and do them. And so I'm just constantly
  1014. 39:30feeding context or teaching the agents
  1015. 39:32how to get their own context and then
  1016. 39:33they're going off and doing the work for
  1017. 39:35me. Uh and really the big the last thing
  1018. 39:38I'll say to this is like the big unlock
  1019. 39:40for me for getting to 2,000 PRs is
  1020. 39:43starting from the question and working
  1021. 39:45backwards of how do I get to the point
  1022. 39:48where my agent can merge its own code?
  1023. 39:51Because
  1024. 39:53the obvious thing people ask me when
  1025. 39:55when they when I tell them, "Oh, I
  1026. 39:56shipped 2,000 and 2,500 pull requests
  1027. 39:59last month." They'll be like, "How did
  1028. 40:00you review that?" Right? That that's a
  1029. 40:02lot of PRs to review. Like your team
  1030. 40:04must hate you.
  1031. 40:05>> Do do you mind if we go there in a
  1032. 40:07second? Because a good question about
  1033. 40:09that.
  1034. 40:09>> Yeah. Yeah. Yeah.
  1035. 40:10>> I want to like this analogy is great. I
  1036. 40:12want to like deepen it a bit which is
  1037. 40:15before if you're like manually
  1038. 40:17initiating all those chats it's like
  1039. 40:18you're bringing the orders to your chefs
  1040. 40:20manually right whereas if you've got an
  1041. 40:22agent sort of like doing the expo then
  1042. 40:25you're able to sort of run it yourself
  1043. 40:26itself what is what does that concretely
  1044. 40:30look like then you've got these sort of
  1045. 40:31grock bots that are um subscribing to
  1046. 40:33channels pulling in Slack messages and
  1047. 40:36you it sounds like have a couple of
  1048. 40:37coordinator agents or like chief of
  1049. 40:39staff agents that like monitor that or
  1050. 40:43something like when you look at your
  1051. 40:45computer to manage your agents, what
  1052. 40:47does it look like?
  1053. 40:49>> Yeah. So, so uh this is I guess somewhat
  1054. 40:53confusing but we're working on you know
  1055. 40:54simplifying and unifying but so uh
  1056. 40:58there's graphbot uh which or you know
  1057. 41:00you can use other tools of course as
  1058. 41:02well but I I largely think of these
  1059. 41:04tools as like your outer loop. These are
  1060. 41:06tools like you know Grabbot that have
  1061. 41:08connectors right these are connectors I
  1062. 41:10guess they a lot of people call them
  1063. 41:12personal agents um but they're
  1064. 41:14connectors to things like your email
  1065. 41:16your calendar slack uh plaid I don't
  1066. 41:20know like all these different services
  1067. 41:22and they are a great source of pulling
  1068. 41:24context in to your work so the same way
  1069. 41:29that a human like you know if I were if
  1070. 41:31I was a manager and I was leading a team
  1071. 41:34of engineers years. Um, you know, like
  1072. 41:37when I used to work in Netflix, one of
  1073. 41:39the biggest things that managers would
  1074. 41:40talk about was this idea of context not
  1075. 41:43control, which funnily enough, you know,
  1076. 41:46has so much uh has so much uh carry over
  1077. 41:49to the agents world. Uh, of you know,
  1078. 41:52you you know, you you of course can
  1079. 41:55drive to an outcome you want by control,
  1080. 41:57right? Like by micromanaging, but what
  1081. 42:00you want is to provide context instead,
  1082. 42:02right? like teach the agent, teach your
  1083. 42:04engineers how to be self-sufficient and
  1084. 42:06then you don't have to micromanage them.
  1085. 42:09>> Um, and so I see a lot of parallels
  1086. 42:11there. Uh, but yeah, graphbot. So,
  1087. 42:13concretely, I have some graph bots that
  1088. 42:16look at my Slack channels, look at my X,
  1089. 42:19uh, or my emails, uh, or linear, and
  1090. 42:23they're just constantly they have
  1091. 42:24routines that subscribe. So they're
  1092. 42:26constantly watching and I have I I'll
  1093. 42:29tell them things like you know uh I'll
  1094. 42:31watch for issues with uh bugs in the
  1095. 42:34graphbot desktop app as an example. Uh
  1096. 42:37and whenever you find that send it to my
  1097. 42:40cursor project. So one of the really
  1098. 42:42cool things about grabbot is it connects
  1099. 42:43to cursor. So cursor has uh like I I
  1100. 42:47just mentioned this new feature called
  1101. 42:49projects. And a project is really a uh
  1102. 42:52again like a you get a coordinator agent
  1103. 42:55that's in the cloud. It has its own
  1104. 42:57computer and all it really does is like
  1105. 42:59it's a manager of agents. It's like your
  1106. 43:01executive chef, right? Your your chief
  1107. 43:03of staff. It doesn't do the work itself.
  1108. 43:06It delegates and orchestrates and
  1109. 43:08manages the work of other sub agents to
  1110. 43:12you know that report to your chief your
  1111. 43:16chief uh of staff. And it basically is
  1112. 43:20responsible for driving the work forward
  1113. 43:22and managing things and uh passing
  1114. 43:25context to them.
  1115. 43:27>> So if you get a sudden burst of issues,
  1116. 43:28let's say you get 30 issues at once in
  1117. 43:30one payload or something or very quickly
  1118. 43:32the coordinator agent can figure it out
  1119. 43:34and delegate.
  1120. 43:34>> Yeah, exactly. It gets like uh you know
  1121. 43:3630 the 30 or so payloads and spawns a
  1122. 43:39sub agent or a single coordinator agent.
  1123. 43:41It can actually do a bunch of different
  1124. 43:42topologies of agents and it will sort of
  1125. 43:46figure out the best way to uh you know
  1126. 43:48efficiently distribute the tasks to your
  1127. 43:52team of agents. Um so I use uh cursor
  1128. 43:57projects a lot um and I also use grapot
  1129. 44:01a lot and cursor projects are my inner
  1130. 44:03loop and grabbot is my outer loop.
  1131. 44:05Grabbot takes all the context, external
  1132. 44:08context, gives it to the projects
  1133. 44:11because it can actually just send
  1134. 44:12messages to those projects, right? You
  1135. 44:14don't even have to open cursor. You can
  1136. 44:16just tell your grabbot, okay, create a
  1137. 44:18project, right, for these series of
  1138. 44:20tasks. They're all related, right? Maybe
  1139. 44:23as an example, you know, you've had a uh
  1140. 44:26a big burst of issues that are all about
  1141. 44:28performance, right? Your app is slow uh
  1142. 44:31and they're all connected, right? Maybe
  1143. 44:34some of them even have a similar fix,
  1144. 44:37right? But and you can certainly go off
  1145. 44:39and just spawn one agent per task, but
  1146. 44:42then you've lost that sort of thread
  1147. 44:43between them, right? And and you may
  1148. 44:46duplicate work or you may not really
  1149. 44:48think about the higher level problem.
  1150. 44:49You know, sometimes when you you you
  1151. 44:50solve bugs, you know, it helps to have
  1152. 44:53multiple bug reports that are are
  1153. 44:55slightly different because it helps you
  1154. 44:57really, you know, zoom out and see
  1155. 44:58actually, you know, the problem when I
  1156. 45:00looked at this one report, I thought the
  1157. 45:01bug was here, but actually when when I
  1158. 45:03see the other multitude of bugs is
  1159. 45:05actually up here,
  1160. 45:07>> right?
  1161. 45:07>> Yeah. Got you. So that that's why you
  1162. 45:09have so many agents in that loop then,
  1163. 45:10right? Because it's not just you have um
  1164. 45:13like you have a bug report comes in, you
  1165. 45:15spawn a single agent to look at that bug
  1166. 45:17report. that a that single agent will be
  1167. 45:19duplicating work with other um other
  1168. 45:21agents, right? Because if there are
  1169. 45:23multiple bug reports coming in through
  1170. 45:24the same thing, that can be duplicated
  1171. 45:25work.
  1172. 45:26>> Yeah.
  1173. 45:26>> Fascinating.
  1174. 45:28>> That's really fascinating. Okay. And so
  1175. 45:30this just this endless series of
  1176. 45:32triggers um coming from real users
  1177. 45:34reporting real reports um builds up this
  1178. 45:38sort of and accelerates the factory sort
  1179. 45:40of adds more orders in. Other than bug
  1180. 45:43reports, are there any other sources
  1181. 45:44that you use for like um accelerating
  1182. 45:48for pushing these PRs?
  1183. 45:51>> Uh well, funnily enough, it's some of it
  1184. 45:54comes from uh reading the code, too. So,
  1185. 45:57I guess I have sort of uh well, so to
  1186. 46:01clarify that, you know, the 2,500 PRs,
  1187. 46:03they're not obviously like 2,500
  1188. 46:06features, right? they are a lot of the
  1189. 46:08work actually is spent on gardening like
  1190. 46:12another term that I really love. Uh
  1191. 46:15where
  1192. 46:17so I guess this is more important when
  1193. 46:19you have a big team of engineers human
  1194. 46:21engineers that you work with where and
  1195. 46:25also this goes back a little bit to what
  1196. 46:26I was talking about with the
  1197. 46:27environment. You know, setting up a
  1198. 46:28really good environment that doesn't
  1199. 46:29just help you and your agents, but
  1200. 46:31everybody on your team, right? Think of
  1201. 46:33a new hire who doesn't have a lot of
  1202. 46:34context on all of your engineering
  1203. 46:36practices joining your your team. And if
  1204. 46:39you have a really good environment, they
  1205. 46:41can be productive from day one, right?
  1206. 46:43They can they don't have to like, you
  1207. 46:44know, make open a bunch of lowquality
  1208. 46:46PRs. They can start, you know, they can
  1209. 46:49start just turning out really good code.
  1210. 46:52Um,
  1211. 46:54and uh, yeah, I think I I sort of lost
  1212. 46:57my train of thought.
  1213. 46:58>> I've got a I've got a followup, which is
  1214. 47:00what's what are the mechanics of like
  1215. 47:02triggering
  1216. 47:03>> like how when when do you trigger a a
  1217. 47:06agent
  1218. 47:08to go and look at the code, right?
  1219. 47:10Because some people might say, "Oh,
  1220. 47:11let's just do that every hour or
  1221. 47:13something or like on a chron job or
  1222. 47:15what's
  1223. 47:16>> Oh, yeah. Yeah. Yeah. Yeah. Uh I saw
  1224. 47:19some of your recent tweets as well about
  1225. 47:20like you know the some of the tweets
  1226. 47:22you've been doing which are great for
  1227. 47:24setting up your routines. Uh I have some
  1228. 47:27routines like that as well. Um so uh one
  1229. 47:32of them is uh
  1230. 47:35like looking through just another simple
  1231. 47:38example is you know React has a lot of
  1232. 47:41foot guns. Um, so, uh, as as I'm sure
  1233. 47:44you're aware. And so I have an agent
  1234. 47:46that's just constantly looking for band
  1235. 47:48patterns. And the interesting thing
  1236. 47:51about that one is that I don't actually
  1237. 47:52tell it to fix the issue first. I tell
  1238. 47:54it to append it to a document. And then
  1239. 47:57every couple of days I look at it and I
  1240. 47:59see actually these are all the same
  1241. 48:00thing, you know, and so that gives me,
  1242. 48:03you know, you almost want like a buffer,
  1243. 48:05a queue. Sometimes that's actually more
  1244. 48:07effective than just spawning off a
  1245. 48:09couple of like a lot of sub agents to
  1246. 48:11fix every single thing because when you
  1247. 48:13are in kind of pure execution mode and
  1248. 48:17just trying to like you know f uh you
  1249. 48:20know execute on the orders that are
  1250. 48:21coming in very fast you sometimes miss
  1251. 48:23the big picture. So sometimes having a
  1252. 48:26buffer forces you to think about the big
  1253. 48:28picture because you you you have these
  1254. 48:31artifacts and things that you can look
  1255. 48:33at as a human um and sort of use your
  1256. 48:36own human judgment to or I guess you can
  1257. 48:39use an agent to do that as well. But you
  1258. 48:41give the agent and yourself a way to
  1259. 48:44identify patterns, right, that you might
  1260. 48:46otherwise miss if you're just only
  1261. 48:49solving each bug at a time. And that's
  1262. 48:52also really the benefit of having
  1263. 48:53something like a chief of staff agent is
  1264. 48:56uh it can see the forest right uh in
  1265. 49:00addition to actually doing the
  1266. 49:02execution.
  1267. 49:04>> Fascinating. That's I mean my brain is
  1268. 49:07exploding a bit there with the sort of
  1269. 49:08chief of staff at the software factory.
  1270. 49:10I might have to change some of the
  1271. 49:12course that I'm filming next week.
  1272. 49:13That's
  1273. 49:15>> uh all right. Let's talk about let's
  1274. 49:16talk about review, right? because this
  1275. 49:18is the reply that you get, you know, is
  1276. 49:20>> did you read did you taste all 2500 of
  1277. 49:24those dishes as they swept past you?
  1278. 49:27>> And I assume the answer is a variety is
  1279. 49:30a version of no.
  1280. 49:34>> Yeah, I think you you you don't want to
  1281. 49:36be in a position where you're not
  1282. 49:37tasting your food ever again. Uh but you
  1283. 49:40also, you know, for scale, you cannot be
  1284. 49:42tasting every single dish that comes out
  1285. 49:44of your kitchen, especially if you have
  1286. 49:46multiple restaurants. So it becomes more
  1287. 49:48about sampling right and thinking about
  1288. 49:50the processes in the same way that you
  1289. 49:53know if I guess maybe this is where the
  1290. 49:55the the factory analogy is a bit more
  1291. 49:58apt is you know as a quality supervisor
  1292. 50:01on a factory you you can't look at every
  1293. 50:04single item you sample right you take
  1294. 50:06you you you go in there every day and
  1295. 50:09you look at the quality of the pull
  1296. 50:11requests you look at the code that the
  1297. 50:12agents are writing and you scrutinize it
  1298. 50:16very rig rigorously and you think about
  1299. 50:19all the inefficiencies, the bad patterns
  1300. 50:21that the agents are doing and then you
  1301. 50:24think about how to course correct the
  1302. 50:26environment, right? Not not that single
  1303. 50:28agent. Uh because if maybe if it if it
  1304. 50:33was a one-off incident, it's fine. You
  1305. 50:35know that maybe there's nothing to fix
  1306. 50:36there. But if you actually notice that
  1307. 50:39multiple agents are are having the same
  1308. 50:41issue, right? They're taking the same
  1309. 50:43shortcut. they're they're propagating
  1310. 50:45the same workaround everywhere. Uh
  1311. 50:48that's a sign that you should go off and
  1312. 50:50think about how to uh amend your kitchen
  1313. 50:53or your factory, right? Like thinking
  1314. 50:55about your skills, your constraints,
  1315. 50:57your lints, your type systems um and
  1316. 51:02setting or adjusting it so that that
  1317. 51:04problem doesn't happen again. And when
  1318. 51:06you do that enough times, then you get
  1319. 51:08to a place where the codebase is again
  1320. 51:10like the environment is so constrained
  1321. 51:13and so it guides you so well that you
  1322. 51:16can just you can just step away, right?
  1323. 51:19That's the dream. And I'll I'll
  1324. 51:20definitely say it um it's very hard to
  1325. 51:23get to this point. I don't want to sell
  1326. 51:26this as like, you know, something that
  1327. 51:27you can just do easily by using PAC.
  1328. 51:30Like it takes a lot of time and effort
  1329. 51:32to think about your code and where you
  1330. 51:35see your agents failing and thinking
  1331. 51:38very thoughtfully, intentionally and
  1332. 51:40setting up guard rails and constraints
  1333. 51:43so that they do the right thing by
  1334. 51:45default.
  1335. 51:47>> And you're not like if to go back to the
  1336. 51:50software factory analogy, this isn't a
  1337. 51:52dark factory, right? This the lights are
  1338. 51:54on, right?
  1339. 51:55>> It kind of is. Yeah, actually.
  1340. 51:56>> Is it?
  1341. 51:57>> Yeah. Well, it's dark in the sense that
  1342. 51:59so um it's dark in the sense that well I
  1343. 52:02think if my agents are merging their own
  1344. 52:04pull requests it's sort of become dark
  1345. 52:07where I go to sleep my agents now work
  1346. 52:0924/7
  1347. 52:11uh I have I have the equivalent of like
  1348. 52:14more than 10 chiefs of staff right each
  1349. 52:16working on a different area like for
  1350. 52:18example I have one that's working on
  1351. 52:20performance of the Grockbot desktop app
  1352. 52:23I have one that's working on uh fixing
  1353. 52:25bugs that users report I have one that's
  1354. 52:28exploring rewriting it in a different
  1355. 52:31language just for fun, you know, like
  1356. 52:32what if what if, you know, just
  1357. 52:34reimagining what what it would be if it
  1358. 52:35was like a native app. It's just a toy.
  1359. 52:38Um, but the idea is like yeah, I uh I
  1360. 52:41when you spend the time setting up your
  1361. 52:43environment, I've gotten to a point
  1362. 52:45where I review the pull request after
  1363. 52:47it's landed, right? I I tell my agents
  1364. 52:50full autopilot is is something that you
  1365. 52:52can do in in PAC and that will trigger
  1366. 52:56off this very intense rigorous
  1367. 52:58verification loop where it will spawn a
  1368. 53:00bunch of verifier agents for every pull
  1369. 53:03request and it will fuzz right fuzzing
  1370. 53:06meaning that it will actually run the
  1371. 53:07application. It's going to click around
  1372. 53:09and try to use it like a real human.
  1373. 53:11look for regressions, look for bugs in
  1374. 53:13your implementation and um it will try
  1375. 53:17to find issues with the thing and then
  1376. 53:19it will fix it itself. It'll do that
  1377. 53:21again and eventually get the PR to a
  1378. 53:24state where it can land.
  1379. 53:26Uh so it does it does it is quite token
  1380. 53:29intensive. You can tune this of course.
  1381. 53:32Uh so you know instead of like 10
  1382. 53:34verifier agents you might do like one,
  1383. 53:37right? Or you just tell the agent to
  1384. 53:39verify it's done work. But yeah, the key
  1385. 53:41thing is the verification part is really
  1386. 53:44the key piece that gives me a lot of
  1387. 53:46confidence
  1388. 53:48that I guess verification plus the
  1389. 53:49environment, right? It's these the
  1390. 53:51combination of these two things that
  1391. 53:52allow me to step away and say agents go
  1392. 53:54off and merge your thing. I'll review it
  1393. 53:56in the morning by looking at my commit
  1394. 53:58history
  1395. 53:59>> and if I see problems, I go and course
  1396. 54:02correct,
  1397. 54:02>> right? And I'll go and revert or modify,
  1398. 54:06add new link rules and whatever. Um, so
  1399. 54:10it does it does take time to get to that
  1400. 54:12point, but once you get it, oh, it's so
  1401. 54:14it feels so magical. Uh, I I I tell
  1402. 54:17people like I'm sleeping so much better
  1403. 54:19now because, you know, it took it the
  1404. 54:22very first day I turned on the sort of
  1405. 54:24dark factory was very scary because I
  1406. 54:26was like, "Ooh, what if I call the SE,
  1407. 54:28right? What if I break something
  1408. 54:29overnight?"
  1409. 54:30>> Uh, and it took a lot of it took a lot
  1410. 54:34of uh bravery, I think, to do that, but
  1411. 54:37>> somehow I did it. And yeah, now I'm in a
  1412. 54:39place where my Asians are are merging
  1413. 54:42their own code while I sleep.
  1414. 54:43>> It sounds like
  1415. 54:44>> I think it's dark in that sense.
  1416. 54:46>> Yes, it's dark sometimes, right? You do
  1417. 54:48sometimes.
  1418. 54:48>> That's true. That's true.
  1419. 54:49>> Because I think of a dark factory is
  1420. 54:51like almost like if you take the
  1421. 54:53original definition of Kapathy's vibe
  1422. 54:55coding, right, which is the code almost
  1423. 54:57doesn't exist. You forget that code
  1424. 54:59might be a thing. I think your approach
  1425. 55:01is totally different from that, which is
  1426. 55:03that code and the environment is
  1427. 55:06essential. And if the code in the
  1428. 55:07environment are bad, then you will get
  1429. 55:09bad outputs. Garbage in, garbage out. So
  1430. 55:12I I I think this is a this is a
  1431. 55:15different thing. It's like, you know,
  1432. 55:18the I don't know, maybe there's a dimmer
  1433. 55:20switch or something, right? Like, you
  1434. 55:21know, some parts of dark, some parts
  1435. 55:23were light. This is why the maybe the
  1436. 55:24the kitchen is a better analogy
  1437. 55:27>> the restaurant because you know even as
  1438. 55:29a as a as a
  1439. 55:32as a restaurant restaurant you still
  1440. 55:35might go to your restaurants every now
  1441. 55:37and then to take take a peek in taste
  1442. 55:39the food right
  1443. 55:40>> uh I think that's
  1444. 55:41>> the idea of sampling instead of blocking
  1445. 55:42I think is really important
  1446. 55:44>> I think what would you say to people who
  1447. 55:46are in I guess you're obviously in a
  1448. 55:49pretty security conscious environment
  1449. 55:50where you're working very security
  1450. 55:52conscious
  1451. 55:53>> mh Um maybe there are folks working in
  1452. 55:57like um medical applications or law or
  1453. 56:00finance or something. I think of the
  1454. 56:03like some PRs are kind of like two-way
  1455. 56:05doors which is you can merge it and then
  1456. 56:08revert it, right? It's cheap back
  1457. 56:09through. But there are some PRs that are
  1458. 56:11one-way doors, right? That will cause
  1459. 56:12data loss of some kind that will
  1460. 56:16>> do something that can't be easily walked
  1461. 56:18back. How do you deal with situations
  1462. 56:21where most of your PRs, let's say, are
  1463. 56:23one-way doors? Like, is this something
  1464. 56:25you just wouldn't recommend or like what
  1465. 56:27do you think?
  1466. 56:28>> Yeah, I think that's a really good
  1467. 56:30question. I think that
  1468. 56:32it all comes back to me to the quality
  1469. 56:34of the verification that you're able to
  1470. 56:37um get out of your agent. And I think
  1471. 56:41for domains where the work is
  1472. 56:44verifiable,
  1473. 56:46this is easier, right? and the the
  1474. 56:48oneway doors become two-way doors in a
  1475. 56:51sense.
  1476. 56:53But I guess I don't know if you're
  1477. 56:54working on something that is like
  1478. 56:56extremely
  1479. 56:57is very hard to verify programmatically
  1480. 57:00then I think yeah you're definitely in a
  1481. 57:02position where it's very hard to get to
  1482. 57:04that point. Um so I do think like yeah
  1483. 57:07verifiability of the domain is an
  1484. 57:10important aspect to be able to do this.
  1485. 57:13Um and software engineering is just one
  1486. 57:15of those things where it's quite
  1487. 57:16verifiable in in a lot of cases maybe
  1488. 57:19not totally um you know like other
  1489. 57:22domains like mathematics I think are
  1490. 57:24another example of not all of it of
  1491. 57:26course but some aspects of mathematics
  1492. 57:30can be verifiable
  1493. 57:32if you write a proof for example um and
  1494. 57:35so yeah I think it's a great question
  1495. 57:38that I don't really have the answer to
  1496. 57:40and I think that this is something the
  1497. 57:41industry and us as engineers will have
  1498. 57:43to figure out is you know my sort of uh
  1499. 57:48hope and prediction for the future is
  1500. 57:49that we'll see more and more interesting
  1501. 57:52new agentoriented programming languages
  1502. 57:56and one of the most fascinating ones
  1503. 57:57that I've seen so far is this one called
  1504. 57:59bend bend d bend um and that language is
  1505. 58:04one where it kind of marries programming
  1506. 58:08with proofs right there used to be a
  1507. 58:12time, you know, where you actually had
  1508. 58:14to write your proofs in a different
  1509. 58:16language. And proofs, by the way, for
  1510. 58:18those uh who who aren't familiar is this
  1511. 58:20idea of uh that you can sort of formally
  1512. 58:24verify that some code is correct
  1513. 58:26mathematically, right? Especially if
  1514. 58:29you've written your code in a very
  1515. 58:31functional programming way.
  1516. 58:34uh but for the longest time you had to
  1517. 58:36do that in a separate language like lean
  1518. 58:38or tla+ or uh I'm blanking on some of
  1519. 58:42the other other examples but uh like
  1520. 58:45languages like that where you would
  1521. 58:46construct the mathematical proof and
  1522. 58:48then use a solver essentially to det
  1523. 58:52that that you've covered all the cases
  1524. 58:54you don't have like a race condition or
  1525. 58:56or whatever.
  1526. 58:58So yeah, I think
  1527. 59:02trying to sum up the question, I think
  1528. 59:03yeah, if you are in a position where you
  1529. 59:05can figure out how your agents can truly
  1530. 59:07verify the work in a way that gives you
  1531. 59:10confidence, you can actually, you know,
  1532. 59:13uh have the PRs merge cuz if it
  1533. 59:16compiles, right, if it if the proofs
  1534. 59:18show you that it's correct, then why
  1535. 59:21wouldn't you just merge it? Um but of
  1536. 59:24course, yeah, not all the means are
  1537. 59:26verifiable. Yeah, it's a tough one. Um,
  1538. 59:31okay. I think we've got to think about
  1539. 59:34wrapping up because we are nearly on the
  1540. 59:35hour. Have you Have you got something
  1541. 59:36after this? I mean, I've got something
  1542. 59:38before I give my son dinner, but
  1543. 59:40>> I I can go a bit longer after you.
  1544. 59:42>> Okay, let's let's go five minutes longer
  1545. 59:43then. Um I think I just want to have one
  1546. 59:46more question which is
  1547. 59:49I think I want to ask how you see Pstack
  1548. 59:55and how you see skills in general like
  1549. 59:57in terms of we talked about this before
  1550. 1:00:00we went on air which is like people
  1551. 1:00:02think of as like my skills versus your
  1552. 1:00:05skills and how do you combine frameworks
  1553. 1:00:08together? How do you use Pstack with my
  1554. 1:00:11stuff? like what should you take from
  1555. 1:00:13each one and because I think I see
  1556. 1:00:16skills as sort of just derived from
  1557. 1:00:19process basically like they're just
  1558. 1:00:21processes turned into words and I would
  1559. 1:00:25love to know
  1560. 1:00:27how you recommend people take Pstack and
  1561. 1:00:29take my stuff as well and turn it into
  1562. 1:00:31their own processes.
  1563. 1:00:35I think you shared a tip actually today
  1564. 1:00:36that I thought was actually very
  1565. 1:00:38relevant, which is this idea that you go
  1566. 1:00:40off and look at your previous
  1567. 1:00:42transcripts, right? And you sort of mine
  1568. 1:00:44for information of, you know, your own
  1569. 1:00:48look through your own your own prompts,
  1570. 1:00:50right, to the agents where you correct
  1571. 1:00:51them where you have to constantly
  1572. 1:00:53intervene and uh you know take that
  1573. 1:00:57higher level learning and turn that into
  1574. 1:00:59a a reusable skill, right? So that
  1575. 1:01:00agents stop repeating that mistake. I
  1576. 1:01:04think that uh PAC and your skills are
  1577. 1:01:08very complimementaryary. I I totally
  1578. 1:01:10agree with you that they're like a skill
  1579. 1:01:12is really much just process. I mean it's
  1580. 1:01:14just at the end of the day a skill is
  1581. 1:01:15just English or or language. It's just
  1582. 1:01:18markdown.
  1583. 1:01:19>> Um and I think you can you can
  1584. 1:01:21definitely weave them, combine them in a
  1585. 1:01:24way that makes sense to you. But I do
  1586. 1:01:27think that uh everyone should have their
  1587. 1:01:30own set of knives, right?
  1588. 1:01:33I I keep going back to the the the
  1589. 1:01:35cooking analogy, but it's so apt because
  1590. 1:01:37like, you know, every chef when they go
  1591. 1:01:39to a different job, right, when they go
  1592. 1:01:41to a different restaurant, they carry
  1593. 1:01:42they bring their knives with them. The
  1594. 1:01:44tools go with them, right? And so trust
  1595. 1:01:46to me is really about trust in your own
  1596. 1:01:48tools. And when you spend the time
  1597. 1:01:51sharpening them and understanding them
  1598. 1:01:52really, really well, you can do great
  1599. 1:01:54things. And everybody's skills and tool
  1600. 1:01:56set is going to look different. you
  1601. 1:01:58know, someone might find a lot of
  1602. 1:02:00success combining, you know, like your
  1603. 1:02:03grill me with docs, uh, or wayfinder
  1604. 1:02:05skill with some of the execution skills
  1605. 1:02:07in Pstack as an example. Some people
  1606. 1:02:10might use more of your skills, some
  1607. 1:02:11people might use more of my skills. I
  1608. 1:02:13think at the end end of the day, it
  1609. 1:02:15really just comes back to how much do
  1610. 1:02:17you trust, you know, me and Matt, right?
  1611. 1:02:19Like if you if you trust us both, of
  1612. 1:02:21course, use our skills, but I also
  1613. 1:02:23encourage you to, you know, look at your
  1614. 1:02:25own transcripts. Um um tell the agent to
  1615. 1:02:29look through, you know, some of the all
  1616. 1:02:31of the patterns that you've used, the
  1617. 1:02:33the times you've had to intervene, you
  1618. 1:02:36know, suggest turning them into lint
  1619. 1:02:38rules or new skills, right? The the past
  1620. 1:02:41chats I I often say is like a a treasure
  1621. 1:02:44trove of context because that, you know,
  1622. 1:02:46it's it's like the process materialized,
  1623. 1:02:51right? Like it's the real process. It's
  1624. 1:02:53not an abstract idea in your head. it's
  1625. 1:02:55the actual thing right and you can
  1626. 1:02:57actually see how it happened in practice
  1627. 1:02:59and extract so much information from
  1628. 1:03:01that and there's so much so that I
  1629. 1:03:02actually turn I have a skill in pac
  1630. 1:03:04called recall which is exactly that um
  1631. 1:03:07where this was a pattern where
  1632. 1:03:10you know I was working in I was working
  1633. 1:03:12on a similar problem so specifically I
  1634. 1:03:14was working on virtualization for the
  1635. 1:03:17cursor application and there were a lot
  1636. 1:03:18of bugs and so you know every time I
  1637. 1:03:21started a new chat I was like ah this
  1638. 1:03:22there's so much good context from the
  1639. 1:03:24last one So, you know, I want to bring
  1640. 1:03:25it over to the new chat. How do I do
  1641. 1:03:27that? And that's where the transcript
  1642. 1:03:29came, uh, you know, looking at the past
  1643. 1:03:31transcript came about. And then recall
  1644. 1:03:33was just a way for me to collapse
  1645. 1:03:35collapse and compress that workflow into
  1646. 1:03:37a skill. So that I didn't have to just
  1647. 1:03:39say I didn't have to write a long essay
  1648. 1:03:42every time. Go look at all these chats,
  1649. 1:03:43right? And, you know, blah blah blah.
  1650. 1:03:45So, I I largely think of skills,
  1651. 1:03:47especially as agents get more capable as
  1652. 1:03:50really encoding workflows. you know
  1653. 1:03:52skills from last year were really more
  1654. 1:03:54about like almost like implementation
  1655. 1:03:56details like here are the exact script
  1656. 1:03:59commands you know you should use right I
  1657. 1:04:02think with the latest models you can
  1658. 1:04:04just delete those parts and just really
  1659. 1:04:06focus on the workflow right until it
  1660. 1:04:09it's more the skill becomes more like a
  1661. 1:04:11series of steps
  1662. 1:04:13a series of your process uh and I think
  1663. 1:04:16over time we'll see that skills get
  1664. 1:04:18smaller and smaller you know more
  1665. 1:04:20compact Um, and yeah, they're very
  1666. 1:04:24compatible. Or you can, you know, if you
  1667. 1:04:26want, why not read our skills, right,
  1668. 1:04:29and com and combine them in your of your
  1669. 1:04:31own, right? Combine Wfinder with potato
  1670. 1:04:34mode and make your own custom mode,
  1671. 1:04:36right? Like like skills are the the
  1672. 1:04:38thing I love about skills that is are
  1673. 1:04:40that they're so malleable. You can do
  1674. 1:04:42anything you want. It's just language.
  1675. 1:04:44>> Absolutely. There's nothing magical in
  1676. 1:04:46them, right? They're just words. And
  1677. 1:04:48>> Exactly. If if there is any magic in
  1678. 1:04:49them, it's just the words chosen and the
  1679. 1:04:52phrases used and the thinking that's
  1680. 1:04:55been done to turn those like take
  1681. 1:04:59abstract process and turn them into
  1682. 1:05:01language. And once that thinking has
  1683. 1:05:04been done, then it's just there. It's
  1684. 1:05:05available. It's on the surface and you
  1685. 1:05:06just nick it. Um Lauren, thank you so
  1686. 1:05:10much. This has been glorious.
  1687. 1:05:11>> Yeah, this has been super fun. I really
  1688. 1:05:14enjoyed talking to you. Hope we can do
  1689. 1:05:16it again. I'd love to do it again. I'd
  1690. 1:05:19love to do it again. Absolutely. Um
  1691. 1:05:20yeah, we'll check in in uh
  1692. 1:05:22>> I don't know. Yeah, Monday. Let's do it.
  1693. 1:05:25>> Yeah, let's do it. Part two.
  1694. 1:05:28>> Well, thank you so much. I'm going to
  1695. 1:05:29close the stream here. Laura and I will
  1696. 1:05:31uh chat a little bit and stay here. But
  1697. 1:05:33thank you guys so much for watching. The
  1698. 1:05:34glorious.

About this transcript

This page contains the full transcript of LIVE: Poteto (creator of pstack) on shipping 1,000's of PR's a month at SpaceX by Matt Pocock, generated from the public captions YouTube serves with the video. The transcript has 12,075 words across 1,698 segments, with the original timestamps preserved so you can click any line to jump to that moment in the embedded player.

What you can do with it

Use the transcript to take notes, quote the speaker, build a study guide, generate a summary with ChatGPT or Claude via the YouTube Summary tool, or export it as a timed subtitle file with YouTube to SRT. You can also re-open it in the transcriber to translate the transcript into 100+ languages.

Free YouTube transcript tool

YouTube2Text is a free YouTube transcript generator — no signup, no daily limit. Paste any YouTube link and get the full transcript instantly, with timestamps, click-to-jump, translation to 100+ languages, AI prompts for ChatGPT, Claude, and Gemini, and exports to TXT, SRT, VTT, or Markdown.