---
url: "https://youtu.be/iQyg-KypKAA"
title: "L8 Principal's Agentic Engineering Workflow"
source_kind: youtube
author: Kun Chen
captured: "2026-09-04T18:46:15+00:00"
comment_tree: false
topics: [other]
summary: A principal engineer shares his terminal-based agentic engineering workflow, covering setup, memory, skills, and managing multiple AI agents for high-volume production coding.
status: ok
---

# L8 Principal's Agentic Engineering Workflow

Channel: Kun Chen

## Transcript

[0s] Hi everyone.
[1s] Welcome to this video
[2s] and this will be a full
[3s] walkthrough of my agent
[5s] engineering workflow.
[6s] My name is Kun.
[7s] I was previously an late
[9s] principal engineer,
[10s] worked at meta, Microsoft, and assassin
[13s] on many large scale systems
[14s] like the Bing search engine,
[16s] windows, and Facebook games.
[18s] In the recent couple of years,
[19s] I have been building frontier
[21s] coding agents at Atlassian
[22s] and helped many engineering teams
[24s] figure out how to use them effectively.
[27s] and I have been building heavily
[28s] with agents myself
[29s] and shipping 40 to 50
[32s] almost every day, sometimes more.
[34s] And these are all well tested
[36s] and shipped production.
[37s] not those Minecraft demos.
[38s] You see people wipe code on social media.
[40s] I have shaped my workflow
[42s] to be both highly
[43s] productive and enjoyable.
[45s] Many people recently asked me
[47s] what it looks like,
[48s] be honest,
[48s] I did debate a lot with myself
[51s] whether I should make this video
[52s] a paid course
[53s] because it does
[54s] have that level of value,
[56s] but ultimately
[57s] I decided to just share it here
[58s] with everyone
[59s] because I want to stay focused
[60s] on building products as my main business.
[63s] you can see
[63s] this is a bit of a long video,
[65s] because I'm going to walk through
[66s] many fundamental
[67s] concepts of agent engineering
[69s] that's not only show you how I do it,
[71s] but also the why
[73s] and how things really work
[74s] under the hood.
[75s] These are not gimmicks that look cool
[77s] but can't actually be used for real work.
[79s] These are all real workflows
[81s] that professionals like myself
[83s] use to get real work done.
[85s] By the end of this video,
[86s] I want you to feel like
[87s] a captain
[88s] that can sail a large ship
[90s] with a crew of agents
[91s] working for you,
[92s] and do so
[93s] in a stress free and satisfying way.
[96s] Largely speaking,
[97s] we will be walking
[97s] through these chapters.
[99s] We'll start with assembling our ship,
[102s] where I will introduce the core setup.
[105s] We will then talk through
[106s] how we recruit and ramp up
[108s] our crewmates
[109s] with the right usage of memory
[111s] and skills.
[112s] I will then demonstrate
[114s] how we work
[114s] with a single crewmate effectively.
[117s] Then we'll upgrade
[118s] to working with multiple crewmates
[120s] all at the same time.
[121s] And lastly, we will recruit a first mate
[124s] that manages
[125s] a lot of the overhead for us
[127s] so we can stay focused
[128s] on the big picture.
[129s] As a captain,
[130s] the very first level
[132s] is to gather our gears
[133s] and build our ship.
[134s] Now, as we get into my workflow,
[137s] something that's going to be really hard
[139s] to miss
[139s] is that I do
[140s] almost everything in my terminal.
[142s] I know there are a lot of people
[144s] who will tell you
[145s] that the graphical user interface
[146s] is better.
[147s] It allows richer
[148s] interactions and better visuals,
[150s] but I think by the end of this video,
[152s] I might just be able to convince you
[154s] that terminal is not quite that yet.
[157s] I use the terminal mostly
[159s] for two very real reasons.
[161s] One is to allow my hands to almost
[163s] never have to leave the keyboard.
[165s] This is actually a much bigger deal
[167s] than most people think,
[168s] because when your hands
[170s] stay on the keyboard,
[171s] you stay in the flow.
[172s] But if you have to move your hand
[175s] to the mouse every couple of seconds,
[177s] it breaks the flow and forces
[178s] your brain to contact switch.
[181s] I know there are some guy apps
[182s] that also have great key points
[184s] that allow you to do most things
[185s] with the keyboard as well,
[187s] but that's just not
[188s] the primary interaction
[189s] paradigm for guy apps,
[191s] And it's hard to build the discipline
[193s] of hands on keyboard
[195s] when every once in a while
[196s] you still have to use the mouse
[198s] terminal apps.
[199s] On the other hand,
[200s] are all designed for the keyboard,
[202s] so there is no reason for your hands
[204s] to move anywhere else.
[205s] The other
[206s] very important factor
[207s] that drives me to use
[208s] the terminal is that
[209s] I can keep the exact same workflow
[212s] everywhere, even on my phone.
[213s] but if you really don't
[215s] like the terminal, that's okay too.
[217s] I designed this video to be more
[218s] about the fundamental
[220s] concepts behind
[221s] agent engineering
[222s] rather than the mechanics.
[223s] So most of the things that I talk about
[226s] should be applicable
[227s] to GUI based workflows as well. Now.
[230s] Since we are looking at a terminal here,
[232s] let me share what it is
[233s] I'm using this
[235s] beautiful, clean and elegant
[236s] terminal emulator
[237s] you are looking at
[238s] here is called Western.
[241s] Western is a highly performance
[243s] terminal emulator built by a guy
[245s] named West.
[246s] It's got 26
[247s] k GitHub stars and has existed
[249s] for many years.
[250s] I like it mostly for two reasons.
[253s] One is that it's truly cross-platform.
[255s] It's pretty much
[256s] the only terminal emulator I can find
[258s] that can work on windows
[260s] exactly the same way
[261s] it works on Mac and Linux.
[263s] Right now
[263s] I mostly only work on Mac,
[265s] but it was a big lifesaver
[267s] when I was working for Microsoft
[268s] and was forced to use windows for work.
[272s] The other reason is that it's
[273s] highly customizable.
[274s] You can write Lua scripts to configure
[276s] pretty much everything. Here.
[278s] Let me show you my config in my dot
[280s] files.
[281s] It's all in this file
[282s] called Western dot lua.
[284s] It's a lower script.
[285s] So it's not just static values.
[287s] You can actually set conditions
[288s] and write various
[289s] kind of
[290s] logic to make your config
[291s] very dynamic and flexible.
[294s] If I change some settings
[295s] here, let's say
[296s] I change the color scheme to chalk.
[300s] You will see that
[300s] it does a hot reload instantly,
[302s] which is super handy.
[304s] But I still like my rose pine moon,
[306s] so let's come back to it.
[307s] I can't use anything else.
[309s] Inside of West
[310s] term, I run something called tmux.
[313s] It's short for terminal multiplexer.
[316s] If you haven't come across this yet,
[317s] it's probably easiest
[318s] to just show you what this does.
[320s] so I'm
[320s] typing this command here
[321s] to start a session.
[324s] Now I'm inside of t max.
[326s] You can see
[326s] not much is different except for that.
[329s] There is a bar at the top
[330s] showing some information,
[332s] and I still get a shell
[334s] where I can type commands,
[335s] But now I can split my terminal
[337s] into multiple panes,
[339s] as many of them as I like.
[341s] This is super useful
[342s] because I can spin up an agent
[344s] in one pain and spin up
[346s] an editor in another,
[347s] and still have a pain to myself
[350s] so I can just run commands.
[352s] I can also spin up
[353s] multiple tabs
[354s] and they are also called windows in.
[357s] This is very useful
[358s] for running multiple
[359s] agent sessions in parallel.
[361s] The other cool thing is
[362s] that tmux
[363s] sessions are persistent in the server.
[366s] So if I use a keyboard shortcut here
[368s] to detach from tmux, you can see
[371s] I'm back in the normal shell
[372s] without the status bar at the top.
[374s] But if I type the same command to launch
[377s] tmux again,
[379s] I get back to the exact same state
[381s] I was in So I can continue my work here.
[384s] What's even more useful
[385s] is that I can connect
[386s] to this same session
[387s] from another device,
[388s] like my laptop or my phone.
[390s] that's a real game changer.
[392s] That's very hard to replicate
[394s] without this terminal centric workflow.
[396s] If you just install tmux by default,
[399s] it doesn't have the same experience
[400s] while showing here,
[402s] like the tab bar and the metadata.
[404s] You will probably need to
[405s] do a bit of configuration
[406s] and customize it.
[408s] Let me show you my team config.
[412s] Here it is.
[413s] Most of these settings are key points
[415s] that I have been using
[416s] for many years,
[417s] and built into my muscle memory.
[420s] Some of these are for styling and various
[422s] kind of behaviors.
[423s] There are many
[424s] YouTube videos
[425s] that go into more details
[426s] about tmux configuration.
[428s] So I'm not going to go down the rabbit
[429s] hole here. For now.
[431s] You just need to know
[432s] that you are likely
[433s] want to spend some time
[435s] configuring your t mux for it.
[437s] Look good and work
[438s] well for This text editor here is Nuvem.
[441s] It's basically the modern version of vim.
[443s] It's my favorite text editor.
[445s] If you are not familiar with vim yet,
[447s] it's an editor
[448s] whose main purpose
[449s] is to keep your hands on the keyboard.
[451s] So if you watch my keystrokes here,
[454s] I can move the cursor
[455s] up and down, left and right with keys.
[458s] I can also scroll up or scroll down.
[462s] If I have to make edits,
[463s] I can go into insert
[464s] mode and start to type anything I like.
[468s] There are a ton of keyboard shortcuts
[470s] for doing everything you need.
[471s] For example,
[472s] let's say
[472s] I want to delete the current line.
[474s] I can just type dd and it's gone.
[476s] I can undo it by typing you.
[479s] And if you look at the left hand side
[481s] I have relative line numbers.
[483s] This line number 238
[486s] is the current line number.
[487s] And the line above
[489s] shows one,
[489s] which means it's one line
[491s] above the current line
[492s] and the lines below as well.
[494s] So let's say
[495s] I want to jump to the line
[496s] that says set environment.
[499s] That's 11 lines above the current line.
[501s] So I can just type 11 k.
[503s] And I'm here.
[504s] So once you have enough muscle memory,
[507s] you can just navigate around
[508s] much more quickly than using a mouse.
[511s] I also have a bunch of plugins
[512s] that help me get around in as well.
[515s] And I have key points for all of them.
[518s] Like space S
[519s] allows me to search
[520s] or grep for the code base,
[521s] so I can just type rows
[523s] and it will find all the occurrences
[525s] of rows in the current code base.
[528s] I can type space F
[530s] to find files by their names,
[531s] like if I type flake
[533s] I'll get to the flake file immediately.
[536s] Working with them
[537s] has a learning curve for sure.
[539s] But once you get used to it,
[540s] it just feels really, really good.
[543s] Whenever I'm
[543s] in, I'm just flying like a bird
[546s] and it's awesome okay?
[547s] I have to stop here before
[548s] this turns into a vim tutorial.
[550s] You can find a lot of great
[552s] YouTube videos
[552s] that will help
[553s] you get started on them
[554s] and become a master.
[556s] Maybe one last tip for me
[558s] is just how to exit.
[560s] Here you go.
[561s] All right.
[562s] Our ship is ready to sail,
[563s] but we have no crewmates yet.
[565s] Where? The captain.
[567s] We can't do everything by ourselves.
[568s] We need to bring in agents
[570s] as our crewmates.
[571s] I use four different
[572s] agent harnesses regularly.
[574s] There is cloud,
[575s] which is cloud code,
[577s] which is basically
[577s] the only practical choice
[579s] if you are using the subscription
[580s] from anthropic.
[582s] Generally speaking, though,
[583s] it's a pretty good harness.
[585s] I think
[585s] it has the most sensible
[587s] default experience out of the box.
[589s] It's also got a pretty rich feature set.
[591s] The downside
[592s] is that sometimes it's a little
[594s] bit buggy,
[594s] and it's not as customizable
[597s] as some of the other options.
[598s] The next one I use a lot is Codex COI.
[602s] It's written in rust,
[603s] and you can feel
[604s] it's a little bit smoother
[605s] than cloud code when you use it.
[607s] It's also open source,
[609s] so if you run into some problems,
[610s] You can often
[611s] just have Codex
[612s] inspect its own source code
[614s] and figure out a workaround by itself.
[617s] It's a bit
[617s] lacking in terms of bells and whistles,
[619s] and it's also not very customizable.
[622s] And then there is the Pi coding agent.
[625s] And this whole philosophy
[627s] is to be minimal and highly extensible.
[629s] It's great
[630s] if you don't want any bloat
[631s] and you'd like to tinker around
[633s] and kind of make it your own.
[635s] and lastly, there is open code.
[638s] I like it a lot.
[640s] It's got a battery smooth t UI,
[642s] And it's got
[643s] good integration
[644s] with pretty much
[645s] every model you can find.
[646s] It's also got a more complete
[648s] out of the box feature set than Pi.
[650s] So if you want to use an agent harness
[652s] that is model agnostic
[654s] and one that you can just grab
[656s] from the shelf and just go.
[657s] Open code is a pretty good choice.
[659s] For the rest of this video though.
[661s] I'm going to use cloud code
[662s] because I know
[663s] many people are already familiar with it,
[665s] but I have been very strict
[667s] about making my workflow
[668s] agent agnostic
[669s] because the landscape is changing very,
[671s] very fast.
[672s] who knows which model or agents
[674s] will be the best
[675s] performing one next month?
[676s] Right.
[676s] So everything I show here in
[678s] the video is agent agnostic
[680s] and should be applicable
[681s] regardless of which model or harness
[683s] you use.
[685s] The problem with this crewmates
[687s] is that they are fresh recruits,
[688s] and they have no idea how we run our ship
[690s] or how we like to work.
[692s] We need a proper onboarding process
[694s] to ramp them up.
[695s] We will do this mostly through
[697s] two ways memory files and skills.
[700s] There are few types of memory
[701s] files, global memory
[703s] files, and project level memory files.
[705s] The global memory
[706s] file for cloud code is at this location,
[711s] and every other
[712s] agent
[713s] uses the other standard location here.
[716s] So what I do is that I use this command
[719s] Which made MD a symbolic link to MD.
[724s] So they both exist,
[725s] but under the hood
[726s] they point to the same file.
[728s] Here's
[728s] the content of my actual global memory
[731s] file. You can see it's pretty minimal.
[734s] There is only 27 lines.
[736s] Because everything in this file
[737s] gets loaded into the system
[739s] prompt of every single agent session
[741s] across all our projects.
[743s] If we have too much content in this file,
[746s] it will silently use a lot of our tokens.
[749s] I mostly write down
[750s] my personal preferences here,
[751s] like never use em.
[754s] Somehow AI models are trained
[756s] to use
[756s] em by default instead of a plain dash.
[759s] So now whenever I see em,
[761s] I just feel like it's robotic.
[763s] And I don't like that
[764s] when I need the agent
[765s] to write something for me.
[766s] Like PR descriptions.
[768s] Oh, and this is a good one.
[769s] When making technical decisions,
[771s] don't give too much weight
[772s] to development cost.
[774s] Here is something interesting
[775s] that you may not know. Let me show you.
[778s] If we ask a frontier model
[780s] to estimate the development
[781s] cost of a project,
[783s] let's say
[784s] I want to build a 3D
[786s] first person shooting game
[788s] that I can play locally with AI enemies.
[792s] How long do you think that will take?
[796s] Let's see what cloud will say.
[798s] Okay, here it is.
[799s] See, the estimate is in days
[801s] and weeks and months.
[803s] But if we ask the agents to
[805s] actually build it now,
[806s] I can guarantee
[807s] it will come back with a playable version
[809s] in just a few minutes.
[811s] Because I have done this so many times.
[813s] This mismatch is happening
[815s] because the models
[816s] were trained from human data,
[818s] and that is what
[819s] a typical human developer
[820s] would give as the estimate.
[823s] AI doesn't seem to know it
[824s] can code much faster than humans yet.
[827s] When AI is making technical decisions,
[830s] it's implicitly
[831s] assuming the development cost
[832s] for some of the options are much higher
[835s] than they actually are.
[836s] This biases the model to choose
[839s] cheap solutions
[840s] that are often low quality,
[842s] not scalable, or hard to maintain.
[844s] So I have this rule here to
[846s] correct that bias.
[849s] I also said when
[850s] doing bug fixes
[852s] always starts
[853s] with reproducing the bug
[854s] in an end to end setting
[856s] as closely aligned
[857s] with how an end user
[859s] would experience it as possible.
[861s] AI models today by default
[863s] like to write unit tests,
[865s] which are often not sufficient
[866s] and not really covering
[868s] the product behaviors we want to guard.
[870s] I found that leaning into end to end
[872s] testing is a lot more reliable.
[874s] Besides these preferences,
[875s] I also have
[876s] some interesting stuff opinions,
[879s] which is super useful.
[881s] That's a slightly different
[882s] topic though,
[882s] so I won't go into too much detail here,
[884s] but I do have a blog post
[886s] explaining how that works,
[887s] which I'll link here
[888s] in case you're interested.
[889s] Besides the global memory
[891s] file, each project
[892s] can also have a project level memory
[894s] file.
[894s] Let me show you
[895s] one example here by going into
[897s] this project called High Bit.
[899s] This is an AI Twitter app
[900s] I have been working on.
[901s] The project level memory file
[903s] is typically stored as cloud or agents,
[907s] depending on which agent you use.
[909s] I do the same thing here
[910s] with a symbolic link.
[911s] So the same file is shared
[913s] for both cloud and other agents.
[915s] This one we are looking at
[916s] here is a little bit verbose.
[918s] I would say
[919s] I will probably clean this up after this,
[921s] but let me show you on a high level
[923s] what I put into this file.
[924s] It has some context on what
[926s] this project is,
[927s] how the repo is laid out,
[930s] some terminology,
[932s] how some of the most important
[934s] components work,
[935s] and how to do end to end testing,
[937s] and some conventions at the bottom.
[940s] This file is a lot more verbose
[942s] than the global memory file,
[944s] because this is basically the collective
[946s] learning of all the agent sessions
[948s] in this project.
[949s] The way I built
[949s] this file is not by writing
[951s] everything by hand,
[952s] but rather that every time
[954s] I saw the agent doing something wrong,
[956s] I would correct it
[957s] and ask it to remember
[958s] to not make the same mistake again
[960s] by storing the learning
[961s] into this memory file.
[963s] So over time,
[964s] our crewmates working on this project
[966s] get smarter and more experienced.
[968s] You don't need any fancy memory system
[970s] to do that.
[970s] This markdown file is all
[972s] it takes over time.
[973s] It does tend to get more
[975s] and more bloated though.
[976s] One way
[977s] I reduce the size of this file
[979s] is by moving
[980s] some conditional information
[981s] that is not always needed into a skill.
[984s] For example,
[985s] the end to end
[986s] testing instruction here is only needed
[989s] if the agent is making changes, right?
[991s] So if I just ask the agent a question,
[994s] this whole section is totally useless
[996s] and would be wasting tokens.
[998s] The way to improve efficiency
[1000s] here is by converting
[1002s] this kind of
[1003s] conditionally useful information
[1004s] from the memory file into skills.
[1007s] I typically just
[1008s] ask the agent to do this.
[1009s] Here, let me do it alive.
[1012s] I will say let's extract the end to end
[1016s] testing instructions
[1018s] junctions in our agents
[1021s] and file into a project level skill.
[1027s] Cloud already knew how
[1029s] to do this,
[1030s] what skills mean and how to create them,
[1032s] but other agent
[1033s] harnesses may not understand
[1035s] how to do that out of the box.
[1037s] To teach your agent how to create skills,
[1040s] you can install a skill called
[1042s] Skill Creator which
[1044s] which was written by anthropic.
[1046s] You can do that by running this command.
[1048s] This NPC's skills thing
[1051s] is a call from Vercel that is very handy.
[1054s] It's basically my main tool
[1056s] for installing and managing skills.
[1058s] It supports pretty much any agent.
[1061s] Once this skill is installed,
[1062s] your agent will be able
[1063s] to follow the rules and create
[1065s] new skills for you moving forward.
[1068s] cloud has done its work.
[1069s] Let's look at what cloud created for us.
[1073s] It basically removed
[1076s] a large chunk of the content
[1078s] from our agents MD file and move
[1082s] that into this this skill file.
[1085s] This is a good thing about skills
[1087s] is that it's designed
[1088s] for progressive disclosure,
[1090s] which means when your agent starts,
[1092s] it only loads this tiny description
[1094s] field from your skills into the system
[1096s] prompt to know what these skills do,
[1098s] and only when it actually decides
[1101s] that it needs to use a certain skill.
[1103s] It will then reads the rest of this file.
[1105s] This allows you to store
[1107s] a lot of the knowledge
[1108s] about how to do various
[1109s] kinds of things
[1110s] without blowing up your system.
[1112s] Prompt and memory file
[1113s] with a ton of contents
[1114s] that uses your tokens
[1115s] for every single request,
[1117s] whether the request actually
[1118s] needs those skills or not.
[1120s] One thing
[1120s] I do want you to know about skills
[1122s] is that you should generally avoid
[1125s] installing random skills
[1126s] from the internet.
[1127s] Even the ones that have a lot of
[1129s] GitHub stars.
[1130s] First of all,
[1131s] these skills
[1132s] can instruct your agents to run
[1133s] pretty much anything on your machine.
[1136s] This is a very risky thing to do,
[1137s] because the agent can lick your API keys
[1140s] or even credentials to your bank
[1142s] account to untrusted
[1143s] third parties without you knowing.
[1146s] even if we put aside
[1147s] the security problem,
[1148s] some of the skills
[1149s] actually degrade your agents performance.
[1152s] Look at this repo
[1153s] here called Android Skills, which has
[1156s] 177,000 GitHub stars.
[1160s] That's like massive.
[1161s] So it must be really good, right?
[1163s] I actually evaluated a skill in this repo
[1166s] with Program Bench,
[1168s] which tests
[1169s] the agent's ability to build
[1170s] programs end to end.
[1172s] And the result shows
[1174s] that by using this skill,
[1176s] the agent will use
[1177s] 5% more tokens
[1178s] while making the results worse.
[1180s] And if you look closely, this skill is
[1184s] not even written by André
[1185s] Karpathy himself.
[1187s] I'm not here to criticize
[1188s] the author of this repo, though.
[1190s] I'm mainly saying
[1191s] that being popular
[1192s] is not the same as actually being good.
[1195s] A lot of the skills
[1196s] being widely shared today
[1198s] have not been rigorously evaluated,
[1200s] and are typically just some random guy
[1203s] who found something
[1204s] that worked for themselves and
[1206s] and somehow got it to go viral.
[1208s] Their GitHub stars
[1210s] only tell you how popular they are
[1211s] and not
[1212s] whether they are actually helpful.
[1214s] So as a general rule of thumb,
[1216s] I recommend that you do not install
[1218s] any skill
[1219s] from the internet
[1220s] that claims to magically
[1222s] make your agent perform better,
[1223s] but hasn't published anything
[1225s] rigorous that proves its claim.
[1227s] All right.
[1228s] Now that we have memory files
[1230s] and skills to help ramp up
[1231s] crewmates, it's
[1232s] finally time
[1233s] to actually start working
[1234s] with the crewmates and set sail.
[1236s] The first thing about working with
[1238s] the crewmate is how you talk to them.
[1240s] I have pretty much completely moved
[1242s] to voice input now, So.
[1244s] Instead of typing,
[1245s] I will just say, explain this
[1247s] repo in a concise way
[1248s] and give me a recap of what
[1250s] the recent press have been working on.
[1253s] This is just so easy.
[1254s] There is an actual paper from Stanford
[1257s] that seriously compared the efficiency.
[1259s] And basically
[1261s] talking is three times
[1262s] faster than typing.
[1264s] So this is a very big boost
[1265s] in productivity.
[1267s] I also want to show you something
[1268s] interesting here.
[1269s] If we go to the references of this paper
[1273s] look who's here.
[1275s] It's our guy Dario.
[1277s] What is the CEO of anthropic doing here?
[1280s] Apparently if we follow this link
[1283s] Dario was doing some speech recognition
[1286s] stuff back in 2016.
[1288s] Now we're using speech recognition
[1289s] technology to talk to cloud
[1291s] which is also created by Dario.
[1293s] What a small world.
[1295s] The voice input.
[1296s] We just did
[1297s] was actually transcribed
[1298s] locally using this app called Open
[1301s] Super Whisper.
[1303s] It's completely free and open source,
[1305s] which is what I think
[1306s] this type of software should be.
[1307s] It runs the whisper model
[1309s] locally on your machine
[1310s] and do the transcription.
[1311s] And the quality is like
[1313s] really, really good.
[1314s] So this is how I do most of my prompts.
[1316s] Now, the only case
[1318s] where I fall back to typing
[1320s] is when I need to give the agent a URL
[1323s] or a file path, or something like that.
[1325s] Trust me,
[1326s] you don't want to speak a URL out loud,
[1329s] whether it's by yourself or
[1330s] with other humans around.
[1333s] If we
[1333s] come back to this prompt
[1335s] and let the agent run,
[1336s] you will see that
[1337s] because we asked the agent
[1339s] to look at recent polls,
[1340s] it will need to call GitHub
[1342s] to fetch the data.
[1344s] This is an important thing
[1345s] to pay attention to,
[1346s] because agents
[1347s] rely on external tools
[1349s] like GitHub to do its tasks.
[1351s] The design of these external tools
[1353s] can greatly affect
[1354s] your agents performance.
[1355s] Take GitHub as an example.
[1357s] Many people use the GitHub MCP
[1359s] server for accessing GitHub.
[1361s] However, I ran this benchmark here
[1364s] that measured various
[1365s] kinds of ways
[1366s] to access GitHub For the exact same tasks
[1370s] using GitHub, MCP
[1371s] server will cost you to spend three times
[1374s] more on token cost,
[1376s] and more than double
[1377s] the latency compared to using the CLI.
[1380s] If you are using the GitHub MCP,
[1381s] you are pretty much wasting
[1383s] both time and money
[1384s] for no clear benefits.
[1386s] Now you can see there's
[1387s] this thing called axi,
[1389s] which has the lowest cost
[1390s] but highest success rate.
[1392s] So what is it? Let me show you.
[1396s] Axi is a set of
[1398s] design standards
[1399s] I authored
[1399s] after discovering the huge upside
[1401s] we can have by designing our tools
[1404s] to treat agents as a first class citizen
[1407s] and optimize for agent ergonomics.
[1410s] I created ten principles
[1412s] for how to make a tool
[1413s] highly efficient for agents.
[1415s] For example,
[1417s] using token efficient output
[1418s] format can save about 40%
[1420s] tokens compared to using JSON.
[1422s] And then I built a few axes with
[1425s] Besides the GitHub axis I showed earlier,
[1427s] I also built Chrome dev tools actually,
[1429s] and benchmarked
[1431s] it against other various browser tools.
[1434s] And Here you can see
[1436s] the agents taking less turns
[1438s] and using less tokens
[1439s] to get the same tasks done with the ax.
[1442s] The main point here
[1443s] is when you give tools to your agents,
[1445s] do some research on their efficiency
[1447s] because they can greatly affect
[1449s] how much mileage
[1450s] you get out of your agents.
[1452s] If you want to use the axes
[1454s] I mentioned earlier,
[1455s] you can just go to this site called axis
[1458s] and find them in this catalog.
[1460s] You can just go to the repo
[1462s] and find instructions
[1463s] for how to start using them.
[1465s] Speaking of this catalog,
[1467s] there is something called
[1468s] lavish axi here.
[1470s] This is a very important tool
[1472s] in my setup.
[1473s] I pretty much rely on this tool
[1475s] for planning any kind of complex work.
[1477s] Let's do a real feature live
[1479s] and I'll show you how it works.
[1480s] Let me first launch high bit
[1482s] to show you
[1483s] what I'm trying to work on here.
[1485s] Hybrid is an AI Twitter
[1486s] I'm building for kids.
[1488s] I'll just create a test profile here.
[1493s] You can see here
[1494s] at the top I
[1495s] have these two buttons,
[1496s] what I can do and my progress.
[1499s] They are showing very similar content
[1501s] right now which is a problem.
[1503s] So and also the UI is not very exciting
[1507s] or fun.
[1508s] So let me go back and talk to cloud.
[1514s] I'll still use voice input here.
[1516s] I'll just say
[1518s] I'd like to consolidate
[1519s] the what I can do
[1521s] and my progress buttons,
[1523s] because their functionality
[1525s] is very similar
[1525s] and I'd like to revamp the experience
[1528s] there to be something
[1529s] more fun
[1530s] and exciting,
[1531s] like in an achievement system.
[1533s] Come up with some options
[1535s] and let's discuss.
[1536s] Don't use lavish.
[1539s] Okay, the reason I said don't use
[1541s] lavish is that I wanted to show you
[1544s] what's the default workflow today.
[1545s] Looks like for many people.
[1547s] And then I'm going to show you
[1548s] the difference lavish makes.
[1550s] Because I already have leverage
[1552s] skills installed.
[1553s] My cloud will automatically use lavish
[1555s] for this type of question,
[1556s] which is why I had to tell
[1558s] it not to do that right now.
[1560s] Okay, cloud is doing this work.
[1562s] Now. Cloud has come back with a response.
[1565s] Sometimes it will use its plan mode,
[1567s] or sometimes I will ask you
[1569s] to write down the plan
[1569s] in the markdown file,
[1570s] but it's more or less the same.
[1573s] It's a wall of text
[1574s] I now have to read through.
[1575s] It's not very easy to understand
[1577s] what what
[1578s] each option
[1580s] is actually going to look like,
[1582s] and if I'm not happy
[1583s] with some parts of it,
[1584s] I can't very easily tell cloud
[1587s] which parts I'm talking about.
[1588s] I can select a piece of text
[1590s] in the plan and say, this is wrong.
[1592s] Now let's try
[1593s] the exact same prompt with lavish.
[1595s] Here it goes again.
[1596s] I actually don't have to say
[1597s] use lavish
[1598s] because the agent already
[1600s] has the lavish skill
[1601s] that tells the agent
[1602s] for this type of planning
[1604s] it should establish, for demo purpose,
[1606s] I just wanted to be explicit.
[1608s] Cloud would roughly do the same things
[1610s] to figure out the options,
[1612s] except at the end
[1613s] it would not print out that wall of text.
[1616s] Again,
[1616s] it will launch the browser
[1618s] and show me this page. Now look at this.
[1621s] This is the lavish editor.
[1623s] The reason I named it lavish
[1624s] is that it's richer than a rich editor.
[1627s] I almost named it filthy
[1629s] rich editor,
[1629s] but that's just not the best
[1631s] sounding name.
[1632s] Lavish editor basically
[1634s] instructed the agent
[1635s] to create an HTML artifact
[1637s] to visualize what we need to discuss.
[1639s] It always uses the same design system
[1642s] as the current project being worked on,
[1644s] so this is consistent
[1645s] with how the app actually looks.
[1648s] This makes it very easy
[1649s] to reveal concepts and prototypes.
[1652s] See the option is laid out here.
[1653s] This is so much easier to understand
[1656s] than the huge wall of text
[1657s] we were looking at
[1658s] in the terminal, right?
[1660s] I can also annotate
[1661s] and make comments
[1663s] on specific parts of the artifacts
[1665s] to give feedback to the agent.
[1667s] This is something
[1667s] that's really hard
[1668s] to do with the wall of
[1669s] text, or a markdown file
[1672s] And at the bottom, there
[1674s] are things for me to decide on,
[1676s] and I can just click on these options
[1679s] to make the decisions.
[1680s] I just sent this feedback back
[1682s] to the agents inside of lavish
[1684s] without even having to go back
[1685s] to the terminal.
[1686s] Honestly, I can never go back
[1688s] to reading text in the terminal anymore.
[1690s] This is just way too much more efficient.
[1692s] Now the agent has made updates to the and
[1695s] I feel happy about this,
[1696s] so I'll just tell the agent
[1698s] to start building.
[1699s] Start building and we'll end
[1702s] the session.
[1703s] We can
[1704s] then go back to the terminal now and see.
[1707s] The agent will start to work
[1708s] on the implementation,
[1710s] because we already clarified
[1711s] all the requirements
[1712s] in the planning phase.
[1713s] I typically don't
[1714s] need to interfere at all
[1715s] during this implementation phase.
[1717s] I only come back to this
[1718s] when the agent has done.
[1719s] And when the agent says it's done,
[1722s] that's actually
[1722s] when things get really tricky.
[1725s] This is where a lot of people
[1726s] will spin up
[1727s] their editor
[1728s] and start reviewing the diff.
[1731s] The problem is, AI writes code so fast,
[1734s] and if every piece of code requires
[1737s] your review,
[1737s] then you are creating a big
[1739s] bottleneck on yourself
[1740s] because you can only review so many
[1742s] every day.
[1743s] Your velocity will be hard capped by it.
[1746s] And even more importantly, reviewing diff
[1749s] is just not fun.
[1751s] No one says I became an engineer
[1753s] because I love reviewing diffs all day.
[1755s] My advice
[1756s] here is that
[1758s] in order to
[1758s] really scale ourselves with AI,
[1761s] we have to think of ourselves
[1762s] more as an engineering manager
[1764s] or engineering director.
[1766s] Your directors
[1767s] most likely don't review any place yet.
[1770s] They can influence the quality
[1771s] of their team's software
[1772s] by creating good culture
[1774s] and processes, and rely on the team
[1777s] to carry them out.
[1778s] That's what we should do with AI.
[1780s] What I do here,
[1781s] when the agent says the work is
[1783s] done, is not to start
[1784s] reviewing the dips or start
[1786s] manually testing the changes.
[1788s] That's too much overhead.
[1789s] On myself,
[1790s] I sense the change into a pipeline
[1792s] I built called No Mistakes.
[1797s] No mistakes is also free and open source.
[1800s] It orchestrates your agent
[1801s] to execute a series of steps
[1803s] that takes this first pass code
[1805s] all the way through to a clean PR.
[1807s] It would first create a branch
[1809s] if one doesn't exist yet,
[1810s] and then create a commit
[1812s] and then take it through a pipeline
[1814s] in an isolated work tree,
[1816s] so nothing during the validation
[1818s] would affect your current repo.
[1819s] It would first understand
[1820s] your real intent behind the change
[1822s] by analyzing
[1823s] your agent session,
[1824s] then rebase the change
[1826s] on top of the latest main branch
[1828s] on remote
[1828s] origin and resolve merge
[1830s] conflicts up front,
[1831s] then starts
[1832s] an adversarial review
[1834s] in its own fresh context window.
[1836s] This is where most problems get caught,
[1838s] and obvious problems
[1840s] will get self corrected,
[1841s] but ambiguous ones
[1843s] that have product
[1844s] implications will be escalated
[1846s] to us humans for a decision after review.
[1849s] It also tries to test
[1851s] the change end to end
[1852s] against the original intent,
[1853s] and this step will
[1855s] actually record evidence that proves
[1857s] the change is working that we can.
[1858s] Then later on
[1859s] look at to gain more confidence.
[1862s] It will then do a documentation pass
[1864s] of updating all relevant documentation
[1866s] to reflect the latest change.
[1868s] And also finally,
[1869s] make sure there is no linting problems
[1871s] before pushing the branch
[1873s] to remote and raise a PR.
[1875s] The no mistakes
[1876s] pipeline will also keep babysitting
[1878s] the PR
[1879s] until it's merged,
[1880s] because during the PR phase,
[1882s] we can still have merge conflicts
[1883s] that come in, or CI pipeline failures
[1886s] that are very annoying as well,
[1888s] with no mistakes doing the babysitting.
[1890s] We don't have to waste our own time
[1891s] at all.
[1892s] Another way to trigger
[1893s] no mistakes is as a skill.
[1896s] I can just type no mistakes in the agent
[1899s] and it will do the same pipeline
[1901s] as This may seem very slow,
[1903s] but in practice
[1904s] I never stare at this screen.
[1906s] I would go spin up other tasks.
[1907s] I come back only when no mistake says
[1910s] all checks passed
[1911s] that's when I go to the PR
[1913s] and apply my judgment.
[1914s] Here's the PR
[1915s] from the change we just did.
[1917s] We can see here
[1918s] it summarized the original intent.
[1920s] What's changed,
[1922s] how it's tested,
[1923s] and what happened
[1924s] during the normal stakes pipeline.
[1926s] We can click to see the evidence
[1929s] from its testing
[1930s] to know
[1931s] whether it's really done
[1932s] what we asked for,
[1934s] depending on what the change is,
[1936s] the evidence
[1937s] could be a screenshot like this
[1939s] a video demo,
[1940s] a log file, or something else.
[1942s] It's designed
[1942s] to give you the most direct way
[1944s] to see the change
[1945s] working as you intended.
[1946s] We can also see that
[1947s] the pipeline discovers
[1949s] some problems
[1949s] and fix them before raising the PR.
[1952s] This is a good time to audit
[1954s] whether these changes
[1955s] are actually what we need.
[1956s] If anything doesn't look right,
[1958s] we can go back to the agent
[1959s] and ask for more changes
[1960s] before merging this PR.
[1962s] This risk assessment
[1963s] here is also very useful.
[1965s] I basically look at this to decide
[1967s] how much time
[1967s] I should spend on reviewing
[1969s] this change in more detail.
[1971s] For low risk changes,
[1972s] I don't really look at the diff at all
[1974s] Because I have validated
[1976s] time and time again for low risk changes.
[1978s] Any problem I could catch
[1980s] is very likely
[1981s] already caught by the pipeline
[1983s] only more
[1983s] risky changes are worth my
[1985s] This is how I scale up
[1986s] the volume of code changes
[1987s] I do every day through
[1989s] a large crew of agents,
[1990s] without losing control on quality.
[1992s] One thing we are starting to see
[1994s] now is that the place where I spend
[1996s] time is towards the beginning
[1998s] and the end of the task.
[2000s] At the beginning
[2001s] I would spend time in lavish to plan
[2003s] the requirements more clearly.
[2005s] At the end
[2006s] I would come in and hold
[2007s] a bar on quality.
[2009s] All these parts in the middle
[2011s] is done by AI,
[2012s] which frees me up to spin up other tasks.
[2015s] This is a core aspect of how I work,
[2017s] and you can see the more time
[2019s] I can free up in the middle,
[2021s] the more work I can go do in parallel.
[2023s] So an interesting question
[2025s] now is
[2026s] how do we get the agents
[2027s] to work for longer
[2028s] and longer in the middle?
[2030s] That depends on us
[2031s] giving them more and more complex tasks
[2033s] that take longer to complete.
[2035s] But more complex tasks are often
[2038s] not as easy for our agents
[2039s] to complete autonomously.
[2042s] An extreme version of this is
[2043s] when I go to bed,
[2044s] I sleep for 7 to 8 hours every night.
[2047s] How do I keep the agents busy
[2049s] for eight hours?
[2050s] This is where I say good night.
[2053s] Have fun.
[2053s] It's another free and open source tool
[2055s] I built specifically
[2057s] for long running tasks.
[2058s] It's becoming quite popular.
[2060s] It's that simple to use.
[2062s] Just give it an objective
[2063s] and it will keep going
[2064s] until it meets some stop condition
[2066s] you defined.
[2067s] Let me show you a real example
[2069s] that I often do.
[2070s] This is again in the hybrid repo
[2072s] I will run.
[2073s] Good night.
[2073s] Have fun and give a prompt.
[2076s] Pretend you are a seven year
[2078s] old kid and use the high bit
[2080s] app end to end.
[2081s] Don't mind
[2082s] the profile
[2082s] creation step
[2083s] which is designed for parents
[2085s] in the rest of the app.
[2086s] Try to do different things
[2087s] and find the first usability problem
[2090s] that will confuse you as a kid,
[2092s] or stop you from knowing how to proceed.
[2094s] If you find a problem, stop and fix it,
[2097s] then rinse and repeat.
[2100s] Here he goes.
[2101s] Good night. Have fun.
[2102s] Is now running in the loop.
[2103s] To execute on what I just asked for.
[2106s] I can monitor token usage here
[2108s] or how many iterations have been done.
[2110s] The iterations will be showing up
[2112s] as the moons in this row,
[2113s] and I can see how many commits
[2115s] have been made as well.
[2116s] Or I can just go to bed
[2117s] knowing the agents won't stop
[2119s] until there is no more problem
[2120s] to be found.
[2121s] When I wake up,
[2122s] I can reveal a list of commits
[2124s] made on this new branch and decide
[2126s] which ones I want.
[2128s] I typically use goodnight.
[2129s] Have fun for improving
[2131s] on some verifiable objectives
[2133s] or objectives,
[2134s] where I trust the agent
[2136s] to have the reasonable judgment over,
[2138s] like the one we just did.
[2139s] Verifiable objectives
[2141s] are more like reducing page load
[2143s] time, improving
[2144s] end to end test coverage
[2145s] or like Android hypothesis auto research.
[2148s] Keep experimenting different hypotheses
[2151s] to improve on the metric.
[2152s] These are all
[2153s] well suited for a long running loop.
[2155s] To tackle
[2156s] the recently introduced
[2157s] slash goal
[2158s] command in Codex and Cloud
[2160s] code can also do something similar,
[2162s] good night.
[2163s] Have fun
[2163s] still gives me a better experience.
[2165s] Because I can set a token cap or
[2168s] iteration cap or stop condition
[2170s] more precisely,
[2172s] whereas in Cloud Code and Codex,
[2174s] if I set a goal before I go to bed,
[2176s] I might wake up realizing my weekly
[2179s] quota is all Good night.
[2180s] Have fun.
[2181s] Solved a very important problem,
[2183s] which is to keep the agents
[2184s] running for a long time.
[2186s] So when the agents are running,
[2188s] I'm freed up to do more things.
[2190s] This is when we level up
[2192s] and start working with multiple crewmates
[2194s] in parallel.
[2194s] So let's spin up another tab in teams
[2197s] and get more work started.
[2199s] Now here's the problem.
[2200s] In this directory I already have.
[2202s] Good night.
[2203s] Have fun running.
[2204s] So if I spin up another agent
[2206s] working in the same directory,
[2207s] they will step on each other's
[2209s] toes and cause conflicts.
[2211s] The default solution
[2212s] here is git work tree.
[2214s] For those of you
[2214s] who aren't familiar with it,
[2216s] a guitar work
[2217s] tree is basically creating
[2218s] a clone of your report directory.
[2220s] I can create one by typing git work tree
[2223s] add and give a path here.
[2227s] Now we have to think about a name.
[2229s] This is when you waste five minutes
[2231s] and eventually give up and just say hi.
[2233s] Bit two.
[2235s] Now we have a work tree
[2236s] and we can navigate to it.
[2238s] So let's go find it.
[2240s] It's in high bit two.
[2241s] This is a separate directory
[2243s] on the file system.
[2244s] So we can have an agent
[2245s] doing anything here.
[2246s] And it won't conflict
[2247s] with good night to have fun,
[2249s] which is running in the original report
[2251s] directory.
[2251s] The problem with work trees
[2253s] is that we now have something
[2255s] to maintain in our head.
[2256s] I need to remember.
[2258s] Oh, I have hybrid two here.
[2260s] Next time I come into this hybrid
[2262s] two directory
[2263s] I would wonder
[2264s] what was I doing in this work
[2265s] tree last time?
[2267s] Is there still an agent running or is it
[2269s] All of
[2270s] that has to
[2270s] exist in my head,
[2272s] and there is no way I'm
[2273s] going to remember all that.
[2274s] So this work tree
[2276s] basically becomes a debt.
[2277s] To get rid of it.
[2278s] I need to run this remove command.
[2282s] Remove.
[2285s] This is just a lot of overhead.
[2287s] My solution to
[2288s] that is another tool
[2289s] I built called Treehouse.
[2291s] It's very simple.
[2292s] I just come into this
[2293s] repo and I run Treehouse.
[2296s] It would drop me into a fresh work tree
[2298s] where I can start doing whatever I want.
[2301s] I can keep spinning up
[2302s] more and more of this work trees
[2304s] by running Treehouse again.
[2307s] And if I want, I can see a list
[2310s] of all the work trees
[2312s] by typing Treehouse status.
[2314s] So I can see
[2315s] which ones are being used versus not.
[2317s] When I'm done,
[2318s] I can just close this tab
[2319s] and Treehouse knows that I'm done,
[2322s] so it will free up
[2323s] that work tree for future use.
[2325s] Next time I ask for work tree,
[2327s] it will try to reuse one of the idol
[2330s] work trees
[2330s] instead of creating a brand new
[2332s] So let's start some real work.
[2334s] I have a bunch of user feedback
[2336s] from my son's last round of playtesting,
[2338s] so let me use this
[2339s] first worksheet
[2340s] we created and launch
[2341s] cloud, and I will say,
[2344s] I remember it's hard for the kid
[2346s] to realize
[2346s] they can press and hold
[2348s] the voice input button to talk.
[2350s] By default
[2350s] they just click it
[2351s] and then they will see a popover.
[2353s] Maybe in the popover,
[2354s] we add a label that tells them
[2356s] they can also press and hold
[2359s] and I'll enter.
[2361s] Then I'll spin up a new tab
[2363s] Treehouse Cloud, and this time I will say
[2368s] the Image attachment dropdown
[2369s] menu should have an action
[2371s] that takes a screenshot
[2372s] of the current app
[2373s] and use that as the attachment.
[2377s] All right, one more tab.
[2379s] Treehouse cloud.
[2384s] Our agent status bar right above the chat
[2386s] input is not always showing bot activity.
[2389s] Look into
[2390s] what happened
[2391s] there and make sure
[2392s] when any bots are in progress,
[2394s] it always displays
[2395s] something that reflects
[2396s] the latest activity.
[2399s] Boom!
[2400s] We now have three
[2400s] sessions running in parallel.
[2402s] Now I can keep going
[2403s] because none of these sessions
[2405s] will need my attention anytime soon,
[2407s] especially if I tell them to run.
[2409s] No mistakes after implementation.
[2411s] I know
[2411s] whether they need me
[2413s] by looking at the top status bar,
[2415s] and I can switch
[2416s] between the tabs using keyboard
[2417s] shortcuts like this.
[2419s] That's very important
[2420s] for managing a lot of parallel
[2421s] sessions efficiently.
[2423s] That said,
[2424s] after doing this for a while,
[2426s] you will discover that
[2427s] juggling between all these sessions,
[2429s] it's quite exhausting.
[2431s] The constant context switch
[2432s] and having to remind yourself
[2434s] what each session was even doing
[2436s] just doesn't feel like an ideal end
[2438s] game experience.
[2439s] So I kept pushing the boundary on this
[2442s] and I discovered that
[2444s] I needed a first mate,
[2446s] someone I can talk to as a captain
[2448s] that will carry out
[2449s] all my directions and manage
[2451s] all the crewmates for me
[2453s] so I can focus on the big picture
[2455s] like where should we go next?
[2456s] not playing whack
[2457s] a mole
[2458s] with this
[2458s] increasingly high number of crewmates,
[2460s] this is how I level up
[2462s] and truly become a captain.
[2464s] My First mate is another free
[2466s] and open source project
[2467s] and it's very new.
[2468s] The way to use it is by just cloning it.
[2474s] And then I can run
[2477s] an agent in this repository.
[2479s] Now I just talk to it
[2481s] and ask it to work on any projects
[2483s] I like.
[2484s] Let's say
[2485s] I'd like to work on lavish
[2487s] access, GitHub, Axi and Chrome dev tools.
[2489s] Actually They are all GitHub projects
[2491s] I own.
[2492s] first mate is starting up
[2493s] and the first time we run it
[2495s] it will do some setup
[2496s] and ask for some preferences,
[2498s] but it's also just talking to it,
[2499s] which is pretty easy.
[2501s] you might wonder
[2502s] why is the transcription so good?
[2504s] Because it's
[2505s] recognizing this project names.
[2507s] Let me show you.
[2509s] Open Silver Whisper actually supports
[2512s] this customization
[2514s] through a system prompt.
[2516s] So what we can do
[2517s] here is in this model menu
[2520s] in the transcription menu
[2521s] there is an initial prompt.
[2523s] And we can put in some common vocabulary
[2525s] that we use into this system prompt.
[2528s] this prompt is
[2529s] what makes the transcription really good.
[2530s] First mate here is asking how strict
[2533s] I want to be
[2533s] with the code changes in this repos,
[2535s] and I want to select full gates to PR.
[2539s] This is basically going
[2540s] to be using no mistakes
[2541s] as the pipeline to validate its change
[2545s] and first task.
[2546s] Yeah, I'll describe it. Right now.
[2549s] A real thing I want to do
[2550s] is for all three
[2552s] projects, I'd like to add an update
[2554s] command on the CLI
[2556s] that will update their
[2557s] version to the latest on npm.
[2561s] And let's see what First Mate does.
[2563s] It realizes that this is not one task,
[2566s] but three parallel tasks,
[2567s] and it's now spinning up
[2569s] these tabs in timox,
[2571s] just like we be the scenes.
[2573s] It would also call tree House
[2574s] to create work trees,
[2576s] and then run an agent in that work
[2578s] tree to get the work done,
[2579s] and then it will run.
[2580s] No mistakes to validate the change
[2582s] and get the PR ready for us to review.
[2584s] Now you can see
[2585s] it's first made that
[2587s] it's doing the juggling.
[2588s] I don't need to worry
[2589s] about any of this now.
[2590s] I can just keep giving it more work.
[2593s] Hey first mate,
[2594s] let's also look at the most recent
[2596s] three open issues in lavish axillary
[2599s] and let's discuss which
[2600s] ones are actionable.
[2603s] Boom!
[2604s] First mate
[2605s] now is pulling the open
[2606s] issues from the repo
[2607s] while waiting for the three background
[2609s] agents working in parallel.
[2611s] All right,
[2611s] first mate said number 87 is cleanest.
[2615s] It's very actionable.
[2616s] And let me just see.
[2618s] What is this?
[2619s] Don't toggle in annotation mode.
[2622s] Okay.
[2624s] That's the clear bug.
[2626s] All right, first mate, let's address
[2629s] number 87.
[2632s] Look, now first mate is struggling
[2634s] a lot of tasks for me
[2636s] that I otherwise
[2637s] would have to manage by myself.
[2639s] Watching it
[2639s] context switch is actually
[2641s] an oddly satisfying experience,
[2643s] because I know that's what
[2644s] I would have to do otherwise.
[2646s] First mate is basically all my tools
[2648s] coming together
[2649s] as one cohesive workflow,
[2651s] and I have been really happy with it.
[2653s] It's been a pretty
[2654s] significant improvement
[2655s] to my overall experience
[2657s] working with agents.
[2658s] I highly recommend trying it out
[2659s] if you are still directly talking
[2661s] to every single agent session one by one,
[2663s] it will be a pretty massive upgrade.
[2666s] Something you start to notice
[2667s] after having a first mate.
[2668s] Is that because first mate took care
[2671s] of so many things for you,
[2672s] you start to run out of ideas
[2674s] for what to ask you to do.
[2676s] This is a good thing because it indicates
[2678s] the bottleneck is shifting,
[2680s] but it also means you,
[2681s] as the captain, needs to keep up.
[2684s] This requires a mindset shift
[2686s] of focusing more of your energy
[2688s] on understanding what matters
[2690s] by talking to your users,
[2692s] understanding the competitive landscape,
[2694s] and crafting a good treasure
[2696s] map that can lead your crew
[2698s] to a good direction.
[2700s] Once you started doing
[2701s] that, congratulations!
[2703s] You have successfully transitioned
[2704s] from a sailor into a great captain.
[2707s] All right.
[2708s] We have gone from not having a ship
[2710s] to being a captain
[2711s] that has a first mate and a big crew
[2714s] that sailed together.
[2715s] This is a pretty good time
[2717s] to wrap up this video.
[2718s] All my tools can be found on my GitHub
[2720s] and will be linked
[2721s] in the description below.
[2723s] They are all free and open source.
[2725s] I built them
[2726s] because I just want
[2726s] to see more people learning
[2728s] how to do
[2728s] a genetic engineering
[2729s] effectively and doing it
[2731s] in an enjoyable way,
[2732s] and that's what I hope
[2734s] you can get out of this video.
[2736s] I will continue to share
[2737s] more of my workflow
[2738s] and things
[2738s] I find useful
[2739s] on my channel,
[2740s] so don't forget to subscribe
[2741s] if you don't want to miss anything.
[2743s] Thank you for watching
[2744s] and see you next time!