<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:googleplay="http://www.google.com/schemas/play-podcasts/1.0"><channel><title><![CDATA[The AI-Shaped Company]]></title><description><![CDATA[AI is creating a new shape of company. The new shape runs the operational cycle through agents, with humans on judgment. By Leon Ho, founder of LifeHack and creator of AgentUse.]]></description><link>https://aishapedcompany.com</link><image><url>https://substackcdn.com/image/fetch/$s_!1QAN!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F675a6860-ca24-416a-9e84-9c8db4388cf9_512x512.png</url><title>The AI-Shaped Company</title><link>https://aishapedcompany.com</link></image><generator>Substack</generator><lastBuildDate>Wed, 29 Jul 2026 05:49:11 GMT</lastBuildDate><atom:link href="https://aishapedcompany.com/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Leon Ho]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[leonho@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[leonho@substack.com]]></itunes:email><itunes:name><![CDATA[Leon Ho]]></itunes:name></itunes:owner><itunes:author><![CDATA[Leon Ho]]></itunes:author><googleplay:owner><![CDATA[leonho@substack.com]]></googleplay:owner><googleplay:email><![CDATA[leonho@substack.com]]></googleplay:email><googleplay:author><![CDATA[Leon Ho]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[Your Agent Is Enforcing Rules You Never Gave It]]></title><description><![CDATA[Anthropic already ships a warning about this in the system prompt. It loses to a note the model wrote about me last month, and the reason is not authority.]]></description><link>https://aishapedcompany.com/p/your-agent-is-enforcing-rules-you</link><guid isPermaLink="false">https://aishapedcompany.com/p/your-agent-is-enforcing-rules-you</guid><dc:creator><![CDATA[Leon Ho]]></dc:creator><pubDate>Mon, 27 Jul 2026 18:38:03 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/425b6795-792e-46c2-9981-b6a10bf360fb_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Claude Code stopped me mid-task last week. It couldn't do what I'd asked, it said, because of a rule.</p><p>Then it quoted the rule back to me, in the same flat certain voice it uses for everything.</p><p>I had never typed that rule anywhere. It came from Claude Code's own memory, which it wrote itself, about me, weeks earlier, without me asking.</p><p>The wrong rule wasn't the unsettling part. The tone was. It was exactly as sure of a thing it made up as of the things I sat down and decided.</p><p>That matters more than it would have two years ago. LifeHack, the company I've run for twenty years and once ran with a full editorial and marketing team, is becoming an AI-first operation that one person carries.</p><p>A rule nobody wrote doesn't stay in a terminal window anymore. It reaches what ships.</p><h2>The short version</h2><p>Any coding agent with a memory feature will write notes about you, then quote them back as rules. It can't separate its own guess from your decision, because by the time both load into a session they look the same.</p><p>Anthropic saw this coming and shipped a warning in the system prompt, the highest-authority text in the stack. The warning loses anyway, to notes the model wrote itself.</p><p>It loses for a reason every operator already knows. The warning classifies a category. The note names a moment and an action. "We take data privacy seriously" never changed anyone's behavior. "Get sign-off before you export a customer list" does.</p><p>So the fix isn't a stronger rule. It's a rule with a trigger, plus somewhere for firm decisions to graduate to.</p><p>Memory offers. Instructions instruct. Only code enforces. Almost nothing belongs in the first tier, and most of what you write belongs in the second.</p><h2>Claude Code is always trying to save things about you</h2><p>Claude Code keeps a memory store on disk, with an index file that loads at the start of every session.</p><p>Useful idea. You want it to stop re-asking things you've already settled.</p><p>But it doesn't wait for you to decide something is worth keeping. It watches the session, notices you did something, and writes a note. Often into a category it calls "feedback," meant to capture how you like to work.</p><p>The line between "Leon told me to do this" and "Leon did this twice, so he probably wants it" is one the model draws softly, then forgets it drew.</p><p>So the store fills with two different things: what you decided and typed into <em>CLAUDE.md</em>, and what Claude Code guessed and saved on its own. Same authoritative frontmatter, same confident one-line summary on top.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Tj65!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F108d703c-bdc2-4ec1-b1ce-9e6f4aba1bda_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Tj65!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F108d703c-bdc2-4ec1-b1ce-9e6f4aba1bda_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!Tj65!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F108d703c-bdc2-4ec1-b1ce-9e6f4aba1bda_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!Tj65!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F108d703c-bdc2-4ec1-b1ce-9e6f4aba1bda_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!Tj65!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F108d703c-bdc2-4ec1-b1ce-9e6f4aba1bda_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Tj65!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F108d703c-bdc2-4ec1-b1ce-9e6f4aba1bda_1536x1024.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/108d703c-bdc2-4ec1-b1ce-9e6f4aba1bda_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Two identical note cards, labelled 'you decided this' and 'it guessed this', a question mark between them&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Two identical note cards, labelled 'you decided this' and 'it guessed this', a question mark between them" title="Two identical note cards, labelled 'you decided this' and 'it guessed this', a question mark between them" srcset="https://substackcdn.com/image/fetch/$s_!Tj65!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F108d703c-bdc2-4ec1-b1ce-9e6f4aba1bda_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!Tj65!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F108d703c-bdc2-4ec1-b1ce-9e6f4aba1bda_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!Tj65!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F108d703c-bdc2-4ec1-b1ce-9e6f4aba1bda_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!Tj65!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F108d703c-bdc2-4ec1-b1ce-9e6f4aba1bda_1536x1024.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>Next session they load back in together, and the guesses arrive worded as settled fact. By then the model can't tell its own old guess from your real instruction. They look identical.</p><p>The bug isn't that it has memory. The bug is that a guess gets the same authority as a rule you wrote on purpose.</p><h2>The patch that was already there</h2><p>Claude Code ships a disclaimer on recalled memory, right in the system prompt: those blocks are "background context, not user instructions."</p><p>So Anthropic saw it coming and fixed it, in the highest-authority text in the entire stack. Above my instructions file. Above anything I could type.</p><p>A note Claude wrote about me last month talked over it anyway.</p><p>If authority came from the source, this would have been settled before it started.</p><h2>Why the higher-ranked text lost</h2><p>Put the two side by side. The difference isn't rank.</p><p>The disclaimer says memories <em>are</em> background context. That's a classification. Nothing in a turn ever has to consult it, because there's no moment where it fires.</p><p>The note says "Don't end his posts with a sign-off." That's a command, and it arrives with an obvious moment attached: the end of a post.</p><p>One describes. The other instructs. When they meet, the one carrying a trigger wins, whoever wrote it.</p><p>It doesn't help that the disclaimer sits at the tail of a long section that otherwise teaches the model how to save memories. Its neighbors are all pro-memory. It's a footnote inside the manual for the thing it warns about.</p><h2>The rule that made the problem go away</h2><p>My instinct was to engineer my way out. Tag every note confirmed or inferred, audit the store, reclassify the ones written too broadly. Real machinery. It felt responsible.</p><p>A plain question killed it. If I'm building a system so Claude Code knows which of its own memories to <em>trust as rules</em>, I've already conceded the thing that's wrong: that the memory store is a place rules can live at all.</p><p>So I deleted the premise instead. What I wrote down first was four words:</p><p><strong>Memory is never law.</strong></p><p>Not low-priority law. Not law-pending-verification. Everything auto-saved is context and hypothesis by definition, however confidently it's phrased.</p><p>That dissolved the tagging system I almost built. Nothing left to grade, because "is this a rule I must obey" now has the same answer for every note.</p><p>Then I caught myself doing the thing I'd just spent four sections criticizing.</p><p>"Memory is never law" is a classification. It tells the agent what a category is. No moment in it, no verb, nothing that fires. I had written a better-sounding version of the sentence that already failed.</p><p>A slogan is a name for a rule. It isn't the rule.</p><p>The rule is what happens at <em>assertion</em> time, the moment the agent is about to enforce something. Written out so an agent can run it, that took two lines, and neither of them is quotable.</p><h2>Where the real rules live</h2><p>If memory can't hold rules, something else has to.</p><p><strong>Firm preferences graduate to *CLAUDE.md*.</strong> By hand. Promotion, not tagging. Whatever stays in memory is the soft tier by default, and you never score it, because its location already says what it is.</p><p>So "Leon seems to like short subject lines" stays in memory and gets <em>offered</em>. Never enforced.</p><p>That distinction is worth more than it sounds. An inferred style rule doesn't announce itself the way a bad deploy does. It applies itself quietly to everything the fleet drafts, and you find it in something that already shipped.</p><p>One caveat, because the docs say it plainly. <em>CLAUDE.md</em> isn't enforcement either. Anthropic's memory page says Claude treats both layers as context, "not enforced configuration."</p><p>That's right, and it changes nothing above. Neither layer binds. A rule with a trigger beats a rule with a label at any tier, and <em>CLAUDE.md</em> is just where I keep the ones I wrote on purpose.</p><p>For the short list of things that must hold regardless, there's a third tier, and the same docs point at it: a <em>PreToolUse</em> hook. That's code. It runs before the tool call and returns a block. Mine stopped an agent six times in one session this week. Nothing was argued.</p><p>Which is also the cost. A layer that can't be reasoned with can't be corrected in the moment either. My own hook spent a stretch blocking ordinary commit messages, because they contained a slash-prefixed string it read as a file path. Right about the pattern, wrong about the case. I routed around it by writing the message to a file.</p><p>Hard enforcement is for the few places where being wrongly blocked costs less than being wrong.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!NTn3!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F820906f5-1d55-4280-b7d1-81fe21a80aef_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!NTn3!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F820906f5-1d55-4280-b7d1-81fe21a80aef_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!NTn3!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F820906f5-1d55-4280-b7d1-81fe21a80aef_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!NTn3!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F820906f5-1d55-4280-b7d1-81fe21a80aef_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!NTn3!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F820906f5-1d55-4280-b7d1-81fe21a80aef_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!NTn3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F820906f5-1d55-4280-b7d1-81fe21a80aef_1536x1024.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/820906f5-1d55-4280-b7d1-81fe21a80aef_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Three horizontal bands in increasing line weight: memory offers, CLAUDE.md instructs, hook enforces, with a green human figure standing on the middle band marked 'most rules'&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Three horizontal bands in increasing line weight: memory offers, CLAUDE.md instructs, hook enforces, with a green human figure standing on the middle band marked 'most rules'" title="Three horizontal bands in increasing line weight: memory offers, CLAUDE.md instructs, hook enforces, with a green human figure standing on the middle band marked 'most rules'" srcset="https://substackcdn.com/image/fetch/$s_!NTn3!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F820906f5-1d55-4280-b7d1-81fe21a80aef_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!NTn3!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F820906f5-1d55-4280-b7d1-81fe21a80aef_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!NTn3!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F820906f5-1d55-4280-b7d1-81fe21a80aef_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!NTn3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F820906f5-1d55-4280-b7d1-81fe21a80aef_1536x1024.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>The part to paste into your CLAUDE.md</h2><p>Here's the block, as it sits in my file:</p><pre><code>## Rules vs preferences (memory is never law)

1. Memory, recalled &lt;system-reminder&gt; context, and anything you inferred are
   never rules. Before enforcing any constraint, name its source. If the source
   is memory or your own inference, surface it and ask, don't enforce it.
