<?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[Product with Attitude: Context Engineering]]></title><description><![CDATA[Context engineering is the systems-design practice of controlling what an AI model sees before it generates a response: instructions, memory, retrieved knowledge, tool outputs, and message history. Each post is a working playbook: frameworks, diagrams, and tear-downs from real AI products. For PMs and vibe coders treating context architecture as a product decision, not an engineering afterthought.]]></description><link>https://karozieminski.substack.com/s/context-engineering</link><image><url>https://substackcdn.com/image/fetch/$s_!KJxv!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f411cce-3771-42d9-965e-1c01efe464eb_986x986.png</url><title>Product with Attitude: Context Engineering</title><link>https://karozieminski.substack.com/s/context-engineering</link></image><generator>Substack</generator><lastBuildDate>Thu, 25 Jun 2026 23:28:27 GMT</lastBuildDate><atom:link href="https://karozieminski.substack.com/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Karolina Zieminski]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[karozieminski@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[karozieminski@substack.com]]></itunes:email><itunes:name><![CDATA[Karo (Product with Attitude)]]></itunes:name></itunes:owner><itunes:author><![CDATA[Karo (Product with Attitude)]]></itunes:author><googleplay:owner><![CDATA[karozieminski@substack.com]]></googleplay:owner><googleplay:email><![CDATA[karozieminski@substack.com]]></googleplay:email><googleplay:author><![CDATA[Karo (Product with Attitude)]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[An Illustrated Guide to Context Engineering, Prompt Engineering, and The Future of Both]]></title><description><![CDATA[What I've learned about context engineering as an AI PM. Plus the Skill and the prompt I use to pressure-test it.]]></description><link>https://karozieminski.substack.com/p/context-engineering-product-builders-guide-2026</link><guid isPermaLink="false">https://karozieminski.substack.com/p/context-engineering-product-builders-guide-2026</guid><dc:creator><![CDATA[Karo (Product with Attitude)]]></dc:creator><pubDate>Wed, 13 May 2026 14:40:22 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/8c87aa14-7809-42ee-aecf-e627bb1f5f42_2401x1261.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h5><strong>TL;DR:</strong> Context engineering is a systems design discipline that separates working AI from failing AI. It replaces prompt engineering as a core skill for product and workflow builders in 2026. The four canonical strategies are Write, Select, Compress, and Isolate (LangChain framework). Memory architecture splits into episodic, semantic, and procedural layers. Stanford&#8217;s ACE framework enables self-improving agents. For PMs and builders, this means owning context architecture as a product decision, not delegating it to engineering.</h5><div><hr></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!OfKC!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1227ca4-14c3-4b83-b0f2-e09eb9852b11_2658x1800.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!OfKC!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1227ca4-14c3-4b83-b0f2-e09eb9852b11_2658x1800.png 424w, https://substackcdn.com/image/fetch/$s_!OfKC!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1227ca4-14c3-4b83-b0f2-e09eb9852b11_2658x1800.png 848w, https://substackcdn.com/image/fetch/$s_!OfKC!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1227ca4-14c3-4b83-b0f2-e09eb9852b11_2658x1800.png 1272w, https://substackcdn.com/image/fetch/$s_!OfKC!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1227ca4-14c3-4b83-b0f2-e09eb9852b11_2658x1800.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!OfKC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1227ca4-14c3-4b83-b0f2-e09eb9852b11_2658x1800.png" width="1456" height="986" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b1227ca4-14c3-4b83-b0f2-e09eb9852b11_2658x1800.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:986,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:900322,&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://karozieminski.substack.com/i/193628785?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1227ca4-14c3-4b83-b0f2-e09eb9852b11_2658x1800.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_!OfKC!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1227ca4-14c3-4b83-b0f2-e09eb9852b11_2658x1800.png 424w, https://substackcdn.com/image/fetch/$s_!OfKC!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1227ca4-14c3-4b83-b0f2-e09eb9852b11_2658x1800.png 848w, https://substackcdn.com/image/fetch/$s_!OfKC!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1227ca4-14c3-4b83-b0f2-e09eb9852b11_2658x1800.png 1272w, https://substackcdn.com/image/fetch/$s_!OfKC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1227ca4-14c3-4b83-b0f2-e09eb9852b11_2658x1800.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 role="img" 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><title></title><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>Last week, I came across a job post that asked for context engineering skills, but the responsibilities clearly described prompt engineering.</p><p>These are not synonyms. </p><blockquote><p><strong>Prompt engineering is deciding what and how to ask the model.</strong> <br><strong>Context engineering is deciding what the model knows when it answers.</strong></p></blockquote><p>One starts a conversation. The other shapes the information ecosystem in which that conversation happens, so AI can complete tasks reliably.</p><p>Context engineering is <em>not</em> a better version of prompt engineering. It&#8217;s the system around the prompt.</p><p>Right now, as everyone offloads work to agents, our job is shifting. We&#8217;re learning to do two things extremely well: give the agent the right context, and judge the output. That's the new work.</p><p>This post is everything I&#8217;ve learned about context engineering as an AI PM and product builder. If someone had shared this level of detail with me when I was starting, I would have saved a lot of hours, credits, and headaches.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!nLR9!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!nLR9!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png 424w, https://substackcdn.com/image/fetch/$s_!nLR9!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png 848w, https://substackcdn.com/image/fetch/$s_!nLR9!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png 1272w, https://substackcdn.com/image/fetch/$s_!nLR9!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!nLR9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png" width="2396" height="202" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:202,&quot;width&quot;:2396,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:11402,&quot;alt&quot;:&quot;Section divider&quot;,&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="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!nLR9!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png 424w, https://substackcdn.com/image/fetch/$s_!nLR9!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png 848w, https://substackcdn.com/image/fetch/$s_!nLR9!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png 1272w, https://substackcdn.com/image/fetch/$s_!nLR9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><div class="callout-block" data-callout="true"><p><em>Hey, I&#8217;m Karo Zieminski </em>&#129303;<em> <br>AI Product Manager and builder. <br>I write Product with Attitude, an AI newsletter community of 18K subscribers learning to build with AI and developing critical AI literacy through practice. The kind where you sit down on a Saturday morning, follow a guide, and walk away with a working agent, automation, or product. Built by you. Understood by you. Owned by you.</em></p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!cZr7!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c7d8725-e63c-46d5-8171-ba297c86866b_1314x10.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!cZr7!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c7d8725-e63c-46d5-8171-ba297c86866b_1314x10.png 424w, https://substackcdn.com/image/fetch/$s_!cZr7!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c7d8725-e63c-46d5-8171-ba297c86866b_1314x10.png 848w, https://substackcdn.com/image/fetch/$s_!cZr7!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c7d8725-e63c-46d5-8171-ba297c86866b_1314x10.png 1272w, https://substackcdn.com/image/fetch/$s_!cZr7!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c7d8725-e63c-46d5-8171-ba297c86866b_1314x10.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!cZr7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c7d8725-e63c-46d5-8171-ba297c86866b_1314x10.png" width="1314" height="10" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1c7d8725-e63c-46d5-8171-ba297c86866b_1314x10.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:10,&quot;width&quot;:1314,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:430,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:&quot;&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/182760227?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c7d8725-e63c-46d5-8171-ba297c86866b_1314x10.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!cZr7!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c7d8725-e63c-46d5-8171-ba297c86866b_1314x10.png 424w, https://substackcdn.com/image/fetch/$s_!cZr7!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c7d8725-e63c-46d5-8171-ba297c86866b_1314x10.png 848w, https://substackcdn.com/image/fetch/$s_!cZr7!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c7d8725-e63c-46d5-8171-ba297c86866b_1314x10.png 1272w, https://substackcdn.com/image/fetch/$s_!cZr7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c7d8725-e63c-46d5-8171-ba297c86866b_1314x10.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p><em>If you&#8217;re new here, welcome! Here&#8217;s what you might have missed:</em></p><p><em>&#8594; <a href="https://karozieminski.substack.com/p/ai-prompting-techniques-reasoning-models-2026">The Only AI Prompting Guide That Works On Reasoning Models (And Our Cognition)</a><br>&#8594; <a href="https://karozieminski.substack.com/p/claude-design-review-prompts-figma">Claude Design Review: 48-Hour Builder&#8217;s Test + Hero Prompts</a></em></p><p style="text-align: center;"><em>Join 18K readers from around the world and learn with us.</em></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://karozieminski.substack.com/subscribe&quot;,&quot;text&quot;:&quot;SUBSCRIBE&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://karozieminski.substack.com/subscribe"><span>SUBSCRIBE</span></a></p></div><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Dz9H!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7643495-34e2-40ce-abad-d894412325db_2396x209.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Dz9H!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7643495-34e2-40ce-abad-d894412325db_2396x209.png 424w, https://substackcdn.com/image/fetch/$s_!Dz9H!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7643495-34e2-40ce-abad-d894412325db_2396x209.png 848w, https://substackcdn.com/image/fetch/$s_!Dz9H!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7643495-34e2-40ce-abad-d894412325db_2396x209.png 1272w, https://substackcdn.com/image/fetch/$s_!Dz9H!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7643495-34e2-40ce-abad-d894412325db_2396x209.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Dz9H!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7643495-34e2-40ce-abad-d894412325db_2396x209.png" width="2396" height="209" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c7643495-34e2-40ce-abad-d894412325db_2396x209.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:209,&quot;width&quot;:2396,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:11749,&quot;alt&quot;:&quot;Section divider&quot;,&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="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!Dz9H!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7643495-34e2-40ce-abad-d894412325db_2396x209.png 424w, https://substackcdn.com/image/fetch/$s_!Dz9H!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7643495-34e2-40ce-abad-d894412325db_2396x209.png 848w, https://substackcdn.com/image/fetch/$s_!Dz9H!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7643495-34e2-40ce-abad-d894412325db_2396x209.png 1272w, https://substackcdn.com/image/fetch/$s_!Dz9H!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7643495-34e2-40ce-abad-d894412325db_2396x209.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>What&#8217;s inside</h2><ul><li><p>Why prompt engineering is no longer enough</p></li><li><p>Why bigger context windows do not solve bad context</p></li><li><p>The 4 strategies every reliable AI system needs</p></li><li><p>The 6 signs your context window is getting dirty right now</p></li><li><p>Why PMs should own context architecture as a product decision</p></li><li><p>How Stanford&#8217;s ACE framework points toward self-improving agents</p></li><li><p>A context window hygiene Skill you can copy</p></li><li><p>A context architecture prompt you can copy</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h1 style="text-align: center;">Part 1 <br>Context Engineering vs Prompt Engineering</h1><h2>The Tweets That Turned Context Engineering Into a Discipline</h2><p>The term crystallized in June 2025, when Shopify CEO <a href="https://www.linkedin.com/in/tobiaslutke/">Tobi L&#252;tke</a> <a href="https://addyo.substack.com/p/context-engineering-bringing-engineering">posted on X</a>:</p><blockquote><p><em>I really like the term &#8216;context engineering&#8217; over prompt engineering. It describes the core skill better: the art of providing all the context for the task to be plausibly solvable by the LLM.</em></p></blockquote><p>Andrej Karpathy <a href="https://x.com/karpathy/status/1937902205765607626">agreed</a>: </p><blockquote><p><em>[&#8230;] the delicate art and science of filling the context window with just the right information for the next step. </em></p></blockquote><p>That tweet went viral. The mental model they introduced is now canonical. </p><ul><li><p>The LLM is the CPU: the brain.</p></li><li><p>The context window is RAM: the short-term memory.</p></li><li><p>We are the operating system: responsible for what gets loaded into that memory.</p></li></ul><p>Our job is to load exactly the right data into working memory for each step. Too little context, and the AI guesses. Too much irrelevant context, and the AI gets confused.</p><p>The skill is knowing what to include, what to leave out, and when to update 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_!QozY!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F37b75da7-3a71-4e22-88b0-9e5140f3ec90_1356x844.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!QozY!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F37b75da7-3a71-4e22-88b0-9e5140f3ec90_1356x844.png 424w, https://substackcdn.com/image/fetch/$s_!QozY!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F37b75da7-3a71-4e22-88b0-9e5140f3ec90_1356x844.png 848w, https://substackcdn.com/image/fetch/$s_!QozY!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F37b75da7-3a71-4e22-88b0-9e5140f3ec90_1356x844.png 1272w, https://substackcdn.com/image/fetch/$s_!QozY!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F37b75da7-3a71-4e22-88b0-9e5140f3ec90_1356x844.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!QozY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F37b75da7-3a71-4e22-88b0-9e5140f3ec90_1356x844.png" width="1356" height="844" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/37b75da7-3a71-4e22-88b0-9e5140f3ec90_1356x844.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:844,&quot;width&quot;:1356,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:41777,&quot;alt&quot;:&quot;Three-step context window diagram showing the user choosing what gets uploaded, the context window holding short-term memory of goal, rules, files, and examples, and the LLM processing the loaded context.&quot;,&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://karozieminski.substack.com/i/193628785?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F37b75da7-3a71-4e22-88b0-9e5140f3ec90_1356x844.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Three-step context window diagram showing the user choosing what gets uploaded, the context window holding short-term memory of goal, rules, files, and examples, and the LLM processing the loaded context." title="Three-step context window diagram showing the user choosing what gets uploaded, the context window holding short-term memory of goal, rules, files, and examples, and the LLM processing the loaded context." srcset="https://substackcdn.com/image/fetch/$s_!QozY!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F37b75da7-3a71-4e22-88b0-9e5140f3ec90_1356x844.png 424w, https://substackcdn.com/image/fetch/$s_!QozY!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F37b75da7-3a71-4e22-88b0-9e5140f3ec90_1356x844.png 848w, https://substackcdn.com/image/fetch/$s_!QozY!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F37b75da7-3a71-4e22-88b0-9e5140f3ec90_1356x844.png 1272w, https://substackcdn.com/image/fetch/$s_!QozY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F37b75da7-3a71-4e22-88b0-9e5140f3ec90_1356x844.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 role="img" 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><title></title><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><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>Context Engineering vs. Prompt Engineering</h2><p>As language models graduated from simple instruction followers to full-blown reasoning engines and agentic coworkers, the way we work with them had to evolve too.</p><p>Prompt engineering, the skill everyone obsessed over early on, is now just one part of context engineering. Understanding the <a href="https://abstracta.us/blog/ai/context-engineering-vs-prompt-engineering/">distinction</a> determines whether we build temporary demos or systems.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Z7kK!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2bfd0cc-1b84-4770-a5d1-5441e3f50d68_1670x601.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Z7kK!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2bfd0cc-1b84-4770-a5d1-5441e3f50d68_1670x601.png 424w, https://substackcdn.com/image/fetch/$s_!Z7kK!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2bfd0cc-1b84-4770-a5d1-5441e3f50d68_1670x601.png 848w, https://substackcdn.com/image/fetch/$s_!Z7kK!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2bfd0cc-1b84-4770-a5d1-5441e3f50d68_1670x601.png 1272w, https://substackcdn.com/image/fetch/$s_!Z7kK!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2bfd0cc-1b84-4770-a5d1-5441e3f50d68_1670x601.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Z7kK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2bfd0cc-1b84-4770-a5d1-5441e3f50d68_1670x601.png" width="1456" height="524" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d2bfd0cc-1b84-4770-a5d1-5441e3f50d68_1670x601.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:524,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:67483,&quot;alt&quot;:&quot;Side-by-side comparison of prompt engineering versus context engineering, contrasting one phrasing question with three deeper questions about what the model knows, how its information is curated, and how it behaves in production.&quot;,&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://karozieminski.substack.com/i/193628785?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2bfd0cc-1b84-4770-a5d1-5441e3f50d68_1670x601.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Side-by-side comparison of prompt engineering versus context engineering, contrasting one phrasing question with three deeper questions about what the model knows, how its information is curated, and how it behaves in production." title="Side-by-side comparison of prompt engineering versus context engineering, contrasting one phrasing question with three deeper questions about what the model knows, how its information is curated, and how it behaves in production." srcset="https://substackcdn.com/image/fetch/$s_!Z7kK!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2bfd0cc-1b84-4770-a5d1-5441e3f50d68_1670x601.png 424w, https://substackcdn.com/image/fetch/$s_!Z7kK!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2bfd0cc-1b84-4770-a5d1-5441e3f50d68_1670x601.png 848w, https://substackcdn.com/image/fetch/$s_!Z7kK!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2bfd0cc-1b84-4770-a5d1-5441e3f50d68_1670x601.png 1272w, https://substackcdn.com/image/fetch/$s_!Z7kK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2bfd0cc-1b84-4770-a5d1-5441e3f50d68_1670x601.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 role="img" 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><title></title><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><div><hr></div><h3 style="text-align: center;">Context Engineering vs. Prompt Engineering: <br>A Comparison Table</h3><div class="callout-block" data-callout="true"><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/YMDNH/1/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ea1ec84f-52ad-4d3d-b4bc-1ff38d3c526b_1220x1612.png&quot;,&quot;thumbnail_url_full&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/13ef007a-f68d-401c-9b11-897beadadac3_1220x1612.png&quot;,&quot;height&quot;:807,&quot;title&quot;:&quot;Prompt Engineering vs Context Engineering&quot;,&quot;description&quot;:&quot;Create interactive, responsive &amp; beautiful charts &#8212; no code required.&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/YMDNH/1/" width="730" height="807" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div></div><div><hr></div><h3 style="text-align: center;">Context Engineering vs. Prompt Engineering: <br>When to Use Which</h3><p>Most confusion around prompt vs. context engineering comes down to when to use each.</p><p>Prompt engineering is fast, lightweight, and works well for one-off tasks.<br>Context engineering takes more setup (and maintenance!), but it&#8217;s what makes systems reliable over time.</p><p>This table shows which one to use based on the situation we&#8217;re in.</p><div class="callout-block" data-callout="true"><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/sVbYn/1/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3b19f180-be15-456b-a301-ee0abd220c3b_1220x716.png&quot;,&quot;thumbnail_url_full&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9757915e-8386-4dd5-9759-d5aecc9753d3_1220x716.png&quot;,&quot;height&quot;:324,&quot;title&quot;:&quot;Context Engineering vs. Prompt Engineering: When to Use Which&quot;,&quot;description&quot;:&quot;Create interactive, responsive &amp; beautiful charts &#8212; no code required.&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/sVbYn/1/" width="730" height="324" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div></div><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>Weak Context Kills Strong Prompts</h2><blockquote><p><a href="https://www.promptt.dev/blog/context-engineering-vs-prompt-engineering">Gartner predicts</a> 40% of enterprise applications will use task-specific AI agents by late 2026. Every one of those agents lives or dies by how well its context is engineered.</p></blockquote><p>A well-crafted prompt in a poorly engineered context still fails. A poorly crafted prompt in a well-engineered context often succeeds.</p><p>That asymmetry is the argument for treating context as the underlying system.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!eZdb!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5384f3fc-b55e-4ef7-80e0-518aab3dff05_1377x432.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!eZdb!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5384f3fc-b55e-4ef7-80e0-518aab3dff05_1377x432.png 424w, https://substackcdn.com/image/fetch/$s_!eZdb!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5384f3fc-b55e-4ef7-80e0-518aab3dff05_1377x432.png 848w, https://substackcdn.com/image/fetch/$s_!eZdb!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5384f3fc-b55e-4ef7-80e0-518aab3dff05_1377x432.png 1272w, https://substackcdn.com/image/fetch/$s_!eZdb!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5384f3fc-b55e-4ef7-80e0-518aab3dff05_1377x432.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!eZdb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5384f3fc-b55e-4ef7-80e0-518aab3dff05_1377x432.png" width="1377" height="432" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5384f3fc-b55e-4ef7-80e0-518aab3dff05_1377x432.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:432,&quot;width&quot;:1377,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:50299,&quot;alt&quot;:&quot;&quot;,&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://karozieminski.substack.com/i/193628785?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5384f3fc-b55e-4ef7-80e0-518aab3dff05_1377x432.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!eZdb!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5384f3fc-b55e-4ef7-80e0-518aab3dff05_1377x432.png 424w, https://substackcdn.com/image/fetch/$s_!eZdb!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5384f3fc-b55e-4ef7-80e0-518aab3dff05_1377x432.png 848w, https://substackcdn.com/image/fetch/$s_!eZdb!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5384f3fc-b55e-4ef7-80e0-518aab3dff05_1377x432.png 1272w, https://substackcdn.com/image/fetch/$s_!eZdb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5384f3fc-b55e-4ef7-80e0-518aab3dff05_1377x432.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 role="img" 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><title></title><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><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>Context Engineering vs. Context Window</h2><div class="callout-block" data-callout="true"><p>The <strong>context window</strong> is the model&#8217;s attention span.<br>Context engineering is deciding what goes into that attention span, and when.</p></div><p>The context window can only hold so much at once. </p><p>Like me trying to cook dinner while my husband is talking about economics, my son is complaining that he&#8217;s hungry and the oven starts beeping. </p><p>Technically, all the information is there. Emotionally, everyone is in danger. AI works in a similar way.</p><p>If you throw everything into the context window, it gets messy fast. <br>If you choose well, the model can do something useful with it. </p><p>The difference is the right information, at the right time, in a space that can handle it.</p><blockquote><p>The context window is not unlimited storage. It is finite, expensive, and acts as the model&#8217;s working memory.</p></blockquote><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>Bigger Context Windows Don&#8217;t Fix Bad Context</h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!zCc5!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5290a4ac-132b-4a1b-8f1e-38682c0b24dc_2962x1971.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!zCc5!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5290a4ac-132b-4a1b-8f1e-38682c0b24dc_2962x1971.png 424w, https://substackcdn.com/image/fetch/$s_!zCc5!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5290a4ac-132b-4a1b-8f1e-38682c0b24dc_2962x1971.png 848w, https://substackcdn.com/image/fetch/$s_!zCc5!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5290a4ac-132b-4a1b-8f1e-38682c0b24dc_2962x1971.png 1272w, https://substackcdn.com/image/fetch/$s_!zCc5!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5290a4ac-132b-4a1b-8f1e-38682c0b24dc_2962x1971.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!zCc5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5290a4ac-132b-4a1b-8f1e-38682c0b24dc_2962x1971.png" width="2962" height="1971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5290a4ac-132b-4a1b-8f1e-38682c0b24dc_2962x1971.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1971,&quot;width&quot;:2962,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:8674898,&quot;alt&quot;:&quot;Hand-drawn illustration of a tiny grumpy character dwarfed by a massive oversized window with heavy curtains and a faint spotlight, next to a cheerful character smiling out of a small cozy window &#8212; visualizing why a bigger LLM context window doesn't automatically mean better AI performance, and why smaller, focused context often beats million-token windows.&quot;,&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://karozieminski.substack.com/i/193628785?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9bc5511d-3802-4a95-aa6a-09fd0ea6061c_3002x2048.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Hand-drawn illustration of a tiny grumpy character dwarfed by a massive oversized window with heavy curtains and a faint spotlight, next to a cheerful character smiling out of a small cozy window &#8212; visualizing why a bigger LLM context window doesn't automatically mean better AI performance, and why smaller, focused context often beats million-token windows." title="Hand-drawn illustration of a tiny grumpy character dwarfed by a massive oversized window with heavy curtains and a faint spotlight, next to a cheerful character smiling out of a small cozy window &#8212; visualizing why a bigger LLM context window doesn't automatically mean better AI performance, and why smaller, focused context often beats million-token windows." srcset="https://substackcdn.com/image/fetch/$s_!zCc5!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5290a4ac-132b-4a1b-8f1e-38682c0b24dc_2962x1971.png 424w, https://substackcdn.com/image/fetch/$s_!zCc5!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5290a4ac-132b-4a1b-8f1e-38682c0b24dc_2962x1971.png 848w, https://substackcdn.com/image/fetch/$s_!zCc5!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5290a4ac-132b-4a1b-8f1e-38682c0b24dc_2962x1971.png 1272w, https://substackcdn.com/image/fetch/$s_!zCc5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5290a4ac-132b-4a1b-8f1e-38682c0b24dc_2962x1971.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 role="img" 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><title></title><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>Frontier model marketing in 2026 loves token counts. </p><p>Gemini 3.1 Pro, <a href="https://karozieminski.substack.com/p/claude-opus-4-7-review-tutorial-builders">Claude Opus 4.7</a>, Claude Mythos Preview, and GPT 5.5 all offer 1M-token context windows.</p><p>A lot of people assume that it automatically means better AI performance. </p><p>It doesn&#8217;t.</p><p>A context window is <em><strong>not</strong></em> unlimited storage. It is finite, expensive, and acts as the model&#8217;s working memory, not permanent memory.</p><p>A bigger context window simply means the LLM can <em>receive</em> more information at once. It doesn&#8217;t mean the model will understand, prioritize, or use that information well.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://karozieminski.substack.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"><em>Join 18K readers and learn AI the only way it sticks: through immersion in real experiments and real projects.</em></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><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2 style="text-align: center;">Context Rot</h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!IXZ2!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F01aa95ca-eb53-4b80-bb48-8fb3c4564211_3986x1265.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!IXZ2!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F01aa95ca-eb53-4b80-bb48-8fb3c4564211_3986x1265.png 424w, https://substackcdn.com/image/fetch/$s_!IXZ2!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F01aa95ca-eb53-4b80-bb48-8fb3c4564211_3986x1265.png 848w, https://substackcdn.com/image/fetch/$s_!IXZ2!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F01aa95ca-eb53-4b80-bb48-8fb3c4564211_3986x1265.png 1272w, https://substackcdn.com/image/fetch/$s_!IXZ2!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F01aa95ca-eb53-4b80-bb48-8fb3c4564211_3986x1265.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!IXZ2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F01aa95ca-eb53-4b80-bb48-8fb3c4564211_3986x1265.png" width="3986" height="1265" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/01aa95ca-eb53-4b80-bb48-8fb3c4564211_3986x1265.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1265,&quot;width&quot;:3986,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:6860963,&quot;alt&quot;:&quot;Hand-drawn two-panel illustration defining context rot: on the left, a small character feeds a clean box into a large industrial machine that runs smoothly; on the right, the same machine is now leaking sludge and overflowing with rotten vegetables &#8212; visualizing how context rot is the gradual decay of AI and LLM reliability caused by cluttered, messy, outdated, or contradictory context fed into the model.&quot;,&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://karozieminski.substack.com/i/193628785?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa1cb059d-2c75-4baa-b1e6-17cee2f86fe5_4024x1301.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Hand-drawn two-panel illustration defining context rot: on the left, a small character feeds a clean box into a large industrial machine that runs smoothly; on the right, the same machine is now leaking sludge and overflowing with rotten vegetables &#8212; visualizing how context rot is the gradual decay of AI and LLM reliability caused by cluttered, messy, outdated, or contradictory context fed into the model." title="Hand-drawn two-panel illustration defining context rot: on the left, a small character feeds a clean box into a large industrial machine that runs smoothly; on the right, the same machine is now leaking sludge and overflowing with rotten vegetables &#8212; visualizing how context rot is the gradual decay of AI and LLM reliability caused by cluttered, messy, outdated, or contradictory context fed into the model." srcset="https://substackcdn.com/image/fetch/$s_!IXZ2!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F01aa95ca-eb53-4b80-bb48-8fb3c4564211_3986x1265.png 424w, https://substackcdn.com/image/fetch/$s_!IXZ2!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F01aa95ca-eb53-4b80-bb48-8fb3c4564211_3986x1265.png 848w, https://substackcdn.com/image/fetch/$s_!IXZ2!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F01aa95ca-eb53-4b80-bb48-8fb3c4564211_3986x1265.png 1272w, https://substackcdn.com/image/fetch/$s_!IXZ2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F01aa95ca-eb53-4b80-bb48-8fb3c4564211_3986x1265.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 role="img" 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><title></title><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>The context pipeline is how context travels through the system: collected, ordered, updated, retrieved, compressed, and passed from one step to the next.</p><p>Context rot is what happens when that pipeline is poorly managed. It shows up when a session, agent, or workflow becomes overloaded with messy summaries, outdated details, repeated instructions, irrelevant files, conflicting decisions, too many tool options, and buried requirements.</p><p>Even if the right information is somewhere in the input, the system becomes less reliable when that information is surrounded by clutter.</p><p>Like me looking for the can opener while my husband debates something I didn&#8217;t ask about.</p><p>The can opener may exist.</p><p>That doesn&#8217;t mean anyone is getting dinner.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2 style="text-align: center;">Context Structure</h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!9GsS!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e715e06-f02a-49ac-964f-a04fd5bd4c4a_2377x807.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!9GsS!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e715e06-f02a-49ac-964f-a04fd5bd4c4a_2377x807.png 424w, https://substackcdn.com/image/fetch/$s_!9GsS!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e715e06-f02a-49ac-964f-a04fd5bd4c4a_2377x807.png 848w, https://substackcdn.com/image/fetch/$s_!9GsS!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e715e06-f02a-49ac-964f-a04fd5bd4c4a_2377x807.png 1272w, https://substackcdn.com/image/fetch/$s_!9GsS!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e715e06-f02a-49ac-964f-a04fd5bd4c4a_2377x807.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!9GsS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e715e06-f02a-49ac-964f-a04fd5bd4c4a_2377x807.png" width="2377" height="807" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3e715e06-f02a-49ac-964f-a04fd5bd4c4a_2377x807.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:807,&quot;width&quot;:2377,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2969117,&quot;alt&quot;:&quot;Hand-drawn illustration of a tall stack of books with two small green bookmarks placed near the top and bottom of the stack &#8212; visualizing the \&quot;Lost in the Middle\&quot; problem in LLM context windows, where large language models reliably recall information at the beginning and end of long prompts but lose accuracy on content buried in the middle.&quot;,&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://karozieminski.substack.com/i/193628785?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbaa874a4-8118-42e6-a436-58dc5349512b_2401x1261.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Hand-drawn illustration of a tall stack of books with two small green bookmarks placed near the top and bottom of the stack &#8212; visualizing the &quot;Lost in the Middle&quot; problem in LLM context windows, where large language models reliably recall information at the beginning and end of long prompts but lose accuracy on content buried in the middle." title="Hand-drawn illustration of a tall stack of books with two small green bookmarks placed near the top and bottom of the stack &#8212; visualizing the &quot;Lost in the Middle&quot; problem in LLM context windows, where large language models reliably recall information at the beginning and end of long prompts but lose accuracy on content buried in the middle." srcset="https://substackcdn.com/image/fetch/$s_!9GsS!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e715e06-f02a-49ac-964f-a04fd5bd4c4a_2377x807.png 424w, https://substackcdn.com/image/fetch/$s_!9GsS!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e715e06-f02a-49ac-964f-a04fd5bd4c4a_2377x807.png 848w, https://substackcdn.com/image/fetch/$s_!9GsS!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e715e06-f02a-49ac-964f-a04fd5bd4c4a_2377x807.png 1272w, https://substackcdn.com/image/fetch/$s_!9GsS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e715e06-f02a-49ac-964f-a04fd5bd4c4a_2377x807.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 role="img" 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><title></title><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 useful way to understand this comes from Stanford&#8217;s <strong><a href="https://www.emergentmind.com/papers/2307.03172">&#8220;Lost in the Middle&#8221; paper</a>.</strong> </p><p>The researchers found that AI models often pay more attention to information at the beginning and the end of a long input. They struggle more when the important detail sits somewhere in the middle.</p><ul><li><p>The beginning sets the instructions.</p></li><li><p>The end is closest to the generated answer.</p></li><li><p>The middle has to fight for attention.</p></li></ul><p>Even if the right answer is there, it&#8217;s easier for the model to miss it. This is especially true for long context windows.</p><blockquote><p><strong>Having the right information in the context is not enough. <br>The structure of that information matters.</strong></p></blockquote><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2 style="text-align: center;">10 Reasons Context Breaks in Real Systems</h2><p>These are the common ways context breaks in real systems. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Bm6l!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F984a2924-1ebb-4e26-b037-a477bce0802f_577x1417.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Bm6l!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F984a2924-1ebb-4e26-b037-a477bce0802f_577x1417.png 424w, https://substackcdn.com/image/fetch/$s_!Bm6l!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F984a2924-1ebb-4e26-b037-a477bce0802f_577x1417.png 848w, https://substackcdn.com/image/fetch/$s_!Bm6l!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F984a2924-1ebb-4e26-b037-a477bce0802f_577x1417.png 1272w, https://substackcdn.com/image/fetch/$s_!Bm6l!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F984a2924-1ebb-4e26-b037-a477bce0802f_577x1417.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Bm6l!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F984a2924-1ebb-4e26-b037-a477bce0802f_577x1417.png" width="695" height="1706.785095320624" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/984a2924-1ebb-4e26-b037-a477bce0802f_577x1417.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1417,&quot;width&quot;:577,&quot;resizeWidth&quot;:695,&quot;bytes&quot;:658605,&quot;alt&quot;:&quot;Hand-drawn 2x5 grid illustrating the 10 failure modes of LLM context windows: Context pollution (a machine leaking sludge from rotten input), Context poisoning (a skull-and-crossbones vial dripping toxic ink onto a memory notebook), Context distraction (a character ignoring the open book in front of her for a shiny globe), Context confusion (two tangled speech bubbles overlapping with a question mark), Context conflict (two arrows colliding with \&quot;Fact A is true\&quot; versus \&quot;Fact A is false\&quot;), Stale context (a faded outdated treasure map), Tool bloat (a character buried under overlapping tool cards and icons), Mode collapse (a conveyor belt stamping \&quot;SAME\&quot; on every output), Positional neglect (a tall stack of books with bookmarks only at the top and bottom), and Memory confusion (a character tangled in threads of conflicting facts and events) &#8212; a visual taxonomy of context engineering failures in AI agents.&quot;,&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://karozieminski.substack.com/i/193628785?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F984a2924-1ebb-4e26-b037-a477bce0802f_577x1417.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Hand-drawn 2x5 grid illustrating the 10 failure modes of LLM context windows: Context pollution (a machine leaking sludge from rotten input), Context poisoning (a skull-and-crossbones vial dripping toxic ink onto a memory notebook), Context distraction (a character ignoring the open book in front of her for a shiny globe), Context confusion (two tangled speech bubbles overlapping with a question mark), Context conflict (two arrows colliding with &quot;Fact A is true&quot; versus &quot;Fact A is false&quot;), Stale context (a faded outdated treasure map), Tool bloat (a character buried under overlapping tool cards and icons), Mode collapse (a conveyor belt stamping &quot;SAME&quot; on every output), Positional neglect (a tall stack of books with bookmarks only at the top and bottom), and Memory confusion (a character tangled in threads of conflicting facts and events) &#8212; a visual taxonomy of context engineering failures in AI agents." title="Hand-drawn 2x5 grid illustrating the 10 failure modes of LLM context windows: Context pollution (a machine leaking sludge from rotten input), Context poisoning (a skull-and-crossbones vial dripping toxic ink onto a memory notebook), Context distraction (a character ignoring the open book in front of her for a shiny globe), Context confusion (two tangled speech bubbles overlapping with a question mark), Context conflict (two arrows colliding with &quot;Fact A is true&quot; versus &quot;Fact A is false&quot;), Stale context (a faded outdated treasure map), Tool bloat (a character buried under overlapping tool cards and icons), Mode collapse (a conveyor belt stamping &quot;SAME&quot; on every output), Positional neglect (a tall stack of books with bookmarks only at the top and bottom), and Memory confusion (a character tangled in threads of conflicting facts and events) &#8212; a visual taxonomy of context engineering failures in AI agents." srcset="https://substackcdn.com/image/fetch/$s_!Bm6l!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F984a2924-1ebb-4e26-b037-a477bce0802f_577x1417.png 424w, https://substackcdn.com/image/fetch/$s_!Bm6l!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F984a2924-1ebb-4e26-b037-a477bce0802f_577x1417.png 848w, https://substackcdn.com/image/fetch/$s_!Bm6l!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F984a2924-1ebb-4e26-b037-a477bce0802f_577x1417.png 1272w, https://substackcdn.com/image/fetch/$s_!Bm6l!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F984a2924-1ebb-4e26-b037-a477bce0802f_577x1417.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 role="img" 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><title></title><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 style="text-align: center;"><br>Share this with 3 friends or colleagues and you&#8217;ll get a free month of premium membership.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://karozieminski.substack.com/p/context-engineering-product-builders-guide-2026?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://karozieminski.substack.com/p/context-engineering-product-builders-guide-2026?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!0O50!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F380b1054-c628-4f38-9835-6362d1392907_2396x219.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!0O50!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F380b1054-c628-4f38-9835-6362d1392907_2396x219.png 424w, https://substackcdn.com/image/fetch/$s_!0O50!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F380b1054-c628-4f38-9835-6362d1392907_2396x219.png 848w, https://substackcdn.com/image/fetch/$s_!0O50!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F380b1054-c628-4f38-9835-6362d1392907_2396x219.png 1272w, https://substackcdn.com/image/fetch/$s_!0O50!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F380b1054-c628-4f38-9835-6362d1392907_2396x219.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!0O50!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F380b1054-c628-4f38-9835-6362d1392907_2396x219.png" width="2396" height="219" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/380b1054-c628-4f38-9835-6362d1392907_2396x219.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:219,&quot;width&quot;:2396,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:12248,&quot;alt&quot;:&quot;Section divider for Perplexity guides library on Product with Attitude.&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider for Perplexity guides library on Product with Attitude." title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!0O50!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F380b1054-c628-4f38-9835-6362d1392907_2396x219.png 424w, https://substackcdn.com/image/fetch/$s_!0O50!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F380b1054-c628-4f38-9835-6362d1392907_2396x219.png 848w, https://substackcdn.com/image/fetch/$s_!0O50!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F380b1054-c628-4f38-9835-6362d1392907_2396x219.png 1272w, https://substackcdn.com/image/fetch/$s_!0O50!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F380b1054-c628-4f38-9835-6362d1392907_2396x219.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h3>1. Context pollution</h3><p>This happens when we include too much information: full documentation libraries, hundreds of chat turns, old notes, unused examples, irrelevant tool descriptions. The system can&#8217;t focus. Important details get buried, and answers become less relevant or inconsistent</p><h3>2. Context poisoning</h3><p>This happens when bad or malicious info gets written into memory and persists.</p><h3>3. Context distraction</h3><p>This happens when irrelevant but salient info pulls attention.</p><h3>4. Context confusion</h3><p>This happens when overlapping or ambiguous info muddies reasoning.</p><h3>5. Context conflict</h3><p>This happens when two sources contradict.</p><h3>6. Stale context</h3><p>This happens when pre-loaded context is outdated.</p><p>The system gives answers based on old or incorrect assumptions, even when better information is available.</p><h3>7. Tool bloat</h3><blockquote><p><strong>Tool bloat breaks agents. <br>Every registered tool consumes tokens and attention.</strong></p></blockquote><p>This happens when we register every possible tool or action &#8220;just in case.&#8221; Every tool consumes attention. Every option creates more routing work.</p><p>A model with too many tools can struggle to choose the right one, call the wrong one, or invent one that does not exist.</p><h3>8. Mode collapse</h3><p>This happens when we keep doing the same thing every time, even when the situation changes and the model gets stuck in a pattern.<br>The system gives similar answers every time, starts missing exceptions, and quietly fails on unusual cases, and <a href="https://fordelstudios.com/research/context-engineering-production-ai-2026">fails silently on edge cases</a>.</p><h3>9. Positional neglect</h3><p>This happens when <a href="https://www.emergentmind.com/papers/2307.03172">critical information is buried in the middle of a long context</a>. The model may have access to it, but access is not the same as reliable use.</p><h3>10. Memory confusion</h3><p>This happens when different kinds of memory are mixed together. Our long-term preferences, yesterday&#8217;s failed tool call, and a permanent product rule should not live in the same undifferentiated blob.</p><p>They age differently. They fail differently. They should be managed differently.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>6 Signs Your Context Window Is Messy Right Now</h2><p><em>If any of these are happening, stop and clean up the context before you keep building. That&#8217;s exactly what the <strong><a href="https://karozieminski.substack.com/p/context-window-hygiene">Context Window Hygiene Skill</a></strong> is for.</em></p><p>1. The agent repeats itself. </p><p>2. The agent forgets an earlier decision. </p><p>3. The agent invents a tool, file, or function. </p><p>4. The AI Asks What You Are Working On</p><p>5. Output quality drops mid-session. </p><p>6. Each Response Gets More Expensive</p><p></p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>The Four Strategies That Make Context Engineering Work (LangChain Framework)</h2><p><em>Don&#8217;t worry if you&#8217;re not familiar with this framework. I&#8217;ll walk you through the parts that matter. I&#8217;m also sharing a <a href="https://karozieminski.substack.com/p/context-window-hygiene">Skill</a> I built from it, which I use to periodically review my own context engineering setup.</em></p><p>LangChain, a developer toolkit for building applications with LLMs, offers a simple way to understand context management: AI systems work better when they build understanding step by step and keep only the most useful information in the model&#8217;s working memory. </p><p><strong><a href="https://www.anthropic.com/engineering/effective-context-engineering-for-ai-agents">Anthropic&#8217;s guide reinforces this. </a></strong>Systems should build up understanding <em>gradually, </em>layer by layer, and <em>only</em> keep what is necessary in working memory.</p><p>These four strategies are what <strong><a href="https://github.com/langchain-ai/context_engineering">reliable AI systems are built on.</a></strong></p><h3>1. Write: save context outside the window</h3><div class="callout-block" data-callout="true"><p style="text-align: center;"><em><strong>Write</strong> means storing important information somewhere stable, outside the model&#8217;s limited working memory.</em></p><div><hr></div><p>That could be a file, a note, a database, or a <a href="https://karozieminski.substack.com/p/if-you-build-with-ai-you-need-this">project instruction document</a> like CLAUDE.md or AGENTS.md, that are the standard pattern for project-scoped persistent memory. Think of it as the agent&#8217;s permanent reference document.</p><p>This context stays protected. </p><p>It doesn&#8217;t get summarized, trimmed or distorted.</p><div><hr></div><p>If you&#8217;re new to rules files, this article is a great place to start:</p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;b127a96a-a18e-4272-bb05-194cb6bf5323&quot;,&quot;caption&quot;:&quot;&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;showDescription&quot;:true,&quot;showImage&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;If You Build With AI, You Need This File. And The System That Generates It.&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:27968736,&quot;name&quot;:&quot;Karo (Product with Attitude)&quot;,&quot;bio&quot;:&quot;AI Product Manager turning everyone into AI-native builders. I help you design &amp; build with AI, not just use it. I build tools to grow your newsletter and showcase your work. Join a 18K+ community growing critical AI literacy by immersion.&quot;,&quot;photo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!aG8-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F599e664e-d6b8-4249-814a-4feadc68d706_1096x1096.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:100}],&quot;post_date&quot;:&quot;2025-11-27T14:32:14.550Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/$s_!sJqC!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F866e0dcc-2933-44ea-8dee-c38f182a9fa6_2188x1115.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://karozieminski.substack.com/p/if-you-build-with-ai-you-need-this&quot;,&quot;section_name&quot;:&quot;Build in Public&quot;,&quot;video_upload_id&quot;:null,&quot;id&quot;:173115670,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:100,&quot;comment_count&quot;:24,&quot;publication_id&quot;:4097137,&quot;publication_name&quot;:&quot;Product with Attitude&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!KJxv!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f411cce-3771-42d9-965e-1c01efe464eb_986x986.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div></div><div><hr></div><h3>2. Select: retrieve only what is needed</h3><div class="callout-block" data-callout="true"><p style="text-align: center;"><em><strong>Select</strong> means bringing in only the information the model needs right now.</em></p><div><hr></div><p>This is the broader idea behind RAG: the system searches for the most relevant information first.</p><p>That search can happen through keyword search, meaning-based search, similarity matching, or a mix of methods.</p><p>The best systems don&#8217;t stop at finding possible matches. They <a href="https://www.elastic.co/search-labs/blog/context-engineering-vs-prompt-engineering">rerank the results before adding them into context</a>. </p><p> <strong>The goal is to load </strong><em><strong>only</strong></em><strong> what is useful for the next step, not to load everything that might be useful.</strong></p></div><p></p><div><hr></div><h3>3. Compress: retain only required tokens</h3><div class="callout-block" data-callout="true"><p style="text-align: center;"><em><strong>Compress</strong> means reducing the amount of context while keeping the important parts.</em></p><div><hr></div><p>As a task gets longer, the model&#8217;s working memory fills up. At some point, the system has to summarize, shorten, or reorganize what came before.</p><p>Claude Code does this with &#8220;auto-compact&#8221;, which summarizes the conversation when the <a href="https://www.chromaticlabs.co/blog/context-engineering-series-how">context window exceeds 95%</a>.</p><p>For long-running AI agents, this is essential. It&#8217;s what makes agents viable for tasks that span hundreds of turns.</p><p>No agent, no matter how clever, can carry every detail forever. Try it and you&#8217;ll watch a good $200 agent slowly turn into a $2,000 agent that&#8217;s worse at its job.</p><p><strong>The goal is to preserve what the model still needs to do the job well, not to remember everything.</strong></p></div><div><hr></div><h3>4. Isolate: split context across agents</h3><div class="callout-block" data-callout="true"><p><em><strong>Isolate</strong> means separating context by role, so each AI agent only sees the information it needs for its specific task.</em></p><div><hr></div><p>A customer support agent may need a customer&#8217;s account history, past messages, and open tickets.</p><p>It doesn&#8217;t need product documentation for unrelated competitor products.</p><p>When every agent sees everything, irrelevant information can leak into its reasoning and confuse the answer. Role-based context keeps each agent focused.</p><p><strong>The goal is to give each specialized agent the right information for its job and keep the rest out: a <a href="https://vellum.ai/blog/multi-agent-systems-building-with-context-engineering">scoped window tuned to its function</a>.</strong></p></div><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>The Context Window Hygiene Skill</h2><p>Use it when:</p><ul><li><p>The agent starts repeating itself.</p></li><li><p>The agent forgets an earlier decision.</p></li><li><p>The agent invents a tool, file, or function.</p></li><li><p>The AI suddenly asks what you&#8217;re working on.  </p></li><li><p>Output quality drops mid-session.</p></li><li><p>Or each response gets more expensive.  </p></li></ul><p><strong>What comes out:</strong></p><ul><li><p>A handoff note that preserves the decisions.</p></li><li><p>A persistent <code>CLAUDE.md</code> or <code>memory/</code> entry for anything that should outlive the session.</p></li><li><p>A scoped subagent prompt instead of one mega-agent juggling everything.</p></li><li><p>A live artifact for views you&#8217;ll re-open later.</p></li><li><p>Sometimes a scheduled task for work that can wait.</p></li></ul><p style="text-align: center;"><em><a href="https://karozieminski.substack.com/p/context-window-hygiene">Copy the Context Window Hygiene Skill.</a></em></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://karozieminski.substack.com/p/context-window-hygiene&quot;,&quot;text&quot;:&quot;Copy Skill&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://karozieminski.substack.com/p/context-window-hygiene"><span>Copy Skill</span></a></p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h3>The Context Spec Generator Prompt</h3><p>This prompt turns Claude into a context engineering architect that audits the information design of an AI agent before it&#8217;s built. </p><p>You describe what you&#8217;re building, and it returns a ranked list of the five highest-stakes context items, decisions about where each one lives (system prompt, episodic memory, semantic store, or runtime retrieval), freshness requirements, failure modes, observable signals for production, fallbacks for retrieval failures, an eviction order for compression, and one risk you didn&#8217;t think to ask about. </p><p>It treats context as a product with SLAs rather than as prompt-stuffing, and forces specificity by gating on constraints (model, window size, latency, session length) before answering.</p><p style="text-align: center;"><em><a href="https://karozieminski.substack.com/p/prompt-context-spec-generator">Copy the Context Spec Generator Prompt</a></em></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://karozieminski.substack.com/p/prompt-context-spec-generator&quot;,&quot;text&quot;:&quot;Copy Prompt&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://karozieminski.substack.com/p/prompt-context-spec-generator"><span>Copy Prompt</span></a></p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h1 style="text-align: center;">Part 2 <br>Context Engineering For PMs <br>and Builders</h1><p></p><p>This is the part many PMs don&#8217;t realize is theirs to own. </p><p>Context engineering is not purely an engineering discipline. It sits at the intersection of product strategy, user understanding, and system design. Engineers can build the retrieval infrastructure. They can&#8217;t decide what the model should know about the user, when freshness matters, or what should age out.</p><p>That&#8217;s product work. </p><h2>The 5-Factor Context Principles Every AI Builder Should Know</h2><div class="callout-block" data-callout="true"><p>The 5-Factor Agents framework is a way of thinking about how to build agents that work long-term. It&#8217;s adapted from Heroku&#8217;s 12-Factor App that provides <a href="https://www.ikangai.com/12-factor-agents-a-blueprint-for-reliable-llm-applications/">engineering-grade principles</a> for production AI systems.</p></div><p>These are the context principles that matter most:</p><h3>1. Curate, Don&#8217;t Accumulate</h3><p>Don&#8217;t keep adding everything to the chat forever and don&#8217;t assume the AI will automatically know which parts of a long conversation matter most. Just-in-time retrieval <a href="https://inkeep.com/blog/context-engineering-why-agents-fail">outperforms pre-loaded context</a> for most tasks.</p><p>Simple prompt:</p><pre><code><code>Here is the current context:

[the goal], [the current state], [the rules], [the decisions], [what to ignore], 

Use only this as the source of truth. Ignore earlier conflicting instructions</code></code></pre><h3>2. Compact Errors</h3><p>When something goes wrong, don&#8217;t paste the entire mess back into the AI. Long error logs, repeated failures, and messy notes confuse the model. A short summary beats a full dump.Give the AI a compact failure note:</p><pre><code><code>What failed:
What I expected:
What actually happened:
What we already tried:
What I want next:</code></code></pre><h3>3. Pre-Fetch Context</h3><p>A good brief at the start saves time, tokens, and frustration. Give the AI the important information before it starts working, not halfway through.</p><p>If you keep adding missing details later, the agent may have to revise its plan, undo work, or make assumptions.</p><h3>4. Keep Context Below Capacity</h3><p>Keep context under 40% capacity. Don&#8217;t wait until the session is overloaded. Headroom is not waste. It&#8217;s working space.</p><h3>5. Use Small, Focused Agents</h3><p>Sub-agents isolate context across roles. One agent per scoped task beats one mega-agent doing everything.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>The PM&#8217;s Role in Context Engineering</h2><p>Here&#8217;s the role division I work with on cross-functional teams:</p><ul><li><p>PMs define what goes in each context layer. Engineers build the infrastructure to fetch and store it.</p></li><li><p>PMs design the orchestration logic, what the model sees when. Engineers implement the orchestration engine that executes it.</p></li><li><p>PMs decide what ages out, what persists, and what gets re-fetched. Engineers build the pruning rules.</p></li><li><p>PMs own context as a product surface. Engineers own it as a system surface.</p></li></ul><p>If the PM isn&#8217;t doing this, one of two things happens. Either an engineer makes the product decision by default, or nobody makes it and the agent gets every available signal dumped into the window.</p><p>The PM&#8217;s core translation task looks like this:</p><ul><li><p>&#8220;Users want better suggestions&#8221; becomes: the system needs access to past rejections, current workspace state, and team preferences.</p></li><li><p>&#8220;Users want more personalization&#8221; becomes: capture the user&#8217;s writing style, common corrections, and role-specific patterns.</p></li><li><p>&#8220;The agent should feel like it knows me&#8221; becomes: define which signals persist across sessions, which expire, and which the user should be able to correct.</p></li></ul><p>The actionable principle: treat context as a product. Iterate it. Prune it. Measure it.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>The Context Pyramid: a PM Framework</h2><p>This four-level context hierarchy framework is inspired by OpenAI PM <a href="https://www.linkedin.com/in/miqdadjaffer/">Miqdad Jaffer</a> and <a href="https://www.productboard.com/blog/building-successful-ai-products/">Productboard</a>:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!JMlO!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F793d6778-c2f4-4f55-bf9f-351536a2fc79_2154x1776.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!JMlO!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F793d6778-c2f4-4f55-bf9f-351536a2fc79_2154x1776.png 424w, https://substackcdn.com/image/fetch/$s_!JMlO!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F793d6778-c2f4-4f55-bf9f-351536a2fc79_2154x1776.png 848w, https://substackcdn.com/image/fetch/$s_!JMlO!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F793d6778-c2f4-4f55-bf9f-351536a2fc79_2154x1776.png 1272w, https://substackcdn.com/image/fetch/$s_!JMlO!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F793d6778-c2f4-4f55-bf9f-351536a2fc79_2154x1776.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!JMlO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F793d6778-c2f4-4f55-bf9f-351536a2fc79_2154x1776.png" width="1456" height="1200" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/793d6778-c2f4-4f55-bf9f-351536a2fc79_2154x1776.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1200,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:277318,&quot;alt&quot;:&quot;Editorial reference card for The Context Pyramid, a PM framework for building reliable AI agents, breaking agent context into four layers: Identity layer (who the agent is &#8212; role, persona, guardrails, lives in the system prompt, updated rarely when purpose or safety boundaries change), Knowledge layer (what it knows &#8212; facts, docs, user preferences, lives in semantic memory, RAG, files, databases, or documentation, updated occasionally when facts change or new preferences are learned), State layer (what just happened &#8212; session history, recent outputs, workspace state, blockers, lives in the context window or scratchpad, updated per turn), and Task layer (what it's doing right now &#8212; current goal, constraints, output format, success criteria, lives in the current prompt, updated per task and replaced when a new goal or success criterion is set) &#8212; a context engineering framework for AI product managers.&quot;,&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://karozieminski.substack.com/i/193628785?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F793d6778-c2f4-4f55-bf9f-351536a2fc79_2154x1776.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Editorial reference card for The Context Pyramid, a PM framework for building reliable AI agents, breaking agent context into four layers: Identity layer (who the agent is &#8212; role, persona, guardrails, lives in the system prompt, updated rarely when purpose or safety boundaries change), Knowledge layer (what it knows &#8212; facts, docs, user preferences, lives in semantic memory, RAG, files, databases, or documentation, updated occasionally when facts change or new preferences are learned), State layer (what just happened &#8212; session history, recent outputs, workspace state, blockers, lives in the context window or scratchpad, updated per turn), and Task layer (what it's doing right now &#8212; current goal, constraints, output format, success criteria, lives in the current prompt, updated per task and replaced when a new goal or success criterion is set) &#8212; a context engineering framework for AI product managers." title="Editorial reference card for The Context Pyramid, a PM framework for building reliable AI agents, breaking agent context into four layers: Identity layer (who the agent is &#8212; role, persona, guardrails, lives in the system prompt, updated rarely when purpose or safety boundaries change), Knowledge layer (what it knows &#8212; facts, docs, user preferences, lives in semantic memory, RAG, files, databases, or documentation, updated occasionally when facts change or new preferences are learned), State layer (what just happened &#8212; session history, recent outputs, workspace state, blockers, lives in the context window or scratchpad, updated per turn), and Task layer (what it's doing right now &#8212; current goal, constraints, output format, success criteria, lives in the current prompt, updated per task and replaced when a new goal or success criterion is set) &#8212; a context engineering framework for AI product managers." srcset="https://substackcdn.com/image/fetch/$s_!JMlO!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F793d6778-c2f4-4f55-bf9f-351536a2fc79_2154x1776.png 424w, https://substackcdn.com/image/fetch/$s_!JMlO!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F793d6778-c2f4-4f55-bf9f-351536a2fc79_2154x1776.png 848w, https://substackcdn.com/image/fetch/$s_!JMlO!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F793d6778-c2f4-4f55-bf9f-351536a2fc79_2154x1776.png 1272w, https://substackcdn.com/image/fetch/$s_!JMlO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F793d6778-c2f4-4f55-bf9f-351536a2fc79_2154x1776.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 role="img" 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><title></title><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 Context Pyramid splits it into four layers: Identity, Knowledge, State, Task, so you know exactly which layer to fix when the agent goes off the rails.</figcaption></figure></div><p>Use the context pyramid as a sorting tool before you build or prompt an AI system. That separation makes agents easier to debug, easier to update, and less likely to rot under their own context.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h1 style="text-align: center;">Part 3 <br>The Future Of Context Engineering and Prompt Engineering</h1><h2>Stanford ACE: The Self-Improving Context Layer</h2><p>Most writing about context engineering still treats context as something you design once.</p><p>But the research frontier is moving toward dynamic context: context that changes, improves, and learns from experience.</p><p>In October 2025, researchers from Stanford University, SambaNova Systems, and UC Berkeley introduced <strong><a href="https://sambanova.ai/blog/ace-open-sourced-on-github">Agentic Context Engineering</a></strong>, or <strong>ACE</strong>. </p><p>The core idea is simple but important: instead of treating context as a fixed prompt, ACE treats it as an <em>evolving playbook </em>the agent can update over time.</p><p>Every time an ACE-style agent works on a task, it can notice what helped, what failed, and what should be remembered for next time.</p><p>The ACE architecture has three components:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Fn6O!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faea0c923-fe41-4739-940b-53a7c2deda7a_2064x650.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Fn6O!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faea0c923-fe41-4739-940b-53a7c2deda7a_2064x650.png 424w, https://substackcdn.com/image/fetch/$s_!Fn6O!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faea0c923-fe41-4739-940b-53a7c2deda7a_2064x650.png 848w, https://substackcdn.com/image/fetch/$s_!Fn6O!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faea0c923-fe41-4739-940b-53a7c2deda7a_2064x650.png 1272w, https://substackcdn.com/image/fetch/$s_!Fn6O!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faea0c923-fe41-4739-940b-53a7c2deda7a_2064x650.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Fn6O!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faea0c923-fe41-4739-940b-53a7c2deda7a_2064x650.png" width="1456" height="459" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/aea0c923-fe41-4739-940b-53a7c2deda7a_2064x650.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:459,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:85918,&quot;alt&quot;:&quot;Editorial reference card for the ACE framework (Agentic Context Engineering), breaking the system into three roles: Generator (the part that tries to solve the task &#8212; produces the work, traces the steps, and identifies which pieces of context helped), Reflector (the part that reviews what happened &#8212; looks at successes and failures, then extracts useful lessons), and Curator (the part that updates the playbook &#8212; decides what should be added, changed, organized, or preserved so the context improves over time) &#8212; a context engineering loop for self-improving AI agents.&quot;,&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://karozieminski.substack.com/i/193628785?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faea0c923-fe41-4739-940b-53a7c2deda7a_2064x650.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Editorial reference card for the ACE framework (Agentic Context Engineering), breaking the system into three roles: Generator (the part that tries to solve the task &#8212; produces the work, traces the steps, and identifies which pieces of context helped), Reflector (the part that reviews what happened &#8212; looks at successes and failures, then extracts useful lessons), and Curator (the part that updates the playbook &#8212; decides what should be added, changed, organized, or preserved so the context improves over time) &#8212; a context engineering loop for self-improving AI agents." title="Editorial reference card for the ACE framework (Agentic Context Engineering), breaking the system into three roles: Generator (the part that tries to solve the task &#8212; produces the work, traces the steps, and identifies which pieces of context helped), Reflector (the part that reviews what happened &#8212; looks at successes and failures, then extracts useful lessons), and Curator (the part that updates the playbook &#8212; decides what should be added, changed, organized, or preserved so the context improves over time) &#8212; a context engineering loop for self-improving AI agents." srcset="https://substackcdn.com/image/fetch/$s_!Fn6O!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faea0c923-fe41-4739-940b-53a7c2deda7a_2064x650.png 424w, https://substackcdn.com/image/fetch/$s_!Fn6O!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faea0c923-fe41-4739-940b-53a7c2deda7a_2064x650.png 848w, https://substackcdn.com/image/fetch/$s_!Fn6O!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faea0c923-fe41-4739-940b-53a7c2deda7a_2064x650.png 1272w, https://substackcdn.com/image/fetch/$s_!Fn6O!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faea0c923-fe41-4739-940b-53a7c2deda7a_2064x650.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 role="img" 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><title></title><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">Three roles, one loop. Generator does the work. Reflector reviews it. Curator rewrites the playbook. That's how an agent gets smarter without a new model.</figcaption></figure></div><p>The important shift is that ACE doesn&#8217;t improve the model by retraining it. </p><p>It improves the environment around the model. </p><p>Instead of changing the model&#8217;s weights, it updates the instructions, strategies, examples, and lessons the model sees before it works. </p><p>The paper reports that ACE improved agent performance by <a href="https://arxiv.org/abs/2510.04618">10.6% on agent benchmarks and 8.6% on finance tasks, while also reducing adaptation cost and latency.</a></p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>What I&#8217;m watching for in 2026</h2><h3>Prompt engineering on the system side</h3><p>The best AI products won&#8217;t ask users to bring perfect prompt and context. They&#8217;ll build both layers into the product itself.</p><p>You can see this with <strong><a href="https://karozieminski.substack.com/p/perplexity-computer-finance-palantir-tearsheet">Perplexity for Finance</a></strong>. Common use cases are already anticipated: stock research, filings, earnings recaps, valuation lookups. Both prompts and context are built into the workflow.</p><h3>Prompt engineering on the user side</h3><p>When <strong><a href="https://karozieminski.substack.com/p/perplexity-computer-finance-palantir-tearsheet">I built my Palantir dashboard in Perplexity</a></strong> last week, I didn&#8217;t prompt at all. I gave it a company name. The agent routed through financial data, filings, transcripts, estimates, market context, and a citation layer.</p><p>For common use cases, users won&#8217;t write elaborate mega-prompts. Model providers will wrap those tasks in workflows and UX layers.</p><h3>Context engineering as a product layer</h3><p>I expect systems that manage their own context: selecting what matters, pruning what expires, carrying forward what should survive the session. For builders, this means we won&#8217;t only decide what to feed the model right now. We&#8217;ll design how the system learns what to keep next time.</p><p>Context becomes an evolving map, not a static brief.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>What This Means For You</h2><p>Context engineering is the systems design discipline that determines whether an AI product ships reliably or collapses under real users. </p><p>For product builders, this means owning the context architecture as a product decision. Define what the model needs to know. Decide when it needs to know it. Design how stale information gets pruned.</p><p>If you&#8217;re a PM and your engineering team is making context decisions without you, that&#8217;s not delegation. That&#8217;s abdication. Get in the room.</p><div><hr></div><p style="text-align: center;"><em>If you&#8217;ve been designing context architectures for your AI products and found patterns that work, or patterns that failed spectacularly, drop them in the comments. </em></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://karozieminski.substack.com/p/context-engineering-product-builders-guide-2026/comments&quot;,&quot;text&quot;:&quot;Leave a comment&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://karozieminski.substack.com/p/context-engineering-product-builders-guide-2026/comments"><span>Leave a comment</span></a></p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!bbuT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!bbuT!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png 424w, https://substackcdn.com/image/fetch/$s_!bbuT!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png 848w, https://substackcdn.com/image/fetch/$s_!bbuT!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png 1272w, https://substackcdn.com/image/fetch/$s_!bbuT!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!bbuT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png" width="1456" height="145" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/aae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:145,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:158918,&quot;alt&quot;:&quot;Product with Attitude newsletter closing banner with mascot.&quot;,&quot;title&quot;:&quot;Product with Attitude newsletter closing banner with mascot.&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/195778338?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd5b48c3-ae64-45d5-8178-00ab8d02f1a4_2353x256.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Product with Attitude newsletter closing banner with mascot." title="Product with Attitude newsletter closing banner with mascot." srcset="https://substackcdn.com/image/fetch/$s_!bbuT!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png 424w, https://substackcdn.com/image/fetch/$s_!bbuT!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png 848w, https://substackcdn.com/image/fetch/$s_!bbuT!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png 1272w, https://substackcdn.com/image/fetch/$s_!bbuT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p style="text-align: center;"><strong><a href="https://karozieminski.substack.com/about">WHY SUBSCRIBE </a>&#12539;<a href="https://karozieminski.substack.com/p/product-with-attitude-membership-2026">YOUR BENEFITS</a>&#12539; <a href="https://karozieminski.substack.com/p/substack-creator-tools">TOOLS I BUILT</a>&#12539;<a href="https://karozieminski.substack.com/p/claude-guides-code-cowork-skills-workflows">CLAUDE HUB</a>&#12539;<a href="https://karozieminski.substack.com/p/perplexity-ai-guide-2026">PERPLEXITY HUB</a> &#12539;<a href="https://karozieminski.substack.com/p/vibecoding-resources-hub">VIBE CODING HUB</a> </strong></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://karozieminski.substack.com/subscribe&quot;,&quot;text&quot;:&quot;SUBSCRIBE&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://karozieminski.substack.com/subscribe"><span>SUBSCRIBE</span></a></p>]]></content:encoded></item><item><title><![CDATA[The Context Pyramid: A PM’s Framework for AI Agent Context Engineering]]></title><description><![CDATA[Why Your AI Agent Breaks: A Diagnostic Framework for Product Managers]]></description><link>https://karozieminski.substack.com/p/context-pyramid-ai-agent-context-engineering-framework</link><guid isPermaLink="false">https://karozieminski.substack.com/p/context-pyramid-ai-agent-context-engineering-framework</guid><dc:creator><![CDATA[Karo (Product with Attitude)]]></dc:creator><pubDate>Fri, 01 May 2026 11:49:00 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/706c4fcf-18a8-48fa-a7fb-aa173bad6e7c_2400x1600.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h5>TL;DR <em>Context engineering is the skill that determines whether your AI agent is useful or a liability. Not model choice. Not prompt phrasing. Context. Every agent has four distinct context layers: Identity, Knowledge, State, and Task. Each breaks in a different way, for a different reason, on a different schedule. The Cadence Model (the PwA contribution here) tells you who touches each layer and when. Rarely. Occasionally. Per turn. Per task. The Diagnostic Loop maps agent failure symptoms to the exact layer that&#8217;s broken. No more guessing.</em></h5><p></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!zCc5!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5290a4ac-132b-4a1b-8f1e-38682c0b24dc_2962x1971.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!zCc5!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5290a4ac-132b-4a1b-8f1e-38682c0b24dc_2962x1971.png 424w, https://substackcdn.com/image/fetch/$s_!zCc5!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5290a4ac-132b-4a1b-8f1e-38682c0b24dc_2962x1971.png 848w, https://substackcdn.com/image/fetch/$s_!zCc5!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5290a4ac-132b-4a1b-8f1e-38682c0b24dc_2962x1971.png 1272w, https://substackcdn.com/image/fetch/$s_!zCc5!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5290a4ac-132b-4a1b-8f1e-38682c0b24dc_2962x1971.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!zCc5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5290a4ac-132b-4a1b-8f1e-38682c0b24dc_2962x1971.png" width="1456" height="969" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5290a4ac-132b-4a1b-8f1e-38682c0b24dc_2962x1971.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:969,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Hand-drawn illustration of a tiny grumpy character dwarfed by a massive oversized window with heavy curtains and a faint spotlight, next to a cheerful character smiling out of a small cozy window &#8212; visualizing why a bigger LLM context window doesn't automatically mean better AI performance, and why smaller, focused context often beats million-token windows.&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="Hand-drawn illustration of a tiny grumpy character dwarfed by a massive oversized window with heavy curtains and a faint spotlight, next to a cheerful character smiling out of a small cozy window &#8212; visualizing why a bigger LLM context window doesn't automatically mean better AI performance, and why smaller, focused context often beats million-token windows." title="Hand-drawn illustration of a tiny grumpy character dwarfed by a massive oversized window with heavy curtains and a faint spotlight, next to a cheerful character smiling out of a small cozy window &#8212; visualizing why a bigger LLM context window doesn't automatically mean better AI performance, and why smaller, focused context often beats million-token windows." srcset="https://substackcdn.com/image/fetch/$s_!zCc5!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5290a4ac-132b-4a1b-8f1e-38682c0b24dc_2962x1971.png 424w, https://substackcdn.com/image/fetch/$s_!zCc5!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5290a4ac-132b-4a1b-8f1e-38682c0b24dc_2962x1971.png 848w, https://substackcdn.com/image/fetch/$s_!zCc5!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5290a4ac-132b-4a1b-8f1e-38682c0b24dc_2962x1971.png 1272w, https://substackcdn.com/image/fetch/$s_!zCc5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5290a4ac-132b-4a1b-8f1e-38682c0b24dc_2962x1971.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 role="img" 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><title></title><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>The Context Window Is Not Your Problem</h2><p>Many users think that context problems are about size. </p><p>Bigger window, better agent. Use the 1M token model, problem solved.</p><p>Wrong.</p><p>The problem is not how much fits, it&#8217;s what we put in, in what order, with what structure, and how often we update each part.</p><p><a href="https://x.com/karpathy/status/1937902205765607626">Andrej Karpathy explained it like this in June 2025</a>: </p><blockquote><p><em>Context engineering is the delicate art and science of filling the context window with just the right information for the next step.</em></p></blockquote><p>Not all information. Not the most information. The right information.</p><p>Most of the writing on this topic was produced by engineers for engineers. System design diagrams. RAG architecture tutorials. Vector DB benchmarks. Useful. But none of it is written from the PM seat, where the questions sound different.</p><ul><li><p>Why does my agent suddenly act like it forgot the product strategy we discussed three sessions ago? </p></li><li><p>Why does it keep generating outputs we already rejected? </p></li><li><p>Why does a fresh agent outperform the one that&#8217;s been running for a week?</p></li></ul><p>These are PM questions. And they require a PM-shaped answer.</p><p>That is what the Context Pyramid gives you.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!nLR9!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!nLR9!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png 424w, https://substackcdn.com/image/fetch/$s_!nLR9!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png 848w, https://substackcdn.com/image/fetch/$s_!nLR9!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png 1272w, https://substackcdn.com/image/fetch/$s_!nLR9!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!nLR9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png" width="1456" height="123" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:123,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:11402,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&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="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!nLR9!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png 424w, https://substackcdn.com/image/fetch/$s_!nLR9!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png 848w, https://substackcdn.com/image/fetch/$s_!nLR9!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png 1272w, https://substackcdn.com/image/fetch/$s_!nLR9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><div class="callout-block" data-callout="true"><p><em>Hey, I&#8217;m Karo Zieminski </em>&#129303;<em> </em></p><p><em>AI Product Manager and builder. <br>I write Product with Attitude, an AI newsletter of 17,000+ subscribers building with AI and developing critical AI literacy through practice. </em></p><p><em>The kind where you sit down on a Saturday morning, follow a guide, <br>and walk away with a working agent, automation, or product. </em></p><p><em>Built by you. Understood by you. Owned by you.</em></p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!cZr7!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c7d8725-e63c-46d5-8171-ba297c86866b_1314x10.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!cZr7!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c7d8725-e63c-46d5-8171-ba297c86866b_1314x10.png 424w, https://substackcdn.com/image/fetch/$s_!cZr7!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c7d8725-e63c-46d5-8171-ba297c86866b_1314x10.png 848w, https://substackcdn.com/image/fetch/$s_!cZr7!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c7d8725-e63c-46d5-8171-ba297c86866b_1314x10.png 1272w, https://substackcdn.com/image/fetch/$s_!cZr7!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c7d8725-e63c-46d5-8171-ba297c86866b_1314x10.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!cZr7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c7d8725-e63c-46d5-8171-ba297c86866b_1314x10.png" width="1314" height="10" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1c7d8725-e63c-46d5-8171-ba297c86866b_1314x10.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:10,&quot;width&quot;:1314,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:430,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:&quot;&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/182760227?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c7d8725-e63c-46d5-8171-ba297c86866b_1314x10.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!cZr7!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c7d8725-e63c-46d5-8171-ba297c86866b_1314x10.png 424w, https://substackcdn.com/image/fetch/$s_!cZr7!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c7d8725-e63c-46d5-8171-ba297c86866b_1314x10.png 848w, https://substackcdn.com/image/fetch/$s_!cZr7!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c7d8725-e63c-46d5-8171-ba297c86866b_1314x10.png 1272w, https://substackcdn.com/image/fetch/$s_!cZr7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c7d8725-e63c-46d5-8171-ba297c86866b_1314x10.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p><em>If you&#8217;re new here, welcome! Here&#8217;s what you might have missed:</em></p><p><em>&#8594; <a href="https://karozieminski.substack.com/p/context-engineering-product-builders-guide-2026">An Illustrated Guide to Context Engineering</a><br>&#8594; <a href="https://karozieminski.substack.com/p/ai-prompting-techniques-reasoning-models-2026">The Only AI Prompting Guide That Works On Reasoning Models (And Our Cognition)</a></em></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://karozieminski.substack.com/subscribe&quot;,&quot;text&quot;:&quot;SUBSCRIBE&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://karozieminski.substack.com/subscribe"><span>SUBSCRIBE</span></a></p></div><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Dz9H!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7643495-34e2-40ce-abad-d894412325db_2396x209.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Dz9H!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7643495-34e2-40ce-abad-d894412325db_2396x209.png 424w, https://substackcdn.com/image/fetch/$s_!Dz9H!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7643495-34e2-40ce-abad-d894412325db_2396x209.png 848w, https://substackcdn.com/image/fetch/$s_!Dz9H!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7643495-34e2-40ce-abad-d894412325db_2396x209.png 1272w, https://substackcdn.com/image/fetch/$s_!Dz9H!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7643495-34e2-40ce-abad-d894412325db_2396x209.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Dz9H!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7643495-34e2-40ce-abad-d894412325db_2396x209.png" width="1456" height="127" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c7643495-34e2-40ce-abad-d894412325db_2396x209.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:127,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:11749,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&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="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!Dz9H!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7643495-34e2-40ce-abad-d894412325db_2396x209.png 424w, https://substackcdn.com/image/fetch/$s_!Dz9H!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7643495-34e2-40ce-abad-d894412325db_2396x209.png 848w, https://substackcdn.com/image/fetch/$s_!Dz9H!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7643495-34e2-40ce-abad-d894412325db_2396x209.png 1272w, https://substackcdn.com/image/fetch/$s_!Dz9H!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7643495-34e2-40ce-abad-d894412325db_2396x209.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>The Context Pyramid</h2><p>The Context Pyramid is a four-layer model for thinking about the information that shapes agent behavior. </p><p>Each layer has a distinct purpose, a distinct home, and a distinct update cadence. The layers are: Identity, Knowledge, State, and Task.</p><p>They are ordered from the most stable (bottom) to the most volatile (top). The pyramid shape is intentional. Identity is the foundation. Task is the tip. Flip any layer and the whole structure wobbles.</p><p>If you&#8217;ve been rebuilding the Task layer five times in a day, wondering why the agent keeps going off-rails, the actual problem is more likely a broken Identity layer that was set up six weeks ago and never revisited. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!JMlO!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F793d6778-c2f4-4f55-bf9f-351536a2fc79_2154x1776.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!JMlO!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F793d6778-c2f4-4f55-bf9f-351536a2fc79_2154x1776.png 424w, https://substackcdn.com/image/fetch/$s_!JMlO!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F793d6778-c2f4-4f55-bf9f-351536a2fc79_2154x1776.png 848w, https://substackcdn.com/image/fetch/$s_!JMlO!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F793d6778-c2f4-4f55-bf9f-351536a2fc79_2154x1776.png 1272w, https://substackcdn.com/image/fetch/$s_!JMlO!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F793d6778-c2f4-4f55-bf9f-351536a2fc79_2154x1776.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!JMlO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F793d6778-c2f4-4f55-bf9f-351536a2fc79_2154x1776.png" width="1456" height="1200" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/793d6778-c2f4-4f55-bf9f-351536a2fc79_2154x1776.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1200,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Editorial reference card for The Context Pyramid, a PM framework for building reliable AI agents, breaking agent context into four layers: Identity layer (who the agent is &#8212; role, persona, guardrails, lives in the system prompt, updated rarely when purpose or safety boundaries change), Knowledge layer (what it knows &#8212; facts, docs, user preferences, lives in semantic memory, RAG, files, databases, or documentation, updated occasionally when facts change or new preferences are learned), State layer (what just happened &#8212; session history, recent outputs, workspace state, blockers, lives in the context window or scratchpad, updated per turn), and Task layer (what it's doing right now &#8212; current goal, constraints, output format, success criteria, lives in the current prompt, updated per task and replaced when a new goal or success criterion is set) &#8212; a context engineering framework for AI product managers.&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="Editorial reference card for The Context Pyramid, a PM framework for building reliable AI agents, breaking agent context into four layers: Identity layer (who the agent is &#8212; role, persona, guardrails, lives in the system prompt, updated rarely when purpose or safety boundaries change), Knowledge layer (what it knows &#8212; facts, docs, user preferences, lives in semantic memory, RAG, files, databases, or documentation, updated occasionally when facts change or new preferences are learned), State layer (what just happened &#8212; session history, recent outputs, workspace state, blockers, lives in the context window or scratchpad, updated per turn), and Task layer (what it's doing right now &#8212; current goal, constraints, output format, success criteria, lives in the current prompt, updated per task and replaced when a new goal or success criterion is set) &#8212; a context engineering framework for AI product managers." title="Editorial reference card for The Context Pyramid, a PM framework for building reliable AI agents, breaking agent context into four layers: Identity layer (who the agent is &#8212; role, persona, guardrails, lives in the system prompt, updated rarely when purpose or safety boundaries change), Knowledge layer (what it knows &#8212; facts, docs, user preferences, lives in semantic memory, RAG, files, databases, or documentation, updated occasionally when facts change or new preferences are learned), State layer (what just happened &#8212; session history, recent outputs, workspace state, blockers, lives in the context window or scratchpad, updated per turn), and Task layer (what it's doing right now &#8212; current goal, constraints, output format, success criteria, lives in the current prompt, updated per task and replaced when a new goal or success criterion is set) &#8212; a context engineering framework for AI product managers." srcset="https://substackcdn.com/image/fetch/$s_!JMlO!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F793d6778-c2f4-4f55-bf9f-351536a2fc79_2154x1776.png 424w, https://substackcdn.com/image/fetch/$s_!JMlO!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F793d6778-c2f4-4f55-bf9f-351536a2fc79_2154x1776.png 848w, https://substackcdn.com/image/fetch/$s_!JMlO!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F793d6778-c2f4-4f55-bf9f-351536a2fc79_2154x1776.png 1272w, https://substackcdn.com/image/fetch/$s_!JMlO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F793d6778-c2f4-4f55-bf9f-351536a2fc79_2154x1776.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 role="img" 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><title></title><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>Let us go through each layer.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>Identity Layer: Who Is This Agent?</h2><p><strong>Definition:</strong> Role, persona, and guardrails that define the agent&#8217;s character and constraints.</p><p><strong>Where it lives:</strong> System prompt, project instructions or agent configuration.</p><p><strong>Update cadence:</strong> Rarely. Think quarterly at most, or when the agent&#8217;s fundamental purpose changes.</p><p>The Identity layer is the agent&#8217;s constitution. It establishes who the agent is, what it cares about, and what it will never do. It is not a list of instructions for the current task. It is the pre-existing condition everything else runs inside.</p><p>A solid Identity layer defines: the agent&#8217;s role (e.g., &#8220;You are a B2B product analyst focused on enterprise SaaS metrics&#8221;), the communication style, hard constraints (&#8221;Never speculate about competitor financials&#8221;), and escalation behavior.</p><p>Many Identity layers are written once, at project kickoff, and then forgotten. That is fine. The update cadence is supposed to be rare. The problem is when Identity never gets reviewed, even as the product, the user base, or the agent&#8217;s scope evolves.</p><p><strong>PM diagnostic questions:</strong></p><ol><li><p>If you cleared the system prompt and showed the current Identity layer to a new team member, would they understand exactly what this agent is and is not supposed to do?</p></li><li><p>Has the agent&#8217;s actual scope changed since the Identity layer was written? (New integrations, new user types, expanded tasks?)</p></li><li><p>Are there behaviors you keep correcting in Task prompts that could be fixed once in Identity instead?</p></li></ol><div class="callout-block" data-callout="true"><p><strong>Example failure mode:</strong><em> </em>An agent built to assist with customer onboarding gets handed a support ticket workflow six months in. The Identity layer still says &#8220;focus on new users only.&#8221; The agent keeps refusing to engage with complex troubleshooting because it reads those requests as out-of-scope. The team patches each instance in the Task layer instead of updating Identity. The patches accumulate. The agent becomes incoherent.</p></div><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>Knowledge Layer: What Does It Know?</h2><p><strong>Definition:</strong> Facts, documents, product context, user preferences, and domain knowledge the agent draws on when reasoning.</p><p><strong>Where it lives:</strong> Semantic memory, RAG pipelines, external files, knowledge bases.</p><p><strong>Update cadence:</strong> Occasionally. When underlying facts change, not when tasks change.</p><p>The Knowledge layer is the agent&#8217;s long-term memory. It holds the things that are mostly stable but do need updating as the world changes: product documentation, pricing rules, customer segment profiles, brand guidelines, competitor data.</p><p>This is the layer that benefits from RAG (Retrieval-Augmented Generation) architectures. Instead of jamming everything into the system prompt and burning context on facts the agent does not need right now, you store knowledge externally and retrieve it just-in-time. <a href="https://www.anthropic.com/engineering/effective-context-engineering-for-ai-agents">Anthropic&#8217;s engineering team calls this &#8220;progressive disclosure&#8221;</a>: agents incrementally discover relevant context through exploration rather than loading everything upfront.</p><p>The failure mode here is deceptively quiet. Stale knowledge does not throw an error. It produces confident, plausible, wrong outputs.</p><p><strong>PM diagnostic questions:</strong></p><ol><li><p>When was the Knowledge layer last updated? Is that still current? (If you shipped a pricing change three months ago and the agent still quotes old pricing, you have a Knowledge layer problem.)</p></li><li><p>Is the agent retrieving knowledge or hallucinating it? (Test with specific, verifiable facts from your knowledge base and compare agent outputs against the source.)</p></li><li><p>Is there knowledge that should be in this layer but exists only in someone&#8217;s head or a shared drive?</p></li></ol><div class="callout-block" data-callout="true"><p><strong>Example failure mode:</strong> A sales agent is built with competitive battlecards from Q1. A competitor releases a major new product in Q3. The Knowledge layer is not updated. The agent continues producing outdated competitive positioning, with full confidence, through every customer-facing interaction. No one notices for weeks because the outputs look plausible.</p></div><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>State Layer: What Just Happened?</h2><p><strong>Definition:</strong> Session history, recent outputs, active blockers, and intermediate results from the current work session.</p><p><strong>Where it lives:</strong> Context window, scratchpad, session memory.</p><p><strong>Update cadence:</strong> Per turn. The State layer is essentially continuous.</p><p>State is the most mismanaged layer in production agents. It is also the one most responsible for the &#8220;context rot&#8221; phenomenon that makes agents degrade over long sessions.</p><p>Here is what context rot looks like in practice: you start a session with a crisp, capable agent. Forty turns in, it is repeating outputs it already generated, missing constraints it acknowledged earlier, and contradicting decisions it made thirty turns ago. The model has not changed. The context window has filled up with noise.</p><p><a href="https://arxiv.org/abs/2307.03172">A 2023 Stanford paper by Liu et al., published in TACL</a>, documented exactly why: LLM performance follows a U-shaped curve across input positions. Models attend well to the beginning and end of context. Everything in the middle suffers significant accuracy degradation, up to 30 percentage points lower in multi-document question answering tasks. Your agent does not have amnesia. It has a structural attention problem.</p><p><a href="https://www.trychroma.com/research/context-rot">Chroma&#8217;s 2025 research confirmed this across 18 frontier models</a>: every single one degrades as input length increases. The models are smart enough to solve the problem. The context is the constraint.</p><p>The fix is not a bigger context window. It is active State management: compacting completed reasoning, keeping the most recent relevant outputs surfaced, and offloading resolved threads to external memory.</p><p><strong>PM diagnostic questions:</strong></p><ol><li><p>How many turns does your agent run before it starts repeating itself or contradicting earlier decisions?</p></li><li><p>Do you have any compaction or summarization strategy running, or is the context window just accumulating everything?</p></li><li><p>Is the agent&#8217;s scratchpad (if it has one) being used to hold intermediate conclusions, or is it growing unbounded?</p></li></ol><div class="callout-block" data-callout="true"><p><strong>Example failure mode:</strong> A research agent is asked to synthesize findings across a 90-minute session. By turn 60, the earliest retrieved sources, which contained the most important context, are now buried in the middle of a 40,000-token context window. The agent begins generating conclusions that contradict its own early findings because it can no longer effectively attend to the information it retrieved first. The session output is internally inconsistent. No error was thrown.</p></div><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>Task Layer: What Is It Doing Right Now?</h2><p><strong>Definition:</strong> Current goal, constraints, success criteria, and output format for this specific task.</p><p><strong>Where it lives:</strong> Current prompt (user turn or orchestrator instruction).</p><p><strong>Update cadence:</strong> Per task. This is the highest-velocity layer.</p><p>The Task layer is where most PM attention goes, and it is also the layer where most debugging effort is wasted. Rewriting the Task prompt is the PM equivalent of rebooting the router: it solves a lot of things, which makes it the default response to problems that actually live elsewhere.</p><p>A well-constructed Task layer does four things: states the goal precisely, specifies constraints (format, length, tone, scope), defines what &#8220;done&#8221; looks like, and provides the minimal context the agent needs for this particular task (not everything it might ever need).</p><p>The last point matters because of context rot. Every token you dump into the Task layer that is not relevant to the current task is a token that pushes important information toward the middle of the window. <a href="https://www.anthropic.com/engineering/effective-context-engineering-for-ai-agents">Anthropic frames this as finding &#8220;the smallest possible set of high-signal tokens&#8221;</a>. Verbose Task prompts that include historical context, background explanation, and multiple tangential constraints are a context management anti-pattern.</p><p><strong>PM diagnostic questions:</strong></p><ol><li><p>Does this Task prompt contain information that belongs in the Identity or Knowledge layer instead? (If yes, remove it from here and put it where it belongs.)</p></li><li><p>Is the success criterion explicit enough that the agent would know when it is done without being told?</p></li><li><p>If this Task prompt were handed to a new agent with no prior session context, would it still work?</p></li></ol><div class="callout-block" data-callout="true"><p><strong>Example failure mode:</strong> A PM writes a 2,000-word Task prompt that includes company background, the full product strategy, the agent&#8217;s role definition, and competitive context, plus the actual task instruction buried at the end. The agent produces a mediocre output. The PM rewrites the Task prompt. The output is still mediocre. The problem: the agent&#8217;s attention is distributed across 2,000 tokens of low-signal context, and the actual task instruction is sitting in the middle. A 150-word Task prompt with the Identity and Knowledge layers handled separately would outperform it.</p></div><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!eC5q!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!eC5q!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png 424w, https://substackcdn.com/image/fetch/$s_!eC5q!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png 848w, https://substackcdn.com/image/fetch/$s_!eC5q!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png 1272w, https://substackcdn.com/image/fetch/$s_!eC5q!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!eC5q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png" width="1456" height="12" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:12,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1023,&quot;alt&quot;:&quot;Transparent divider.&quot;,&quot;title&quot;:&quot;Transparent divider.&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/192454016?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7ec130a-11d7-4048-bcac-baffaeaef8a5_2400x112.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Transparent divider." title="Transparent divider." srcset="https://substackcdn.com/image/fetch/$s_!eC5q!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png 424w, https://substackcdn.com/image/fetch/$s_!eC5q!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png 848w, https://substackcdn.com/image/fetch/$s_!eC5q!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png 1272w, https://substackcdn.com/image/fetch/$s_!eC5q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://karozieminski.substack.com/subscribe&quot;,&quot;text&quot;:&quot;SUBSCRIBE&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://karozieminski.substack.com/subscribe"><span>SUBSCRIBE</span></a></p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!eC5q!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!eC5q!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png 424w, https://substackcdn.com/image/fetch/$s_!eC5q!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png 848w, https://substackcdn.com/image/fetch/$s_!eC5q!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png 1272w, https://substackcdn.com/image/fetch/$s_!eC5q!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!eC5q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png" width="1456" height="12" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:12,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1023,&quot;alt&quot;:&quot;Transparent divider.&quot;,&quot;title&quot;:&quot;Transparent divider.&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/192454016?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7ec130a-11d7-4048-bcac-baffaeaef8a5_2400x112.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Transparent divider." title="Transparent divider." srcset="https://substackcdn.com/image/fetch/$s_!eC5q!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png 424w, https://substackcdn.com/image/fetch/$s_!eC5q!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png 848w, https://substackcdn.com/image/fetch/$s_!eC5q!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png 1272w, https://substackcdn.com/image/fetch/$s_!eC5q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>The Cadence Model and The Context Layer Ownership</h2><p>The original PwA contribution here is making the update cadence explicit. Every context engineering writeup treats all context as equivalent. It is not. Each layer has a natural clock. Violating those clocks, either by updating too often or too rarely, creates predictable failures.</p><p>Set the Identity layer correctly once. Let the Knowledge layer handle stable facts. Trust the State layer to accumulate session history. Keep the Task layer surgical.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!XzQU!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe6b2b4db-a3f8-4fef-817c-2f67e086eaca_1076x401.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!XzQU!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe6b2b4db-a3f8-4fef-817c-2f67e086eaca_1076x401.png 424w, https://substackcdn.com/image/fetch/$s_!XzQU!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe6b2b4db-a3f8-4fef-817c-2f67e086eaca_1076x401.png 848w, https://substackcdn.com/image/fetch/$s_!XzQU!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe6b2b4db-a3f8-4fef-817c-2f67e086eaca_1076x401.png 1272w, https://substackcdn.com/image/fetch/$s_!XzQU!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe6b2b4db-a3f8-4fef-817c-2f67e086eaca_1076x401.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!XzQU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe6b2b4db-a3f8-4fef-817c-2f67e086eaca_1076x401.png" width="1076" height="401" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e6b2b4db-a3f8-4fef-817c-2f67e086eaca_1076x401.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:401,&quot;width&quot;:1076,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:155279,&quot;alt&quot;:&quot;The 4 layers of agent context and who owns each one &#8212; Identity, Knowledge, State, Task &#8212; mapped to update cadence and trigger events for AI product managers.&quot;,&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://karozieminski.substack.com/i/197839263?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe6b2b4db-a3f8-4fef-817c-2f67e086eaca_1076x401.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="The 4 layers of agent context and who owns each one &#8212; Identity, Knowledge, State, Task &#8212; mapped to update cadence and trigger events for AI product managers." title="The 4 layers of agent context and who owns each one &#8212; Identity, Knowledge, State, Task &#8212; mapped to update cadence and trigger events for AI product managers." srcset="https://substackcdn.com/image/fetch/$s_!XzQU!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe6b2b4db-a3f8-4fef-817c-2f67e086eaca_1076x401.png 424w, https://substackcdn.com/image/fetch/$s_!XzQU!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe6b2b4db-a3f8-4fef-817c-2f67e086eaca_1076x401.png 848w, https://substackcdn.com/image/fetch/$s_!XzQU!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe6b2b4db-a3f8-4fef-817c-2f67e086eaca_1076x401.png 1272w, https://substackcdn.com/image/fetch/$s_!XzQU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe6b2b4db-a3f8-4fef-817c-2f67e086eaca_1076x401.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 role="img" 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><title></title><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><div class="callout-block" data-callout="true"><p><strong>A common anti-pattern:</strong> a PM with a vague Identity layer compensates by being hyper-specific in every Task prompt. The Task layer bloats. Context rot accelerates. The PM works harder. The agent gets worse.</p></div><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>The Diagnostic Loop for Product Managers</h2><p>Your agent is broken. Here is how to find the layer.</p><h3>Symptom: Agent ignores constraints it was clearly given.</h3><p>Start at Identity. Is the constraint something that should be permanent (a guardrail)? If yes, it belongs in Identity. If it is in the Task prompt instead, it will be treated as task-specific and may not generalize. </p><p><strong>Fix:</strong> move it to Identity.</p><h3>Symptom: Agent produces outdated or factually incorrect information.</h3><p>Go to Knowledge. When was the Knowledge layer last updated? Is the source it is drawing on current? Does the RAG retrieval surface the right documents for this query type? </p><p><strong>Fix:</strong> refresh Knowledge layer, audit retrieval relevance.</p><h3>Symptom: Agent contradicts its own earlier outputs in the same session.</h3><p>This is State. The context window has grown too large and earlier reasoning is in the middle-blindspot. </p><p><strong>Fix:</strong> implement compaction, reduce State accumulation, or use structured note-taking to surface key conclusions at the top of the window.</p><h3>Symptom: Agent does the wrong thing with a clearly correct prompt.</h3><p>Check State first: is there conflicting session history that overrides the current Task prompt? Then check Identity: is there a guardrail creating an implicit constraint the Task prompt is triggering? </p><p><strong>Fix:</strong> debug context pollution in State, or revise the relevant Identity guardrail.</p><h3>Symptom: Agent works perfectly on turn 1, degrades across a long session.</h3><p>Pure State problem. Context rot in action. </p><p><strong>Fix:</strong> active State management strategy (compaction, note-taking, sub-agent handoffs).</p><h3>Symptom: Agent works in testing, fails with real users.</h3><p>Knowledge gap. Real-user queries surface domain specifics that test cases do not cover. </p><p><strong>Fix:</strong> expand Knowledge layer with real-world edge cases, preferences, and terminology.</p><h3>Symptom: Agent is consistent but wrong: the wrong persona, the wrong tone, the wrong scope.</h3><p>Identity layer was set incorrectly at the start. Not a State or Task problem.</p><p><strong>Fix:</strong> rewrite Identity layer with explicit role definition, communication constraints, and scope boundaries.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>Attribution</h2><p>The term &#8220;context engineering&#8221; was coined (or at least authoritatively popularized) by <a href="https://x.com/karpathy/status/1937902205765607626">Andrej Karpathy in a June 2025 post on X</a>: </p><blockquote><p><em>In every industrial-strength LLM app, context engineering is the delicate art and science of filling the context window with just the right information for the next step.</em></p></blockquote><p>The empirical backbone for context rot and the lost-in-the-middle problem comes from <a href="https://arxiv.org/abs/2307.03172">Liu et al.&#8217;s 2023 Stanford paper published in TACL</a>, which documented U-shaped performance curves across context positions, with up to 30-point accuracy drops for information in the middle of long contexts.</p><p>The practical implementation strategies for agent memory (compaction, structured note-taking, just-in-time retrieval) come from <a href="https://www.anthropic.com/engineering/effective-context-engineering-for-ai-agents">Anthropic&#8217;s engineering blog, specifically &#8220;Effective Context Engineering for AI Agents&#8221;</a>, published September 2025, authored by the Applied AI team.</p><p>The four-layer pyramid structure, the Cadence Model, and the Diagnostic Loop are original PwA frameworks.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>FAQ</h2><p><strong>Q: Is context engineering the same as prompt engineering?</strong></p><p>No. Prompt engineering is about crafting the instruction for a single call. Context engineering is about managing what information exists across all layers of an agent&#8217;s context, across sessions, for the lifetime of that agent. Prompt engineering is a sub-skill inside context engineering.</p><p><strong>Q: Do I need a RAG system to do context engineering?</strong></p><p>Not necessarily. RAG is one way to manage the Knowledge layer. A well-maintained CLAUDE.md file, a Notion doc the agent can read, or a few well-curated files work too. RAG matters when your knowledge base is large and queried dynamically. If your agent has a fixed, small knowledge set, a flat file in the system prompt context is fine.</p><p><strong>Q: How do I know which layer is broken?</strong></p><p>Use the Diagnostic Loop above. The symptom pattern tells you the layer. If the agent is consistent but wrong, that is Identity. If it is factually stale, that is Knowledge. If it degrades over a session, that is State. If it does the wrong thing on a single clear prompt, check Task, then State for contamination.</p><p><strong>Q: My agent works fine for a few turns but gets worse over time. What is happening?</strong></p><p>Context rot. Your State layer is accumulating noise faster than the agent can process it. The lost-in-the-middle effect means earlier context is effectively disappearing from the agent&#8217;s attention even though it is technically present. Active State management (compaction, note-taking) is the fix.</p><p><strong>Q: Who should own the Identity layer?</strong></p><p>The PM or tech lead, in collaboration. The Identity layer encodes product decisions (what this agent is, what it will not do) and technical constraints (how it should interact with tools, what output format it produces). It is not a developer-only artifact. The PM who does not own the Identity layer will perpetually wonder why the agent feels off-brand.</p><p><strong>Q: How often should I update the Knowledge layer?</strong></p><p>When the underlying facts change, not on a schedule. Treat it like documentation: if you shipped a feature, updated pricing, changed a policy, or onboarded a new integration, the Knowledge layer needs a corresponding update. A useful heuristic: any change that would require onboarding a new employee to be aware of should also update the Knowledge layer.</p><p><strong>Q: Can I build this framework into an existing agent, or do I need to start from scratch?</strong></p><p>You can retrofit it. Start by auditing what you have: what is in the system prompt, what is retrieved, what is in session history, and how tasks are structured. Then map each piece to its correct layer. Consolidate Identity into a clean system prompt section. Move stable facts out of Task prompts and into a Knowledge source. Add State management (even basic note-taking works). The audit itself is valuable because it shows you what has been mixed together.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>Final Thoughts</h2><p>The agents running your business in 2027 will require context architecture, not just prompt wording.</p><p>The PM skill gap is still real. Engineering has been doing context engineering for a while, because broken context breaks code visibly. Product work surfaces failure more slowly. An agent that generates plausible-but-wrong competitive analysis, or drifts from brand voice across a thousand outputs, fails quietly. Those failures compound.</p><p>The Context Pyramid gives you a mental model for owning the full context stack, not just the Task layer you touch every day. Use it when agents break. Use it when building new ones. Use it to make the case for context infrastructure investment.</p><p>Context engineering is not a technical specialization. It&#8217;s a product skill. You just were not given the framework for it until now.</p><p style="text-align: center;"><em>Product with Attitude is a newsletter for PMs and founders building with AI. If this issue was useful, the paid tier goes deeper: agent architecture walkthroughs, PwA diagnostic templates, and the full context engineering toolkit I use to build and maintain the automations running this newsletter.</em></p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!bbuT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!bbuT!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png 424w, https://substackcdn.com/image/fetch/$s_!bbuT!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png 848w, https://substackcdn.com/image/fetch/$s_!bbuT!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png 1272w, https://substackcdn.com/image/fetch/$s_!bbuT!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!bbuT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png" width="1456" height="145" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/aae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:145,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:158918,&quot;alt&quot;:&quot;Product with Attitude newsletter closing banner with mascot.&quot;,&quot;title&quot;:&quot;Product with Attitude newsletter closing banner with mascot.&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/195778338?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd5b48c3-ae64-45d5-8178-00ab8d02f1a4_2353x256.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Product with Attitude newsletter closing banner with mascot." title="Product with Attitude newsletter closing banner with mascot." srcset="https://substackcdn.com/image/fetch/$s_!bbuT!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png 424w, https://substackcdn.com/image/fetch/$s_!bbuT!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png 848w, https://substackcdn.com/image/fetch/$s_!bbuT!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png 1272w, https://substackcdn.com/image/fetch/$s_!bbuT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p style="text-align: center;"><strong><a href="https://karozieminski.substack.com/about">WHY SUBSCRIBE </a>&#12539;<a href="https://karozieminski.substack.com/p/product-with-attitude-membership-2026">YOUR BENEFITS</a>&#12539; <a href="https://karozieminski.substack.com/p/substack-creator-tools">TOOLS I BUILT</a>&#12539;<a href="https://karozieminski.substack.com/p/claude-guides-code-cowork-skills-workflows">CLAUDE HUB</a>&#12539;<a href="https://karozieminski.substack.com/p/perplexity-ai-guide-2026">PERPLEXITY HUB</a> &#12539;<a href="https://karozieminski.substack.com/p/vibecoding-resources-hub">VIBE CODING HUB</a> </strong></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://karozieminski.substack.com/subscribe&quot;,&quot;text&quot;:&quot;SUBSCRIBE&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://karozieminski.substack.com/subscribe"><span>SUBSCRIBE</span></a></p><p></p>]]></content:encoded></item><item><title><![CDATA[Your AI Agents Are Engineers Now. Manage Them Like It.]]></title><description><![CDATA[AI agents fail when management fails. Define-Deliver-Drive helps you manage agents like human teams: clear specs, WIP limits, and a delegation ladder.]]></description><link>https://karozieminski.substack.com/p/ai-agent-management-framework-2026</link><guid isPermaLink="false">https://karozieminski.substack.com/p/ai-agent-management-framework-2026</guid><dc:creator><![CDATA[Karo (Product with Attitude)]]></dc:creator><pubDate>Mon, 30 Mar 2026 13:34:13 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/677eeca9-b089-476b-b486-699f46b1aa88_2400x1260.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>The moment you add AI agents to your workflow, you&#8217;re no longer just a builder. </p><p>The creative maker part of the work evolves into something that looks a lot like engineering leadership.</p><p>Because it is.</p><p>We already know what happens when badly-led teams ship without specs, onboarding, decision architecture or reviews. </p><p>Agents just do it faster.</p><p>If your agent's work gets erratic, or the output goes sideways, the tech isn&#8217;t the problem. The management is.</p><p></p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!nLR9!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!nLR9!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png 424w, https://substackcdn.com/image/fetch/$s_!nLR9!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png 848w, https://substackcdn.com/image/fetch/$s_!nLR9!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png 1272w, https://substackcdn.com/image/fetch/$s_!nLR9!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!nLR9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png" width="1456" height="123" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:123,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:11402,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&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="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!nLR9!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png 424w, https://substackcdn.com/image/fetch/$s_!nLR9!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png 848w, https://substackcdn.com/image/fetch/$s_!nLR9!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png 1272w, https://substackcdn.com/image/fetch/$s_!nLR9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png 1456w" sizes="100vw" fetchpriority="high"></picture><div></div></div></a></figure></div><p><em>Hey, I&#8217;m Karo Zieminski </em>&#129303;<em> </em></p><p><em>AI Product Manager and <a href="https://karozieminski.substack.com/p/substack-creator-tools">builder</a>. </em></p><p><em>I write Product with Attitude, an AI newsletter for thousands of subscribers developing critical AI literacy the only way it sticks: through practice.</em></p><p><em>We don&#8217;t just use AI. We build workflows, automations, and products with it, while studying how AI itself is built, positioned, and woven into our work.</em></p><p><em>If you&#8217;re new here, welcome! Here&#8217;s what you might have missed:</em></p><ul><li><p><em><a href="https://karozieminski.substack.com/p/context-engineering-product-builders-guide-2026">An Illustrated Guide to Context Engineering</a></em></p></li><li><p><em><a href="https://karozieminski.substack.com/p/ai-prompting-techniques-reasoning-models-2026">The Only AI Prompting Guide That Works On Reasoning Models (And Our Cognition)</a></em></p></li></ul><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://karozieminski.substack.com/subscribe&quot;,&quot;text&quot;:&quot;SUBSCRIBE&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://karozieminski.substack.com/subscribe"><span>SUBSCRIBE</span></a></p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!1jJz!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92ad35fe-c376-42eb-9a7f-9e5525a03c4e_2396x234.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!1jJz!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92ad35fe-c376-42eb-9a7f-9e5525a03c4e_2396x234.png 424w, https://substackcdn.com/image/fetch/$s_!1jJz!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92ad35fe-c376-42eb-9a7f-9e5525a03c4e_2396x234.png 848w, https://substackcdn.com/image/fetch/$s_!1jJz!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92ad35fe-c376-42eb-9a7f-9e5525a03c4e_2396x234.png 1272w, https://substackcdn.com/image/fetch/$s_!1jJz!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92ad35fe-c376-42eb-9a7f-9e5525a03c4e_2396x234.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!1jJz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92ad35fe-c376-42eb-9a7f-9e5525a03c4e_2396x234.png" width="1456" height="142" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/92ad35fe-c376-42eb-9a7f-9e5525a03c4e_2396x234.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:142,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:13014,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!1jJz!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92ad35fe-c376-42eb-9a7f-9e5525a03c4e_2396x234.png 424w, https://substackcdn.com/image/fetch/$s_!1jJz!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92ad35fe-c376-42eb-9a7f-9e5525a03c4e_2396x234.png 848w, https://substackcdn.com/image/fetch/$s_!1jJz!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92ad35fe-c376-42eb-9a7f-9e5525a03c4e_2396x234.png 1272w, https://substackcdn.com/image/fetch/$s_!1jJz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92ad35fe-c376-42eb-9a7f-9e5525a03c4e_2396x234.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><div class="callout-block" data-callout="true"><p>This is a guest post by <span class="mention-wrap" data-attrs="{&quot;name&quot;:&quot;Kacper Wojaczek&quot;,&quot;id&quot;:238671305,&quot;type&quot;:&quot;user&quot;,&quot;url&quot;:null,&quot;photo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e2b4d98-d409-4944-a3ba-f3afa7612ea4_447x447.jpeg&quot;,&quot;uuid&quot;:&quot;57adbffa-efad-4b3a-b282-7368cde7889d&quot;}" data-component-name="MentionToDOM"></span>. </p><p>Plenty of people compare agents to junior hires, but Kacper&#8217;s Define-Deliver-Drive framework is one of the clearest takes I&#8217;ve seen on AI agent management. </p><p>Kacper writes <a href="https://scrambleit.substack.com/">Scramble IT</a>: practical systems for engineering leaders who want to ship faster with less chaos.</p><p>His words below.</p></div><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!TFS4!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7ec130a-11d7-4048-bcac-baffaeaef8a5_2400x112.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!TFS4!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7ec130a-11d7-4048-bcac-baffaeaef8a5_2400x112.png 424w, https://substackcdn.com/image/fetch/$s_!TFS4!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7ec130a-11d7-4048-bcac-baffaeaef8a5_2400x112.png 848w, https://substackcdn.com/image/fetch/$s_!TFS4!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7ec130a-11d7-4048-bcac-baffaeaef8a5_2400x112.png 1272w, https://substackcdn.com/image/fetch/$s_!TFS4!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7ec130a-11d7-4048-bcac-baffaeaef8a5_2400x112.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!TFS4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7ec130a-11d7-4048-bcac-baffaeaef8a5_2400x112.png" width="1456" height="68" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b7ec130a-11d7-4048-bcac-baffaeaef8a5_2400x112.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:68,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1171,&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://karozieminski.substack.com/i/192454016?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7ec130a-11d7-4048-bcac-baffaeaef8a5_2400x112.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_!TFS4!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7ec130a-11d7-4048-bcac-baffaeaef8a5_2400x112.png 424w, https://substackcdn.com/image/fetch/$s_!TFS4!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7ec130a-11d7-4048-bcac-baffaeaef8a5_2400x112.png 848w, https://substackcdn.com/image/fetch/$s_!TFS4!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7ec130a-11d7-4048-bcac-baffaeaef8a5_2400x112.png 1272w, https://substackcdn.com/image/fetch/$s_!TFS4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7ec130a-11d7-4048-bcac-baffaeaef8a5_2400x112.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2><strong>What&#8217;s Inside</strong></h2><p>How engineering management principles map onto AI agent workflows. <br>The three failure modes every team hits. <br>Define-Deliver-Drive: a framework for task briefs, WIP limits, and delegation.<br>A five-level autonomy ladder. <br>Five rules to start with tomorrow. <br>And why vibe coding is fine, but vibe management is where it breaks.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>AI Agent Management Is Not Prompt Engineering</h2><p>A better prompt &#8800; better output.</p><p>Real management, whether your team is five humans or five agents, comes down to three things:</p><ul><li><p><strong>Clarity on what done looks like.</strong> No task starts without a verifiable definition of done.</p></li><li><p><strong>Focus on one thing at a time.</strong> WIP limits apply to agents as much as to humans.</p></li><li><p><strong>Ownership that doesn&#8217;t bounce.</strong> Decision rights must be assigned, not assumed.</p></li></ul><p>I call it Define-Deliver-Drive. I&#8217;ve used it with human engineering teams for years and now I use it with agents. </p><p>The engineering discipline (what <a href="https://langchain.com">LangChain calls &#8220;agent engineering&#8221;</a>) and the context quality (what <a href="https://anthropic.com">Anthropic calls &#8220;context engineering&#8221;</a>) both matter. But neither is enough without the management layer this post covers.</p><p>As <a href="https://x.com/Saboo_Shubham_">Shubham Saboo noted on March 27, 2026</a>: </p><p><em>Everyone thinks running AI agents is a technical skill. It&#8217;s not. It&#8217;s a management skill.</em></p><p>He&#8217;s right. </p><p>Let&#8217;s go through all three parts of the framework.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>Three Failure Modes (And Why They Are Not Prompt Problems)</h2><p>Before the framework, we need to name the enemies.</p><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/RllOc/1/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/12b3f621-b6a1-4470-b2f4-67735f3d6d33_1220x616.png&quot;,&quot;thumbnail_url_full&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2163e7fa-7783-45e8-982a-4d2d114001c9_1220x736.png&quot;,&quot;height&quot;:365,&quot;title&quot;:&quot;3 Failure Modes That Break Both Human and AI Agent Teams, and How to Fix Them&quot;,&quot;description&quot;:&quot;Create interactive, responsive &amp; beautiful charts &#8212; no code required.&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/RllOc/1/" width="730" height="365" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div><h3>Failure Mode 1: Ambiguous Success Criteria &#8594; Hallucinated Confidence</h3><p>Fuzzy input <em>can</em> produce polished output. It looks done, so you ship it.</p><p>Then it breaks, or you realize that it was wrong in ways you didn&#8217;t think to check. </p><p>The agent did its job. </p><p>You just never told it what the job was or when it was done.</p><h3>Failure Mode 2: Too Many Parallel Threads &#8594; Fast in Isolation, Broken Together</h3><p>You run multiple agent tasks simultaneously, for example:</p><ul><li><p>Agent 1: Refactors the auth module</p></li><li><p>Agent 2: Updates the API docs</p></li><li><p>Agent 3: Writes tests</p></li><li><p>Agent 4: Runs tests</p></li></ul><p>Each one makes good progress and finishes independently. </p><p>Then you find out that the tests don&#8217;t match the refactored code, and the docs describe an API that no longer exists. </p><p>None of them integrate cleanly. Integration day becomes rewrite day.</p><p>WIP limits exist in engineering for a reason. We learned this lesson with human teams years ago: the more poorly managed work in flight, the less work that lands. Agents just let you make this mistake faster.</p><h3>Failure Mode 3: No Decision Rights &#8594; Constant Human Bottleneck</h3><p>Delegation without decision power is hiring a runner and making them ask permission at every turn.</p><p>If every non-trivial step needs you to weigh in and the agent waits, you become the blocker.</p><p>The whole point of autonomous agents collapses. </p><p>&#8216;&#8216;Prompting better&#8217;&#8217; will not fix this. Hoping the agents will figure it out is wishful thinking. </p><p>Giving agents a system is what makes delegation work.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>The Define-Deliver-Drive Framework</h2><h3>1. Define: Make Done Unambiguous</h3><p>Agents need more clarity than humans. Not less.</p><p><a href="https://www.mindstudio.ai/blog/is-software-engineering-dead-ai-coding-agents">Human developers have calibrated uncertainty</a>: they know when they're in familiar territory and when they're guessing. </p><p>AI tools are more likely to generate plausible-looking output confidently regardless of correctness.</p><p>Our job is to minimize that risk before the task starts. </p><p>Here&#8217;s how.</p><h4>1. Use Task Briefs</h4><pre><code><code>Goal: One sentence. What exists when this is done?