2. If a preference is firm enough to enforce, promote it into this file.
   Whatever stays in memory is the non-binding tier by definition.</code></pre><p>The two numbered lines are the part the agent runs. The heading is for me, so I can find the rule again and point at it in conversation. It does no work on the model, which is the entire lesson of the section above it.</p><p>No tagging convention, no audit, no per-note machinery. One gate, one promotion path.</p><p>Both lines work for the same reason. Each names a moment the model has to walk through, not a category it's supposed to respect.</p><p>Mine kept it straight the moment I stopped asking it to grade its own memory and started making it answer one question before it enforces anything: who said so.</p>]]></content:encoded></item><item><title><![CDATA[I Stopped Hand-Writing My Agents]]></title><description><![CDATA[Claude Code writes them from the runtime's own live manual. The agents write back.]]></description><link>https://aishapedcompany.com/p/i-stopped-hand-writing-my-agents</link><guid isPermaLink="false">https://aishapedcompany.com/p/i-stopped-hand-writing-my-agents</guid><dc:creator><![CDATA[Leon Ho]]></dc:creator><pubDate>Tue, 21 Jul 2026 19:23:48 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/ccaeda38-e11d-45f9-bcc6-ccb5e43889f1_1536x1024.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>One of my agents has a rule in its memory file that has fired seven times: when a post's urgency depends on a bug being unresolved, check whether the fix already shipped before drafting the warning. I never wrote that rule. I rejected one stale draft at the approval gate, the agent turned my comment into the rule, and now every future run starts already knowing.</p><p>That rule is the small visible end of the workflow I want to walk through. Most people make the same corrections to their AI over and over, because the chat forgets and the effort evaporates. This setup is built so a fix I make once keeps working while I'm not there: I don't hand-write agents anymore. A code agent writes them, and the agents improve themselves between edits.</p><h3>The Setup</h3><p>Every agent I run is a markdown file. YAML frontmatter for the contract (model, schedule, tool allowlists, approval gate), plain English for the job. The content repo alone holds 46 of these files: SEO rank tracking, newsletter measurement, support drafting, publishing pipelines.</p><p>The fleet is not a demo. It's the middle of a real transformation: LifeHack, the company I've run for twenty years, once with a full editorial and marketing team, is becoming an AI-first operation that one person carries. Most of these agents do work that used to be someone's job.</p><p>I don't open those files in an editor and type. I open Claude Code, or Codex when I want a different set of instincts on a gnarly one, and describe the agent I need. The code agent writes the file, runs it once, reads the session log, and fixes what broke.</p><p>That part is not novel. Everyone uses code agents to write code now. The part worth stealing is how the code agent knows what a good agent file looks like.</p><h3>The Manual Lives in the Tool</h3><p>My first instinct was the obvious one: write a long skill for Claude Code explaining AgentUse, the frontmatter fields, the gotchas. A frozen copy of the docs, pasted into the prompt.</p><p>That copy starts rotting the day you write it. Field names change. New gotchas surface. The skill says one thing, the installed version does another, and the code agent confidently writes agents for a runtime that no longer exists.</p><p>So the skill I actually use is a stub. Its core instruction is one command: <em>agentuse skills get creator</em>. The AgentUse CLI serves its own authoring manual, matched to the installed version. Before Claude Code writes or edits any agent, it pulls the current instructions from the binary that will run the file. When I upgrade the runtime, the manual upgrades with it. Nothing to sync, nothing to rot.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!IAb_!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed7c8e34-6fd8-40e3-bf84-8b208fcd3747_1536x1024.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!IAb_!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed7c8e34-6fd8-40e3-bf84-8b208fcd3747_1536x1024.jpeg 424w, https://substackcdn.com/image/fetch/$s_!IAb_!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed7c8e34-6fd8-40e3-bf84-8b208fcd3747_1536x1024.jpeg 848w, https://substackcdn.com/image/fetch/$s_!IAb_!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed7c8e34-6fd8-40e3-bf84-8b208fcd3747_1536x1024.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!IAb_!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed7c8e34-6fd8-40e3-bf84-8b208fcd3747_1536x1024.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!IAb_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed7c8e34-6fd8-40e3-bf84-8b208fcd3747_1536x1024.jpeg" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ed7c8e34-6fd8-40e3-bf84-8b208fcd3747_1536x1024.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Two-panel sketch: a cracked, taped-up frozen copy of docs drifting from the runtime, versus a live manual the pen pulls straight from the runtime, labeled \&quot;ask the tool\&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Two-panel sketch: a cracked, taped-up frozen copy of docs drifting from the runtime, versus a live manual the pen pulls straight from the runtime, labeled &quot;ask the tool&quot;" title="Two-panel sketch: a cracked, taped-up frozen copy of docs drifting from the runtime, versus a live manual the pen pulls straight from the runtime, labeled &quot;ask the tool&quot;" srcset="https://substackcdn.com/image/fetch/$s_!IAb_!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed7c8e34-6fd8-40e3-bf84-8b208fcd3747_1536x1024.jpeg 424w, https://substackcdn.com/image/fetch/$s_!IAb_!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed7c8e34-6fd8-40e3-bf84-8b208fcd3747_1536x1024.jpeg 848w, https://substackcdn.com/image/fetch/$s_!IAb_!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed7c8e34-6fd8-40e3-bf84-8b208fcd3747_1536x1024.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!IAb_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed7c8e34-6fd8-40e3-bf84-8b208fcd3747_1536x1024.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>The stub itself installs with one command:</p><pre><code>npx skills add agentuse/agentuse</code></pre><p>The same file works in Claude Code, Codex, Cursor, and anything else that speaks Agent Skills. That's why switching code agents costs me nothing: the knowledge was never in the assistant. It's in the CLI they all ask.</p><p>This matters even if you never ship a framework yourself. When your code agent builds on any tool, don't let it work from its training-data memory of the docs, and don't paste frozen docs into a prompt either. Have it pull the current manual from the installed tool. And when you're choosing what to build on, prefer tools that can serve their own.</p><h3>What the Code Agent Writes</h3><p>The manual pushes one discipline hard: hard-code the invariants, delegate the judgment. The agent file is re-read on every step, so every line costs attention. Pin down only what must never drift: the approval gate, the exact commands it may run, the file paths it may touch, the output shape. Leave the rest to the model.</p><p>A real file from the fleet, for an agent that drafts posts for my review, pins exactly that: an Opus model with reasoning set high, <em>approval: true</em>, a bash allowlist a few commands long, and a guardrails section that opens "hard - never relax." One guardrail cites its own postmortem inline: a runtime race once let sibling tool calls fire while the approval gate was still pending, so the rule now says the gate must stand alone, with the incident date attached.</p><p>A human wrote almost none of that. Claude Code wrote it, then rewrote it after real runs. The incident citation is the point: the file carries its own case law.</p><h3>The Agents Write Back</h3><p>Creation is half the loop. The other half runs while I'm not looking.</p><p>Each agent has <em>learning: true</em> in its frontmatter, which does two things: capture lessons after a run, and inject stored lessons into the prompt before the next one. Lessons arrive from three sources. The agent's own self-evaluation. My comments at the approval gate, promoted into rules. And rules I save by hand.</p><p>Across the content fleet that's 281 entries in 19 learnings files, each tagged with a confidence score and a count of how often it has applied. The stale-warning rule from the opening has applied seven times. Another taught an agent to check whether the store lock it's waiting on belongs to a crashed process fifteen hours dead, instead of queuing behind a ghost. My favorite one is a guardrail an agent earned under revision pressure: it had turned a source author's practice into "the habit I trust now," a fabricated personal claim, and the lesson it kept says sounding more personal is never worth inventing a personal fact.</p><p>The runtime resolves conflicts with a strict precedence: agent instructions first, then learned guidelines, then skills, then reference files. Learnings override skill defaults. That ordering is what makes correction stick. I can fix a behavior once, at the gate, in one sentence, and the fix outranks the shared craft files every run after.</p><h3>Closing the Loop Between the Two</h3><p>None of this needs me. A lesson captured on Tuesday's run applies itself on Wednesday's, injected automatically before the agent starts. For most lessons, local, situational, cheap, that is the right home and the loop ends there. But when a lesson proves permanent, when it keeps applying run after run, or reveals the agent's structure is wrong, auto-injection stops being the answer.</p><p>That's when the two halves meet. I open Claude Code, point it at the agent and its learnings file, and have it merge the permanent lessons into the agent's own instructions, then prune the entries it absorbed. My git log is full of commits like "bake in this run's lessons for a clean next demo." That particular commit exists because a 119KB Amazon page stalled a cheap model mid-run: the agent file now tells its builds to bound large pages, and I learned to validate any network agent with one real run, because health checks and mock runs miss page size, latency, and blocked sources every time. There's even a commit correcting a learning that was itself wrong: the agent had blamed a port conflict for a failure that was actually Chrome auto-updating underneath it. Memory gets edited, not just appended.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!bszL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb410b609-4465-4cf3-9e05-fbfef054254a_1536x1024.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!bszL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb410b609-4465-4cf3-9e05-fbfef054254a_1536x1024.jpeg 424w, https://substackcdn.com/image/fetch/$s_!bszL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb410b609-4465-4cf3-9e05-fbfef054254a_1536x1024.jpeg 848w, https://substackcdn.com/image/fetch/$s_!bszL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb410b609-4465-4cf3-9e05-fbfef054254a_1536x1024.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!bszL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb410b609-4465-4cf3-9e05-fbfef054254a_1536x1024.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!bszL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb410b609-4465-4cf3-9e05-fbfef054254a_1536x1024.jpeg" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b410b609-4465-4cf3-9e05-fbfef054254a_1536x1024.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Hand-drawn loop diagram: code agent writes, agent runs, lessons captured, injected next run, with a green human figure at the approval gate and a merge-back arrow returning to the code agent&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Hand-drawn loop diagram: code agent writes, agent runs, lessons captured, injected next run, with a green human figure at the approval gate and a merge-back arrow returning to the code agent" title="Hand-drawn loop diagram: code agent writes, agent runs, lessons captured, injected next run, with a green human figure at the approval gate and a merge-back arrow returning to the code agent" srcset="https://substackcdn.com/image/fetch/$s_!bszL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb410b609-4465-4cf3-9e05-fbfef054254a_1536x1024.jpeg 424w, https://substackcdn.com/image/fetch/$s_!bszL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb410b609-4465-4cf3-9e05-fbfef054254a_1536x1024.jpeg 848w, https://substackcdn.com/image/fetch/$s_!bszL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb410b609-4465-4cf3-9e05-fbfef054254a_1536x1024.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!bszL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb410b609-4465-4cf3-9e05-fbfef054254a_1536x1024.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>So the full loop: a code agent writes the agent from the runtime's own live manual. The agent runs, and writes down what it learns from failures and from my gate comments. Learnings override defaults immediately. And when a lesson proves structural, the code agent folds it into the file and the queue empties. Each pass, the file gets shorter and harder to fool.</p><p>I'm building <a href="https://agentuse.io">AgentUse</a>, open-source infrastructure for autonomous agents, and the learning capture, the approval gates, and the self-serving manual above are all part of it. But the loop doesn't depend on my stack. It depends on the three pieces existing at all: a live manual, a memory the runtime actually injects, and a scheduled appointment between your code agent and that memory.</p><p>This week, take one agent, or one prompt you keep re-fixing, and give it a memory file the next run actually reads. Then put thirty minutes on the calendar to fold what accumulates back into the prompt. The first version of an agent is a guess. The file that's been through this loop a dozen times is the only spec I trust.</p>]]></content:encoded></item><item><title><![CDATA[The Five Shapes of an Agent Fleet]]></title><description><![CDATA[A team used to run LifeHack. Today 129 agents do, and every one of them takes one of five shapes.]]></description><link>https://aishapedcompany.com/p/the-five-shapes-of-an-agent-fleet</link><guid isPermaLink="false">https://aishapedcompany.com/p/the-five-shapes-of-an-agent-fleet</guid><dc:creator><![CDATA[Leon Ho]]></dc:creator><pubDate>Thu, 16 Jul 2026 18:39:34 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/4ba516dd-f2fb-4731-a672-fa0b95b116af_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>A team of people used to run LifeHack. Today the company runs on agents, and I'm the only human left in the loop.</p><p>The fleet is 129 agents at last count. They write, research, measure, render video, draft support replies, watch markets. Most of them came out of rebuilding LifeHack into an AI-first operation; the same patterns now run my consulting pipeline and my trading watchlists too. I never designed a taxonomy for any of it. But this week I audited the whole fleet, and every agent had settled into one of five shapes. Not roughly five. Five, with no stragglers: the ones that didn't fit cleanly turned out to be misbuilt, and each was drifting toward one of the shapes anyway.</p><p>That's worth more than a tidy diagram. It means agent architecture isn't a blank canvas where every pipeline is a fresh design decision. A few properties of the work generate the structure, the same way load and span generate a bridge. Once you can read those properties, the next agent designs itself. And if you're rebuilding a human-run company into an agent-run one, as I did, the five shapes are the whole org chart.</p><h2>The Three Questions</h2><p>Three questions about the work decide which shape an agent takes.</p><p><strong>Does it change anything outside my system?</strong> An agent that only reads, measures, or writes internal files can be wrong cheaply. An agent that posts, sends, or schedules cannot. This question decides whether the structure needs an approval gate, a point where the loop stops and waits for a named person, and where that gate goes: directly in front of the action you can't take back.</p><p><strong>Does the draft keep overnight?</strong> A reply to a live conversation is stale in hours. A rendered video is exactly as good next Tuesday. Perishable work fuses creation and publishing into one run. Storable work lets you split them, and the split is where most of the interesting structure lives.</p><p><strong>How many commitments are in the work?</strong> Posting a reply is one commitment. Shipping a blog post is two: putting a draft up for review under my name, then making it public. Each commitment is a separate decision, and separate decisions want separate stops.</p><p>Ask those three questions of any job you're handing to an agent, and one of five shapes falls out.</p><h2>Shape 1: The Worker</h2><p>Reads, researches, measures, summarizes, writes internal state. No outside mutation, so no gate, no store, no manager. A scout that flags conversations worth joining. A measurement agent that pulls last week's rankings. If one does its job badly, I delete a file. In a human org, this is the analyst: the research that's on your desk each morning, no signature required.</p><p>This is most of my fleet. Of my 129 agents, 106 never stop for a human, and the bulk of those are workers. That ratio is the point. Workers with no ceremony around them are what keep the ceremony meaningful everywhere else. If every agent stopped for me, approving would turn into a habit, and habit is where judgment goes to die.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!m3ud!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb52b7bae-1521-4bd0-88d7-8f94a5de4320_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!m3ud!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb52b7bae-1521-4bd0-88d7-8f94a5de4320_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!m3ud!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb52b7bae-1521-4bd0-88d7-8f94a5de4320_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!m3ud!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb52b7bae-1521-4bd0-88d7-8f94a5de4320_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!m3ud!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb52b7bae-1521-4bd0-88d7-8f94a5de4320_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!m3ud!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb52b7bae-1521-4bd0-88d7-8f94a5de4320_1536x1024.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b52b7bae-1521-4bd0-88d7-8f94a5de4320_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;The Worker: reads and measures, nothing to take back&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="The Worker: reads and measures, nothing to take back" title="The Worker: reads and measures, nothing to take back" srcset="https://substackcdn.com/image/fetch/$s_!m3ud!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb52b7bae-1521-4bd0-88d7-8f94a5de4320_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!m3ud!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb52b7bae-1521-4bd0-88d7-8f94a5de4320_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!m3ud!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb52b7bae-1521-4bd0-88d7-8f94a5de4320_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!m3ud!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb52b7bae-1521-4bd0-88d7-8f94a5de4320_1536x1024.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>Shape 2: The Correspondent</h2><p>One agent creates one perishable thing and publishes it in the same run. Drafting and posting can't be separated, because the draft dies overnight. So the whole structure is a single file: find the target, write the draft, stop at the gate, post on approval. My reply agents and news-reaction agents are all this shape.</p><p>In a human org, this is the correspondent: finds the story, files it, and it runs today with an editor's sign-off, because by tomorrow it isn't a story. The gate is inline, one line before the irreversible send. There's nowhere else it could go.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!h3JQ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8a800ba-150e-4fc5-8864-17361c7de75b_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!h3JQ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8a800ba-150e-4fc5-8864-17361c7de75b_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!h3JQ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8a800ba-150e-4fc5-8864-17361c7de75b_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!h3JQ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8a800ba-150e-4fc5-8864-17361c7de75b_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!h3JQ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8a800ba-150e-4fc5-8864-17361c7de75b_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!h3JQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8a800ba-150e-4fc5-8864-17361c7de75b_1536x1024.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f8a800ba-150e-4fc5-8864-17361c7de75b_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;The Correspondent: create, gate, post in one run&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="The Correspondent: create, gate, post in one run" title="The Correspondent: create, gate, post in one run" srcset="https://substackcdn.com/image/fetch/$s_!h3JQ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8a800ba-150e-4fc5-8864-17361c7de75b_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!h3JQ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8a800ba-150e-4fc5-8864-17361c7de75b_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!h3JQ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8a800ba-150e-4fc5-8864-17361c7de75b_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!h3JQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8a800ba-150e-4fc5-8864-17361c7de75b_1536x1024.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>Shape 3: The Dispatcher</h2><p>A manager that owns strategy and cadence, decides which agent runs today, and delegates. It looks senior, but notice what it never does: touch the outside world. Routing is reversible. Delegating is reversible. So the dispatcher itself carries no gate; every agent it dispatches keeps its own.</p><p>In a human org, this is the chief of staff: decides what gets done this week, and does none of it personally. The shape exists to hold the judgment that doesn't belong in any single agent below it: how often to engage, which mix of activities, when to stand down.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!A6T5!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb611b774-ffaf-494e-bd83-bd548dacb041_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!A6T5!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb611b774-ffaf-494e-bd83-bd548dacb041_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!A6T5!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb611b774-ffaf-494e-bd83-bd548dacb041_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!A6T5!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb611b774-ffaf-494e-bd83-bd548dacb041_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!A6T5!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb611b774-ffaf-494e-bd83-bd548dacb041_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!A6T5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb611b774-ffaf-494e-bd83-bd548dacb041_1536x1024.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b611b774-ffaf-494e-bd83-bd548dacb041_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;The Dispatcher: strategy above, gates below&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="The Dispatcher: strategy above, gates below" title="The Dispatcher: strategy above, gates below" srcset="https://substackcdn.com/image/fetch/$s_!A6T5!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb611b774-ffaf-494e-bd83-bd548dacb041_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!A6T5!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb611b774-ffaf-494e-bd83-bd548dacb041_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!A6T5!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb611b774-ffaf-494e-bd83-bd548dacb041_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!A6T5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb611b774-ffaf-494e-bd83-bd548dacb041_1536x1024.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>Shape 4: The Inventory Pipeline</h2><p>When the artifact keeps, you can split creation from publishing, and the structure grows a warehouse in the middle.</p><p>LifeHack's short-video pipeline is the full version. Creator agents run on a schedule with no human anywhere: write the script, render the video with voiceover and captions, verify their own output (aspect ratio, duration, audio present), and file the result in a store. A manager runs separately and makes one decision per run: buffer below five, create more; stock ready and the calendar thin, publish one. Only the publish path stops for me, one gate at the exit, and what I approve there is whole: this video, this copy per platform, this slot across four channels.</p><p>The store is what earns the extra moving parts, in one specific place: rejection. When I reject a video at the gate with "the text is cropped on slide three," the manager doesn't shrug and end. It re-delegates to the creator in a re-create mode: same message, same audience, new render fixing the defect, and the new video comes back through the same gate. My rejection became an instruction instead of an ending.</p><p>One unglamorous component makes it safe: state. An item mid-approval is marked, so an overlapping scheduled run sees the mark and stands down instead of double-publishing. Boring, structural, and the difference between a pipeline and a race condition.</p><p>In a human org, this is the production studio: a small team builds ahead of schedule, and one editor at the exit decides what airs.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!z2Bk!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8083ff05-53f3-41bc-afc1-f254ea56a0c6_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!z2Bk!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8083ff05-53f3-41bc-afc1-f254ea56a0c6_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!z2Bk!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8083ff05-53f3-41bc-afc1-f254ea56a0c6_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!z2Bk!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8083ff05-53f3-41bc-afc1-f254ea56a0c6_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!z2Bk!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8083ff05-53f3-41bc-afc1-f254ea56a0c6_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!z2Bk!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8083ff05-53f3-41bc-afc1-f254ea56a0c6_1536x1024.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8083ff05-53f3-41bc-afc1-f254ea56a0c6_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;The Inventory Pipeline: build stock ungated, gate once at the exit&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="The Inventory Pipeline: build stock ungated, gate once at the exit" title="The Inventory Pipeline: build stock ungated, gate once at the exit" srcset="https://substackcdn.com/image/fetch/$s_!z2Bk!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8083ff05-53f3-41bc-afc1-f254ea56a0c6_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!z2Bk!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8083ff05-53f3-41bc-afc1-f254ea56a0c6_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!z2Bk!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8083ff05-53f3-41bc-afc1-f254ea56a0c6_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!z2Bk!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8083ff05-53f3-41bc-afc1-f254ea56a0c6_1536x1024.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>Shape 5: The Staged Pipeline</h2><p>Some work has more than one commitment in it, and each commitment ends a stage. LifeHack's blog pipeline commits twice: a writer agent stops for approval on the draft, a release agent stops again before the post goes live. The LifeHack newsletter, the loop a team once produced by hand, runs the same way, and I've torn that one down in full before: pick the angle at the first stop, approve the rendered send at the second.</p><p>The shape looks like several agents chained together, but the chain isn't decoration. Approving a draft and approving a release are different decisions made at different times with different information. Collapsing them into one stop means one of them is being made blind. An exec would recognize this instantly: it's the two-signature process, and the second signature exists for the same reason it does on a wire transfer.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!4WT5!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffcc7bba7-1e95-4051-9201-86e8ab15f180_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!4WT5!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffcc7bba7-1e95-4051-9201-86e8ab15f180_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!4WT5!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffcc7bba7-1e95-4051-9201-86e8ab15f180_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!4WT5!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffcc7bba7-1e95-4051-9201-86e8ab15f180_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!4WT5!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffcc7bba7-1e95-4051-9201-86e8ab15f180_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!4WT5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffcc7bba7-1e95-4051-9201-86e8ab15f180_1536x1024.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/fcc7bba7-1e95-4051-9201-86e8ab15f180_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;The Staged Pipeline: one gate per commitment&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="The Staged Pipeline: one gate per commitment" title="The Staged Pipeline: one gate per commitment" srcset="https://substackcdn.com/image/fetch/$s_!4WT5!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffcc7bba7-1e95-4051-9201-86e8ab15f180_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!4WT5!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffcc7bba7-1e95-4051-9201-86e8ab15f180_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!4WT5!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffcc7bba7-1e95-4051-9201-86e8ab15f180_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!4WT5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffcc7bba7-1e95-4051-9201-86e8ab15f180_1536x1024.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>Reading Your Own Fleet</h2><p>The taxonomy pays off in two directions.</p><p>Forward, it's a design shortcut. Before building anything, ask the three questions. Nothing mutates: worker, and skip the ceremony. Mutates and perishable: correspondent, gate inline. Mutates and storable: inventory pipeline, gate at the exit. Multiple commitments: staged, one gate per stage. Strategy with no mutation of its own: dispatcher. The structure is decided before the first line is written.</p><p>Backward, it's a diagnostic. Every agent of mine that felt wrong in practice turned out to be wearing the wrong shape. A correspondent quietly doing strategy that belonged in a dispatcher. A creator with a gate bolted on that gated nothing irreversible, training me to click approve without reading. The fix each time was boring: move the work to the shape the three questions had been pointing at all along.</p><p>The good news, if you want to run this way: none of the shapes needs custom infrastructure. I'm building <a href="https://agentuse.io">AgentUse</a>, open-source infrastructure for autonomous agents, and every shape in this piece is a few lines of configuration in it. A worker is a markdown agent file with a schedule. A correspondent adds an approval gate. A dispatcher declares its subagents. An inventory pipeline adds a shared store. The newsletter's two stops live in one file. That's the entire stack behind the 129. And when a team wants this built <em>for</em> them rather than <em>by</em> them, that's <a href="https://agentuse.io/studio">AgentUse Studio</a>.</p><p>If you run agents, classify your fleet this week. One line per agent: which shape, and which question put it there. Any agent you can't place is the one to look at first.</p><p>Five shapes. Three questions. The rest is components.</p>]]></content:encoded></item><item><title><![CDATA[Approve the Decisions. Watch the Work.]]></title><description><![CDATA[What to put your hand on while an agent runs, what to keep your hand off, and how the same line decides when it runs without you.]]></description><link>https://aishapedcompany.com/p/approve-the-decisions-watch-the-work</link><guid isPermaLink="false">https://aishapedcompany.com/p/approve-the-decisions-watch-the-work</guid><dc:creator><![CDATA[Leon Ho]]></dc:creator><pubDate>Tue, 30 Jun 2026 17:04:52 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!Citl!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F97e2357a-b386-4b4e-acb4-2fbb9eb2965a_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Citl!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F97e2357a-b386-4b4e-acb4-2fbb9eb2965a_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Citl!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F97e2357a-b386-4b4e-acb4-2fbb9eb2965a_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!Citl!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F97e2357a-b386-4b4e-acb4-2fbb9eb2965a_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!Citl!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F97e2357a-b386-4b4e-acb4-2fbb9eb2965a_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!Citl!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F97e2357a-b386-4b4e-acb4-2fbb9eb2965a_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Citl!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F97e2357a-b386-4b4e-acb4-2fbb9eb2965a_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/97e2357a-b386-4b4e-acb4-2fbb9eb2965a_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2665842,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://leonho.substack.com/i/204307142?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F97e2357a-b386-4b4e-acb4-2fbb9eb2965a_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Citl!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F97e2357a-b386-4b4e-acb4-2fbb9eb2965a_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!Citl!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F97e2357a-b386-4b4e-acb4-2fbb9eb2965a_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!Citl!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F97e2357a-b386-4b4e-acb4-2fbb9eb2965a_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!Citl!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F97e2357a-b386-4b4e-acb4-2fbb9eb2965a_1536x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Everyone has worked for the manager who needs a status update every hour. Nothing ships without him seeing it first. He's not malicious. He just can't let go of the work itself. And the whole team slows to the speed of his attention, because that's the actual bottleneck now. Him.</p><p>That manager is how most people supervise an AI agent. They wire an approval into every step, sign off again and again, and then wonder why the loop they built to save a day still eats one. They rebuilt the bottleneck. They just moved it from doing the work to approving it.</p><p>The question I keep getting is when do you stop checking the agent. Wrong question. The real one is what you put your hand on while it runs.</p><p>There are two ways to get this wrong. Approve every step, and you&#8217;re the manager above, the bottleneck. Approve nothing, and one run does something you can&#8217;t take back. The fix isn&#8217;t the midpoint, gating every call the agent makes. Half of them it should just make on its own. You keep your hand on two: what you can&#8217;t undo, and the call that&#8217;s the actual point. Everything else, the work and the small reversible choices along the way, runs without you. You watch it. You don&#8217;t gate it.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!83L7!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F057f341e-927c-4093-8eaf-be982a0834e7_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!83L7!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F057f341e-927c-4093-8eaf-be982a0834e7_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!83L7!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F057f341e-927c-4093-8eaf-be982a0834e7_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!83L7!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F057f341e-927c-4093-8eaf-be982a0834e7_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!83L7!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F057f341e-927c-4093-8eaf-be982a0834e7_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!83L7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F057f341e-927c-4093-8eaf-be982a0834e7_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/057f341e-927c-4093-8eaf-be982a0834e7_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2793512,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://leonho.substack.com/i/204307142?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F057f341e-927c-4093-8eaf-be982a0834e7_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!83L7!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F057f341e-927c-4093-8eaf-be982a0834e7_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!83L7!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F057f341e-927c-4093-8eaf-be982a0834e7_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!83L7!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F057f341e-927c-4093-8eaf-be982a0834e7_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!83L7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F057f341e-927c-4093-8eaf-be982a0834e7_1536x1024.png 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">The calls you hold, the work you watch</figcaption></figure></div><h2>The calls that are yours</h2><p>Two of the agent&#8217;s calls are yours. The one that&#8217;s the actual point: picking what&#8217;s worth doing. And the one you can&#8217;t take back. Those you gate, every time. The rest, the reversible calls it can make and you could undo, are the agent&#8217;s. You let them go.</p><p>Here's one I run with <a href="https://agentuse.io/?utm_source=substack&amp;utm_medium=referral&amp;utm_campaign=ai-shaped-company&amp;utm_content=approve-the-decisions">AgentUse</a>. It turns my queued quote posts into images and ships them to X, Facebook, and Instagram, and it stops in exactly one place: before anything publishes. The agent checks what's ready, builds the post, finds a slot, all on its own. Then it holds, because pushing something to a public account is the step it can't take back. That gate is mine, and it sits exactly where the irreversible thing happens.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!zFT1!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3a78854-4dae-4924-88dc-1a6e9e7bd0bf_1200x337.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!zFT1!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3a78854-4dae-4924-88dc-1a6e9e7bd0bf_1200x337.png 424w, https://substackcdn.com/image/fetch/$s_!zFT1!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3a78854-4dae-4924-88dc-1a6e9e7bd0bf_1200x337.png 848w, https://substackcdn.com/image/fetch/$s_!zFT1!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3a78854-4dae-4924-88dc-1a6e9e7bd0bf_1200x337.png 1272w, https://substackcdn.com/image/fetch/$s_!zFT1!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3a78854-4dae-4924-88dc-1a6e9e7bd0bf_1200x337.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!zFT1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3a78854-4dae-4924-88dc-1a6e9e7bd0bf_1200x337.png" width="1200" height="337" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f3a78854-4dae-4924-88dc-1a6e9e7bd0bf_1200x337.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:337,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:53477,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://leonho.substack.com/i/204307142?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3a78854-4dae-4924-88dc-1a6e9e7bd0bf_1200x337.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!zFT1!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3a78854-4dae-4924-88dc-1a6e9e7bd0bf_1200x337.png 424w, https://substackcdn.com/image/fetch/$s_!zFT1!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3a78854-4dae-4924-88dc-1a6e9e7bd0bf_1200x337.png 848w, https://substackcdn.com/image/fetch/$s_!zFT1!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3a78854-4dae-4924-88dc-1a6e9e7bd0bf_1200x337.png 1272w, https://substackcdn.com/image/fetch/$s_!zFT1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3a78854-4dae-4924-88dc-1a6e9e7bd0bf_1200x337.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">The same loop at its gate: the agent lays out what it wants to publish and the risk it sees, then waits for me to approve, reject, or comment</figcaption></figure></div><p>A loop can have more than one of these, and they don&#8217;t all sit at the end. My newsletter stops twice: once in the middle, the moment it&#8217;s laid out the week&#8217;s candidate angles, for me to pick the one worth saying, and again at the end for me to approve the send. The first one is mid-run, the agent&#8217;s already done a chunk of work before it stops, and that&#8217;s fine. A mid-run gate isn&#8217;t the problem. The gate belongs wherever one of these calls lives, and a call can land anywhere in the run. One agent split by three approvals is clean if each one is a call that&#8217;s actually yours.</p><p>The test is never where the gate falls in time. It&#8217;s this: is this a call only I should make, the irreversible or the essential, or am I babysitting work the agent should just do?</p><h2>The execution isn't</h2><p>The execution is everything between the decisions. The drafting, the formatting, the assembly, the calls to tools. None of it needs your judgment, and every approval you staple onto it is just you in the way.</p><p>This is the manager from the top of the piece. An employee who stops every twenty minutes to ask "is this okay so far?" isn't being managed. He's being blocked. And he never builds the judgment to run without you, because you never let a single stretch of work finish without your hand on it. Gate the execution and you cap the loop's throughput at your availability, which was the one thing you were trying to escape. You also tell the agent you don't trust it to execute, only to start and stop, which is another way of saying you don't trust it at all.</p><p>So when you feel the urge to add a gate, ask what it&#8217;s sitting on. One of your two calls, the irreversible or the essential, keep it. Anything else, a step or a choice the agent can undo, and you&#8217;re rebuilding the bottleneck.</p><h2>Watch the work, don't block it</h2><p>Keeping your hand off the execution does not mean going blind. This is the other ditch people drive into. They think the only two options are approve every step or ignore everything until the end.</p><p>There's a third, and it's the whole game: watch without stopping. Observability. I replay exactly what the agent did and why, step by step, after the run, without ever blocking the run. I'm reading its real reasoning, not its final summary. Here's the read-only agent that closes the loop on my SEO pipeline, a run I never watched live: it pulled the search funnel, hit a command it wasn't allowed to run, worked around it, and wrote its snapshot. Every step, and the reason behind each one, is right there whenever I want it.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!5mK3!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d8a8043-3c72-4149-af8d-a29a95489b66_1200x1223.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!5mK3!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d8a8043-3c72-4149-af8d-a29a95489b66_1200x1223.png 424w, https://substackcdn.com/image/fetch/$s_!5mK3!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d8a8043-3c72-4149-af8d-a29a95489b66_1200x1223.png 848w, https://substackcdn.com/image/fetch/$s_!5mK3!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d8a8043-3c72-4149-af8d-a29a95489b66_1200x1223.png 1272w, https://substackcdn.com/image/fetch/$s_!5mK3!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d8a8043-3c72-4149-af8d-a29a95489b66_1200x1223.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!5mK3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d8a8043-3c72-4149-af8d-a29a95489b66_1200x1223.png" width="1200" height="1223" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6d8a8043-3c72-4149-af8d-a29a95489b66_1200x1223.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1223,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:152510,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://leonho.substack.com/i/204307142?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d8a8043-3c72-4149-af8d-a29a95489b66_1200x1223.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!5mK3!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d8a8043-3c72-4149-af8d-a29a95489b66_1200x1223.png 424w, https://substackcdn.com/image/fetch/$s_!5mK3!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d8a8043-3c72-4149-af8d-a29a95489b66_1200x1223.png 848w, https://substackcdn.com/image/fetch/$s_!5mK3!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d8a8043-3c72-4149-af8d-a29a95489b66_1200x1223.png 1272w, https://substackcdn.com/image/fetch/$s_!5mK3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d8a8043-3c72-4149-af8d-a29a95489b66_1200x1223.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">A read-only loop&#8217;s full trace: every step the agent took, including the command it got blocked on and how it recovered</figcaption></figure></div><p>That's what a good manager actually does. He doesn't approve every paragraph his writer drafts. He reads the work, keeps a feel for how it's going, and steps in at the decisions. Observability is that, for agents. It's how you supervise the work without standing in it.</p><p>And it changes what the review even is.</p><h2>The review is a decision, on evidence</h2><p>Approving the output is itself a decision, the last one, so it gets a gate. But the gate isn't a thumbs-up on a final answer floating free of context. It's the output plus the trace of how the agent got there. I approve the rendered newsletter, the real email as it will land, and I can see the run behind it. Evidence, not vibes.</p><p>Whether that gate ever comes off depends on one thing, and it isn't how long the agent has behaved. It's what a mistake costs and whether you can take it back.</p><p>Reversible and cheap: once the replay has shown me enough clean runs, I drop the gate and let it ship on its own, and I keep watching the trace. Irreversible and expensive: I keep my hand on it for as long as the company exists. The newsletter send goes to the whole list and can't be unsent, so I press send myself, forever, and it has nothing to do with the agent being unreliable. It's the most reliable thing I run. The support agent drafts replies and never sends the refunds and cancellations, because a wrong one is a real person and real money I can't claw back. Drafting is reversible. Sending is not. That line, not the agent's track record, decides which decisions stay gated.</p><h2>The arc is just onboarding</h2><p>Put it together and it's the shape of training anyone.</p><p>Week one, you brief the new hire, you read everything they produced, you approve before it goes out. A month in, you brief them, you skim, you only sign off on the things that can't be undone. A year in, you brief them and the only thing that reaches you is the exception they flagged themselves, because they learned to raise a hand on the weird cases instead of guessing.</p><p>The agent is the same arc. What changes isn't the agent. It's you moving from reading every trace to trusting that the trace exists and watching the number. An agent that never escalates isn't reliable, by the way. It's just quiet about being wrong. The hand-raise is the thing you're really training.</p><p>And it runs backward too. The week the replay starts showing sloppy steps, or one bad output slips the last gate, I go back to reading every run and the gate moves back up. Trust is revocable because the evidence is revocable. Nothing about last month protects you when the model under it shifted or the inputs drifted and the instructions didn't.</p><p>So stop asking how much you trust the agent. Ask what you&#8217;re holding. The two calls that are yours, on the evidence of how it got there. And nothing else. Watch the work the whole time, and never once stand in it.</p><p>The judgment was always the job. The work was never yours to hold.</p>]]></content:encoded></item><item><title><![CDATA[You Don't Trust the Agent. You Trust the Loop.]]></title><description><![CDATA[The three-stage loop I run to make an agent reliable enough to put near my customers]]></description><link>https://aishapedcompany.com/p/you-dont-trust-the-agent-you-trust</link><guid isPermaLink="false">https://aishapedcompany.com/p/you-dont-trust-the-agent-you-trust</guid><dc:creator><![CDATA[Leon Ho]]></dc:creator><pubDate>Thu, 18 Jun 2026 21:10:42 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!R0mD!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5dec297c-17b7-4cc0-9b9f-b15dd93c84a3_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!R0mD!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5dec297c-17b7-4cc0-9b9f-b15dd93c84a3_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!R0mD!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5dec297c-17b7-4cc0-9b9f-b15dd93c84a3_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!R0mD!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5dec297c-17b7-4cc0-9b9f-b15dd93c84a3_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!R0mD!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5dec297c-17b7-4cc0-9b9f-b15dd93c84a3_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!R0mD!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5dec297c-17b7-4cc0-9b9f-b15dd93c84a3_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!R0mD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5dec297c-17b7-4cc0-9b9f-b15dd93c84a3_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5dec297c-17b7-4cc0-9b9f-b15dd93c84a3_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1667446,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://leonho.substack.com/i/202640049?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5dec297c-17b7-4cc0-9b9f-b15dd93c84a3_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!R0mD!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5dec297c-17b7-4cc0-9b9f-b15dd93c84a3_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!R0mD!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5dec297c-17b7-4cc0-9b9f-b15dd93c84a3_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!R0mD!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5dec297c-17b7-4cc0-9b9f-b15dd93c84a3_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!R0mD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5dec297c-17b7-4cc0-9b9f-b15dd93c84a3_1536x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>A friend asked me this week how I get an agent reliable enough to trust what it produces. He builds too, so this was not idle curiosity. He had a few agents running well, but he wasn't ready to let any of them produce work he hadn't checked. Which is the right instinct.</p><p>He was working from the assumption almost everyone starts with, including me. Reliability is something you verify up front. You read the output, you decide it is good, and then you trust it. Like checking a spec sheet before you buy the part.</p><p>My answer was shorter than he expected. You don't. Not on day one.</p><p>Day one you should trust an agent about as much as you trust a new hire on their first morning. You would not hand a new hire the company card because the resume was strong. You watch them work. You correct them. A month later you trust their judgment, and the thing that changed was not the person. It was that you did the watching.</p><p>Trust is not a property the agent has. It is the output of a loop you run around it.</p><p>The loop is simple: run it, watch what it actually did, correct it, then feed that correction back into what it reads before the next run.</p><p>There are three stages. You do the first once, to set the target. The second and third are the loop. Let me show you with the one agent I would actually let near my customers.</p><h2>Stage 1: write the first version</h2><p>The first version is where you state what you want before the agent runs once. The objective. What good output looks like. The judgment calls you want locked in so the agent does not invent its own. Then you give it tools.</p><p>I write the agent itself as an AgentUse agent, a single file that holds its instructions, its schedule, and its tools. The authoring happens in Claude Code with the AgentUse skill, so I am describing the agent in plain language and the skill turns that into the actual config.</p><p>My customer support agent is a clean example. The objective is small on purpose: work a bounded batch of the support inbox, never the whole thing. Good output is a drafted reply, classified correctly. The judgment is written down in plain rules. Only the support mailbox. Three conversations per run, no more. Cold outreach gets archived. Anything about billing, a refund, a cancellation, or a complaint gets a draft, an internal note, and a tag that says a human needs to look. For tools I hand it a skill, the `helpscout-cs-agent` skill, which already knows how to read a conversation, check the customer's status, and apply an action. Most of what I give an agent now is skills. Sometimes I write a new one for the job.</p><p>Version one is a hypothesis, not a product. I wrote down what good looked like and let it run. I did not expect it to be right.</p><h2>Stage 2: the supervised run</h2><p>Then you watch. Not the summary it gives you at the end. The actual run.</p><p>I use two things in AgentUse for this. The session viewer, which replays exactly what the agent did and why, step by step, so I am reading its real reasoning instead of its final answer. And the approval gate, which stops the agent on any mutation and waits for my sign-off before anything touches the real world.</p><p>There are two ways to gate, and the support agent uses the stricter one. The most important line in it is this: never send replies, draft only. The agent is not allowed to do the one thing it cannot take back. A wrong refund answer to a real customer is real damage. Money, trust, and a person on the other end who now thinks we do not know our own policy. So the agent drafts. I read. It sends nothing on its own. For agents where I do want the action to happen but only with my eyes on it, I use the AgentUse approval gate instead, so the mutation runs the moment I approve and not before.</p><p>This is the part people skip. They wire an agent straight to the irreversible action, then act surprised when it does something irreversible. Gate the mutation. Let the agent propose. Keep the commit for yourself, at least until you have watched it enough.</p><h2>Stage 3: tune the instructions</h2><p>Based on what you saw, you go back and sharpen. Back to Claude Code and the AgentUse skill, editing the agent's instructions to close the gaps you just watched it fall into.</p><p>Here is the part I like. I built a second AgentUse agent whose only job is to learn. It runs on a schedule, every Sunday morning, reads the last seven days of replies that actually went out, the ones I edited before they sent, finds the patterns in how I changed them, and rewrites the knowledge base the drafting agent reads. My corrections do not live in my head. They become the instructions the next draft starts from.</p><p>That is what closes the loop. The agent drafts. I fix. A second agent turns my fixes into next week's starting point. Week over week the drafts need less editing, because the thing the agent reads before it drafts is shaped by every correction I have already made.</p><p>The next move tightens it further. AgentUse is adding learning to the approval gate itself, so instead of a weekly agent harvesting my corrections, the comment I leave when I review a draft teaches the agent the reason on the spot. Not "change this word" but "you keep being too stiff on cancellations, warm it up." The edit becomes a lesson the moment I make it, which folds stage 2 and stage 3 into one motion.</p><h2>What the loop actually buys you</h2><p>That is the whole method. Three stages: you do the first once to set the target, and the last two are the loop you run as many times as it takes. Though here is what surprises people: a single pass through the loop often produces something good enough to use. You are not trapped waiting for a broken thing to work. You are sharpening one that mostly works already, and most of the sharpening happens in the first few passes.</p><p>So when my friend asks how I trust the output, the honest answer is that I don't trust the output. I trust the loop that produces it. The agent on day one is a guess. The agent after ten passes is something I watched get better, with my own corrections baked into what it reads before it writes a word.</p><p>Trust was never something I granted the agent. It is the residue of the loop.</p><p>Build the loop first. The trust shows up on its own.</p>]]></content:encoded></item><item><title><![CDATA[You Don't Need Fewer Agents. You Need Agents That Don't Need You.]]></title><description><![CDATA[Addy Osmani named the orchestration tax. The fix isn't fewer agents. It's agents that close their own loop.]]></description><link>https://aishapedcompany.com/p/you-dont-need-fewer-agents-you-need</link><guid isPermaLink="false">https://aishapedcompany.com/p/you-dont-need-fewer-agents-you-need</guid><dc:creator><![CDATA[Leon Ho]]></dc:creator><pubDate>Fri, 29 May 2026 20:19:33 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!4g8A!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e82e8ad-7cfa-4ba3-9be7-400ea1f7c034_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!4g8A!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e82e8ad-7cfa-4ba3-9be7-400ea1f7c034_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!4g8A!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e82e8ad-7cfa-4ba3-9be7-400ea1f7c034_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!4g8A!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e82e8ad-7cfa-4ba3-9be7-400ea1f7c034_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!4g8A!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e82e8ad-7cfa-4ba3-9be7-400ea1f7c034_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!4g8A!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e82e8ad-7cfa-4ba3-9be7-400ea1f7c034_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!4g8A!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e82e8ad-7cfa-4ba3-9be7-400ea1f7c034_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1e82e8ad-7cfa-4ba3-9be7-400ea1f7c034_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2450520,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://leonho.substack.com/i/199793249?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e82e8ad-7cfa-4ba3-9be7-400ea1f7c034_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!4g8A!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e82e8ad-7cfa-4ba3-9be7-400ea1f7c034_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!4g8A!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e82e8ad-7cfa-4ba3-9be7-400ea1f7c034_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!4g8A!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e82e8ad-7cfa-4ba3-9be7-400ea1f7c034_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!4g8A!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e82e8ad-7cfa-4ba3-9be7-400ea1f7c034_1536x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>A few weeks ago I caught myself with fourteen terminal tabs open, each one an AI agent doing something. One was refactoring a script. One was drafting a newsletter. One was digging through support tickets. Two were stuck waiting on me and I had forgotten which two.</p><p>It felt like a whole team was working for me. I was also exhausted by noon. Both of those were true at the same time, and it took me a while to admit they had the same cause.</p><p>I was the thing all fourteen agents were waiting for. And there is one of me.</p><h3>Addy Osmani gave this feeling a name</h3><p>Addy Osmani wrote a piece this week called <a href="https://x.com/addyosmani/status/2059844244907696186">The Orchestration Tax</a>, and it put a clean edge on something I had been feeling without language for it. The argument is simple. Starting an agent is cheap. It is a sentence. Closing the loop on that agent is expensive, because someone has to read what came back, decide if it is right, and reconcile it with everything the other agents touched. That someone is you. There is one of you.</p><p>He borrows the best metaphor for it from programming. Python has a Global Interpreter Lock, the GIL. You can spawn a hundred threads, but only one runs real work at a time, because they all have to grab the same single lock. You are the GIL of your agents. They can all run. But the moment any of their work needs judgment, that work has to wait for the one lock. You hold it. You are the slow serial part of a fast parallel system.</p><p>He got there on a Google I/O panel with Richard Seroter, Aja Hammerly, and Ciera Jaspan. Richard is the one who named it. "You can't manage twenty agents successfully in your own brain." He is right. Feeling busy and being productive came apart for me the same way they did for Addy.</p><p>Read his piece. It is the best diagnosis of this problem I have seen.</p><p>But I think most people are about to draw the wrong conclusion from it.</p><h3>The wrong lesson is "run fewer agents"</h3><p>The obvious takeaway is to throttle yourself. Scale your fleet down to the number of agents you can personally review, which for most of us is two or three. Slow the producer to match the consumer. Backpressure.</p><p>That is good advice for the agents you have today. It is the wrong thing to optimize.</p><p>Here is the part the GIL metaphor hides. The tax is not paid per agent. It is paid per open thread to your attention. An agent you babysit in a chat window holds a thread open the entire time it works. Every turn, it stops and looks at you. Twenty of those is unmanageable, and Addy is completely right that it is. But the count was never the real problem. The architecture of each agent was.</p><p>Most of what people call "running agents" is sitting in a terminal tab, watching an agent think, approving each step, nudging it when it drifts. That is not delegation. That is pair programming with something that types faster than you. Of course it does not scale. You did not remove yourself from the loop. You just moved your chair closer to it.</p><p>The fix is not fewer of those. The fix is to stop building those.</p><h3>Two species of agent</h3><p>There are two completely different things wearing the word "agent" right now, and we keep talking about them as if they were one.</p><p>The first is the assistant in a terminal tab. You prompt, it responds, you steer, it responds again. It is brilliant for hard, fuzzy work where the judgment is the whole point. It is also a continuous claim on your attention. You cannot walk away. The loop only closes when you close it, by hand, every time.</p><p>The second is the autonomous agent. It is not a conversation. It is a thing you wrote down once. It runs on its own, does its job, checks its own work, and only comes back to you at one gate you decided on in advance. When it is not at the gate, it holds zero threads to your attention. You can have ten of them running and feel nothing, because none of them is sitting in a terminal tab waiting for you to look.</p><p>Addy himself pointed at this. In his five fixes, four are about rationing your attention better. Sort the work. Batch the reviews. Protect your serial time. Give agents a long leash. All good. All discipline. The fifth one is different in kind: only spend the lock on judgment, and make the agent prove the boring eighty percent itself with a passing test or a screenshot.</p><p>That fifth one is the only structural fix in the list. The other four help you survive the tax. The fifth removes the work from your lock entirely. So I would bet everything on the fifth and treat the rest as coping.</p><p>The autonomous agent is what the fifth fix looks like when you build a whole thing around it.</p><h3>What that actually looks like</h3><p>I write mine with <a href="https://agentuse.io">AgentUse</a>. An agent there is not a chat session. It is a markdown file. You describe the job in plain English, list the tools it can touch, tell it how to verify its own work, and set one approval gate for the single decision that needs you. Then you give it a schedule, and the thing runs itself.</p><p>One I use every week reads our newsletter performance, the recent subscriber replies, and the support themes from the last seven days. It drafts a brief. It checks the brief against the last few sends so it does not repeat an angle we already used. Then it stops at one gate and shows me the draft and the reasoning. I spend ninety seconds on the only part that needs me, which is the judgment call. The hour of reading, cross-referencing, and reconciling that used to be mine never enters my lock at all.</p><p>Compare that to the terminal-tab version of the same task. I would open a session, paste the data, watch it work, correct it twice, ask it to check itself, and close the loop manually. Same output. But one of them taxes me for an hour and one of them taxes me for ninety seconds, because one holds a thread open the whole time and the other holds none until the gate.</p><p>Think of a space heater with no thermostat. You are the feedback loop. You keep getting up, feeling the room, twisting the dial, sitting back down, getting up again. A thermostat is the same heater with the loop closed inside it. You set the target once. It only interrupts you when something happens that it cannot handle on its own. Most people are running their AI like a space heater and calling themselves busy because they never stop walking to the dial.</p><p>AgentUse, or whatever you build this with, is how you put the thermostat in.</p><h3>Why this beats Amdahl instead of obeying it</h3><p>Amdahl's Law says your speedup is capped by the part of the work that stays serial. Addy is right that in agent work, the serial part is your judgment, and spawning more agents does not speed up your judgment. It just deepens the queue feeding into it.</p><p>But you do not beat Amdahl by adding cores. You beat it by shrinking the serial fraction. That is the whole game.</p><p>A terminal-tab agent has a fat serial fraction, because reading raw output, deciding if it is right, and reconciling it are all yours. An autonomous agent that writes its own passing test and hands you a verified result has a thin one, because the verification moved out of your lock and into the machine. You are no longer reviewing whether the work is correct. You are reviewing whether the correct work is the right work. That is a smaller, sharper question, and it is the only one worth your attention anyway.</p><p>So the backpressure ceiling Addy describes is real, but it is not fixed. Raise your effective review rate by making most of the work arrive pre-verified, and the ceiling moves up. You can run more agents, not fewer, because each one now asks less of you. The constraint was never the count. It was how much of your lock each agent demanded.</p><h3>The version of this in your own life</h3><p>I wrote a while back about open-loop and closed-loop companies, the ones that forget versus the ones that compound. This is the same idea pointed at a smaller target. A terminal-tab agent is an open loop you have to close by hand every turn. An autonomous agent is a closed loop that produces its own verification and only escalates the judgment.</p><p>The same split runs through a life, especially past forty, when the number of things you are trying to keep moving at once stops fitting in your head. Work, health, money, family, the project on the side. You can try to hold all of it in attention at once, checking each one, twisting each dial, feeling busy and getting nowhere because every loop stays open and waits on you.</p><p>Or you close the ones that can be closed. The weekly review of your training and your spending and your goals does not need you to assemble it. It needs you to read it and decide. An agent can do the assembly and stop at the one gate that is actually yours. What is left for you is judgment, which is the only thing you were ever good for in that loop anyway.</p><p>A 45-year-old running fourteen open loops by hand feels exactly as busy as I did with those fourteen tabs. And gets about as far.</p><h3>One thing to do this week</h3><p>Find the one agent you babysit the most. The chat session you keep reopening for the same recurring task. The one that taxes you every single time because you are its loop.</p><p>Write it down as a file instead. Describe the job, give it the tools, tell it how to check its own work, and set one gate for the part that needs you. Run it once by hand to see if it holds. Then put it on a schedule and walk away.</p><p>You will not have one fewer agent. You will have one fewer thread pulling on the one resource you cannot clone.</p><p>That is the whole move. Spawning agents is not the skill. Anyone can open twenty tabs. The skill is building the ones that do not need you to be standing there, so the only thing you spend your attention on is the thing only you can do.</p>]]></content:encoded></item><item><title><![CDATA[Open Loop Companies Forget. Closed Loop Companies Compound.]]></title><description><![CDATA[Most companies execute. Few learn from themselves. AI is what finally makes closing the loop cheap.]]></description><link>https://aishapedcompany.com/p/open-loop-companies-forget-closed</link><guid isPermaLink="false">https://aishapedcompany.com/p/open-loop-companies-forget-closed</guid><dc:creator><![CDATA[Leon Ho]]></dc:creator><pubDate>Tue, 28 Apr 2026 21:10:26 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!Ko8w!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5bd01c1b-2cb8-452b-9d2a-28a945b604cb_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Ko8w!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5bd01c1b-2cb8-452b-9d2a-28a945b604cb_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Ko8w!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5bd01c1b-2cb8-452b-9d2a-28a945b604cb_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!Ko8w!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5bd01c1b-2cb8-452b-9d2a-28a945b604cb_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!Ko8w!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5bd01c1b-2cb8-452b-9d2a-28a945b604cb_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!Ko8w!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5bd01c1b-2cb8-452b-9d2a-28a945b604cb_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Ko8w!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5bd01c1b-2cb8-452b-9d2a-28a945b604cb_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5bd01c1b-2cb8-452b-9d2a-28a945b604cb_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2857499,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://leonho.substack.com/i/195800061?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5bd01c1b-2cb8-452b-9d2a-28a945b604cb_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Ko8w!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5bd01c1b-2cb8-452b-9d2a-28a945b604cb_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!Ko8w!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5bd01c1b-2cb8-452b-9d2a-28a945b604cb_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!Ko8w!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5bd01c1b-2cb8-452b-9d2a-28a945b604cb_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!Ko8w!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5bd01c1b-2cb8-452b-9d2a-28a945b604cb_1536x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>When I ran LifeHack with a team, I sat through a leadership review where someone asked, "what did we actually learn last quarter?" The room went quiet. Not because nobody had worked. Everyone had worked hard. The team had shipped, sold, hired, and put out fires. The silence was because nobody could reconstruct what had actually happened.</p><p>That silence is not a culture problem. It is not a discipline problem. It is a system problem.</p><p>The company was an open loop. It executed, but it did not learn from itself.</p><p>That memory has stayed with me, because the same pattern shows up in every operator conversation I have today. Most companies are like this. Most lives are too. And I think the next five years will sort companies into two piles based on a single property: whether their loops actually close.</p><h3>What an open loop is, and what a closed loop is</h3><p>An open loop runs forward and never turns around. You decide. You do. You half-observe what happened. You start the next cycle with most of the lesson already gone.</p><p>A closed loop turns around. You capture the input and the reasoning. You execute. You capture what shipped and what slipped. You measure the outcome against the intent. You feed the result back so the next cycle starts smarter than the last one.</p><p>Open loops repeat. Closed loops compound.</p><p>If you only take one sentence from this post, take this one: if a process matters in your company, it should produce artifacts the company can learn from later. Without those artifacts, the process is open. It does not matter how earnest the retro is.</p><h3>Why almost every company is an open loop by default</h3><p>I want to be precise about how the leak happens, because most operators I talk to think their company is closed when it is wide open. I thought the same thing about mine, back when I was running it.</p><p>A normal decision in a normal company goes like this. Someone makes a call, often in a DM or a hallway. Work gets assigned, sometimes verbally. People execute. Status gets reported manually, usually in a meeting that nobody records. Outcomes are partially observed by the people closest to them. Lessons get inconsistently captured, often nowhere. The next cycle starts with most of that context gone.</p><p>Information loss happens at every step. The reasoning behind a decision dies in Slack. The tradeoffs you considered die in a 1:1. The customer context that shaped the spec dies in a sales call recording nobody re-watched. The reason a sprint slipped dies in three engineers' heads.</p><p>By the time the next planning meeting arrives, the company is operating on memory, not data. And human memory is a famously bad database.</p><p>This is why so many companies feel busy and slow at the same time. They are not slow because people are lazy. They are slow because every cycle pays a tax to reconstruct context that should have been captured the first time.</p><p>A lot of middle management exists to pay that tax on behalf of the rest of the company. People become the integration layer because the system is not one. That is an expensive way to run an org chart.</p><h3>Five places companies leak the loop</h3><p>If you are an operator and you want to find your own open loops fast, look here first.</p><p>Decisions in DMs. The reasoning behind most important calls in your company is in private channels nobody can search. When the decision turns out to be wrong six months later, the reasoning is gone. You cannot learn from a decision you cannot reread.</p><p>Meetings without artifacts. Sales calls, design reviews, hiring debriefs, customer interviews. These happen, then evaporate. The team that did the meeting walks away with a vibe. Everyone else gets nothing.</p><p>Roadmaps disconnected from outcomes. What shipped lives in one system. What moved the metric lives in another. Often nobody connects the two on purpose. So the company keeps shipping things and keeps being surprised by which ones mattered.</p><p>Customer signal stuck at the edges. Support hears the same complaint forty times. Sales hears the same objection in every demo. Product almost never finds out in a form they can act on.</p><p>Retros that do not change next sprint. Lessons get "captured" in a doc nobody opens before the next planning meeting. The lesson exists. It just does not enter the next cycle.</p><p>These five are where I would start. If even one of them applies, your company has an expensive open loop running right now.</p><h3>What it takes to actually close one</h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Aq1h!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45078dfb-0d3d-473a-b000-5613ea4d5932_1693x929.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Aq1h!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45078dfb-0d3d-473a-b000-5613ea4d5932_1693x929.png 424w, https://substackcdn.com/image/fetch/$s_!Aq1h!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45078dfb-0d3d-473a-b000-5613ea4d5932_1693x929.png 848w, https://substackcdn.com/image/fetch/$s_!Aq1h!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45078dfb-0d3d-473a-b000-5613ea4d5932_1693x929.png 1272w, https://substackcdn.com/image/fetch/$s_!Aq1h!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45078dfb-0d3d-473a-b000-5613ea4d5932_1693x929.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Aq1h!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45078dfb-0d3d-473a-b000-5613ea4d5932_1693x929.png" width="1456" height="799" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/45078dfb-0d3d-473a-b000-5613ea4d5932_1693x929.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:799,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1994457,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://leonho.substack.com/i/195800061?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45078dfb-0d3d-473a-b000-5613ea4d5932_1693x929.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Aq1h!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45078dfb-0d3d-473a-b000-5613ea4d5932_1693x929.png 424w, https://substackcdn.com/image/fetch/$s_!Aq1h!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45078dfb-0d3d-473a-b000-5613ea4d5932_1693x929.png 848w, https://substackcdn.com/image/fetch/$s_!Aq1h!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45078dfb-0d3d-473a-b000-5613ea4d5932_1693x929.png 1272w, https://substackcdn.com/image/fetch/$s_!Aq1h!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45078dfb-0d3d-473a-b000-5613ea4d5932_1693x929.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><p>A closed loop produces four artifacts every cycle. Not three. Not "the important ones." All four.</p><p>The input artifact: what you decided, with what context and what constraints. Written down somewhere durable.</p><p>The execution artifact: what shipped, what slipped, what changed mid-flight, who owned what.</p><p>The outcome artifact: what actually happened, measured against the original intent. Not what you hoped happened.</p><p>The improvement artifact: what specifically changes in the next cycle because of this one. Not "we should be better at planning." Something concrete you can point at.</p><p>If any of the four is missing, the loop is still open. This is where I see most teams stall. They produce two of the four and call it done. A retro doc with no measured outcome is not a closed loop. A dashboard with no decision attached is not a closed loop. A specific change that is not tied to a measured outcome is just a vibe.</p><p>The four artifacts are the contract. Tools come second. You can run a closed loop with Notion and a calendar if you actually produce all four.</p><h3>Why this is suddenly worth doing</h3><p>Closed loops were always the right design. For most of my career they were just too expensive to run.</p><p>Capturing meetings, summarizing calls, reconciling specs against shipped code, tying customer signals to roadmap items, reading last quarter's retros before this quarter's planning. This was a full-time job per loop. Most companies hired a chief of staff to do a fraction of it.</p><p>LLMs collapse the cost of synthesis to near zero. Recordings become structured summaries. Tickets and PRs become a queryable history. Customer tickets become trend reports. Old sprints become advice on this sprint's plan.</p><p>This is why I think the AI bill is the wrong thing to be optimizing right now. The AI bill is the price of finally running closed loops at company scale. Cutting it to look efficient is like cutting electricity to save on lighting. You are not saving money. You are turning the lights off.</p><p>Context is the new management layer. The more an agent knows about your company, the more loops it can close that no human had time to close before.</p><p>I wrote earlier about pointing AI at the business cycle instead of at the person (<a href="https://leonho.substack.com/p/your-ai-integration-is-stuck-in-1992">Your AI Integration Is Stuck in 1992</a>). Closing the loop is the second move. The first decides where AI goes. The second decides whether the cycle gets smarter every time it runs.</p><h3>One closed loop, in detail</h3><p>I want to show you what this looks like in practice, because the abstraction does not land until you see it run somewhere specific.</p><p>Take sprint planning. Probably the most expensive open loop in any product company.</p><p>The open loop version is the one you already know. PM guesses scope. Engineering commits. Half ships, sometimes less. A retro maybe happens. Lessons go in a doc. Next sprint starts from a blank page and a hopeful estimate. The reason last sprint missed is in three engineers' heads, and one of them is on vacation.</p><p>The closed loop version looks like this. An agent has standing access to Linear, GitHub, the engineering Slack channel, customer support tickets, sales call transcripts, last sprint's plan, and the actual ship log. Before planning, it produces a brief. What was planned versus shipped. Which work slipped, and why. Which shipped items mapped to a real customer pain in support tickets. Who is overloaded. Where ownership is unclear. Which decisions are blocking work nobody is escalating.</p><p>The planning meeting starts from that brief, not a blank doc. The PM is no longer guessing. The engineers are no longer reconstructing. The conversation moves immediately to judgment, not status.</p><p>After the sprint, the agent measures the brief's predictions against reality. The estimates that were wrong get tagged. The work types that consistently slip get flagged. The next brief is sharper. Two quarters in, planning takes half the time and the plans are closer to what actually ships.</p><p>This is one loop. Same mechanic works for customer feedback synthesis, support triage, hiring pipeline review, incident postmortems, sales call analysis, onboarding improvement. Pick the most painful one. Run it through the four artifacts. Watch what happens.</p><h3>The questions that find your open loops</h3><p>If you are a founder or an operator and you are trying to figure out where to start, sit with these for ten minutes.</p><p>Where does important context disappear in your company? Be specific. Name the channel, the meeting, the system.</p><p>Which decisions do you make repeatedly without learning from outcomes? Hiring decisions. Pricing decisions. Roadmap calls. Marketing bets.</p><p>Which meetings exist only because your systems are not queryable? Most status meetings are this. Most "let me get the team together to align" meetings are this.</p><p>Which roles in your company mostly route information rather than create value? Be honest. This is uncomfortable.</p><p>Which processes could close their loop tomorrow if an agent had the right context? Usually more than you think.</p><p>If a question landed hard, that is your first loop to close.</p><h3>Two weeks, one loop</h3><p>I would not redesign the company. I would not buy a platform. I would run one loop end to end and see if it changes anything.</p><p>Week one: pick one process. Sprint planning is a good first one. So is customer feedback to roadmap. Wire up the inputs. Get the recordings, the docs, the tickets, the dashboards into a place an agent can actually read them.</p><p>Week two: run the loop. Produce all four artifacts. Compare the agent-assisted version against the way you used to do it. Decide what to keep.</p><p>If it works, name a person who owns that loop. Pick the next one. Two loops a quarter is a fast pace at company scale. In a year you have closed eight. Most of your competitors will not have closed one.</p><h3>The personal payoff</h3><p>Once you can see open versus closed loops at the company level, you cannot unsee them in your own life. I did not expect this when I started thinking about it for work.</p><p>Most personal life systems are open loops too. We make decisions about training, money, sleep, family, career bets, and almost never check the outcome against the assumption we made when we decided. We journal the input. We set the goal. Neither closes the loop.</p><p>The same four artifacts work at personal scale. An agent that has access to your calendar, your workouts, your journal, your finances, and your goal file can produce a weekly brief. What moved this week. What decayed. What you said you would do and did not. What specifically to change next week. You read it. You judge it. You adjust.</p><p>A 45-year-old running an open-loop life feels busy and gets nowhere because nothing compounds. The years stack up. The lessons do not.</p><p>The mechanic is identical to the company version. Only the artifacts change.</p><h3>What actually compounds</h3><p>Open loop companies forget. Closed loop companies compound.</p><p>Open loop lives forget. Closed loop lives compound.</p><p>The companies that pull away over the next five years will not be the ones that "use AI" the most. Everyone uses AI now. The ones that pull away will be the ones whose loops actually close, where every cycle is sharper than the last because the artifacts from the last one are still in the room.</p><p>This week, name one open loop in your company. Just one. Close it before you close any others. See what changes.</p><p>Then look at your own life and pick one there too.</p>]]></content:encoded></item><item><title><![CDATA[Your AI Integration Is Stuck in 1992]]></title><description><![CDATA[Most AI agents are pointed at the person, not the business. Steve Jobs warned us about this trap 34 years ago]]></description><link>https://aishapedcompany.com/p/your-ai-integration-is-stuck-in-1992</link><guid isPermaLink="false">https://aishapedcompany.com/p/your-ai-integration-is-stuck-in-1992</guid><dc:creator><![CDATA[Leon Ho]]></dc:creator><pubDate>Mon, 20 Apr 2026 17:33:54 GMT</pubDate><enclosure url="https://substackcdn.com/image/youtube/w_728,c_limit/Gk-9Fd2mEnI" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>I've been watching a Steve Jobs talk from 1992 and it explains most of what's wrong with how people are using AI in 2026.</p><p>He gave it at MIT Sloan, after he'd left Apple and was running NeXT. He was citing Paul Strassmann, a guy who'd been CIO at Xerox, the Pentagon, and NASA, and had spent two decades studying where corporate IT actually paid off.</p><h3>The Two Columns</h3><p>Strassmann had found something simple. Every company he looked at spent about 2% of revenue on IT. The number was roughly the same whether the company was winning or losing. What moved was what the tech was doing.</p><p>Some companies pointed the 2% at individual work. Tools that made one person's day faster. Word processors, spreadsheets, email. The memo still got written. It just got written in an hour instead of three. Strassmann called this management productivity, but the simpler way to say it is that the tech was speeding up the people.</p><p>Other companies pointed the 2% at the business itself. Tech that shortened the cycle that made the money. Catch the stockout before it stocks out. Push the invoice the day the work finishes. Reprice the product the hour demand shifts. This is operational productivity, or just: the tech was speeding up the business.</p><p>Same budget. Same era. The winners pointed the tech at the business. The losers pointed it at the people, got faster workers, and wondered why the P&amp;L didn't move.</p><h3>Swap "PC" For "AI"</h3><p>Now do the substitution. The whole talk plays.</p><p>A lot of the 2026 conversation is sloppy about this because it mistakes form factor for direction. The popular take is that copilots are old, agents are new, ship the agents. As if the shape of the thing decides where it's pointed. It doesn't. Agents can be pointed at the person or at the business. Most of them are pointed at the person.</p><p>An agent that drafts your board update is pointed at you. An agent that triages your inbox is pointed at you. An agent that summarizes every call and files the notes is pointed at you. No matter how autonomous it is, if the thing it's doing is making one person faster at their own work, it's speeding up a person, not the business.</p><h3>Faster People Is Not A Faster Business</h3><p>You might push back here. If the people inside my business get faster, isn't the business faster too? No, and it's worth knowing why.</p><p>A business cycle is mostly waiting, not working. The lead sits in an inbox for four hours before anyone sees it. The demo is three days out. The proposal waits two days for approval. The onboarding call is booked for next Tuesday. Most of the clock on any revenue cycle is idle time between handoffs, not working time on a task.</p><p>AI pointed at a person shortens working time. The rep answers in thirty seconds instead of five minutes. AI pointed at the business removes waiting time between handoffs. The lead gets qualified and replied to in thirty seconds instead of four hours overnight. Compressing waiting is how cycles actually get shorter. Speeding up a person at a non-bottleneck step is a local optimization. It feels like progress on the Monday standup and doesn't show up in the quarter.</p><h3>What About Personal Productivity?</h3><p>Fair question. If I'm a solo operator, am I not the whole business? If I get faster, doesn't the business get faster?</p><p>Yes, if you're truly solo. A one-person business has no handoffs. The person is the cycle. An agent that makes you reply faster is also an agent that shortens lead-to-response time. The two columns collapse into one because the person is the operation.</p><p>But the moment anyone else is in the loop, they separate again. A VA, a contractor, a part-time editor, a freelancer. Once there are handoffs, the wait time between them is where the clock lives. Speeding up your own work while the handoffs stay slow is the same old trap at small scale.</p><p>There's also a simpler case. You just want your work to feel better. You want your inbox less painful. You want your deck to write itself. That's fine. Just don't pretend you're transforming the business when you're adopting a personal tool. Both can be true. They're just different things. Buy the personal tool, use it happily, and point a different agent at the loop.</p><p>The mistake isn't pointing AI at yourself. The mistake is pointing all of your AI at yourself and calling it strategy.</p><h3>Size Is Not The Tell</h3><p>Size isn't the way to sort this either. I kept assuming "pointed at the business" meant building a whole pipeline. That's one way. It isn't the only way.</p><p>A short agent that watches the support inbox and pings the success team the moment a high-value account says something churn-like is pointed at the business. A small script that catches the pricing error before the quote leaves the office is pointed at the business. One well-placed thing at one critical step can shorten the revenue cycle by a day.</p><p>The question isn't how big the agent is. It's what gets faster when it runs, the person or the business.</p><h3>Where I Almost Pointed AgentUse</h3><p>I'll tell on myself because I almost got this wrong.</p><p>Last year I built AgentUse, an open source framework for composing agents. Once the infrastructure was sitting on my laptop the temptation was obvious. Point it at myself first. That's the fastest demo. Agents answering my email. Agents writing my newsletter outlines. Agents drafting replies on X. I had a whole shortlist.</p><p>I caught myself before I shipped any of it. I was about to use the thing I'd built to make my own typing faster. Same 1992 mistake. Sharper tools.</p><p>So I pointed AgentUse at LifeHack's business instead. For LifeHack the cycle is idea to draft to publish to audience. A handful of small agents, each sitting at a step that used to slow the cycle down. One watches for angles worth writing about. One drafts against the style guide. One handles distribution to Substack, LinkedIn, and X on schedule. I review. I intervene when it matters. I don't sit in the middle of the flow.</p><p>None of those agents is complicated. In AgentUse they're just markdown files, plain English instructions. The thing that matters isn't the code, it's what they're pointed at. Each one removes wait time from the cycle, not working time from my day.</p><p>When an agent is a paragraph anyone can write, the only thing left that separates a winning AI stack from a losing one is where you plug it in.</p><p>Six months in, LifeHack publishes more than it used to, and my calendar has more room in it, not less. The agents don't make me a faster typist. They make the business move faster whether I'm at my desk or not.</p><h3>The Monday Audit</h3><p>If you want to run this on your own stack, don't count your agents. Map them.</p><p>Sketch how revenue actually moves in your business. Lead in, qualified, demo, close, onboarded, renewed. Or idea in, made, shipped, bought, supported. Whatever your cycle is. Mark the handoffs, not just the tasks. Most of the clock lives between the boxes, not inside them.</p><p>Now look at every AI integration you've shipped. For each one, ask one question. When this runs, does the business move faster, or does one person get faster at their own work?</p><p>Then ask it of the whole stack. If you unplugged every AI integration tomorrow, would the cycle stretch out, or would a few people just type more?</p><p>Most operators I've run this with realize their agents are almost entirely pointed at people. A few realize it's a hundred percent. The number is rarely below sixty.</p><p>The reaction is always the same. A pause, then a quiet laugh, then "but everyone is building them there." That's true. Strassmann's losing companies weren't stupid either. They pointed their tech where their peers pointed it, which is why they all ended up on the wrong side.</p><p>The reason this keeps happening is that it's an attention problem, not a technology problem. Pointing an agent at yourself feels like action. You ship it, you see it working, the demo lands. Pointing an agent at the business feels like work. You have to sit with how the business actually runs, figure out where the wait time lives, and wire something into it you trust enough to let run. Most operators don't want to do the second thing. So they do the first and call it transformation.</p><h3>The Trap Is Older Than AI</h3><p>The split isn't an AI thing. Strassmann drew it studying mainframes in the seventies. Jobs translated it to PCs in 1992. We're living it in AI in 2026. Three eras. Three technologies. Same split. Each time new tech shows up, a loud generation of tools points at the person and a quieter generation points at the business. Person tools get the press. Business tools get the returns.</p><p>The question in 2026 isn't whether you're shipping agents. Everyone is. The question is whether your business moves any faster because of it.</p><p>If you run the audit this week and the business isn't any faster, that's fine. Most of us started there. It just means the transformation you think you're doing hasn't started yet. The tech is new. The trap is 1992.</p><p>If you want to hear Jobs make the argument himself, the full MIT Sloan talk is on YouTube. The management versus operational split is about four minutes in.</p><div id="youtube2-Gk-9Fd2mEnI" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;Gk-9Fd2mEnI&quot;,&quot;startTime&quot;:&quot;218s&quot;,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/Gk-9Fd2mEnI?start=218s&amp;rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>Where is your AI pointed? Send me a message and tell me what you found.</p>]]></content:encoded></item><item><title><![CDATA[AI Made You More Productive. The Question Is: For Whom?]]></title><description><![CDATA[AI created a massive productivity surplus. Now there's a fight over who gets to keep it.]]></description><link>https://aishapedcompany.com/p/ai-made-you-more-productive-the-question</link><guid isPermaLink="false">https://aishapedcompany.com/p/ai-made-you-more-productive-the-question</guid><dc:creator><![CDATA[Leon Ho]]></dc:creator><pubDate>Fri, 13 Mar 2026 23:13:33 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!I9MG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7e7bcb9-4d2d-4f2e-acc2-84ac79c6d37c_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!I9MG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7e7bcb9-4d2d-4f2e-acc2-84ac79c6d37c_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!I9MG!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7e7bcb9-4d2d-4f2e-acc2-84ac79c6d37c_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!I9MG!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7e7bcb9-4d2d-4f2e-acc2-84ac79c6d37c_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!I9MG!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7e7bcb9-4d2d-4f2e-acc2-84ac79c6d37c_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!I9MG!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7e7bcb9-4d2d-4f2e-acc2-84ac79c6d37c_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!I9MG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7e7bcb9-4d2d-4f2e-acc2-84ac79c6d37c_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d7e7bcb9-4d2d-4f2e-acc2-84ac79c6d37c_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2547949,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://leonho.substack.com/i/190893411?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7e7bcb9-4d2d-4f2e-acc2-84ac79c6d37c_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!I9MG!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7e7bcb9-4d2d-4f2e-acc2-84ac79c6d37c_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!I9MG!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7e7bcb9-4d2d-4f2e-acc2-84ac79c6d37c_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!I9MG!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7e7bcb9-4d2d-4f2e-acc2-84ac79c6d37c_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!I9MG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7e7bcb9-4d2d-4f2e-acc2-84ac79c6d37c_1536x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><p>A few weeks ago I wrote about Parkinson's Law and AI - how we fill saved time with more work unless we actively protect it.</p><p>One reply stuck with me: "Leon, the problem isn't me. It's my company. I finished my work in 4 hours. My reward was more work."</p><p>And I sat with that. Because they're right. But they're also only seeing half the picture.</p><p>Here's the uncomfortable truth nobody wants to say out loud: AI created a massive productivity surplus. And now there's a fight over who gets to keep it.</p><h3>The Company's Side (And They're Not Wrong)</h3><p>Amazon cut 30,000 corporate roles in four months. CEO Andy Jassy said AI would "reshape operations and reduce the need for some corporate roles." Block slashed 40% of its workforce - over 4,000 people. Jack Dorsey's explanation was blunt: "A significantly smaller team, using these tools, can achieve more."</p><p>And if you run a company, this math is hard to argue with.</p><p>If a team of 10 can now produce what used to take 15, why keep 15? That's not cruelty. That's the same logic every business has followed since the invention of the assembly line. New technology creates surplus. Organizations capture it.</p><p>This is what companies do. They're not going to look at a 40% productivity gain and say "great, everyone go home at 2pm." They're going to say "great, we need fewer people" or "great, now this team can take on the project we couldn't afford before."</p><p>UC Berkeley researchers tracked about 200 employees at a tech company for eight months. The ones who adopted AI expanded scope, took on tasks they used to outsource, blurred work-life boundaries. But here's the part people miss - the environment drove much of that expansion. When you finish faster, expectations adjust. Not through some official policy. Just... naturally. Deadlines tighten. Scope grows. "You can handle this now, right?"</p><p>The organization absorbs the gain. That's not a bug. That's how organizations work.</p><h3>The Individual's Side (And They're Not Wrong Either)</h3><p>But if you're the person doing the work, this deal feels terrible.</p><p>You learned the tools. You got faster. You upskilled on your own time. And your reward is... the same salary, more work, and the vague threat that if you don't keep accelerating, someone cheaper (or no one at all) will replace you.</p><p>ActivTrak analyzed 164,000 workers and found that after AI adoption, focused deep work actually dropped. What went up? Coordination. Messaging. Context-switching. People produced more but spent their "saved" time managing the increased volume.</p><p>Upwork found 77% of professionals reporting increased workload despite speed gains. Not because they chose more work. Because the system metabolized their efficiency before they could.</p><p>So you're faster, busier, more mentally loaded, and now you're also reading headlines about AI replacing your job entirely. The individual's rational response is obvious: capture the gains yourself. Work less. Automate quietly. Don't advertise how fast you've become. Because the moment you do, the surplus gets claimed.</p><p>And honestly? I don't blame anyone for thinking this way.</p><h3>The Dilemma Nobody's Solving</h3><p>This is a genuine dilemma. Not a problem with a clean answer.</p><p>The company is right that capturing productivity gains is how businesses survive and grow. Every major economic shift - mechanization, computers, the internet - played out this way. The surplus got absorbed into growth, lower costs, or headcount reduction. Expecting AI to be different is naive.</p><p>The individual is right that they're the ones who developed the capability, and watching all the benefits flow upward while the workload flows down is demoralizing. Especially when "upskilling" was supposed to be the answer to job security, and now upskilling just means doing three people's jobs.</p><p>Neither side is being greedy. Both are being rational. And that's what makes this hard.</p><h3>What History Tells Us (It's Not Comforting)</h3><p>Every major productivity technology has created this exact tension. And historically, the organization wins first.</p><p>The industrial revolution made workers dramatically more productive. Factory owners captured the surplus for decades - longer hours, lower per-unit wages, child labor - before unions, regulation, and social pressure redistributed some of the gains back to workers. That redistribution took 50-80 years.</p><p>Computers made office workers more productive starting in the 1980s. Companies captured it through headcount efficiency. The "productivity paradox" of that era was that GDP rose but wages didn't. It took until the late 1990s for workers to see meaningful wage gains from the computer revolution.</p><p>The pattern is consistent: technology creates surplus, organizations capture it first, individuals eventually claw some back through market dynamics, regulation, or cultural shifts. But "eventually" can mean a generation.</p><h3>So Who Wins With AI?</h3><p>I think it depends on what kind of work you do.</p><p>If your job is primarily execution - producing deliverables that AI can now produce faster or cheaper - the organization will capture most of the surplus. This is already happening. The layoffs aren't rumors anymore.</p><p>If your job is primarily judgment - deciding what to build, which problems matter, how to navigate ambiguity - you're in a stronger position. AI amplifies your judgment instead of replacing it. And the surplus is harder for the organization to extract because it lives in your head, not in a workflow.</p><p>The most interesting case is the middle. People whose jobs are a mix of execution and judgment. They're faster at the execution part, which means they can spend more time on the judgment part. But only if they actively make that shift. If they just do more execution faster, the organization absorbs the gain and they become easier to replace.</p><h3>What I'm Actually Doing About This</h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!44_G!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9e5843d-d2d3-4a83-9d0d-71bee545f3bb_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!44_G!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9e5843d-d2d3-4a83-9d0d-71bee545f3bb_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!44_G!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9e5843d-d2d3-4a83-9d0d-71bee545f3bb_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!44_G!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9e5843d-d2d3-4a83-9d0d-71bee545f3bb_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!44_G!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9e5843d-d2d3-4a83-9d0d-71bee545f3bb_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!44_G!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9e5843d-d2d3-4a83-9d0d-71bee545f3bb_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e9e5843d-d2d3-4a83-9d0d-71bee545f3bb_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2659824,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://leonho.substack.com/i/190893411?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9e5843d-d2d3-4a83-9d0d-71bee545f3bb_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!44_G!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9e5843d-d2d3-4a83-9d0d-71bee545f3bb_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!44_G!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9e5843d-d2d3-4a83-9d0d-71bee545f3bb_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!44_G!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9e5843d-d2d3-4a83-9d0d-71bee545f3bb_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!44_G!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9e5843d-d2d3-4a83-9d0d-71bee545f3bb_1536x1024.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>I don't have a grand theory. But I've been thinking about this as both a founder and an individual.</p><p>As a founder, I'm trying to resist the default of just piling more work on a faster team. The temptation is real. "We can do more" is the most natural sentence in business. But I've burned out teams before, pre-AI, with exactly this logic. More capacity doesn't mean more should get done. Sometimes it means the same things get done with more care, more thinking, more space.</p><p>As an individual, I'm deliberately shifting my time toward work AI can't absorb yet - strategic decisions, relationship-building, the kind of thinking that requires sitting with ambiguity. Not because I'm noble. Because that's where the leverage is. The execution layer is getting commoditized fast.</p><p>The honest answer is that this tension won't resolve cleanly. Organizations will squeeze. Individuals will protect. The people who navigate it best won't be the ones who pick a side - they'll be the ones who understand both sides well enough to position themselves where the surplus is hardest to take from them.</p><p>That means moving toward judgment. Toward the work that gets more valuable when AI handles the rest.</p><p>Not because it's fair. Because it's the game.</p><div><hr></div><p><em>Where are you feeling this tension most - your company capturing your AI gains, or you trying to keep them? I'm collecting perspectives for a follow-up. Send me a dm.</em></p>]]></content:encoded></item><item><title><![CDATA[My Kid Doesn't Need Instructions. He Needs Judgment.]]></title><description><![CDATA[The one skill AI can't hand your kids in a step-by-step guide]]></description><link>https://aishapedcompany.com/p/my-kid-doesnt-need-instructions-he</link><guid isPermaLink="false">https://aishapedcompany.com/p/my-kid-doesnt-need-instructions-he</guid><dc:creator><![CDATA[Leon Ho]]></dc:creator><pubDate>Wed, 18 Feb 2026 23:00:25 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!1QAN!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F675a6860-ca24-416a-9e84-9c8db4388cf9_512x512.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>My 12-year-old asked ChatGPT how to build a rubber band-powered racing car for his school project last week. It gave him a perfect step-by-step guide. Materials list, measurements, the physics behind stored elastic energy - the whole thing.</p><p>He followed every instruction. Built it in an afternoon. It worked on the first try.</p><p>And I realized: that's the problem.</p><h3>The Instructions Era Is Over</h3><p>For most of human history, the hard part was getting the instructions. You needed a teacher, a textbook, a mentor, an apprenticeship. Access to knowledge was the bottleneck.</p><p>That bottleneck is gone. My 9-year-old can ask an AI to explain quantum physics at a level he understands. And it will. Patiently. With analogies. At 11pm on a Tuesday.</p><p>So what's left?</p><p>Judgment. The thing no AI can hand you in a step-by-step guide.</p><p>Judgment is knowing which problem to solve in the first place. It's knowing when the AI's answer is technically correct but practically wrong. It's knowing when to follow the instructions and when to throw them out.</p><p>And I don't think most of us - parents, teachers, schools - are preparing kids for this shift.</p><h3>What I Got Wrong As A Parent</h3><p>I caught myself doing something recently that bothered me. My older son was struggling with a decision about which extracurricular to commit to. And my instinct was to tell him the answer.</p><p>"Do this one. Here's why."</p><p>That's instructions. That's me being the AI - giving him the optimal output based on my pattern-matching from decades of experience.</p><p>But my experience is from a different world. I grew up in a world where you pick a lane, get good at it, and stay. That mental model doesn't apply to a kid who'll graduate into a world where AI can pick up any skill in seconds. The competitive advantage isn't in what you know how to do. It's in knowing what's worth doing.</p><p>So I stopped myself. Instead of answering, I asked him questions.</p><p>What do you actually enjoy about each one? Not what you think you should enjoy. What part do you look forward to?</p><p>If you could only do one for the next year and no one would judge you either way, which would you pick?</p><p>What would you regret not trying?</p><p>He sat with it. It was uncomfortable. He wanted me to just tell him. But he made a choice. His own choice, with his own reasoning.</p><p>That's judgment practice. And it's harder than following instructions.</p><h3>Experience Gets In The Way</h3><p>Here's something I've been thinking about that applies to adults too. As we get older, we accumulate experience. And experience is supposed to be this great advantage - pattern recognition, intuition, "I've seen this before."</p><p>But experience also calcifies. You stop considering options outside your patterns. You default to what worked last time instead of what might work better now.</p><p>I see this in myself constantly. Running LifeHack for 20+ years means I have strong instincts about what content works, how to structure a team, how to launch a product. But some of those instincts are from 2015. The world has shifted underneath them.</p><p>AI doesn't have this problem. Ask it for ideas and it doesn't care about your track record. It generates options you'd never consider because it has no ego invested in what worked before.</p><p>The question is whether you have the judgment to evaluate those options honestly. Or whether your experience will make you dismiss the unfamiliar ones automatically.</p><p>This is the skill I want my kids to develop. Not experience - they'll get that naturally. Judgment. The ability to weigh options without defaulting to comfort.</p><h3>Judgment Can't Be Taught. But It Can Be Practiced.</h3><p>You can't sit a kid down and teach judgment the way you teach multiplication. But you can create conditions where it develops.</p><p>I've been experimenting with a few things:</p><p><strong>Let them make real decisions with real consequences.</strong> Not catastrophic ones. But real. My 12-year-old manages his own schedule for the week. If he doesn't allocate enough time for homework, he feels it. I don't rescue him.</p><p><strong>Ask questions instead of giving answers.</strong> When either of my sons asks me what they should do, my first response is now almost always "What do you think?" Not to be annoying. But because the act of formulating your own answer - even a wrong one - builds the muscle.</p><p><strong>Let them use AI, then critique it.</strong> This one surprised me. I let my older son use ChatGPT for research, but then we talk about what it got wrong or what it left out. He's starting to develop a sense for when AI outputs sound right but miss something important. That's judgment.</p><p><strong>Model uncertainty.</strong> I tell my kids when I don't know the answer. When I'm making a decision I'm not sure about. When I changed my mind about something. Kids who see adults being certain about everything learn to fake certainty. Kids who see adults wrestling with ambiguity learn to sit with it.</p><h3>The Real Question For The AI Era</h3><p>Everyone's asking "what should we teach kids now that AI exists?" And the answers are usually some version of creativity, critical thinking, emotional intelligence. Which is fine. But vague.</p><p>I think the answer is simpler and harder.</p><p>Teach them to make decisions without complete information. Because that's what judgment is. And that's the one thing AI will never do for them - not because it can't generate a decision, but because the whole point is that they need to own it.</p><p>AI can give you the options. AI can model the outcomes. AI can even recommend the "optimal" choice.</p><p>But the kid who learns to sit with uncertainty, weigh tradeoffs against their own values, and commit to a choice they made themselves - that kid has something AI can't replicate.</p><p>My rubber band car-building 12-year-old doesn't need more instructions. He's drowning in instructions. What he needs is the confidence to decide which instructions are worth following. And the only way to build that is practice.</p><p>Which means letting him get it wrong sometimes. That part is harder for me than for him.</p><div><hr></div><p><em>How are you thinking about raising kids in the AI era? I'm genuinely figuring this out in real time. Send me a message - I'd love to hear what's working for you.</em></p>]]></content:encoded></item><item><title><![CDATA[My Kids Built Video Games With AI Last Year. The Hard Part Wasn't What I Expected.]]></title><description><![CDATA[The real skill isn't coding - it's articulating what's in your head]]></description><link>https://aishapedcompany.com/p/my-kids-built-video-games-with-ai</link><guid isPermaLink="false">https://aishapedcompany.com/p/my-kids-built-video-games-with-ai</guid><dc:creator><![CDATA[Leon Ho]]></dc:creator><pubDate>Thu, 12 Feb 2026 22:31:39 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!1QAN!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F675a6860-ca24-416a-9e84-9c8db4388cf9_512x512.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>I showed my kids how to build games with AI last year.</p><p>My older son (12) started early in the year. My younger son (9) picked it up toward the end. Neither of them has ever written a line of code.</p><p>My 12-year-old built a tank battle game with randomly generated maps. My 9-year-old built a 3D first-person prison break game - three chapters, a full storyline, graphics that look like they came out of Roblox.</p><p>I want to tell you about what happened. But more importantly, I want to tell you about what was hard. Because it wasn't what I expected.</p><h3>What The Kids Built</h3><p>My son went for a tank game. He got the basic mechanics working pretty quickly - movement, shooting, simple enemies. AI handled that without much trouble.</p><p>Then he wanted something harder. He wanted the map to be different every time you play. Not a fixed layout - a procedurally generated battlefield with obstacles, terrain, and spawn points that made sense.</p><p>That's a real computer science problem. Algorithmic map generation. And he had to figure out how to describe it to the AI precisely enough to get a working result.</p><p>It took him a bunch of rounds going back and forth. "No, I want the walls to be random but not blocking the path." "The tanks should start far apart." "There should be places to hide but not too many." Each time the AI tried something, he'd test it, see what was wrong, and try to explain the fix.</p><p>He got there eventually. The maps aren't perfect. But they work. And he understands what procedural generation is now - not because someone taught him the concept, but because he needed it for his game.</p><p>My 9-year-old's project was more ambitious than I expected. He wanted a 3D first-person game where you escape from a prison. He had the whole thing in his head - the layout of the prison, the guards' patrol routes, the items you need to find, the plot twists between chapters.</p><p>The 3D graphics ended up looking like Roblox, which he was thrilled about. Three playable chapters. A storyline that actually holds together.</p><p>He's nine.</p><h3>The Real Bottleneck</h3><p>Here's what surprised me. The technology wasn't the hard part. The AI could generate code, create game mechanics, design levels, render 3D environments. The tools are there.</p><p>What was hard - for both of them - was articulating what was in their head.</p><p>My son knew exactly what he wanted the random maps to feel like. He could picture it. He just couldn't describe it in words precise enough for the AI to build it. There's a huge gap between "I want it to be kind of random but also fair" and a specification the AI can execute on.</p><p>My 9-year-old had an even bigger version of this problem. He had a rich, detailed world in his imagination. Getting it out of his head and into language was the bottleneck. Not the coding. Not the technology. The translation from imagination to words.</p><p>I watched both of them develop this skill in real time. After a few sessions they were noticeably better at describing what they wanted. More specific. More structured in how they communicated.</p><h3>The Skill That Actually Matters</h3><p>We keep asking the wrong question about kids and AI. The question isn't "should kids learn to code if AI can code for them?" That's like asking whether kids should learn to drive when self-driving cars are coming. It misses the point.</p><p>The better question is: what does AI require you to be good at?</p><p>And from watching my kids, the answer is clear. You need to be good at knowing what you want and explaining it clearly.</p><p>That sounds simple. It isn't.</p><p>Think about how often you struggle to articulate an idea at work. How many meetings are just people failing to describe what they actually mean. How many projects go sideways because the spec was fuzzy.</p><p>Now imagine a generation of kids who grew up practicing this skill - not in a classroom exercise, but because they needed it to build the thing they were excited about.</p><p>My son didn't learn "prompt engineering." He learned how to take a fuzzy idea in his head and refine it into something precise enough to execute. That's a thinking skill. It transfers to everything.</p><h3>What I'd Tell Other Parents</h3><p>You don't need to be technical to do this with your kids. I didn't sit down and teach them programming concepts. I showed them how to talk to the AI and then got out of the way.</p><p>The magic is that kids already have the creativity. They have worlds in their heads that are more imaginative than anything I'd come up with. What they need is the experience of translating those worlds into words. AI gives them a reason to practice that.</p><p>A few things I noticed:</p><p>The best prompts came from frustration. When the AI got something wrong, my kids had to figure out <em>why</em> it was wrong and explain the difference between what they got and what they wanted. That's higher-order thinking dressed up as a game.</p><p>They learned iteration naturally. Not as a concept someone taught them, but as a thing you do. You try, it's not right, you adjust, you try again. By the fifth or sixth round they stopped being frustrated by imperfect results and started treating each attempt as information.</p><p>They developed taste. My 9-year-old rejected several versions of his prison layout not because they were broken, but because they "didn't feel right." He was making design judgments. At nine.</p><h3>The Bigger Picture</h3><p>I keep thinking about this: my kids built things last year that would have required a team of developers a decade ago. Not perfect versions - but working versions. Playable games with real mechanics and narratives.</p><p>The barrier to building just dropped to zero. The only barrier left is: can you describe what you want to build?</p><p>That's not a technology problem. That's a clarity-of-thinking problem. And the best way I've found to practice it is to give a kid an AI and something they're excited about building.</p><p>The prison break game has bugs. The tank maps sometimes generate weird layouts. But my kids built them. And more importantly, they learned how to think clearly enough to explain what they imagined.</p><p>That might be the most useful skill they develop this year.</p><div><hr></div><p><em>Have your kids tried building anything with AI? I'd love to hear what they made - send me a message.</em></p>]]></content:encoded></item><item><title><![CDATA[Parkinson's Law Is Why AI Won't Make You Productive]]></title><description><![CDATA[Everyone's saving time with AI. Almost nobody knows what to do with it.]]></description><link>https://aishapedcompany.com/p/parkinsons-law-is-why-ai-wont-make</link><guid isPermaLink="false">https://aishapedcompany.com/p/parkinsons-law-is-why-ai-wont-make</guid><dc:creator><![CDATA[Leon Ho]]></dc:creator><pubDate>Tue, 10 Feb 2026 20:18:05 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!1QAN!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F675a6860-ca24-416a-9e84-9c8db4388cf9_512x512.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Everyone's talking about how much time AI saves. And it does. I've seen it in my own workflow, and we see it across hundreds of thousands of LifeHack users.</p><p>But here's something I can't stop thinking about: most people who save time with AI don't actually end up with more time. They end up busier.</p><p>There's a name for this. And understanding it might be the most important thing you do before adopting your next AI tool.</p><h3>A Law From 1955 That Explains 2026</h3><p>In 1955, a British historian named Cyril Northcote Parkinson wrote an essay in The Economist. The opening line became famous:</p><p><strong>"Work expands so as to fill the time available for its completion."</strong></p><p>He was writing about bureaucracy. He'd observed that the British Colonial Office kept hiring more staff even as the Empire shrank. More people, fewer colonies - and somehow, everyone was busier than ever. The work didn't grow. It inflated.</p><p>This became known as Parkinson's Law. And it's one of those ideas that, once you see it, you can't unsee it.</p><p>Think about your own life. When you had a whole weekend to clean the house, it took the whole weekend. When you had 2 hours before guests arrived, it took 2 hours. Same house. Same mess. Different time pressure.</p><h3>Why AI Makes Parkinson's Law Worse</h3><p>Here's where it gets interesting for the AI era.</p><p>AI tools genuinely reduce the time needed for specific tasks. Writing emails, summarizing documents, generating first drafts, organizing data - things that used to take an hour now take minutes.</p><p>But Parkinson's Law doesn't care about efficiency. It cares about containers. If your calendar still has the same shape - same meetings, same blocks, same open-ended "work time" - the saved minutes just dissolve into the existing structure. You'll spend longer polishing that email. You'll attend a meeting you didn't need to be in. You'll open Slack "for a second" and lose 40 minutes.</p><p>The container stayed the same. So the work expanded to fill it.</p><p>This is why I think the conversation about AI productivity is fundamentally wrong. Everyone asks: "Which AI tool should I use?" The better question is: "What am I protecting the saved time for?"</p><h3>The Three Ways People Waste Reclaimed Time</h3><p>After running LifeHack for over 20 years and studying how people actually behave (not how they say they'll behave), I've noticed three patterns:</p><p><strong>1. The polish trap.</strong> You save 30 minutes drafting a report with AI. Then spend 45 minutes tweaking it to perfection. Net gain: negative 15 minutes. The AI made it good enough in 5 minutes. The remaining 40 minutes was anxiety masquerading as quality.</p><p><strong>2. The volume trap.</strong> AI lets you write 10 emails in the time it used to take to write 3. So you write 10. More emails, more replies, more threads, more context-switching. You moved faster but in more directions simultaneously - which usually means less progress on anything that matters.</p><p><strong>3. The drift trap.</strong> You finish something early thanks to AI. No clear next task. You default to whatever's easiest - checking notifications, browsing feeds, responding to things that feel urgent but aren't important. The saved time just... evaporates.</p><p>All three traps share the same root cause: no pre-committed plan for the saved time.</p><h3>How To Actually Beat Parkinson's Law</h3><p>The fix isn't willpower. It's structure. Parkinson's Law is a systems problem, and you solve systems problems with better systems.</p><p><strong>Shrink the container before you start.</strong> If a task used to take an hour and AI can do the heavy lifting, don't give yourself an hour. Give yourself 20 minutes. Set a timer. When it goes off, you're done. Parkinson's Law works both ways - if you shrink the time, the work compresses to fit.</p><p><strong>Decide what the saved time is for before you save it.</strong> This is the one most people skip. Before you use AI to speed something up, write down what you'll do with the freed-up time. Not vaguely - specifically. "I'll use the 30 minutes to work on the product roadmap." If you can't name it, you'll lose it.</p><p><strong>Batch, don't scatter.</strong> Don't spread saved minutes across the day. They'll disappear. Instead, accumulate them into a single protected block. Even 60-90 minutes of uninterrupted time on your most important project is worth more than five scattered 15-minute windows.</p><p><strong>Make the important thing the default.</strong> When you finish something early, your brain will look for the path of least resistance. Make sure that path leads somewhere useful. Close your email. Close Slack. Have your priority project already open in the next tab.</p><h3>The Real AI Advantage</h3><p>The people I know who are genuinely thriving with AI aren't the ones who've adopted the most tools. They're the ones who decided what they wanted more time for before the tools showed up.</p><p>They use AI to compress the stuff that doesn't matter. And they protect the freed-up space for the stuff that does - deep thinking, creative work, relationships, rest.</p><p>That's the real leverage. Not faster outputs. Clearer priorities.</p><p>AI doesn't beat Parkinson's Law for you. Clarity does. AI just makes the stakes higher - because now there's more time to either use well or waste.</p><p>So before you add another AI tool to your workflow, ask yourself: what's the saved time actually for?</p><p>I'd genuinely like to know your answer. Send me a message.</p>]]></content:encoded></item><item><title><![CDATA[Your Kids Already Have an AI Tutor. You Just Haven't Set It Up Yet.]]></title><description><![CDATA[How I turned a free chatbot into a patient, tireless tutor for my 12-year-old - and the five rules that made it work.]]></description><link>https://aishapedcompany.com/p/your-kids-already-have-an-ai-tutor</link><guid isPermaLink="false">https://aishapedcompany.com/p/your-kids-already-have-an-ai-tutor</guid><dc:creator><![CDATA[Leon Ho]]></dc:creator><pubDate>Mon, 09 Feb 2026 22:15:36 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!1QAN!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F675a6860-ca24-416a-9e84-9c8db4388cf9_512x512.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>My 12-year-old asked me how black holes work last week. Not for school. He saw something on YouTube and got curious.</p><p>I opened Claude, typed his question, and sat next to him. For 20 minutes, he and the AI went back and forth. The AI didn't explain black holes to him. It asked him questions until he explained black holes to himself.</p><p>By the end he understood gravitational pull, event horizons, and why light can't escape. He figured it out. The AI just nudged him in the right direction.</p><p>That conversation taught him more physics than a month of class. It scared me a little. Then I leaned in.</p><h3>The real problem</h3><p>Here's something most parents know but don't think about enough. Your kid's classroom has one teacher and 25-30 students. That teacher can't personalize anything. They teach to the middle and hope for the best.</p><p>This has been true forever. In 1984, a psychologist named Benjamin Bloom showed that kids who get one-on-one tutoring outperform 98% of kids in regular classrooms. Not a small edge. A massive one. He called it the "2-sigma problem" - the challenge of giving every kid that kind of attention.</p><p>For 40 years, nobody solved it. Private tutors cost $40-100 an hour. Most families can't do that. So the gap between kids who get personal attention and kids who don't just kept growing.</p><p>AI closed that gap. Almost overnight.</p><p>And here's the thing most parents miss: 86% of students are already using AI for learning. Your kids probably are too. The question isn't whether they'll use it. It's whether they'll use it well, or just copy answers.</p><h3>Why this is different from Google</h3><p>Parents tell me "We had encyclopedias. Then Google. Now AI. Same thing."</p><p>It's not.</p><p>Google gives you information. AI gives you a conversation. That difference matters more than it sounds.</p><p>When my son asked about black holes, a Google search would have given him a Wikipedia page. He'd skim it for 30 seconds and move on. The AI asked him: "What do you think would happen if you threw a baseball really, really hard - so hard it never came back down?"</p><p>That's the Socratic method. The teacher asks questions instead of giving answers. It's how Socrates taught. It's how the best tutors teach. And it turns out AI is surprisingly good at it.</p><p>A 2025 study by Google and Eedi tested this across five UK schools. They compared AI-guided tutoring against human-only tutoring. Students guided by AI were 5.5 percentage points more likely to solve problems on topics they'd never seen before. Not memorization. Actual understanding that transferred to new problems.</p><p>The human tutors were impressed. All five said the AI's questioning was consistently good. Three said they picked up new teaching techniques from watching it. One said: "I remember thinking, Oh, I hadn't thought of explaining it that way before. Just like when you watch another teacher."</p><p>That's a remarkable thing to say about a machine.</p><h3>What I actually did</h3><p>I didn't just hand my kid a chatbot. That would be like handing a teenager car keys with no driving lessons.</p><p>I tried that first, actually. It went badly. More on that later.</p><p>What works is structure. I set up five rules.</p><p><strong>No direct answers.</strong> The AI never just tells him things. If he asks "What's 7 x 8?", it might say: "You know 7 x 7 is 49. So what's one more group of 7?" If he asks why the sky is blue, it might say: "Imagine sunlight is a bag of mixed Skittles flying toward Earth. The atmosphere only scatters the blue ones everywhere." It takes longer. That's the point.</p><p><strong>Multiple teaching modes.</strong> This is the most important part. I gave the AI a system prompt that tells it to rotate between different ways of teaching:</p><blockquote><p>You are a patient, creative tutor for a 12-year-old. Your goal is to help the student <em>understand</em>, not just get the right answer.</p><p></p><p><strong>How to teach (rotate between these based on what fits):</strong></p><p>- <strong>Questions</strong> - Guide the student to discover the answer. ("What do you think would happen if...?")</p><p>- <strong>Pictures</strong> - Draw ASCII diagrams, tables, or describe vivid mental images. ("Imagine the solar system is a football field. The sun is on one end zone. Where do you think Earth would be?")</p><p>- <strong>Analogies</strong> - Connect new ideas to things the student already knows. ("Fractions work like slicing a pizza.")</p><p>- <strong>Stories</strong> - Turn abstract ideas into little narratives. ("Pretend you're a water molecule sitting in the ocean. The sun starts heating you up. What happens next?")</p><p>- <strong>Challenges</strong> - When the student gets something right, make it harder. ("Nice. Now here's a trickier one...")</p><p></p><p><strong>Rules:</strong></p><p>- Never give direct answers. Guide the student to figure it out.</p><p>- Use simple language. Short sentences.</p><p>- If the student gets frustrated, switch to a different method. Don't repeat the same approach.</p><p>- Praise effort and thinking over getting the right answer.</p><p>- If the student says "just tell me," say: "I know you can figure this out. Let me try it a different way."</p><p>- At the end of each topic, ask the student to explain what they learned in their own words.</p></blockquote><p>The rotation matters. Some days my son learns better from a story. Other days he wants a diagram. The AI figures out what's clicking and does more of that.</p><p><strong>I sit nearby for the first 10 sessions.</strong> Not watching over his shoulder. Just in the room. This lets me see how he talks to the AI and catch anything weird. After about 10 sessions, he'd learned the pattern on his own: use the AI to help you think, not to think for you.</p><p><strong>20 minutes max.</strong> Research from the Children and Screens Institute shows that active AI learning isn't the same as passive screen time for brain development. But it's still a screen. I keep it short. Timer goes off, we're done.</p><p><strong>Always end with "What did you learn?"</strong> After every session, he has to tell me - in his own words - what he figured out. If he can't explain it, he didn't learn it. This is the simplest rule and the most important one.</p><h3>How to set this up</h3><p>You don't need special software. Pick one:</p><p><strong>ChatGPT</strong> works on the free tier. Create an account, start a conversation, paste the prompt above as the first message. Let your kid type their question. Sit with them.</p><p><strong>Claude</strong> is what I use. I find it more patient and less likely to break character and just blurt out the answer. Same setup.</p><p><strong>Khanmigo</strong> is Khan Academy's AI tutor. It's built for kids from the ground up - Socratic method by default, safety filters, stays on topic. $44 a year. Worth it if you don't want to set anything up yourself. Sal Khan says they're on track to reach a million students this school year.</p><p>Start with the free option. You can always switch later.</p><h3>The laziness question</h3><p>The objection I hear most: "Won't this make them lazy?"</p><p>I thought the same thing. After six months, the opposite happened. My son now asks better questions - not just to the AI, but to his teachers, to me, to everyone. The pattern of thinking in questions instead of waiting for answers carried over into real life.</p><p>The laziness risk is real. But it comes from <em>unstructured</em> AI use - kids pasting homework questions and copying the output. That's not tutoring. That's a copy machine.</p><p>The difference is entirely in how you set it up.</p><p>When calculators first showed up in schools, parents panicked. "They'll never learn math!" But calculators freed kids to focus on problem-solving instead of arithmetic. AI does the same thing one level up. It frees kids to focus on thinking instead of finding information.</p><p>The kids who learn to use AI as a thinking partner will have a big advantage over the kids who use it as a shortcut. And their parents are the ones who decide which it'll be.</p><h3>What I got wrong</h3><p>I should tell you about my first attempt. It was bad.</p><p>I let my son use ChatGPT for homework with no rules. He finished everything in 10 minutes. Got it all "right." Learned nothing. I could tell because when I asked him to explain his answers, he just stared at me.</p><p>That's when I realized something simple: <strong>AI tutoring without structure is just AI cheating.</strong></p><p>The prompt matters. The rules matter. Sitting with them matters. The "what did you learn" question matters. Take any of those away and you're back to a fancy copy machine.</p><h3>Try it this week</h3><p>Your kids will use AI for learning whether you're involved or not. They probably already are.</p><p>You get to decide if it makes them smarter or more dependent. That decision takes about 15 minutes - set up the prompt, sit next to your kid, ask what they're curious about.</p><p>Watch what happens when a patient, tireless tutor meets a curious kid with no time pressure.</p><div><hr></div><p><em>Have you tried using AI with your kids? What worked? What went wrong? I'm collecting real stories for a follow-up. Send me a message - I read every one.</em></p>]]></content:encoded></item><item><title><![CDATA[Automate Your Gmail Labeling with AI Agent]]></title><description><![CDATA[Download the mail classification AI agent template]]></description><link>https://aishapedcompany.com/p/automate-your-gmail-labeling-with</link><guid isPermaLink="false">https://aishapedcompany.com/p/automate-your-gmail-labeling-with</guid><dc:creator><![CDATA[Leon Ho]]></dc:creator><pubDate>Thu, 21 Nov 2024 20:21:58 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!KOC5!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09af82c0-b305-4157-b2de-bd410d4bd726_1550x724.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Managing emails can quickly become overwhelming. Instead of manually sorting through every message, I&#8217;ve implemented an AI-powered system to automatically categorize my Gmail into actionable groups. This approach ensures I focus only on what&#8217;s important, saving time and effort.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!KOC5!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09af82c0-b305-4157-b2de-bd410d4bd726_1550x724.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!KOC5!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09af82c0-b305-4157-b2de-bd410d4bd726_1550x724.png 424w, https://substackcdn.com/image/fetch/$s_!KOC5!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09af82c0-b305-4157-b2de-bd410d4bd726_1550x724.png 848w, https://substackcdn.com/image/fetch/$s_!KOC5!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09af82c0-b305-4157-b2de-bd410d4bd726_1550x724.png 1272w, https://substackcdn.com/image/fetch/$s_!KOC5!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09af82c0-b305-4157-b2de-bd410d4bd726_1550x724.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!KOC5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09af82c0-b305-4157-b2de-bd410d4bd726_1550x724.png" width="1456" height="680" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/09af82c0-b305-4157-b2de-bd410d4bd726_1550x724.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:680,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Image&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Image" title="Image" srcset="https://substackcdn.com/image/fetch/$s_!KOC5!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09af82c0-b305-4157-b2de-bd410d4bd726_1550x724.png 424w, https://substackcdn.com/image/fetch/$s_!KOC5!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09af82c0-b305-4157-b2de-bd410d4bd726_1550x724.png 848w, https://substackcdn.com/image/fetch/$s_!KOC5!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09af82c0-b305-4157-b2de-bd410d4bd726_1550x724.png 1272w, https://substackcdn.com/image/fetch/$s_!KOC5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09af82c0-b305-4157-b2de-bd410d4bd726_1550x724.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2><strong>How It Works</strong></h2><p>Using <a href="https://n8n.io/">n8n</a>, I&#8217;ve connected my Gmail with an AI model to classify incoming emails into six predefined categories:</p><p>1. <strong>ShouldRead</strong>: Important information to review.</p><p>2. <strong>ShouldReply</strong>: Emails requiring a response.</p><p>3. <strong>ColdEmail</strong>: Unsolicited outreach or pitches.</p><p>4. <strong>Marketing</strong>: Promotions and advertisements.</p><p>5. <strong>Priority</strong>: High-importance or time-sensitive emails.</p><p>6. <strong>Notification</strong>: Automated updates and system messages.</p><p>Each new email is analyzed by the AI, and the appropriate label is applied in Gmail.</p><h2><strong>My Focus Areas</strong></h2><p>To stay efficient, I only pay attention to these categories:</p><p>&#8226; <strong>ShouldRead</strong>: Key information relevant to ongoing work or personal development.</p><p>&#8226; <strong>ShouldReply</strong>: Messages that require a response to maintain workflows or relationships.</p><p>&#8226; <strong>Priority</strong>: Critical emails that demand immediate action.</p><p>Other categories like <strong>ColdEmail</strong>, <strong>Marketing</strong>, and <strong>Notification</strong> are deprioritized and checked only occasionally, if at all.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://aishapedcompany.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Subscribe to receive more templates like this</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p><h2><strong>Benefits</strong></h2><p>This system delivers clear advantages:</p><p>&#8226; <strong>Efficiency</strong>: No manual sorting or wasted time searching for important emails.</p><p>&#8226; <strong>Clarity</strong>: My inbox is segmented based on actionable priorities.</p><p>&#8226; <strong>Focus</strong>: I concentrate on tasks that matter, without distractions from low-priority emails.</p><h2><strong>Set It Up Yourself</strong></h2><p>Here&#8217;s a quick outline of the process:</p><p>1. <strong>Trigger</strong>: Detect new emails using Gmail integration.</p><p>2. <strong>Classify</strong>: Use an AI model to analyze the email&#8217;s content.</p><p>3. <strong>Label</strong>: Apply predefined labels in Gmail automatically.</p><p>This setup is flexible&#8212;tailor the labels and workflows to suit your specific needs.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://dub.sh/label-email-ai-agent&quot;,&quot;text&quot;:&quot;Download&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://dub.sh/label-email-ai-agent"><span>Download</span></a></p><p></p>]]></content:encoded></item><item><title><![CDATA[The AI Revolution: Real Opportunities and Practical Changes]]></title><description><![CDATA[How AI is Shaping the Future: From Assisting to Fully Autonomous Agents]]></description><link>https://aishapedcompany.com/p/the-ai-revolution-real-opportunities</link><guid isPermaLink="false">https://aishapedcompany.com/p/the-ai-revolution-real-opportunities</guid><dc:creator><![CDATA[Leon Ho]]></dc:creator><pubDate>Tue, 05 Nov 2024 18:42:59 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!1jrk!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61fe70d4-bba2-46a5-ba6b-6f269b0e76bd_684x480.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>It's an exciting time for entrepreneurs and technology enthusiasts. We're in the midst of a new gold rush driven by artificial intelligence (AI), similar to the internet boom. This major infrastructure shift has created countless opportunities, with people and companies investing heavily to build solutions on top of this new AI foundation. Global investments in AI have reached over $150 billion, with major players like Microsoft, Google, and OpenAI leading the charge. Just as the early internet boom enabled new industries and ways of working, this AI infrastructure is driving transformative innovation. In the sections that follow, we'll explore how this shift has unlocked opportunities in the application layer, allowed AI to go beyond simple automation, and enabled AI agents to directly interact with our digital environments. Those who understand and act on these opportunities could lead significant changes in industries and everyday life.</p><p></p><h2>The Application Layer: Where the Real Opportunities Are</h2><p>AI has three main layers, as described in Sequoia Capital's article '<a href="https://www.sequoiacap.com/article/generative-ais-act-o1/">The Agentic Reasoning Era Begins</a>' (Sequoia, 2024). These layers play distinct but interconnected roles:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!1jrk!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61fe70d4-bba2-46a5-ba6b-6f269b0e76bd_684x480.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!1jrk!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61fe70d4-bba2-46a5-ba6b-6f269b0e76bd_684x480.png 424w, https://substackcdn.com/image/fetch/$s_!1jrk!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61fe70d4-bba2-46a5-ba6b-6f269b0e76bd_684x480.png 848w, https://substackcdn.com/image/fetch/$s_!1jrk!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61fe70d4-bba2-46a5-ba6b-6f269b0e76bd_684x480.png 1272w, https://substackcdn.com/image/fetch/$s_!1jrk!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61fe70d4-bba2-46a5-ba6b-6f269b0e76bd_684x480.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!1jrk!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61fe70d4-bba2-46a5-ba6b-6f269b0e76bd_684x480.png" width="684" height="480" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/61fe70d4-bba2-46a5-ba6b-6f269b0e76bd_684x480.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:480,&quot;width&quot;:684,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:52679,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!1jrk!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61fe70d4-bba2-46a5-ba6b-6f269b0e76bd_684x480.png 424w, https://substackcdn.com/image/fetch/$s_!1jrk!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61fe70d4-bba2-46a5-ba6b-6f269b0e76bd_684x480.png 848w, https://substackcdn.com/image/fetch/$s_!1jrk!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61fe70d4-bba2-46a5-ba6b-6f269b0e76bd_684x480.png 1272w, https://substackcdn.com/image/fetch/$s_!1jrk!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61fe70d4-bba2-46a5-ba6b-6f269b0e76bd_684x480.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><ol><li><p><strong>Foundational Infrastructure (Pre-training Layer)</strong>: This layer includes large language models and pre-trained systems that form the core capabilities of AI. These provide the foundational knowledge that AI needs to function effectively.</p></li><li><p><strong>Reasoning or Inference Layer</strong>: In this layer, models are equipped to think deeply and reason through problems, similar to AlphaGo's advances in 'System 2' thinking. This layer allows AI to go beyond basic outputs and perform more complex, context-aware tasks. From my experience, fine-tuning models in this layer can still result in inconsistencies, as the AI attempts to simulate human-like problem-solving.</p></li><li><p><strong>Application Layer</strong>: This is where the biggest opportunities lie&#8212;creating products and solutions that use AI to solve real problems. Developers can make the largest impact here. By building applications on top of standardized AI models, we can focus on solving user-specific issues, enabling true innovation. Just like upgrading a power grid, these foundational and reasoning models are crucial, yet swappable as technology advances.</p></li></ol><p>Some people may wonder, 'Wouldn't tools like ChatGPT eventually solve every problem on Earth?' The reality is more nuanced. General-purpose tools like ChatGPT can only provide general solutions, struggling with highly specific or niche problems because they lack specialized context. Solving such problems requires more than intelligence&#8212;it needs domain-specific knowledge, tailored user interfaces, and specific outputs. Developers can make a major impact by building applications that address these specialized requirements.</p><p></p><h2>Beyond Automation: Replacing Responsibilities</h2><p>To be truly successful, AI tools must evolve beyond simply assisting humans with minor tasks. Most AI applications today function as co-pilots, supporting while humans remain in control&#8212;managing decisions and giving instructions. This is helpful but limited. Real change requires aiming higher.</p><p>In my experience developing AI applications, I've noticed that current systems can still be inconsistent, even with identical prompts and similar inputs. To overcome these limitations, AI should evolve into agents capable of taking full responsibility for complex tasks and completing entire projects autonomously. The ultimate scarcity for humans is not time, but attention. If AI merely functions as a co-pilot, human involvement becomes a bottleneck, making it unscalable.</p><p>True AI agents aren't just about reducing clicks or automating simple tasks; they must execute entire workflows independently. There are four levels of AI agents:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ap6v!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e175721-080a-47fe-a25d-69615aaf87f2_457x456.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ap6v!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e175721-080a-47fe-a25d-69615aaf87f2_457x456.png 424w, https://substackcdn.com/image/fetch/$s_!ap6v!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e175721-080a-47fe-a25d-69615aaf87f2_457x456.png 848w, https://substackcdn.com/image/fetch/$s_!ap6v!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e175721-080a-47fe-a25d-69615aaf87f2_457x456.png 1272w, https://substackcdn.com/image/fetch/$s_!ap6v!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e175721-080a-47fe-a25d-69615aaf87f2_457x456.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ap6v!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e175721-080a-47fe-a25d-69615aaf87f2_457x456.png" width="457" height="456" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1e175721-080a-47fe-a25d-69615aaf87f2_457x456.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:456,&quot;width&quot;:457,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:40015,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ap6v!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e175721-080a-47fe-a25d-69615aaf87f2_457x456.png 424w, https://substackcdn.com/image/fetch/$s_!ap6v!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e175721-080a-47fe-a25d-69615aaf87f2_457x456.png 848w, https://substackcdn.com/image/fetch/$s_!ap6v!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e175721-080a-47fe-a25d-69615aaf87f2_457x456.png 1272w, https://substackcdn.com/image/fetch/$s_!ap6v!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e175721-080a-47fe-a25d-69615aaf87f2_457x456.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><ol><li><p><strong>Level 1</strong>: AI agents do the work, but humans must give instructions, review during the process, and review the final work.</p></li><li><p><strong>Level 2</strong>: AI agents do the work, but humans must give instructions and review the final work.</p></li><li><p><strong>Level 3</strong>: AI agents do the work, but humans must give instructions only.</p></li><li><p><strong>Level 4</strong>: AI agents do the work entirely without human input.</p></li></ol><p>Each level represents a progression toward reducing human involvement, with the ultimate goal being full autonomy. However, no true Level 4 agents exist yet. Achieving this level will require significant improvements in model consistency, testing, and evaluation to ensure reliable outcomes without human intervention.</p><p></p><h2>AI Agents to Do Every Computer-Based Job</h2><p>A significant leap forward in the AI landscape is the development of models that can directly manipulate desktop environments and computer systems, such as Claude 3.5's Sonnet model. This model has the capability to use tools to interact with a desktop environment autonomously, repeating actions without user input. This type of behavior is known as an "agent loop," which allows Claude to perform tasks such as managing files, editing documents, or running software by following logical sequences of steps.</p><p>For instance, the upgraded Claude 3.5 can interact with predefined tools like a computer environment, a text editor, and a Bash terminal. This allows it to not only analyze data but also modify system environments directly, taking on even more responsibility. Imagine a situation where an AI agent can run software tests, update spreadsheets, or execute scripts as part of its normal workflow&#8212;all without human intervention. This extends the usefulness of AI from providing information or insights to acting as an operational assistant, capable of doing real, practical work on the computer.</p><p>By focusing on these tools, AI could do almost any computer-based job. Combining reasoning capabilities with direct interaction, AI applications like this can evolve into true agents, automating entire segments of workflows. They aren't just reducing clicks or filling forms anymore&#8212;they&#8217;re executing end-to-end processes that involve multiple tools and steps. Such capabilities represent a major transformation in how we work, allowing businesses to leverage AI as not only a supportive tool but also as an autonomous worker that directly operates within our digital environments.</p><p></p><h2>Trusted Experts in Every Field</h2><p>Imagine AI not just as a helper that fills in the blanks, but as a trusted expert that can do important parts of a job. This lets people focus on bigger-picture tasks like planning, creating, and building relationships. These AIs aren't just helping; they are actually doing significant parts of the job, allowing people to focus on tasks that require a human touch, such as creativity and strategy. This change helps reduce repetitive work, alleviate burnout, and enable people to engage in more meaningful activities. For businesses, this means greater efficiency, more innovation, and the ability to adapt more quickly.</p><p>This is where the real opportunity lies. AI apps that can understand and replicate key parts of human roles&#8212;making decisions, providing insights, and exercising good judgment&#8212;are the ones that will succeed. The current AI gold rush isn&#8217;t just about making things faster; it&#8217;s about creating meaningful tools that transform industries and the way we work.</p><p></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://aishapedcompany.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Leon Ho is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item></channel></rss>