Context: What already exists. What the agent is working in.

Constraints: Libraries, style guide, performance limits, security rules, timebox.

Inputs: Links, files, examples the agent needs.

Output format: The exact artifact: file, PR, summary, table.

Success checks: How you&#8217;ll verify it worked: tests, diffs, review criteria.

Non-goals: Explicitly what not to touch.

Escalation triggers: When to stop and ask rather than proceed.</code></code></pre><p>The last two fields are the ones teams consistently forget. </p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!QqMl!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd302db1-d1e6-4d1d-861a-118f27049ad6_2400x31.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!QqMl!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd302db1-d1e6-4d1d-861a-118f27049ad6_2400x31.png 424w, https://substackcdn.com/image/fetch/$s_!QqMl!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd302db1-d1e6-4d1d-861a-118f27049ad6_2400x31.png 848w, https://substackcdn.com/image/fetch/$s_!QqMl!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd302db1-d1e6-4d1d-861a-118f27049ad6_2400x31.png 1272w, https://substackcdn.com/image/fetch/$s_!QqMl!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd302db1-d1e6-4d1d-861a-118f27049ad6_2400x31.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!QqMl!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd302db1-d1e6-4d1d-861a-118f27049ad6_2400x31.png" width="1456" height="19" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/dd302db1-d1e6-4d1d-861a-118f27049ad6_2400x31.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:19,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1613,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:&quot;&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/192454016?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7ec130a-11d7-4048-bcac-baffaeaef8a5_2400x112.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!QqMl!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd302db1-d1e6-4d1d-861a-118f27049ad6_2400x31.png 424w, https://substackcdn.com/image/fetch/$s_!QqMl!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd302db1-d1e6-4d1d-861a-118f27049ad6_2400x31.png 848w, https://substackcdn.com/image/fetch/$s_!QqMl!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd302db1-d1e6-4d1d-861a-118f27049ad6_2400x31.png 1272w, https://substackcdn.com/image/fetch/$s_!QqMl!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd302db1-d1e6-4d1d-861a-118f27049ad6_2400x31.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h4>2. Use Non-Goals and Escalation Triggers in Every Brief</h4><ul><li><p><strong>Non-goals stop scope creep: </strong></p><ul><li><p><code>Don&#8217;t refactor, just fix the bug</code> prevents a 10-line fix from becoming a 200-line rewrite.</p></li><li><p><code>Don&#8217;t touch the database schema</code> keeps a feature task from becoming a migration.</p></li><li><p><code>Don&#8217;t add new sections</code><em> </em>stops a draft from doubling in scope overnight.</p></li></ul></li><li><p><strong>Escalation triggers are how you get agents that know their limits.</strong></p><ul><li><p><code>If you&#8217;re about to do something not listed in the task brief, stop.</code></p></li><li><p><code>If you&#8217;re making an assumption to fill a gap in the spec, state the assumption first.</code></p></li><li><p><code>If the task takes more than X steps, check in before continuing.</code></p></li></ul></li></ul><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!QqMl!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd302db1-d1e6-4d1d-861a-118f27049ad6_2400x31.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!QqMl!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd302db1-d1e6-4d1d-861a-118f27049ad6_2400x31.png 424w, https://substackcdn.com/image/fetch/$s_!QqMl!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd302db1-d1e6-4d1d-861a-118f27049ad6_2400x31.png 848w, https://substackcdn.com/image/fetch/$s_!QqMl!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd302db1-d1e6-4d1d-861a-118f27049ad6_2400x31.png 1272w, https://substackcdn.com/image/fetch/$s_!QqMl!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd302db1-d1e6-4d1d-861a-118f27049ad6_2400x31.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!QqMl!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd302db1-d1e6-4d1d-861a-118f27049ad6_2400x31.png" width="1456" height="19" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/dd302db1-d1e6-4d1d-861a-118f27049ad6_2400x31.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:19,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1613,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:&quot;&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/192454016?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7ec130a-11d7-4048-bcac-baffaeaef8a5_2400x112.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!QqMl!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd302db1-d1e6-4d1d-861a-118f27049ad6_2400x31.png 424w, https://substackcdn.com/image/fetch/$s_!QqMl!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd302db1-d1e6-4d1d-861a-118f27049ad6_2400x31.png 848w, https://substackcdn.com/image/fetch/$s_!QqMl!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd302db1-d1e6-4d1d-861a-118f27049ad6_2400x31.png 1272w, https://substackcdn.com/image/fetch/$s_!QqMl!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd302db1-d1e6-4d1d-861a-118f27049ad6_2400x31.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h4>3. Definition of Done for AI Agents: If You Can&#8217;t Verify It, It&#8217;s Not Done</h4><ul><li><p>For code: Tests pass, diff reviewed, no regressions.</p></li><li><p>For research: Sources cited, claims traceable, contradictions flagged.</p></li><li><p>For migrations: Rollback documented, edge cases tested, stakeholder notified.</p></li></ul><p>If you can&#8217;t verify it, you haven&#8217;t defined done.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!uz23!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9e0fe795-4da8-4a1f-88a6-2a5f54db97e0_2396x200.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!uz23!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9e0fe795-4da8-4a1f-88a6-2a5f54db97e0_2396x200.png 424w, https://substackcdn.com/image/fetch/$s_!uz23!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9e0fe795-4da8-4a1f-88a6-2a5f54db97e0_2396x200.png 848w, https://substackcdn.com/image/fetch/$s_!uz23!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9e0fe795-4da8-4a1f-88a6-2a5f54db97e0_2396x200.png 1272w, https://substackcdn.com/image/fetch/$s_!uz23!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9e0fe795-4da8-4a1f-88a6-2a5f54db97e0_2396x200.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!uz23!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9e0fe795-4da8-4a1f-88a6-2a5f54db97e0_2396x200.png" width="728" height="60.76794657762938" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9e0fe795-4da8-4a1f-88a6-2a5f54db97e0_2396x200.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:200,&quot;width&quot;:2396,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:11303,&quot;alt&quot;:&quot;Section divider for Perplexity guides library on Product with Attitude.&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider for Perplexity guides library on Product with Attitude." title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!uz23!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9e0fe795-4da8-4a1f-88a6-2a5f54db97e0_2396x200.png 424w, https://substackcdn.com/image/fetch/$s_!uz23!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9e0fe795-4da8-4a1f-88a6-2a5f54db97e0_2396x200.png 848w, https://substackcdn.com/image/fetch/$s_!uz23!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9e0fe795-4da8-4a1f-88a6-2a5f54db97e0_2396x200.png 1272w, https://substackcdn.com/image/fetch/$s_!uz23!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9e0fe795-4da8-4a1f-88a6-2a5f54db97e0_2396x200.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><div class="callout-block" data-callout="true"><p style="text-align: center;">Help me spread the word and I&#8217;ll make it worth your while.<br>Share this with 3 friends or colleagues and you&#8217;ll get a free month of premium membership.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://karozieminski.substack.com/p/ai-agent-management-framework-2026?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://karozieminski.substack.com/p/ai-agent-management-framework-2026?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p></div><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!0O50!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F380b1054-c628-4f38-9835-6362d1392907_2396x219.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!0O50!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F380b1054-c628-4f38-9835-6362d1392907_2396x219.png 424w, https://substackcdn.com/image/fetch/$s_!0O50!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F380b1054-c628-4f38-9835-6362d1392907_2396x219.png 848w, https://substackcdn.com/image/fetch/$s_!0O50!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F380b1054-c628-4f38-9835-6362d1392907_2396x219.png 1272w, https://substackcdn.com/image/fetch/$s_!0O50!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F380b1054-c628-4f38-9835-6362d1392907_2396x219.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!0O50!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F380b1054-c628-4f38-9835-6362d1392907_2396x219.png" width="2396" height="219" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/380b1054-c628-4f38-9835-6362d1392907_2396x219.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:219,&quot;width&quot;:2396,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:12248,&quot;alt&quot;:&quot;Section divider for Perplexity guides library on Product with Attitude.&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider for Perplexity guides library on Product with Attitude." title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!0O50!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F380b1054-c628-4f38-9835-6362d1392907_2396x219.png 424w, https://substackcdn.com/image/fetch/$s_!0O50!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F380b1054-c628-4f38-9835-6362d1392907_2396x219.png 848w, https://substackcdn.com/image/fetch/$s_!0O50!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F380b1054-c628-4f38-9835-6362d1392907_2396x219.png 1272w, https://substackcdn.com/image/fetch/$s_!0O50!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F380b1054-c628-4f38-9835-6362d1392907_2396x219.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>2. Deliver: Protect Your AI Agent&#8217;s Focus</h2><p>This phase prevents failure mode #2. </p><p>More agents running in parallel does not mean more done.</p><p>Work-in-progress limits exist in human teams because context switching has a cost. </p><p>In AI agent workflows, that cost compounds. Every open thread is a merge conflict waiting to happen. </p><h3>1. One Focused Pipeline</h3><p>To prevent this, build one focused pipeline that runs each stage before the next, instead of five parallel agent explorations.</p><p>The rule: one agent, one task, one branch.</p><p><strong>Explore &#8594; Plan &#8594; Execute &#8594; Verify &#8594; Package</strong></p><h4>Practical WIP Policy</h4><ol><li><p><strong>Set a thread limit.</strong> A maximum number of agent threads per human that can be successfully managed by that human.</p></li></ol><ol start="2"><li><p><strong>Gate new starts.</strong> No new task starts until the previous one is completed or deliberately set aside.</p></li></ol><ol start="3"><li><p><strong>Keep deliverables small.</strong> The smaller the output, the easier it is to review properly. </p></li></ol><blockquote><p>The teams shipping reliably with agents aren&#8217;t running ten things at once. They&#8217;re running a couple of things well.</p></blockquote><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>3. Drive: Delegate Autonomy with a Delegation Ladder</h2><p>You want the agent to move autonomously. </p><p>But you haven&#8217;t decided what it can own, what requires your sign-off, and what it should never touch without a human in the loop. </p><p>So it either:</p><ul><li><p>asks you about everything = you&#8217;re the bottleneck</p></li><li><p>or it touches everything = you&#8217;re in trouble</p></li></ul><p>The fix is a Delegation Ladder: an explicit model of how much autonomy each type of task gets.</p><p>These AI agent autonomy levels map closely to academic frameworks from <a href="https://knightcolumbia.org">Knight Columbia</a> and the <a href="https://cloudsecurityalliance.org">Cloud Security Alliance</a>.</p><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/DMquX/1/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5bb6fd39-0cf0-4bdf-9075-c3185df441d1_1220x770.png&quot;,&quot;thumbnail_url_full&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ab4cd3d0-bd6b-4645-9898-375918346ae3_1220x840.png&quot;,&quot;height&quot;:417,&quot;title&quot;:&quot;5 Levels of AI Agent Autonomy: From Draft to Autopilot&quot;,&quot;description&quot;:&quot;Create interactive, responsive &amp; beautiful charts &#8212; no code required.&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/DMquX/1/" width="730" height="417" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div><p></p><h3>How To Climb The Delegation Ladder</h3><ul><li><p>Don&#8217;t jump straight to Level 4 or 5. Start at Level 2. </p></li><li><p>Only move up when you can reliably verify the agent&#8217;s work at the current level.</p></li></ul><p>Next, create an Ownership Map.</p><h3>How To Use The Ownership Map</h3><p>An Ownership Map is a document that answers one question: <em>for each type of task, does the agent own it, or does a human?</em></p><p>Write it in an MD file and share with the agents, so they don&#8217;t need to infer ownership. </p><p>For example:</p><ul><li><p><strong>Agent owns:</strong> first drafts, status updates, reformatting, refactors, test generation, changelog drafts.</p></li><li><p><strong>Human owns:</strong> final approvals, strategy, user data handling.</p></li><li><p><strong>Red flags (always escalate): </strong>security, anything involving personal data, access permissions, anything you can't easily undo.</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>Five Rules That Improve Any AI Agent Workflow in 2026</h2><ol><li><p><strong>No task without a definition of done.</strong></p><p>If you can&#8217;t describe what &#8220;finished&#8221; looks like before the agent starts, the task isn&#8217;t ready. </p></li><li><p><strong>One task at a time.</strong> </p><p>Don&#8217;t let the agent juggle multiple things at once. Focused work beats scattered work, even when the worker is an AI.</p></li><li><p><strong>Keep deliverables small.</strong> </p><p>Give the agent one small piece to finish, not a massive batch. The bigger the output, the less carefully you&#8217;ll check it.</p></li><li><p><strong>Always verify before accepting.</strong> </p><p>Use checklists, spot checks, or human review, especially for high-stakes work. Verification isn&#8217;t something you add after. It&#8217;s built into your definition of done.</p></li><li><p><strong>Set clear escalation triggers.</strong> </p><p>Before the task runs, decide: at what point should the agent stop and ask you instead of continuing on its own? Write it in the brief.</p></li></ol><p>These rules are the management layer. </p><blockquote><p>While <a href="https://langchain.com">LangChain&#8217;s &#8220;agent engineering&#8221;</a> and <a href="https://anthropic.com">Anthropic&#8217;s &#8220;context engineering&#8221;</a> provide the technical foundations, this framework provides the operational discipline that makes those foundations ship reliably.</p></blockquote><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>Vibe Coding Is Fine. Vibe Management Is Where It Breaks.</h2><p>Vibe coding is fine. We all need the speed it provides. High-quality engineering organizations are increasingly comfortable giving up line-by-line control over generated code.</p><p>Vibe management is a different problem entirely.</p><p>When you give fuzzy instructions, run too many tasks at once, and never define what the agent can decide alone, you get work that looks right but isn&#8217;t, results that don&#8217;t fit together, and an agent that either blocks you constantly or makes important calls you never approved.</p><p>The fix is better systems. It always has been. Long before any of us heard about LLMs.</p><p>Thanks for reading,<br>Kacper</p><p style="text-align: center;"><em>If this resonated, I&#8217;d love to hear how you&#8217;re managing your agents right now. What&#8217;s breaking? What&#8217;s working?</em></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://karozieminski.substack.com/p/ai-agent-management-framework-2026/comments&quot;,&quot;text&quot;:&quot;Leave a comment&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://karozieminski.substack.com/p/ai-agent-management-framework-2026/comments"><span>Leave a comment</span></a></p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>Keep Reading</h2><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;ad505c88-db15-41da-af7a-7ac8f581ae1b&quot;,&quot;caption&quot;:&quot;&quot;,&quot;cta&quot;:null,&quot;showBylines&quot;:true,&quot;showDescription&quot;:true,&quot;showImage&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;An Illustrated Guide to Context Engineering, Prompt Engineering, and The Future of Both&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:27968736,&quot;name&quot;:&quot;Karo (Product with Attitude)&quot;,&quot;bio&quot;:&quot;AI Product Manager turning everyone into AI-native builders. I help you design &amp; build with AI, not just use it. I build tools to grow your newsletter and showcase your work. Join a 18K+ community growing critical AI literacy by immersion.&quot;,&quot;photo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!aG8-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F599e664e-d6b8-4249-814a-4feadc68d706_1096x1096.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:100}],&quot;post_date&quot;:&quot;2026-05-13T14:40:22.231Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8c87aa14-7809-42ee-aecf-e627bb1f5f42_2401x1261.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://karozieminski.substack.com/p/context-engineering-product-builders-guide-2026&quot;,&quot;section_name&quot;:&quot;Context Engineering&quot;,&quot;video_upload_id&quot;:null,&quot;id&quot;:193628785,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:102,&quot;comment_count&quot;:13,&quot;publication_id&quot;:4097137,&quot;publication_name&quot;:&quot;Product with Attitude&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!KJxv!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f411cce-3771-42d9-965e-1c01efe464eb_986x986.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;2ff2db16-0ad3-43ec-a97c-b15d9844a564&quot;,&quot;caption&quot;:&quot;&quot;,&quot;cta&quot;:null,&quot;showBylines&quot;:true,&quot;showDescription&quot;:true,&quot;showImage&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;The Only AI Prompting Guide That Works On Reasoning Models (And Our Cognition)&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:27968736,&quot;name&quot;:&quot;Karo (Product with Attitude)&quot;,&quot;bio&quot;:&quot;AI Product Manager turning everyone into AI-native builders. I help you design &amp; build with AI, not just use it. I build tools to grow your newsletter and showcase your work. Join a 18K+ community growing critical AI literacy by immersion.&quot;,&quot;photo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!aG8-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F599e664e-d6b8-4249-814a-4feadc68d706_1096x1096.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:100}],&quot;post_date&quot;:&quot;2026-05-14T11:17:00.000Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e0773576-e005-46fc-915d-0a18004a5a35_2401x1261.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://karozieminski.substack.com/p/ai-prompting-techniques-reasoning-models-2026&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:192159489,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:187,&quot;comment_count&quot;:16,&quot;publication_id&quot;:4097137,&quot;publication_name&quot;:&quot;Product with Attitude&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!KJxv!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f411cce-3771-42d9-965e-1c01efe464eb_986x986.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;99789cb8-35a4-4a1f-800c-b836cc69f01a&quot;,&quot;caption&quot;:&quot;&quot;,&quot;cta&quot;:null,&quot;showBylines&quot;:true,&quot;showDescription&quot;:true,&quot;showImage&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Claude Cowork Guide for Power Users: 50+ Tested Tips on Plugins, Skills, Sub-Agents, and Memory&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:27968736,&quot;name&quot;:&quot;Karo (Product with Attitude)&quot;,&quot;bio&quot;:&quot;AI Product Manager turning everyone into AI-native builders. I help you design &amp; build with AI, not just use it. I build tools to grow your newsletter and showcase your work. Join a 18K+ community growing critical AI literacy by immersion.&quot;,&quot;photo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!aG8-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F599e664e-d6b8-4249-814a-4feadc68d706_1096x1096.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:100}],&quot;post_date&quot;:&quot;2026-03-10T14:47:44.760Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/bed0d2b1-a3a8-44bc-9fd4-5d6c23d82844_2401x1261.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://karozieminski.substack.com/p/claude-cowork-guide-plugins-memory-sub-agents-tips&quot;,&quot;section_name&quot;:&quot;Claude Hub - Guides&quot;,&quot;video_upload_id&quot;:null,&quot;id&quot;:189499956,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:237,&quot;comment_count&quot;:19,&quot;publication_id&quot;:4097137,&quot;publication_name&quot;:&quot;Product with Attitude&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!KJxv!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f411cce-3771-42d9-965e-1c01efe464eb_986x986.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;910c57c8-821f-4888-9370-f929d581cfe0&quot;,&quot;caption&quot;:&quot;&quot;,&quot;cta&quot;:null,&quot;showBylines&quot;:true,&quot;showDescription&quot;:true,&quot;showImage&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Save Credits in Perplexity Computer: Advanced Guide, Part 2 (2026) &quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:27968736,&quot;name&quot;:&quot;Karo (Product with Attitude)&quot;,&quot;bio&quot;:&quot;AI Product Manager turning everyone into AI-native builders. I help you design &amp; build with AI, not just use it. I build tools to grow your newsletter and showcase your work. Join a 18K+ community growing critical AI literacy by immersion.&quot;,&quot;photo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!aG8-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F599e664e-d6b8-4249-814a-4feadc68d706_1096x1096.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:100}],&quot;post_date&quot;:&quot;2026-04-07T07:31:29.452Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/572f249e-aea6-444b-a94f-32082352f9ce_2401x1260.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://karozieminski.substack.com/p/perplexity-computer-save-credits-techniques&quot;,&quot;section_name&quot;:&quot;Perplexity Hub&quot;,&quot;video_upload_id&quot;:null,&quot;id&quot;:192321560,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:91,&quot;comment_count&quot;:9,&quot;publication_id&quot;:4097137,&quot;publication_name&quot;:&quot;Product with Attitude&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!KJxv!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f411cce-3771-42d9-965e-1c01efe464eb_986x986.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><p></p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>You Might Also Enjoy</h2><ul><li><p><a href="https://akulakov.substack.com/p/how-i-wiped-a-database-with-an-ai">How I wiped a database with an AI agent</a> by <span class="mention-wrap" data-attrs="{&quot;name&quot;:&quot;Andrew Kulakov&quot;,&quot;id&quot;:198739276,&quot;type&quot;:&quot;user&quot;,&quot;url&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f0186225-573b-4477-8988-3b7afbf968c1_2048x2048.jpeg&quot;,&quot;uuid&quot;:&quot;085de409-b4ab-4ce4-a4bb-3290e0da937c&quot;}" data-component-name="MentionToDOM"></span> </p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!bbuT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!bbuT!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png 424w, https://substackcdn.com/image/fetch/$s_!bbuT!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png 848w, https://substackcdn.com/image/fetch/$s_!bbuT!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png 1272w, https://substackcdn.com/image/fetch/$s_!bbuT!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!bbuT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png" width="1456" height="145" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/aae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:145,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:158918,&quot;alt&quot;:&quot;Product with Attitude newsletter closing banner with mascot.&quot;,&quot;title&quot;:&quot;Product with Attitude newsletter closing banner with mascot.&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/195778338?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd5b48c3-ae64-45d5-8178-00ab8d02f1a4_2353x256.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Product with Attitude newsletter closing banner with mascot." title="Product with Attitude newsletter closing banner with mascot." srcset="https://substackcdn.com/image/fetch/$s_!bbuT!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png 424w, https://substackcdn.com/image/fetch/$s_!bbuT!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png 848w, https://substackcdn.com/image/fetch/$s_!bbuT!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png 1272w, https://substackcdn.com/image/fetch/$s_!bbuT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p style="text-align: center;"><strong><a href="https://karozieminski.substack.com/about">WHY SUBSCRIBE </a>&#12539;<a href="https://karozieminski.substack.com/p/product-with-attitude-membership-2026">YOUR BENEFITS</a>&#12539; <a href="https://karozieminski.substack.com/p/substack-creator-tools">TOOLS I BUILT</a>&#12539;<a href="https://karozieminski.substack.com/p/claude-guides-code-cowork-skills-workflows">CLAUDE HUB</a>&#12539;<a href="https://karozieminski.substack.com/p/perplexity-ai-guide-2026">PERPLEXITY HUB</a> &#12539;<a href="https://karozieminski.substack.com/p/vibecoding-resources-hub">VIBE CODING HUB</a> </strong></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://karozieminski.substack.com/subscribe&quot;,&quot;text&quot;:&quot;SUBSCRIBE&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://karozieminski.substack.com/subscribe"><span>SUBSCRIBE</span></a></p><p></p><h2></h2>]]></content:encoded></item><item><title><![CDATA[If You Build With AI, You Need This File. And The System That Generates It.]]></title><description><![CDATA[AI Rules File Generator: A Beginner-Friendly System for Replit, Cursor, Gemini & Claude Builders.]]></description><link>https://karozieminski.substack.com/p/if-you-build-with-ai-you-need-this</link><guid isPermaLink="false">https://karozieminski.substack.com/p/if-you-build-with-ai-you-need-this</guid><dc:creator><![CDATA[Karo (Product with Attitude)]]></dc:creator><pubDate>Thu, 27 Nov 2025 14:32:14 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!sJqC!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F866e0dcc-2933-44ea-8dee-c38f182a9fa6_2188x1115.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h6><em>TL;DR</em></h6><h6><em>AI rules files are Markdown instruction files that tell coding agents how to behave inside your project. Tools use different names for them, including AGENTS.md, CLAUDE.md, .cursor/rules/*.mdc, .github/copilot-instructions.md, AI_RULES.md, and replit.md, but the job is the same: give the agent durable project context, conventions, and constraints. The problem is that many public examples teach code style and repo mechanics while skipping product judgment. This guide shows how I use AI rules files as product guardrails for beginner builders, especially around billing, onboarding, data deletion, moderation, notifications, and trust.</em></h6><div><hr></div><p><span class="mention-wrap" data-attrs="{&quot;name&quot;:&quot;Alex McFarland&quot;,&quot;id&quot;:2951923,&quot;type&quot;:&quot;user&quot;,&quot;url&quot;:null,&quot;photo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!IMCb!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ff7c2df-b552-4813-a149-5743da0b27e9_500x500.png&quot;,&quot;uuid&quot;:&quot;3afb7935-46d4-4cb8-a329-9d0f05399323&quot;}" data-component-name="MentionToDOM"></span> and <span class="mention-wrap" data-attrs="{&quot;name&quot;:&quot;Michael Spencer&quot;,&quot;id&quot;:21731691,&quot;type&quot;:&quot;user&quot;,&quot;url&quot;:null,&quot;photo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F75d1bf99-dcf3-4af6-be2a-416c08c954a1_450x450.jpeg&quot;,&quot;uuid&quot;:&quot;6d3154e6-ba6d-45c8-8bb3-d433f05b880a&quot;}" data-component-name="MentionToDOM"></span> are right: creators burn out without systems.  </p><p><a href="https://www.ai-supremacy.com/p/burnout-ai-slop-and-why-i-nuked-my-newsletter-to-start-over">While their post focused on writing</a>, it hits builders just as hard. Without the systems I built, I&#8217;d collapse under my own workload.</p><ul><li><p>My standard for this Substack: <em>quality or nothing</em>. <br>Never AI slop. Never anything I haven&#8217;t researched deeply. Nothing I haven&#8217;t crawled through myself first.</p></li><li><p>My standard for my builds: ethical, solid, anti-cookie-cutter, and maintainable.</p></li><li><p>My problem: Time.</p></li></ul><p>Without my obsessively refined workflows, built at the kitchen table while someone asks where their shoes are, I&#8217;d have burned out ages ago. </p><p>So I build reusable systems as I go. Stubbornly. For writing, for building, for anything that matters.</p><p>And one of them sits at the foundation of every vibecoding project I ship: the flow that generates the rules for my AI agents.</p><p>Today, I&#8217;m sharing that one with you, tuned specifically for beginners who are just starting with coding agents.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!nLR9!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!nLR9!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png 424w, https://substackcdn.com/image/fetch/$s_!nLR9!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png 848w, https://substackcdn.com/image/fetch/$s_!nLR9!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png 1272w, https://substackcdn.com/image/fetch/$s_!nLR9!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!nLR9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png" width="1456" height="123" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:123,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:11402,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&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="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!nLR9!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png 424w, https://substackcdn.com/image/fetch/$s_!nLR9!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png 848w, https://substackcdn.com/image/fetch/$s_!nLR9!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png 1272w, https://substackcdn.com/image/fetch/$s_!nLR9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d289b5f-d579-42ca-9a7c-5f5944575118_2396x202.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p><em>Hey, I&#8217;m Karo Zieminski </em>&#129303;<em> </em></p><p><em>AI Product Manager and <a href="https://karozieminski.substack.com/p/substack-creator-tools">builder</a>. </em></p><p><em>I write Product with Attitude, an AI newsletter for thousands of subscribers developing critical AI literacy the only way it sticks: through practice.</em></p><p><em>We don&#8217;t just use AI. We build workflows, automations, and products with it, while studying how AI itself is built, positioned, and woven into our work.</em></p><p><em>If you&#8217;re new here, welcome! Here&#8217;s what you might have missed:</em></p><ul><li><p><em><strong><a href="https://karozieminski.substack.com/p/context-engineering-product-builders-guide-2026">An Illustrated Guide to Context Engineering, Prompt Engineering, and The Future of Both</a></strong></em></p></li><li><p><em><strong><a href="https://karozieminski.substack.com/p/vibecoding-tips-the-ultimate-collection">Vibe Coding Tips: The Ultimate Collection</a></strong></em></p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!eC5q!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!eC5q!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png 424w, https://substackcdn.com/image/fetch/$s_!eC5q!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png 848w, https://substackcdn.com/image/fetch/$s_!eC5q!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png 1272w, https://substackcdn.com/image/fetch/$s_!eC5q!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!eC5q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png" width="1456" height="12" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:12,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1023,&quot;alt&quot;:&quot;Transparent divider.&quot;,&quot;title&quot;:&quot;Transparent divider.&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/192454016?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7ec130a-11d7-4048-bcac-baffaeaef8a5_2400x112.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Transparent divider." title="Transparent divider." srcset="https://substackcdn.com/image/fetch/$s_!eC5q!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png 424w, https://substackcdn.com/image/fetch/$s_!eC5q!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png 848w, https://substackcdn.com/image/fetch/$s_!eC5q!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png 1272w, https://substackcdn.com/image/fetch/$s_!eC5q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://karozieminski.substack.com/subscribe&quot;,&quot;text&quot;:&quot;SUBSCRIBE&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://karozieminski.substack.com/subscribe"><span>SUBSCRIBE</span></a></p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!eC5q!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!eC5q!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png 424w, https://substackcdn.com/image/fetch/$s_!eC5q!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png 848w, https://substackcdn.com/image/fetch/$s_!eC5q!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png 1272w, https://substackcdn.com/image/fetch/$s_!eC5q!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!eC5q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png" width="1456" height="12" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:12,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1023,&quot;alt&quot;:&quot;Transparent divider.&quot;,&quot;title&quot;:&quot;Transparent divider.&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/192454016?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7ec130a-11d7-4048-bcac-baffaeaef8a5_2400x112.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Transparent divider." title="Transparent divider." srcset="https://substackcdn.com/image/fetch/$s_!eC5q!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png 424w, https://substackcdn.com/image/fetch/$s_!eC5q!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png 848w, https://substackcdn.com/image/fetch/$s_!eC5q!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png 1272w, https://substackcdn.com/image/fetch/$s_!eC5q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7510a08d-6fa8-429e-b33e-651245d93a2d_2400x19.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Dz9H!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7643495-34e2-40ce-abad-d894412325db_2396x209.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Dz9H!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7643495-34e2-40ce-abad-d894412325db_2396x209.png 424w, https://substackcdn.com/image/fetch/$s_!Dz9H!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7643495-34e2-40ce-abad-d894412325db_2396x209.png 848w, https://substackcdn.com/image/fetch/$s_!Dz9H!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7643495-34e2-40ce-abad-d894412325db_2396x209.png 1272w, https://substackcdn.com/image/fetch/$s_!Dz9H!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7643495-34e2-40ce-abad-d894412325db_2396x209.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Dz9H!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7643495-34e2-40ce-abad-d894412325db_2396x209.png" width="1456" height="127" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c7643495-34e2-40ce-abad-d894412325db_2396x209.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:127,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:11749,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&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="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!Dz9H!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7643495-34e2-40ce-abad-d894412325db_2396x209.png 424w, https://substackcdn.com/image/fetch/$s_!Dz9H!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7643495-34e2-40ce-abad-d894412325db_2396x209.png 848w, https://substackcdn.com/image/fetch/$s_!Dz9H!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7643495-34e2-40ce-abad-d894412325db_2396x209.png 1272w, https://substackcdn.com/image/fetch/$s_!Dz9H!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7643495-34e2-40ce-abad-d894412325db_2396x209.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>What&#8217;s Inside</h2><ul><li><p>What AI Rules Files Are</p></li><li><p><a href="https://karozieminski.substack.com/i/173115670/the-problem-with-every-ai-rules-file-ive-seen">The Problem With Every AI Rules File I&#8217;ve Seen</a></p></li><li><p></p></li></ul><h2></h2><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>What AI Rules Files Are</h2><p>AI rules files are persistent project instruction files for coding agents. They tell the agent what to follow, what to avoid, what to confirm, what commands to run, and which product constraints matter before it edits your code.</p><p>You&#8217;ll see them under different names: <mark data-color="#d9ead3" style="background-color: rgb(217, 234, 211); color: rgb(0, 0, 0);">AGENTS.md</mark>, <mark data-color="#d9ead3" style="background-color: rgb(217, 234, 211); color: rgb(0, 0, 0);">CLAUDE.md</mark>, <mark data-color="#d9ead3" style="background-color: rgb(217, 234, 211); color: rgb(0, 0, 0);">.cursor/rules/*.mdc</mark>, <mark data-color="#d9ead3" style="background-color: rgb(217, 234, 211); color: rgb(0, 0, 0);">.github/copilot-instructions.md</mark>, <mark data-color="#d9ead3" style="background-color: rgb(217, 234, 211); color: rgb(0, 0, 0);">AI_RULES.md</mark>, <mark data-color="#d9ead3" style="background-color: rgb(217, 234, 211); color: rgb(0, 0, 0);">.cursorrules</mark>, <mark data-color="#d9ead3" style="background-color: rgb(217, 234, 211); color: rgb(0, 0, 0);">.windsurfrules</mark>, <mark data-color="#d9ead3" style="background-color: rgb(217, 234, 211); color: rgb(0, 0, 0);">replit.md</mark>.</p><p>Without them, agents improvise. With them, they follow your rules.</p><p>Boring product controls are invisible when they work. They become very visible when an agent edits signup, touches billing logic, or removes the moderation check holding the customer experience together.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>The Problem With Every AI Rules File I&#8217;ve Seen</h2><p>Since starting with AI-assisted coding, I&#8217;ve analyzed a small mountain of repos. Studied how skilled engineers structure their AI files. Read all the guides. Built my own. Buried most of them. </p><p>Here&#8217;s what I found:</p><ul><li><p>Many respectable AI rules files are technically brilliant.</p></li><li><p>Too many of them are missing something critical: beginner-friendly <strong><a href="https://karozieminski.substack.com/p/product-thinking-at-the-speed-of-ai-actionable-insights-for-product-managers-builders-founders-vibecoders">product thinking</a></strong>.</p></li></ul><p>They tell the agent to use TypeScript, follow a folder structure, write tests, avoid default exports, and respect whatever architecture pattern the repo already has. </p><p>But they rarely tell the agent what product decisions it&#8217;s allowed to take.</p><blockquote><p>That&#8217;s the dangerous part. A coding agent doesn&#8217;t only write code anymore. It makes product decisions while writing code. If the rules file only teaches code style, the agent will optimize the wrong thing with excellent indentation.</p></blockquote><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!OONj!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc6f3d97-5014-4089-be00-85137147e934_3300x462.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!OONj!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc6f3d97-5014-4089-be00-85137147e934_3300x462.png 424w, https://substackcdn.com/image/fetch/$s_!OONj!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc6f3d97-5014-4089-be00-85137147e934_3300x462.png 848w, https://substackcdn.com/image/fetch/$s_!OONj!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc6f3d97-5014-4089-be00-85137147e934_3300x462.png 1272w, https://substackcdn.com/image/fetch/$s_!OONj!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc6f3d97-5014-4089-be00-85137147e934_3300x462.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!OONj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc6f3d97-5014-4089-be00-85137147e934_3300x462.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/dc6f3d97-5014-4089-be00-85137147e934_3300x462.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:6471,&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://karozieminski.substack.com/i/173115670?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc6f3d97-5014-4089-be00-85137147e934_3300x462.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_!OONj!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc6f3d97-5014-4089-be00-85137147e934_3300x462.png 424w, https://substackcdn.com/image/fetch/$s_!OONj!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc6f3d97-5014-4089-be00-85137147e934_3300x462.png 848w, https://substackcdn.com/image/fetch/$s_!OONj!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc6f3d97-5014-4089-be00-85137147e934_3300x462.png 1272w, https://substackcdn.com/image/fetch/$s_!OONj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc6f3d97-5014-4089-be00-85137147e934_3300x462.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>Why This Matters Now More Than Before</h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!sJqC!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F866e0dcc-2933-44ea-8dee-c38f182a9fa6_2188x1115.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!sJqC!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F866e0dcc-2933-44ea-8dee-c38f182a9fa6_2188x1115.png 424w, https://substackcdn.com/image/fetch/$s_!sJqC!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F866e0dcc-2933-44ea-8dee-c38f182a9fa6_2188x1115.png 848w, https://substackcdn.com/image/fetch/$s_!sJqC!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F866e0dcc-2933-44ea-8dee-c38f182a9fa6_2188x1115.png 1272w, https://substackcdn.com/image/fetch/$s_!sJqC!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F866e0dcc-2933-44ea-8dee-c38f182a9fa6_2188x1115.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!sJqC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F866e0dcc-2933-44ea-8dee-c38f182a9fa6_2188x1115.png" width="2188" height="1115" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/866e0dcc-2933-44ea-8dee-c38f182a9fa6_2188x1115.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1115,&quot;width&quot;:2188,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4338209,&quot;alt&quot;:&quot;The image shows a two-panel cartoon comparing attitudes toward AI agents in 2025.  The left panel, labeled &#8220;February 2025,&#8221; shows a worried person running away from a small robot chasing behind them, suggesting fear or distrust of AI autonomy.  The right panel, labeled &#8220;November 2025,&#8221; shows the same person warmly hugging the robot, indicating that by late 2025 people have embraced autonomous agents because of their clear productivity benefits. Created by Karo from Product with Attitude.&quot;,&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://karozieminski.substack.com/i/173115670?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F364940a0-982e-4333-9bf0-c9cd03c344d5_2188x1365.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="The image shows a two-panel cartoon comparing attitudes toward AI agents in 2025.  The left panel, labeled &#8220;February 2025,&#8221; shows a worried person running away from a small robot chasing behind them, suggesting fear or distrust of AI autonomy.  The right panel, labeled &#8220;November 2025,&#8221; shows the same person warmly hugging the robot, indicating that by late 2025 people have embraced autonomous agents because of their clear productivity benefits. Created by Karo from Product with Attitude." title="The image shows a two-panel cartoon comparing attitudes toward AI agents in 2025.  The left panel, labeled &#8220;February 2025,&#8221; shows a worried person running away from a small robot chasing behind them, suggesting fear or distrust of AI autonomy.  The right panel, labeled &#8220;November 2025,&#8221; shows the same person warmly hugging the robot, indicating that by late 2025 people have embraced autonomous agents because of their clear productivity benefits. Created by Karo from Product with Attitude." srcset="https://substackcdn.com/image/fetch/$s_!sJqC!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F866e0dcc-2933-44ea-8dee-c38f182a9fa6_2188x1115.png 424w, https://substackcdn.com/image/fetch/$s_!sJqC!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F866e0dcc-2933-44ea-8dee-c38f182a9fa6_2188x1115.png 848w, https://substackcdn.com/image/fetch/$s_!sJqC!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F866e0dcc-2933-44ea-8dee-c38f182a9fa6_2188x1115.png 1272w, https://substackcdn.com/image/fetch/$s_!sJqC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F866e0dcc-2933-44ea-8dee-c38f182a9fa6_2188x1115.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 role="img" 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><title></title><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>2025 transformed the industry&#8217;s attitude toward AI autonomy: we opened the year warning against autonomous agents, and ended it embracing them because the productivity upside was too big to deny.</p><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/mRHHI/1/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/854a0b06-b063-4e8c-ae22-96edeab4b0e9_1220x326.png&quot;,&quot;thumbnail_url_full&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4ef65491-6f33-4175-a15b-847f18b1faee_1220x396.png&quot;,&quot;height&quot;:190,&quot;title&quot;:&quot;Evolution in How The Industry Approached AI Autonomy&quot;,&quot;description&quot;:&quot;&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/mRHHI/1/" width="730" height="190" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div><p>The entire tools ecosystem is racing in the same direction:</p><ul><li><p><strong><a href="https://blog.replit.com/introducing-agent-3-our-most-autonomous-agent-yet">Replit&#8217;s Agent 3</a>,</strong> announced two months ago gives builders real, usable autonomy. <a href="https://www.prnewswire.com/news-releases/replit-closes-250-million-in-funding-to-build-on-customer-momentum-302551540.html">Duolingo, Zillow, and Coinbase implement it at scale</a>.<br><em>(Side note: Replit&#8217;s progress this year has been wild. I wouldn&#8217;t be surprised if it becomes <strong>the</strong> viral hit of 2026).</em></p></li><li><p><strong><a href="https://devin.ai/">Devin</a> </strong>is a real autonomous AI software engineer that can plan, code, debug, and deploy in sandboxed environments. <a href="https://www.cnbc.com/2025/07/11/goldman-sachs-autonomous-coder-pilot-marks-major-ai-milestone.html">Goldman Sachs began deploying hundreds of Devin instances in mid-2025.</a></p></li><li><p><strong><a href="https://developers.googleblog.com/en/build-with-google-antigravity-our-new-agentic-development-platform/">Google&#8217;s new Antigravity IDE</a></strong> empowers agents to plan, code, and validate software autonomously. <a href="https://www.constellationr.com/blog-news/insights/google-launches-gemini-3-google-antigravity-generative-ui-features">Figma, Shopify and Thomson Reuters</a> are among the early adopters.</p></li></ul><p>Whatever tool you&#8217;re using, chances are it&#8217;s already nudging you toward autonomy, whether you&#8217;re ready for it or not.</p><p>This changes the role of a rules file: from niche plumbing to the instruction layer for agentic development.</p><p>The adoption data points in the same direction. </p><ul><li><p>AGENTS.md describes itself as &#8220;a simple, open format for guiding coding agents&#8221; and says the format is already used by 60,000+ open-source projects. </p></li><li><p>Cursor documents project rules through .cursor/rules/*.mdc, including metadata like descriptions, globs, and alwaysApply. </p></li><li><p>Dyad uses AI_RULES.md to steer its app-building agent. </p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!OONj!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc6f3d97-5014-4089-be00-85137147e934_3300x462.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!OONj!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc6f3d97-5014-4089-be00-85137147e934_3300x462.png 424w, https://substackcdn.com/image/fetch/$s_!OONj!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc6f3d97-5014-4089-be00-85137147e934_3300x462.png 848w, https://substackcdn.com/image/fetch/$s_!OONj!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc6f3d97-5014-4089-be00-85137147e934_3300x462.png 1272w, https://substackcdn.com/image/fetch/$s_!OONj!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc6f3d97-5014-4089-be00-85137147e934_3300x462.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!OONj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc6f3d97-5014-4089-be00-85137147e934_3300x462.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/dc6f3d97-5014-4089-be00-85137147e934_3300x462.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:6471,&quot;alt&quot;:&quot;&quot;,&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://karozieminski.substack.com/i/173115670?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc6f3d97-5014-4089-be00-85137147e934_3300x462.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!OONj!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc6f3d97-5014-4089-be00-85137147e934_3300x462.png 424w, https://substackcdn.com/image/fetch/$s_!OONj!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc6f3d97-5014-4089-be00-85137147e934_3300x462.png 848w, https://substackcdn.com/image/fetch/$s_!OONj!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc6f3d97-5014-4089-be00-85137147e934_3300x462.png 1272w, https://substackcdn.com/image/fetch/$s_!OONj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc6f3d97-5014-4089-be00-85137147e934_3300x462.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>Why Clear Instructions and Rules Are Critical</h2><div class="comment" data-attrs="{&quot;url&quot;:&quot;https://open.substack.com/home&quot;,&quot;commentId&quot;:157244204,&quot;comment&quot;:{&quot;id&quot;:157244204,&quot;date&quot;:&quot;2025-09-18T10:20:28.840Z&quot;,&quot;edited_at&quot;:null,&quot;body&quot;:&quot;Coding agents don&#8217;t fail at coding. \n\nWe fail at instructing.  &quot;,&quot;body_json&quot;:{&quot;content&quot;:[{&quot;type&quot;:&quot;paragraph&quot;,&quot;content&quot;:[{&quot;text&quot;:&quot;Coding agents don&#8217;t fail at coding. &quot;,&quot;type&quot;:&quot;text&quot;}]},{&quot;type&quot;:&quot;paragraph&quot;,&quot;content&quot;:[{&quot;type&quot;:&quot;text&quot;,&quot;text&quot;:&quot;We fail at instructing.  &quot;}]}],&quot;attrs&quot;:{&quot;schemaVersion&quot;:&quot;v1&quot;},&quot;type&quot;:&quot;doc&quot;},&quot;restacks&quot;:0,&quot;reaction_count&quot;:37,&quot;attachments&quot;:[],&quot;name&quot;:&quot;Karo (Product with Attitude)&quot;,&quot;user_id&quot;:27968736,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/599e664e-d6b8-4249-814a-4feadc68d706_1096x1096.png&quot;,&quot;user_bestseller_tier&quot;:100,&quot;userStatus&quot;:{&quot;bestsellerTier&quot;:100,&quot;subscriberTier&quot;:5,&quot;leaderboard&quot;:null,&quot;vip&quot;:false,&quot;badge&quot;:{&quot;type&quot;:&quot;bestseller&quot;,&quot;tier&quot;:100},&quot;paidPublicationIds&quot;:[378002,3138516,1105980,4613350,4089894,3266189,943157],&quot;subscriber&quot;:null}},&quot;source&quot;:null,&quot;forumChannel&quot;:null}" data-component-name="CommentPlaceholder"></div><div class="callout-block" data-callout="true"><p style="text-align: center;"><strong><a href="https://karozieminski.substack.com/t/prompt-engineering">Prompt engineering</a> + <a href="https://karozieminski.substack.com/p/context-engineering-product-builders-guide-2026">context engineering</a> + human expertise <br>= AI agent performance</strong></p></div><p>But the answer is not &#8216;&#8216;more rules&#8217;&#8217;.</p><p>Bloated rules files can make agents worse. If you paste in 4,000 lines of best practices, you&#8217;re likely to get an agent with a lot of context and many ways to misunderstand you.</p><p>The useful version is smaller and sharper. </p><p>A good AI rules file captures the instructions the agent cannot safely infer from the repo: product decisions, architectural preferences, dangerous actions, required checks, and the human judgment that lives outside the codebase.</p><p><a href="https://arxiv.org/html/2602.11988v1">A 2026 ETH Zurich study</a> found that LLM-generated context files reduced task success by 3% while increasing cost by 20%. </p><p>Human-written files helped only slightly, improving success by 4% while increasing cost by 19%. </p><p>The recommendation was wonderfully harsh: skip LLM-generated context files and keep human-written instructions to details the model cannot infer.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!OONj!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc6f3d97-5014-4089-be00-85137147e934_3300x462.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!OONj!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc6f3d97-5014-4089-be00-85137147e934_3300x462.png 424w, https://substackcdn.com/image/fetch/$s_!OONj!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc6f3d97-5014-4089-be00-85137147e934_3300x462.png 848w, https://substackcdn.com/image/fetch/$s_!OONj!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc6f3d97-5014-4089-be00-85137147e934_3300x462.png 1272w, https://substackcdn.com/image/fetch/$s_!OONj!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc6f3d97-5014-4089-be00-85137147e934_3300x462.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!OONj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc6f3d97-5014-4089-be00-85137147e934_3300x462.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/dc6f3d97-5014-4089-be00-85137147e934_3300x462.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:6471,&quot;alt&quot;:&quot;&quot;,&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://karozieminski.substack.com/i/173115670?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc6f3d97-5014-4089-be00-85137147e934_3300x462.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!OONj!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc6f3d97-5014-4089-be00-85137147e934_3300x462.png 424w, https://substackcdn.com/image/fetch/$s_!OONj!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc6f3d97-5014-4089-be00-85137147e934_3300x462.png 848w, https://substackcdn.com/image/fetch/$s_!OONj!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc6f3d97-5014-4089-be00-85137147e934_3300x462.png 1272w, https://substackcdn.com/image/fetch/$s_!OONj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc6f3d97-5014-4089-be00-85137147e934_3300x462.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2 style="text-align: center;">Which AI Rules File Does Your Tool Use?</h2><p>How you set up and manage your rules file depends on which tool you use.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!sJjv!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe01035fc-7678-4ae8-a35e-f5020796b6a9_1728x2124.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!sJjv!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe01035fc-7678-4ae8-a35e-f5020796b6a9_1728x2124.webp 424w, https://substackcdn.com/image/fetch/$s_!sJjv!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe01035fc-7678-4ae8-a35e-f5020796b6a9_1728x2124.webp 848w, https://substackcdn.com/image/fetch/$s_!sJjv!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe01035fc-7678-4ae8-a35e-f5020796b6a9_1728x2124.webp 1272w, https://substackcdn.com/image/fetch/$s_!sJjv!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe01035fc-7678-4ae8-a35e-f5020796b6a9_1728x2124.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!sJjv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe01035fc-7678-4ae8-a35e-f5020796b6a9_1728x2124.webp" width="1456" height="1790" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e01035fc-7678-4ae8-a35e-f5020796b6a9_1728x2124.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1790,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:174728,&quot;alt&quot;:&quot;AI coding agent rules file reference table mapping tools like AGENTS.md, Claude Code, Cursor, GitHub Copilot, Dyad, Windsurf, and Replit to their config filenames and beginner usage notes.&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/webp&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/173115670?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe01035fc-7678-4ae8-a35e-f5020796b6a9_1728x2124.webp&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="AI coding agent rules file reference table mapping tools like AGENTS.md, Claude Code, Cursor, GitHub Copilot, Dyad, Windsurf, and Replit to their config filenames and beginner usage notes." title="AI coding agent rules file reference table mapping tools like AGENTS.md, Claude Code, Cursor, GitHub Copilot, Dyad, Windsurf, and Replit to their config filenames and beginner usage notes." srcset="https://substackcdn.com/image/fetch/$s_!sJjv!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe01035fc-7678-4ae8-a35e-f5020796b6a9_1728x2124.webp 424w, https://substackcdn.com/image/fetch/$s_!sJjv!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe01035fc-7678-4ae8-a35e-f5020796b6a9_1728x2124.webp 848w, https://substackcdn.com/image/fetch/$s_!sJjv!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe01035fc-7678-4ae8-a35e-f5020796b6a9_1728x2124.webp 1272w, https://substackcdn.com/image/fetch/$s_!sJjv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe01035fc-7678-4ae8-a35e-f5020796b6a9_1728x2124.webp 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 role="img" 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><title></title><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><div class="callout-block" data-callout="true"><p><strong>Pro tip:</strong> keep one canonical product rules document, then adapt it for the tool you are using. Tool-specific files are adapters. </p><p>The source of truth should explain the product clearly enough that Cursor, Claude Code, Replit, Copilot can all inherit the same judgment.</p></div><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2 style="text-align: center;">Why I Add Product Thinking <br>to the Rules For AI</h2><p>Many vibe coders don&#8217;t know the formal conventions or terminology yet, and that&#8217;s perfectly fine.</p><p>None of us were born knowing what a migration is, let alone an <em>idempotent</em> one. We all start somewhere.</p><p>That&#8217;s exactly why I tuned this system the way I did: it doesn&#8217;t just spit out a file, it <em>walks you through the thinking</em>. </p><p>A product-aware rules file teaches the agent the ripple effects behind a feature.</p><ul><li><p>If you add a trial period, your billing logic and onboarding flow change.</p></li><li><p>If you add notifications, you need scheduling, retries, user preferences, unsubscribe behavior, and failure handling.</p></li><li><p>If you add user-generated content, you need moderation flows, abuse checks, reporting, and a plan for what happens when someone inevitably uploads garbage.</p></li><li><p>If you add account deletion, you need data retention rules, audit logs, billing cancellation, email suppression, and a &#8220;please do not resurrect this user like a SaaS vampire&#8221; policy.</p></li></ul><p>These aren&#8217;t coding preferences. They&#8217;re product guardrails.</p><div class="callout-block" data-callout="true"><p>AI rules files for product builders should tell the agent what kind of product we are building, what promises we make to users, and which changes require confirmation before code is touched.</p></div><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2 style="text-align: center;">What Should Go Inside an AI Rules File?</h2><p>Use this filter before adding any rule: can the agent infer this from the repo, or does it need human context?</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!n2cx!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcae136e6-cbf2-4db7-8723-16a3932eaa56_1728x1986.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!n2cx!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcae136e6-cbf2-4db7-8723-16a3932eaa56_1728x1986.webp 424w, https://substackcdn.com/image/fetch/$s_!n2cx!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcae136e6-cbf2-4db7-8723-16a3932eaa56_1728x1986.webp 848w, https://substackcdn.com/image/fetch/$s_!n2cx!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcae136e6-cbf2-4db7-8723-16a3932eaa56_1728x1986.webp 1272w, https://substackcdn.com/image/fetch/$s_!n2cx!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcae136e6-cbf2-4db7-8723-16a3932eaa56_1728x1986.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!n2cx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcae136e6-cbf2-4db7-8723-16a3932eaa56_1728x1986.webp" width="1456" height="1673" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cae136e6-cbf2-4db7-8723-16a3932eaa56_1728x1986.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1673,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:159700,&quot;alt&quot;:&quot;AI agent rules decision table classifying instructions as essential, helpful, redundant, tooling, or product guardrail, with examples and guidance on which rules to keep or delete.&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/webp&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/173115670?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcae136e6-cbf2-4db7-8723-16a3932eaa56_1728x1986.webp&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="AI agent rules decision table classifying instructions as essential, helpful, redundant, tooling, or product guardrail, with examples and guidance on which rules to keep or delete." title="AI agent rules decision table classifying instructions as essential, helpful, redundant, tooling, or product guardrail, with examples and guidance on which rules to keep or delete." srcset="https://substackcdn.com/image/fetch/$s_!n2cx!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcae136e6-cbf2-4db7-8723-16a3932eaa56_1728x1986.webp 424w, https://substackcdn.com/image/fetch/$s_!n2cx!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcae136e6-cbf2-4db7-8723-16a3932eaa56_1728x1986.webp 848w, https://substackcdn.com/image/fetch/$s_!n2cx!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcae136e6-cbf2-4db7-8723-16a3932eaa56_1728x1986.webp 1272w, https://substackcdn.com/image/fetch/$s_!n2cx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcae136e6-cbf2-4db7-8723-16a3932eaa56_1728x1986.webp 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 role="img" 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><title></title><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><div class="callout-block" data-callout="true"><p><strong>The tiny test:</strong> if removing the rule would cause the agent to make a wrong product decision, keep it. If removing it would only make the agent read two extra files, it may be helpful. If a config, linter, test, or CI check can enforce it, move it there.</p></div><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2 style="text-align: center;">What Should <em>Not</em> Go Inside an AI Rules File?</h2><p>Don&#8217;t use your rules file as a junk drawer for every preference you have ever had. That&#8217;s how useful context becomes sludge.</p><p>Rules files should stay concise, specific, and current. A 200-line instruction file with 15 useful lines makes the agent read 185 lines of noise before it can help you. Worse, your important rules get buried in the middle, exactly where long-context models are most likely to lose attention.</p><ul><li><p>Skip rules the agent can already see: TypeScript, React, Next.js, package managers, formatter choices, and obvious folder names are often visible in config files.</p></li><li><p>Move enforceable rules into tooling: linting, formatting, naming conventions, test commands, and pre-commit checks belong in linters, formatters, CI, or scripts when possible.</p></li><li><p>Avoid vague rules: &#8220;write clean code,&#8221; &#8220;use best practices,&#8221; and &#8220;make it scalable&#8221; do not help the agent. They give the model nothing concrete to obey.</p></li><li><p>Note human judgment in the file: billing promises, data deletion behavior, moderation rules, support expectations, safety boundaries, and &#8220;ask before doing this&#8221; rules belong here.</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2 style="text-align: center;">The Agent Rules Generator Prompt</h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!7Y2B!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe16ed6d-ec56-4be1-a9c9-157bc9653ce0_1395x926.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!7Y2B!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe16ed6d-ec56-4be1-a9c9-157bc9653ce0_1395x926.png 424w, https://substackcdn.com/image/fetch/$s_!7Y2B!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe16ed6d-ec56-4be1-a9c9-157bc9653ce0_1395x926.png 848w, https://substackcdn.com/image/fetch/$s_!7Y2B!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe16ed6d-ec56-4be1-a9c9-157bc9653ce0_1395x926.png 1272w, https://substackcdn.com/image/fetch/$s_!7Y2B!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe16ed6d-ec56-4be1-a9c9-157bc9653ce0_1395x926.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!7Y2B!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe16ed6d-ec56-4be1-a9c9-157bc9653ce0_1395x926.png" width="1395" height="926" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/be16ed6d-ec56-4be1-a9c9-157bc9653ce0_1395x926.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:926,&quot;width&quot;:1395,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:322063,&quot;alt&quot;:&quot;Stacked code prompt snippets for the Agent Rules Generator from Karo at Product with Attitude.&quot;,&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://karozieminski.substack.com/i/173115670?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe16ed6d-ec56-4be1-a9c9-157bc9653ce0_1395x926.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Stacked code prompt snippets for the Agent Rules Generator from Karo at Product with Attitude." title="Stacked code prompt snippets for the Agent Rules Generator from Karo at Product with Attitude." srcset="https://substackcdn.com/image/fetch/$s_!7Y2B!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe16ed6d-ec56-4be1-a9c9-157bc9653ce0_1395x926.png 424w, https://substackcdn.com/image/fetch/$s_!7Y2B!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe16ed6d-ec56-4be1-a9c9-157bc9653ce0_1395x926.png 848w, https://substackcdn.com/image/fetch/$s_!7Y2B!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe16ed6d-ec56-4be1-a9c9-157bc9653ce0_1395x926.png 1272w, https://substackcdn.com/image/fetch/$s_!7Y2B!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe16ed6d-ec56-4be1-a9c9-157bc9653ce0_1395x926.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 role="img" 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><title></title><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">Selected Prompt Snippets</figcaption></figure></div><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!QqMl!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd302db1-d1e6-4d1d-861a-118f27049ad6_2400x31.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!QqMl!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd302db1-d1e6-4d1d-861a-118f27049ad6_2400x31.png 424w, https://substackcdn.com/image/fetch/$s_!QqMl!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd302db1-d1e6-4d1d-861a-118f27049ad6_2400x31.png 848w, https://substackcdn.com/image/fetch/$s_!QqMl!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd302db1-d1e6-4d1d-861a-118f27049ad6_2400x31.png 1272w, https://substackcdn.com/image/fetch/$s_!QqMl!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd302db1-d1e6-4d1d-861a-118f27049ad6_2400x31.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!QqMl!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd302db1-d1e6-4d1d-861a-118f27049ad6_2400x31.png" width="1456" height="19" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/dd302db1-d1e6-4d1d-861a-118f27049ad6_2400x31.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:19,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1613,&quot;alt&quot;:&quot;Transparent divider.&quot;,&quot;title&quot;:&quot;&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/192454016?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7ec130a-11d7-4048-bcac-baffaeaef8a5_2400x112.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Transparent divider." title="Transparent divider." srcset="https://substackcdn.com/image/fetch/$s_!QqMl!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd302db1-d1e6-4d1d-861a-118f27049ad6_2400x31.png 424w, https://substackcdn.com/image/fetch/$s_!QqMl!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd302db1-d1e6-4d1d-861a-118f27049ad6_2400x31.png 848w, https://substackcdn.com/image/fetch/$s_!QqMl!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd302db1-d1e6-4d1d-861a-118f27049ad6_2400x31.png 1272w, https://substackcdn.com/image/fetch/$s_!QqMl!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd302db1-d1e6-4d1d-861a-118f27049ad6_2400x31.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h5 style="text-align: center;"><em><mark data-color="#d9ead3" style="background-color: rgb(217, 234, 211); color: rgb(0, 0, 0);">Before running the prompt, make sure you&#8217;ve read this</mark></em><mark data-color="#d9ead3" style="background-color: rgb(217, 234, 211); color: rgb(0, 0, 0);">&#128071;.</mark></h5><h3 style="text-align: center;">How And Why This System Works</h3><div class="callout-block" data-callout="true"><p>The generator asks beginner-product questions before it writes rules. That is the part I care about. The output file matters, but the thinking path matters more because it teaches you which decisions an agent should never guess.</p></div><ul><li><p>Best practices: It preserves the best of the existing &#8216;rules for AI&#8217; best practices, with a few additions tailored for beginner-friendly product thinking.</p></li><li><p>Environment-aware: it generates the <em>right</em> file for your actual setup - <code>replit.md</code>, <code>cursor.mdc</code>,  whatever you&#8217;re using.</p></li><li><p>Teaching built in: every rule explains <em>why</em> it exists in simple language. You learn conventions in context, not from a textbook.</p></li><li><p>Ripple-effect awareness: it shows the downstream consequences beginners without product management experience usually miss:</p><ul><li><p><em>If you add a trial period &#10140; your billing logic  + onboarding flow change</em></p></li><li><p><em>If you add notifications &#10140; you&#8217;ll need scheduling + retries + preferences</em></p></li><li><p><em>If you add user-generated content &#10140; you&#8217;ll need moderation flows + abuse checks</em></p></li><li><p>It also forces a clean Build Now vs. Build Later split so you don&#8217;t ship products that look like my Substack drafts folder: 37 features started, none finished.</p></li></ul></li></ul><div class="callout-block" data-callout="true"><p><strong>For agents and for humans:</strong> You&#8217;ll notice the prompt is written in plain language, not JSON. That&#8217;s intentional. It outputs a critical project file so I want to keep it bilingual, readable by both humans and agents.</p></div><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h3 style="text-align: center;">How To Use The Agent Rules Builder Prompt</h3><p style="text-align: center;"><em>This prompt is a full system on its own, so I&#8217;m giving it a dedicated page. </em></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://karozieminski.substack.com/p/vibecoding-rules-for-ai-generator-environment-aware-replit-cursor-lovable-gemini-antigravity&quot;,&quot;text&quot;:&quot;&#129302; COPY PROMPT&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://karozieminski.substack.com/p/vibecoding-rules-for-ai-generator-environment-aware-replit-cursor-lovable-gemini-antigravity"><span>&#129302; COPY PROMPT</span></a></p><p>Use the prompt in your ChatGPT, Claude, Gemini, or coding-agent setup.</p><p>The prompt will feel slower than a one-shot &#8220;generate my rules file&#8221; command. Good. Fast rules files are how we get confident nonsense with a filename. This one asks enough questions to make the rules useful.</p><p>Be prepared to answer questions from the agent - it takes 10 minutes now,  saves you hours afterwards.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h3 style="text-align: center;">What To Do With The Generated Rules File</h3><p>How you set up and manage your rules file depends on which tool you use.</p><p>Start by saving the generated file in the format your tool expects. Then do one boring but important pass yourself. Read every rule and ask: <em>would I be comfortable with an agent following this while I&#8217;m not watching?</em></p><p>If the answer is no, tighten the rule.</p><p>If the rule says &#8220;avoid breaking billing,&#8221; rewrite it as &#8220;before changing billing, list affected Stripe objects, account states, webhooks, trials, and downgrade behavior, then ask for confirmation.&#8221;</p><p>Agents do better with specific constraints than moral encouragement. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!VGhZ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec870e01-cddc-4486-81bd-af5529f4a442_1728x3729.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!VGhZ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec870e01-cddc-4486-81bd-af5529f4a442_1728x3729.webp 424w, https://substackcdn.com/image/fetch/$s_!VGhZ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec870e01-cddc-4486-81bd-af5529f4a442_1728x3729.webp 848w, https://substackcdn.com/image/fetch/$s_!VGhZ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec870e01-cddc-4486-81bd-af5529f4a442_1728x3729.webp 1272w, https://substackcdn.com/image/fetch/$s_!VGhZ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec870e01-cddc-4486-81bd-af5529f4a442_1728x3729.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!VGhZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec870e01-cddc-4486-81bd-af5529f4a442_1728x3729.webp" width="1456" height="3142" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ec870e01-cddc-4486-81bd-af5529f4a442_1728x3729.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:3142,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:288742,&quot;alt&quot;:&quot;AI coding agent rules file reference table mapping each tool to its config file: AGENTS.md uses AGENTS.md, Claude Code uses CLAUDE.md, Cursor uses .cursor/rules/*.mdc, GitHub Copilot uses .github/copilot-instructions.md, Dyad uses AI_RULES.md, Windsurf uses .windsurfrules, Replit uses replit.md, Gemini and Antigravity use GEMINI.md, and Lovable uses Custom Knowledge or Agents.md.&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/webp&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/173115670?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec870e01-cddc-4486-81bd-af5529f4a442_1728x3729.webp&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="AI coding agent rules file reference table mapping each tool to its config file: AGENTS.md uses AGENTS.md, Claude Code uses CLAUDE.md, Cursor uses .cursor/rules/*.mdc, GitHub Copilot uses .github/copilot-instructions.md, Dyad uses AI_RULES.md, Windsurf uses .windsurfrules, Replit uses replit.md, Gemini and Antigravity use GEMINI.md, and Lovable uses Custom Knowledge or Agents.md." title="AI coding agent rules file reference table mapping each tool to its config file: AGENTS.md uses AGENTS.md, Claude Code uses CLAUDE.md, Cursor uses .cursor/rules/*.mdc, GitHub Copilot uses .github/copilot-instructions.md, Dyad uses AI_RULES.md, Windsurf uses .windsurfrules, Replit uses replit.md, Gemini and Antigravity use GEMINI.md, and Lovable uses Custom Knowledge or Agents.md." srcset="https://substackcdn.com/image/fetch/$s_!VGhZ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec870e01-cddc-4486-81bd-af5529f4a442_1728x3729.webp 424w, https://substackcdn.com/image/fetch/$s_!VGhZ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec870e01-cddc-4486-81bd-af5529f4a442_1728x3729.webp 848w, https://substackcdn.com/image/fetch/$s_!VGhZ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec870e01-cddc-4486-81bd-af5529f4a442_1728x3729.webp 1272w, https://substackcdn.com/image/fetch/$s_!VGhZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec870e01-cddc-4486-81bd-af5529f4a442_1728x3729.webp 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 role="img" 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><title></title><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><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2 style="text-align: center;">How to Keep Your AI Rules File From Rotting</h2><p>Agent files aren&#8217;t static, they grow with your project. This workflow gives you a rock-solid starting framework, but the real power comes from how <em>you</em> <em>evolve</em> <em>it</em>. </p><p>As your projects get deeper, you&#8217;ll find yourself adding new instructions, commands, and shortcuts so you don&#8217;t have to retype the same prompts over and over. </p><p>None of this needs to be perfect on day one, the file will mature alongside your projects.</p><h3>The post-bug update ritual</h3><div class="callout-block" data-callout="true"><p>Whenever your agent breaks something, don&#8217;t just fix it - ask it this:</p><pre><code><code>Based on our session and the fixes we made, what are the key things that should be added to my replit.md to prevent these issues in the future.</code></code></pre></div><p>Here&#8217;s a real response from Replit to that exact question, from yesterday&#8217;s session:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!YQLl!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4026612c-dfdc-4a8e-97a6-2d7fca274eb1_581x307.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!YQLl!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4026612c-dfdc-4a8e-97a6-2d7fca274eb1_581x307.png 424w, https://substackcdn.com/image/fetch/$s_!YQLl!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4026612c-dfdc-4a8e-97a6-2d7fca274eb1_581x307.png 848w, https://substackcdn.com/image/fetch/$s_!YQLl!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4026612c-dfdc-4a8e-97a6-2d7fca274eb1_581x307.png 1272w, https://substackcdn.com/image/fetch/$s_!YQLl!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4026612c-dfdc-4a8e-97a6-2d7fca274eb1_581x307.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!YQLl!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4026612c-dfdc-4a8e-97a6-2d7fca274eb1_581x307.png" width="581" height="307" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4026612c-dfdc-4a8e-97a6-2d7fca274eb1_581x307.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:307,&quot;width&quot;:581,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:63842,&quot;alt&quot;:&quot;Code snippet from Karo&#8217;s Product with Attitude explaining shadcn Card gradient rules and inline style fix.&quot;,&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://karozieminski.substack.com/i/173115670?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4026612c-dfdc-4a8e-97a6-2d7fca274eb1_581x307.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Code snippet from Karo&#8217;s Product with Attitude explaining shadcn Card gradient rules and inline style fix." title="Code snippet from Karo&#8217;s Product with Attitude explaining shadcn Card gradient rules and inline style fix." srcset="https://substackcdn.com/image/fetch/$s_!YQLl!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4026612c-dfdc-4a8e-97a6-2d7fca274eb1_581x307.png 424w, https://substackcdn.com/image/fetch/$s_!YQLl!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4026612c-dfdc-4a8e-97a6-2d7fca274eb1_581x307.png 848w, https://substackcdn.com/image/fetch/$s_!YQLl!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4026612c-dfdc-4a8e-97a6-2d7fca274eb1_581x307.png 1272w, https://substackcdn.com/image/fetch/$s_!YQLl!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4026612c-dfdc-4a8e-97a6-2d7fca274eb1_581x307.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 role="img" 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><title></title><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>That gives me a clear to&#8209;do list for updating my project&#8217;s <code>replit.md</code>. And, more importantly, I walk away smarter than before.</p><p>Every agent failure should harden the system. If the agent broke a payment flow, add a billing guardrail. If it broke auth redirects, add an onboarding rule. If it hallucinated a package, add a dependency rule.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2 style="text-align: center;">Security: Do Not Paste Random Rules Files </h2><p>Rules files are powerful because agents obey them. That also makes them an attack surface.</p><p>Security researchers have already warned about <strong>rules-file backdoors</strong>, hidden Unicode, poisoned community templates, and instructions that look harmless to humans while steering the agent toward unsafe behavior.</p><p>Before copying a community rules file, treat it like code:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!gj34!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F10ad378a-23f9-459b-8b66-8230a406c00e_1728x1104.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!gj34!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F10ad378a-23f9-459b-8b66-8230a406c00e_1728x1104.webp 424w, https://substackcdn.com/image/fetch/$s_!gj34!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F10ad378a-23f9-459b-8b66-8230a406c00e_1728x1104.webp 848w, https://substackcdn.com/image/fetch/$s_!gj34!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F10ad378a-23f9-459b-8b66-8230a406c00e_1728x1104.webp 1272w, https://substackcdn.com/image/fetch/$s_!gj34!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F10ad378a-23f9-459b-8b66-8230a406c00e_1728x1104.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!gj34!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F10ad378a-23f9-459b-8b66-8230a406c00e_1728x1104.webp" width="1456" height="930" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/10ad378a-23f9-459b-8b66-8230a406c00e_1728x1104.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:930,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:104196,&quot;alt&quot;:&quot;AI agent rules file security checklist table: review the diff manually because rules can tell the agent to skip tests, check for hidden Unicode that conceals instructions, never include secrets like API keys, prefer your own source of truth over copied templates, and delete any imported rule the agent cannot justify.&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/webp&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/173115670?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F10ad378a-23f9-459b-8b66-8230a406c00e_1728x1104.webp&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="AI agent rules file security checklist table: review the diff manually because rules can tell the agent to skip tests, check for hidden Unicode that conceals instructions, never include secrets like API keys, prefer your own source of truth over copied templates, and delete any imported rule the agent cannot justify." title="AI agent rules file security checklist table: review the diff manually because rules can tell the agent to skip tests, check for hidden Unicode that conceals instructions, never include secrets like API keys, prefer your own source of truth over copied templates, and delete any imported rule the agent cannot justify." srcset="https://substackcdn.com/image/fetch/$s_!gj34!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F10ad378a-23f9-459b-8b66-8230a406c00e_1728x1104.webp 424w, https://substackcdn.com/image/fetch/$s_!gj34!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F10ad378a-23f9-459b-8b66-8230a406c00e_1728x1104.webp 848w, https://substackcdn.com/image/fetch/$s_!gj34!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F10ad378a-23f9-459b-8b66-8230a406c00e_1728x1104.webp 1272w, https://substackcdn.com/image/fetch/$s_!gj34!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F10ad378a-23f9-459b-8b66-8230a406c00e_1728x1104.webp 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 role="img" 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><title></title><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><blockquote><p>A good rule of thumb: if you wouldn&#8217;t paste unknown code into production, don&#8217;t paste unknown instructions into the tool that writes your code.</p></blockquote><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2 style="text-align: center;">Prompt Versioning</h2><p>I version the prompt because agent behavior changes, tool conventions change, and my own mistakes keep contributing generously to the research program. Every new weird failure teaches the generator another question to ask.</p><p>The version you see today is v9, and I&#8217;ll be updating it in real-time on the <strong><a href="https://karozieminski.substack.com/p/vibecoding-rules-for-ai-generator-environment-aware-replit-cursor-lovable-gemini-antigravity">prompt page</a> </strong>so you always have access to the latest iteration. </p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://karozieminski.substack.com/p/vibecoding-rules-for-ai-generator-environment-aware-replit-cursor-lovable-gemini-antigravity&quot;,&quot;text&quot;:&quot;&#129302; COPY PROMPT&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://karozieminski.substack.com/p/vibecoding-rules-for-ai-generator-environment-aware-replit-cursor-lovable-gemini-antigravity"><span>&#129302; COPY PROMPT</span></a></p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2 style="text-align: center;">Key Takeways</h2><ul><li><p>Rules files are how you &#8220;raise&#8221; well&#8209;behaved AI agents: they encode conventions, guardrails, and product context instead of letting agents improvise.</p></li><li><p>AI rules files should be treated as product guardrails, not only code-style checklists.</p></li><li><p>Most public rules files miss beginner&#8209;friendly product thinking, so agents ship changes that ignore flows like billing, onboarding, and moderation.</p></li><li><p>Minimal rules beat bloated rules. Keep what the agent cannot infer, move enforceable rules into tooling, and delete the obvious stuff.</p></li><li><p>The Agent Rules Generator is a single prompt that outputs platform&#8209;specific rules files (Replit, Cursor, Gemini, Lovable, Antigravity) with explanations in plain language.</p></li><li><p>You use it as a living system: generate an initial rules file, then update it every time an agent breaks something so each failure hardens the rules.</p></li><li><p>As autonomous coding agents go mainstream, builders who invest in strong rules, specs, and governance prompts will get the upside without letting agents quietly wreck their product.</p></li></ul><p>Everything I&#8217;ve managed to build this year, every workflow, post, and bug fix squeezed between &#8220;Moooom!&#8221; and a Teams meeting, only happened because I had systems to hold the weight.</p><p>This is one of those systems.</p><p>AI rules files are not glamorous, but they&#8217;re useful.</p><p>Use the rules file to teach the agent your product judgment. Keep it small. Keep it current. Add the guardrails a beginner would not know to name yet.</p><p>I hope this one helps you too.</p><p>If you try the Agent Rules Generator, I want to see what it catches in your project. Especially the weird product ripple effects. Those are the ones that teach all of us faster.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>Additional Resources</h2><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;1aa6378b-3e6f-4d67-bc28-7f6e5a3c1564&quot;,&quot;caption&quot;:&quot;&quot;,&quot;cta&quot;:null,&quot;showBylines&quot;:true,&quot;showDescription&quot;:true,&quot;showImage&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;An Illustrated Guide to Context Engineering, Prompt Engineering, and The Future of Both&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:27968736,&quot;name&quot;:&quot;Karo (Product with Attitude)&quot;,&quot;bio&quot;:&quot;AI Product Manager turning everyone into AI-native builders. I help you design &amp; build with AI, not just use it. I build tools to grow your newsletter and showcase your work. Join a 18K+ community growing critical AI literacy by immersion.&quot;,&quot;photo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!aG8-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F599e664e-d6b8-4249-814a-4feadc68d706_1096x1096.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:100}],&quot;post_date&quot;:&quot;2026-05-13T14:40:22.231Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8c87aa14-7809-42ee-aecf-e627bb1f5f42_2401x1261.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://karozieminski.substack.com/p/context-engineering-product-builders-guide-2026&quot;,&quot;section_name&quot;:&quot;Context Engineering&quot;,&quot;video_upload_id&quot;:null,&quot;id&quot;:193628785,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:92,&quot;comment_count&quot;:14,&quot;publication_id&quot;:4097137,&quot;publication_name&quot;:&quot;Product with Attitude&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!KJxv!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f411cce-3771-42d9-965e-1c01efe464eb_986x986.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><p>In this article, I make the case for context engineering as the real system behind reliable AI products, then hand you the framework, Skill, and prompt I use to make it practical.</p><h3>Claude Skills Library</h3><p>I maintain two tested Claude Skills libraries: one with <strong><a href="https://karozieminski.substack.com/t/claude-skills">skills I&#8217;ve built myself</a></strong>, and one with skills <a href="https://vault.productwithattitude.com/#/">shared by the Product with Attitude community</a>.</p><p>You can find the community-built Claude Skills in <strong><a href="https://vault.productwithattitude.com/#/">Attitude Vault</a></strong>. Built one yourself? Share it there too.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Lq6W!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F13ee724d-8d64-48c6-ae67-62f7126fe6a4_1225x618.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Lq6W!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F13ee724d-8d64-48c6-ae67-62f7126fe6a4_1225x618.png 424w, https://substackcdn.com/image/fetch/$s_!Lq6W!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F13ee724d-8d64-48c6-ae67-62f7126fe6a4_1225x618.png 848w, https://substackcdn.com/image/fetch/$s_!Lq6W!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F13ee724d-8d64-48c6-ae67-62f7126fe6a4_1225x618.png 1272w, https://substackcdn.com/image/fetch/$s_!Lq6W!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F13ee724d-8d64-48c6-ae67-62f7126fe6a4_1225x618.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Lq6W!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F13ee724d-8d64-48c6-ae67-62f7126fe6a4_1225x618.png" width="1225" height="618" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/13ee724d-8d64-48c6-ae67-62f7126fe6a4_1225x618.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:618,&quot;width&quot;:1225,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:191631,&quot;alt&quot;:&quot;&quot;,&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://karozieminski.substack.com/i/189783283?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F13ee724d-8d64-48c6-ae67-62f7126fe6a4_1225x618.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!Lq6W!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F13ee724d-8d64-48c6-ae67-62f7126fe6a4_1225x618.png 424w, https://substackcdn.com/image/fetch/$s_!Lq6W!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F13ee724d-8d64-48c6-ae67-62f7126fe6a4_1225x618.png 848w, https://substackcdn.com/image/fetch/$s_!Lq6W!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F13ee724d-8d64-48c6-ae67-62f7126fe6a4_1225x618.png 1272w, https://substackcdn.com/image/fetch/$s_!Lq6W!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F13ee724d-8d64-48c6-ae67-62f7126fe6a4_1225x618.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 role="img" 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><title></title><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><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jVAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png" width="1456" height="204" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:204,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4180,&quot;alt&quot;:&quot;Section divider&quot;,&quot;title&quot;:&quot;Section divider&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/184344836?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Section divider" title="Section divider" srcset="https://substackcdn.com/image/fetch/$s_!jVAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 424w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 848w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1272w, https://substackcdn.com/image/fetch/$s_!jVAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa17b1657-2e33-4bc2-b978-23134ab2fb0e_2396x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>FAQ</h2><h3>What is an AI rules file?</h3><p>An AI rules file is a persistent instruction file for a coding agent. It usually lives in or near your project repository and tells the agent what conventions, commands, constraints, and product guardrails to follow while changing code.</p><h3>What is the difference between AGENTS.md, CLAUDE.md, and Cursor rules?</h3><p>They are different file formats for the same broad job: giving coding agents persistent project instructions. AGENTS.md is an open format for agent guidance, CLAUDE.md is commonly used with Claude Code, and Cursor uses .cursor/rules/*.mdc files that can be scoped by metadata and file patterns.</p><h3>Should beginners use AI rules files?</h3><p>Yes, and the file is concise and product-aware. Beginners benefit because a rules file makes hidden judgment visible. The trap is generating a giant generic file full of rules the agent can already infer.</p><h3>Can AI rules files make coding agents worse?</h3><p>Yes. Bloated or generic rules files can waste context, increase cost, and distract the agent from useful project information. The safest pattern is to include only non-inferable instructions, product guardrails, and rules that change agent behavior.</p><h3>Are AI rules files a security risk?</h3><p>They can be. A copied rules file can include unsafe instructions, hidden Unicode, or malicious guidance. Treat community rules files like code: review them before use, never include secrets, and delete anything you cannot explain.</p><h3>What is CLAUDE.md and why does it matter?</h3><p>CLAUDE.md is a project instruction file used with Claude Code to define conventions, context, guardrails, commands, and expectations. It matters because agentic coding gets much better when Claude does not need to rediscover your project rules every session.</p><div><hr></div><h2>You Might Also Enjoy</h2><p><a href="https://leadershipinchange.com/p/shared-ai-context-the-one-file-that-saves-your-team-thousands-of-hours">The One File That Can Save Your Team Thousands of Hours</a> by<strong> </strong><span class="mention-wrap" data-attrs="{&quot;name&quot;:&quot;Joel Salinas&quot;,&quot;id&quot;:198127390,&quot;type&quot;:&quot;user&quot;,&quot;url&quot;:null,&quot;photo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!Uip2!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8ed5e6c5-5af1-4813-959c-4a1c14354fd2_500x500.png&quot;,&quot;uuid&quot;:&quot;c0371546-ad1e-40de-8451-757be5cff078&quot;}" data-component-name="MentionToDOM"></span> <a href="https://davistreybig.substack.com/p/documentation-as-tool-for-agents?utm_source=%2Fsearch%2Fagents.md&amp;utm_medium=reader2">Documentation As Tool For Agents</a> by <span class="mention-wrap" data-attrs="{&quot;name&quot;:&quot;Davis Treybig&quot;,&quot;id&quot;:433757,&quot;type&quot;:&quot;user&quot;,&quot;url&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/90e1e40a-b067-444c-89bf-e71c96a8bdc6_400x400.jpeg&quot;,&quot;uuid&quot;:&quot;d4f647f7-350f-41f2-965a-6e66c9e4caab&quot;}" data-component-name="MentionToDOM"></span><br><a href="https://dspn.substack.com/p/how-to-reference-code-across-repositories?utm_source=%2Fsearch%2Fagents.md&amp;utm_medium=reader2">How to Reference Code Across Repositories with Coding Agents</a> by <span class="mention-wrap" data-attrs="{&quot;name&quot;:&quot;Eric J. Ma&quot;,&quot;id&quot;:25243025,&quot;type&quot;:&quot;user&quot;,&quot;url&quot;:null,&quot;photo_url&quot;:&quot;https://bucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com/public/images/f9f3567d-ca28-439f-8abd-36c39d4cb742_399x399.jpeg&quot;,&quot;uuid&quot;:&quot;ff3a004d-e842-4ed1-9d2b-2220d2deedfb&quot;}" data-component-name="MentionToDOM"></span> <br><a href="https://refactoring.fm/p/managing-context-for-ai-coding?utm_source=%2Fsearch%2Fagents.md&amp;utm_medium=reader2&amp;hide_intro_popup=true">How to Manage Context in AI Coding</a> by <span class="mention-wrap" data-attrs="{&quot;name&quot;:&quot;Luca Rossi&quot;,&quot;id&quot;:6835984,&quot;type&quot;:&quot;user&quot;,&quot;url&quot;:null,&quot;photo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2Ff6107486-b701-4109-8f21-f450fed6e277_652x690.png&quot;,&quot;uuid&quot;:&quot;4897d4ae-7d05-4f48-b3ef-9b5b978d5ac2&quot;}" data-component-name="MentionToDOM"></span><br><a href="https://blog.sshh.io/p/how-i-use-every-claude-code-feature?utm_source=%2Fsearch%2Fagents.md&amp;utm_medium=reader2&amp;hide_intro_popup=true">How I Use Every Claude Code Feature</a> by <span class="mention-wrap" data-attrs="{&quot;name&quot;:&quot;Shrivu Shankar&quot;,&quot;id&quot;:87740142,&quot;type&quot;:&quot;user&quot;,&quot;url&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c917d9b1-91ee-41d0-a0e0-e3446a4b6359_460x460.jpeg&quot;,&quot;uuid&quot;:&quot;ba8a9f38-8c93-447e-a0fe-9ef1af7dd72f&quot;}" data-component-name="MentionToDOM"></span><br><a href="https://rakiabensassi.substack.com/p/stop-just-prompting-your-ai-coder?utm_source=%2Fsearch%2Fclaude.md&amp;utm_medium=reader2">Stop Just Prompting Your AI Coder. Start Context Engineering</a> by <span class="mention-wrap" data-attrs="{&quot;name&quot;:&quot;Rakia Ben Sassi&quot;,&quot;id&quot;:9970269,&quot;type&quot;:&quot;user&quot;,&quot;url&quot;:null,&quot;photo_url&quot;:&quot;https://bucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com/public/images/96d3fe1b-6df8-406c-bd6c-dccc69ea2a95_345x345.jpeg&quot;,&quot;uuid&quot;:&quot;6dbb04c8-15f0-422d-bf80-a9ffc6642a0f&quot;}" data-component-name="MentionToDOM"></span> <br><a href="https://www.decodingai.com/p/context-engineering-2025s-1-skill">Context Engineering: 2025&#8217;s #1 Skill</a> in AI by <span class="mention-wrap" data-attrs="{&quot;name&quot;:&quot;Paul Iusztin&quot;,&quot;id&quot;:110559689,&quot;type&quot;:&quot;user&quot;,&quot;url&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0714d360-396c-4b41-a676-1b58dc1dc5f3_1470x1470.jpeg&quot;,&quot;uuid&quot;:&quot;221e95e0-fab5-4e8a-8fbf-49506b518ab0&quot;}" data-component-name="MentionToDOM"></span> </p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://karozieminski.substack.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"><em>Join thousands of readers learning AI the only way it sticks: through real experiments and real projects.</em></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><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!bbuT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!bbuT!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png 424w, https://substackcdn.com/image/fetch/$s_!bbuT!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png 848w, https://substackcdn.com/image/fetch/$s_!bbuT!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png 1272w, https://substackcdn.com/image/fetch/$s_!bbuT!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!bbuT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png" width="1456" height="145" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/aae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:145,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:158918,&quot;alt&quot;:&quot;Product with Attitude newsletter closing banner with mascot.&quot;,&quot;title&quot;:&quot;Product with Attitude newsletter closing banner with mascot.&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://karozieminski.substack.com/i/195778338?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd5b48c3-ae64-45d5-8178-00ab8d02f1a4_2353x256.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Product with Attitude newsletter closing banner with mascot." title="Product with Attitude newsletter closing banner with mascot." srcset="https://substackcdn.com/image/fetch/$s_!bbuT!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png 424w, https://substackcdn.com/image/fetch/$s_!bbuT!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png 848w, https://substackcdn.com/image/fetch/$s_!bbuT!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png 1272w, https://substackcdn.com/image/fetch/$s_!bbuT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faae6a3bb-f432-4f9b-acea-fdd53ede8975_2353x235.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p style="text-align: center;"><strong><a href="https://karozieminski.substack.com/about">WHY SUBSCRIBE </a>&#12539;<a href="https://karozieminski.substack.com/p/product-with-attitude-membership-2026">YOUR BENEFITS</a>&#12539; <a href="https://karozieminski.substack.com/p/substack-creator-tools">TOOLS I BUILT</a>&#12539;<a href="https://karozieminski.substack.com/s/claude-hub">CLAUDE HUB</a>&#12539;<a href="https://karozieminski.substack.com/s/perplexity-hub">PERPLEXITY HUB</a> &#12539;<a href="https://karozieminski.substack.com/p/vibecoding-resources-hub">VIBE CODING HUB</a> </strong></p>]]></content:encoded></item></channel></rss>