<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:googleplay="http://www.google.com/schemas/play-podcasts/1.0"><channel><title><![CDATA[The Product Compass: AI Product Management]]></title><description><![CDATA[Building, scaling, and succeeding as an AI Product Manager. We prioritize practical examples and no-code solutions while exploring the core principles. No CS degree required.]]></description><link>https://www.productcompass.pm/s/ai-product-management</link><image><url>https://substackcdn.com/image/fetch/$s_!Isz9!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F761d3970-dad7-483b-8fcf-9fada16e0d33_1080x1080.png</url><title>The Product Compass: AI Product Management</title><link>https://www.productcompass.pm/s/ai-product-management</link></image><generator>Substack</generator><lastBuildDate>Sun, 13 Sep 2026 05:08:16 GMT</lastBuildDate><atom:link href="https://www.productcompass.pm/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Paweł Huryn]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[huryn@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[huryn@substack.com]]></itunes:email><itunes:name><![CDATA[Paweł Huryn]]></itunes:name></itunes:owner><itunes:author><![CDATA[Paweł Huryn]]></itunes:author><googleplay:owner><![CDATA[huryn@substack.com]]></googleplay:owner><googleplay:email><![CDATA[huryn@substack.com]]></googleplay:email><googleplay:author><![CDATA[Paweł Huryn]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[Product Engineering for PMs, Part 2: Build a SaaS App Without Coding]]></title><description><![CDATA[Add a moderator role, then take a real multi-tenant SaaS app to production: GitHub, Supabase, Netlify, custom domain, Clerk, analytics, Google auth. No coding.]]></description><link>https://www.productcompass.pm/p/product-engineering-for-pms-part-2</link><guid isPermaLink="false">https://www.productcompass.pm/p/product-engineering-for-pms-part-2</guid><dc:creator><![CDATA[Paweł Huryn]]></dc:creator><pubDate>Mon, 07 Sep 2026 12:33:05 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!v5MW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82f51f4c-b13f-4a05-97c5-12d746c33c73_3200x1756.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>Hey, Pawel here. Welcome to the Product Compass Newsletter. It&#8217;s #1 most hands-on AI PM newsletter. I strategize, prototype, experiment, and build with AI <a href="https://github.com/phuryn">every day</a>.</em></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!L4h_!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf095b6b-55a8-4055-9236-5bad3620269e_1150x524.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!L4h_!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf095b6b-55a8-4055-9236-5bad3620269e_1150x524.png 424w, https://substackcdn.com/image/fetch/$s_!L4h_!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf095b6b-55a8-4055-9236-5bad3620269e_1150x524.png 848w, https://substackcdn.com/image/fetch/$s_!L4h_!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf095b6b-55a8-4055-9236-5bad3620269e_1150x524.png 1272w, https://substackcdn.com/image/fetch/$s_!L4h_!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf095b6b-55a8-4055-9236-5bad3620269e_1150x524.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!L4h_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf095b6b-55a8-4055-9236-5bad3620269e_1150x524.png" width="1150" height="524" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cf095b6b-55a8-4055-9236-5bad3620269e_1150x524.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:524,&quot;width&quot;:1150,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:74776,&quot;alt&quot;:&quot;GitHub contributions graph, last 12 months: building with AI every day&quot;,&quot;title&quot;:&quot;GitHub contributions graph, last 12 months: building with AI every day&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.productcompass.pm/i/214285251?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf095b6b-55a8-4055-9236-5bad3620269e_1150x524.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="GitHub contributions graph, last 12 months: building with AI every day" title="GitHub contributions graph, last 12 months: building with AI every day" srcset="https://substackcdn.com/image/fetch/$s_!L4h_!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf095b6b-55a8-4055-9236-5bad3620269e_1150x524.png 424w, https://substackcdn.com/image/fetch/$s_!L4h_!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf095b6b-55a8-4055-9236-5bad3620269e_1150x524.png 848w, https://substackcdn.com/image/fetch/$s_!L4h_!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf095b6b-55a8-4055-9236-5bad3620269e_1150x524.png 1272w, https://substackcdn.com/image/fetch/$s_!L4h_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf095b6b-55a8-4055-9236-5bad3620269e_1150x524.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><em>And every week I share actionable tips, templates, and step-by-step guides for PMs.</em></p><p><em>Here&#8217;s what you might have missed:</em></p><ol><li><p><em><a href="https://www.productcompass.pm/p/ai-prototyping-lovable-ai-studio-claude">AI Prototyping in 2026: The PM Field Guide</a></em></p></li><li><p><em><a href="https://www.productcompass.pm/p/ai-product-manager-roadmap-2026">The Ultimate AI PM Learning Roadmap 2026</a></em></p></li><li><p><em><a href="https://www.productcompass.pm/p/product-discovery-2026">What Is Product Discovery? The Ultimate Guide for PMs (2026 Edition)</a></em></p></li><li><p><em><a href="https://www.productcompass.pm/p/how-to-create-an-ai-product-strategy">How to Create an AI Product Strategy: The AI Strategic Lens Framework</a></em></p></li></ol><p><em>Plus, 20+ recordings available for our premium members here: <a href="https://go.productcompass.pm/events">https://go.productcompass.pm/events</a></em></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ZAUc!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4a962824-a60b-44d6-bbb8-e548f3834f5e_2436x1152.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ZAUc!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4a962824-a60b-44d6-bbb8-e548f3834f5e_2436x1152.png 424w, https://substackcdn.com/image/fetch/$s_!ZAUc!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4a962824-a60b-44d6-bbb8-e548f3834f5e_2436x1152.png 848w, https://substackcdn.com/image/fetch/$s_!ZAUc!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4a962824-a60b-44d6-bbb8-e548f3834f5e_2436x1152.png 1272w, https://substackcdn.com/image/fetch/$s_!ZAUc!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4a962824-a60b-44d6-bbb8-e548f3834f5e_2436x1152.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ZAUc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4a962824-a60b-44d6-bbb8-e548f3834f5e_2436x1152.png" width="1456" height="689" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4a962824-a60b-44d6-bbb8-e548f3834f5e_2436x1152.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:689,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:656214,&quot;alt&quot;:&quot;Live session recordings for premium members&quot;,&quot;title&quot;:&quot;Live session recordings for premium members&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.productcompass.pm/i/214285251?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4a962824-a60b-44d6-bbb8-e548f3834f5e_2436x1152.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Live session recordings for premium members" title="Live session recordings for premium members" srcset="https://substackcdn.com/image/fetch/$s_!ZAUc!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4a962824-a60b-44d6-bbb8-e548f3834f5e_2436x1152.png 424w, https://substackcdn.com/image/fetch/$s_!ZAUc!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4a962824-a60b-44d6-bbb8-e548f3834f5e_2436x1152.png 848w, https://substackcdn.com/image/fetch/$s_!ZAUc!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4a962824-a60b-44d6-bbb8-e548f3834f5e_2436x1152.png 1272w, https://substackcdn.com/image/fetch/$s_!ZAUc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4a962824-a60b-44d6-bbb8-e548f3834f5e_2436x1152.png 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><em>Consider subscribing and updating your account for the full experience.</em></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><p>Today, we continue Product Engineering for PMs inspired by the Gartner report:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!EFin!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc3d6580-d5b1-4fe5-a01a-61c37e07e90e_1200x678.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!EFin!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc3d6580-d5b1-4fe5-a01a-61c37e07e90e_1200x678.png 424w, https://substackcdn.com/image/fetch/$s_!EFin!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc3d6580-d5b1-4fe5-a01a-61c37e07e90e_1200x678.png 848w, https://substackcdn.com/image/fetch/$s_!EFin!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc3d6580-d5b1-4fe5-a01a-61c37e07e90e_1200x678.png 1272w, https://substackcdn.com/image/fetch/$s_!EFin!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc3d6580-d5b1-4fe5-a01a-61c37e07e90e_1200x678.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!EFin!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc3d6580-d5b1-4fe5-a01a-61c37e07e90e_1200x678.png" width="1200" height="678" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cc3d6580-d5b1-4fe5-a01a-61c37e07e90e_1200x678.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:678,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Gartner roles merging and collapsing, product engineers&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="Gartner roles merging and collapsing, product engineers" title="Gartner roles merging and collapsing, product engineers" srcset="https://substackcdn.com/image/fetch/$s_!EFin!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc3d6580-d5b1-4fe5-a01a-61c37e07e90e_1200x678.png 424w, https://substackcdn.com/image/fetch/$s_!EFin!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc3d6580-d5b1-4fe5-a01a-61c37e07e90e_1200x678.png 848w, https://substackcdn.com/image/fetch/$s_!EFin!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc3d6580-d5b1-4fe5-a01a-61c37e07e90e_1200x678.png 1272w, https://substackcdn.com/image/fetch/$s_!EFin!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc3d6580-d5b1-4fe5-a01a-61c37e07e90e_1200x678.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><span>Source: </span><a href="https://x.com/housecor">@housecor</a></figcaption></figure></div><p>The roles are coming closer together. </p><p>My take: you don&#8217;t have to code, but as a PM you have a much stronger profile if you develop an understanding of engineering with AI.</p><p>In <a href="https://www.productcompass.pm/p/product-engineering-for-pms">Part 1</a>, we started building AskOne, an alternative to Slido (Q&amp;A and polling platform). We implemented rooms, anonymous questions, Google authentication, Supabase storage, subscription plans, and a test payment gateway:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!fp-7!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1f53824-cb05-4991-8793-2a3861bcbccd_2772x1620.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!fp-7!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1f53824-cb05-4991-8793-2a3861bcbccd_2772x1620.png 424w, https://substackcdn.com/image/fetch/$s_!fp-7!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1f53824-cb05-4991-8793-2a3861bcbccd_2772x1620.png 848w, https://substackcdn.com/image/fetch/$s_!fp-7!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1f53824-cb05-4991-8793-2a3861bcbccd_2772x1620.png 1272w, https://substackcdn.com/image/fetch/$s_!fp-7!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1f53824-cb05-4991-8793-2a3861bcbccd_2772x1620.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!fp-7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1f53824-cb05-4991-8793-2a3861bcbccd_2772x1620.png" width="1456" height="851" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f1f53824-cb05-4991-8793-2a3861bcbccd_2772x1620.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:851,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:356982,&quot;alt&quot;:&quot;AskOne landing page&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://www.productcompass.pm/i/214285251?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1f53824-cb05-4991-8793-2a3861bcbccd_2772x1620.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="AskOne landing page" title="AskOne landing page" srcset="https://substackcdn.com/image/fetch/$s_!fp-7!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1f53824-cb05-4991-8793-2a3861bcbccd_2772x1620.png 424w, https://substackcdn.com/image/fetch/$s_!fp-7!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1f53824-cb05-4991-8793-2a3861bcbccd_2772x1620.png 848w, https://substackcdn.com/image/fetch/$s_!fp-7!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1f53824-cb05-4991-8793-2a3861bcbccd_2772x1620.png 1272w, https://substackcdn.com/image/fetch/$s_!fp-7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1f53824-cb05-4991-8793-2a3861bcbccd_2772x1620.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">AskOne landing page</figcaption></figure></div><p>By popular request, I <strong>removed the paywall</strong> from that part. All detailed steps are available for everyone (the solution template is available for premium members):</p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;bc22cb21-01e4-42bb-8c23-e5e3fdd2c2ca&quot;,&quot;caption&quot;:&quot;Take a look at this leaked Gartner report:&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;Product Engineering for PMs, Part 1: Build a SaaS App Without Coding&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:86533280,&quot;name&quot;:&quot;Pawe&#322; Huryn&quot;,&quot;bio&quot;:&quot;AI &amp; PM. Author, The Product Compass. Deep research. I build, test, then teach. 5 years as a CPO, 10+ years as a PM, 15+ years in tech.&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5fcfcfec-32a1-4970-aee1-8a1ab05a76c0_750x750.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:1000}],&quot;post_date&quot;:&quot;2026-08-31T15:35:45.972Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/$s_!EFin!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc3d6580-d5b1-4fe5-a01a-61c37e07e90e_1200x678.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.productcompass.pm/p/product-engineering-for-pms&quot;,&quot;section_name&quot;:&quot;AI Product Management&quot;,&quot;video_upload_id&quot;:null,&quot;id&quot;:213103699,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:51,&quot;comment_count&quot;:0,&quot;publication_id&quot;:943157,&quot;publication_name&quot;:&quot;The Product Compass&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!Isz9!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F761d3970-dad7-483b-8fcf-9fada16e0d33_1080x1080.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><p>Today, we discuss:</p><ol><li><p>A Lightweight AI Software Lifecycle</p></li><li><p>AskOne: Let&#8217;s Add a Moderator Role</p></li><li><p>Create a Production GitHub Branch</p></li><li><p>Create a Production Supabase Project</p></li><li><p>Create a Production Netlify Site</p></li><li><p>Plug a Custom DNS Domain</p></li><li><p>Create a Production Clerk Instance</p></li><li><p>Add Product Analytics</p></li><li><p>Add Google Auth (For Real)</p></li><li><p>Conclusion</p></li><li><p>&#128274; Live Session Recording, Part 2</p></li></ol><div><hr></div><p><em>Before we dive in, would you like me to cover the most important AI news each week? </em></p><p><em>We&#8217;ve got <a href="https://x.com/claudeai/status/2094848572143407483?s=20">Fable 5.1 (Sep 1)</a> and <a href="https://x.com/OpenAI/status/2095595741528125780?s=20">GPT-6 Astra (Sep 3)</a>. I also shared my new Bug Hunt Bench (<a href="https://bughunt.productcompass.pm/">official website</a>), that&#8217;s becoming a standard the AI community on X was waiting for:</em></p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/PawelHuryn/status/2095982259761475945?s=20&quot;,&quot;full_text&quot;:&quot;So, I finally tested GPT-6 Astra.\n\n2 real repos, 105 bugs, find and fix what you can. Max effort:\n\nGPT-6 Astra: 48/105 \nFable 5.1: 43/105\nGPT-5.6 Sol: 42/105\nGemini 3.8 Flash: 20/105\n\nAnd it's crazy efficient. Look at the time and cost &#129525; &quot;,&quot;username&quot;:&quot;PawelHuryn&quot;,&quot;name&quot;:&quot;Pawe&#322; Huryn&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/2049244285313359872/geQuKlQP_normal.jpg&quot;,&quot;date&quot;:&quot;2026-09-04T21:08:06.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://pbs.substack.com/media/HRZswQvbUAAxpZ3.jpg&quot;,&quot;link_url&quot;:&quot;https://t.co/jxVj2xBWzc&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:207,&quot;retweet_count&quot;:164,&quot;like_count&quot;:2429,&quot;impression_count&quot;:357587,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><em>And today, I published a new AI Slop Bench:</em></p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/PawelHuryn/status/2096885584153186390?1&quot;,&quot;full_text&quot;:&quot;So I tested 12 AI models to see which one writes the most AI slop.\n\nSame 3 writing tasks, 3 tries each, no system prompt from me. Then I put every text next to a text from another model, blind, and 4 AI judges picked the one that reads more like AI.\n\nHow often each model got &#8230;&quot;,&quot;username&quot;:&quot;PawelHuryn&quot;,&quot;name&quot;:&quot;Pawe&#322; Huryn&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/2049244285313359872/geQuKlQP_normal.jpg&quot;,&quot;date&quot;:&quot;2026-09-07T08:57:36.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://pbs.substack.com/media/HRmiUlqW4AYSITa.jpg&quot;,&quot;link_url&quot;:&quot;https://t.co/RG7itD0jQP&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:3,&quot;retweet_count&quot;:0,&quot;like_count&quot;:9,&quot;impression_count&quot;:748,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><em>I don&#8217;t feel like sending you a dedicated email every 1-2 days. So what do you want me to do? The first option below is a dedicated publication you can subscribe to/unsubscribe from:</em></p><div class="poll-embed" data-attrs="{&quot;id&quot;:1162706}" data-component-name="PollToDOM"></div><div><hr></div><h2><strong>1. A Lightweight AI Software Lifecycle</strong></h2><p>I realized I&#8217;ve been simplifying the software development lifecycle with AI. Some of the prompts in the template were not the first prompts I wrote. Instead, I brainstormed with AI, and turned my brainstorming into something I can share with you.</p><p>How can you implement that, too?</p><p>First, <strong>I do not recommend</strong> heavy software development processes with unnecessary ceremonies and artifacts such as <a href="https://claude.com/blog/the-ai-native-sdlc-playbook">The AI-Native SDLC playbook</a> by Anthropic. Those processes are meant for enterprises that cannot be more agile. </p><p>Paradoxically, even Anthropic doesn&#8217;t work this way! Their planning shifted <strong>away from design docs</strong> toward PR discussions and prototypes. They don&#8217;t do much product review. Instead they <strong>prototype, share what they build</strong> in front of internal users, and act on feedback. Individual pods are explicitly allowed to choose their own planning rituals. See <a href="https://claude.com/blog/running-an-ai-native-engineering-org"><span>Running</span> <span>an</span> <span>AI-native</span> <span>engineering</span> <span>org</span></a><span> by the same Anthropic.</span></p><p>Which brings us to how I recommend you work in a team:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!v5MW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82f51f4c-b13f-4a05-97c5-12d746c33c73_3200x1756.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!v5MW!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82f51f4c-b13f-4a05-97c5-12d746c33c73_3200x1756.png 424w, https://substackcdn.com/image/fetch/$s_!v5MW!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82f51f4c-b13f-4a05-97c5-12d746c33c73_3200x1756.png 848w, https://substackcdn.com/image/fetch/$s_!v5MW!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82f51f4c-b13f-4a05-97c5-12d746c33c73_3200x1756.png 1272w, https://substackcdn.com/image/fetch/$s_!v5MW!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82f51f4c-b13f-4a05-97c5-12d746c33c73_3200x1756.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!v5MW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82f51f4c-b13f-4a05-97c5-12d746c33c73_3200x1756.png" width="1456" height="799" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/82f51f4c-b13f-4a05-97c5-12d746c33c73_3200x1756.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:799,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:5993464,&quot;alt&quot;:&quot;A Lightweight AI Software Lifecycle&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://www.productcompass.pm/i/214285251?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82f51f4c-b13f-4a05-97c5-12d746c33c73_3200x1756.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="A Lightweight AI Software Lifecycle" title="A Lightweight AI Software Lifecycle" srcset="https://substackcdn.com/image/fetch/$s_!v5MW!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82f51f4c-b13f-4a05-97c5-12d746c33c73_3200x1756.png 424w, https://substackcdn.com/image/fetch/$s_!v5MW!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82f51f4c-b13f-4a05-97c5-12d746c33c73_3200x1756.png 848w, https://substackcdn.com/image/fetch/$s_!v5MW!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82f51f4c-b13f-4a05-97c5-12d746c33c73_3200x1756.png 1272w, https://substackcdn.com/image/fetch/$s_!v5MW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82f51f4c-b13f-4a05-97c5-12d746c33c73_3200x1756.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h3>Step 1: Idea</h3><p>Discover / discuss / research / prototype with Claude. Ask Claude: &#8220;ask me questions&#8221; or &#8220;present me 2-3 different directions with pros and cons.&#8221;</p><p><strong>Outcome:</strong> An interactive prototype</p><h3>Step 2: Refined idea</h3><p>Problem/jobs to be done, users, desired behavior, important scenarios, constraints, UX decisions vs. design system. Here, your agent may decide to run spikes (probes) to confirm what&#8217;s technically possible. Let it do it.</p><p><strong>Can be skipped for:</strong> Small changes<br><strong>Outcome:</strong> A markdown file (.md)</p><h3>Step 3: Plan</h3><p>This is where the agent will inspect the codebase and create a specific implementation plan. It knows what to document, don&#8217;t tell it (architecture, files to change, implementation sequence, tests, risks).</p><p>You can use the plan mode for that, though models like Opus 5, Fable 5.1, or GPT-6 Astra don&#8217;t really need that and can jump from a refined idea to implementation. </p><p><strong>Can be skipped for:</strong> Small or medium changes<br><strong>Outcome:</strong> A markdown file (often plan.md)</p><h3>Step 4: Build</h3><p>AI will build the feature/product and run its unit tests. Still, even with browser automation it can&#8217;t reliably assess dynamic mechanisms (e.g., what&#8217;s visible before the page fully loads) or micro interactions.</p><p>Walk through the main scenarios and <strong>verify them with your eyes</strong>. </p><div class="callout-block" data-callout="true"><p>&#128204; The prompts I share contain refined ideas (Step 2), not always my first messages. For example, for moderators, I have one prompt in the template (Section 2). It came out of a discussion with Claude.</p></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h2><strong>2. AskOne: Let&#8217;s Add a Moderator Role</strong></h2><p>In Part 1, I enabled billing for users, because I didn&#8217;t want to combine users and organizations. With users, it&#8217;s simpler.</p><p>But you cannot add more users to a user &#128517; You can add more users to an organization. If we want moderators, we need <strong>organizations</strong>. I should have predicted that.</p><p>So, right now, we will only have billing for organizations. Here&#8217;s how to do that:</p><h3>Step 2.1: Switch to organization billing</h3><p>Go to <a href="https://dashboard.clerk.com/">Clerk Dashboard</a> &gt; Configure &gt; Billing. It is impossible to disable user billing if you have active subscriptions. I had to find my user (Users &gt; my user &gt; Subscriptions) and cancel the subscription. Only then was I able to disable user billing and, instead, enable billing for organizations:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!4Afb!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0b12ca4-b3ec-45da-b8ea-58263408eb0b_2464x1479.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!4Afb!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0b12ca4-b3ec-45da-b8ea-58263408eb0b_2464x1479.png 424w, https://substackcdn.com/image/fetch/$s_!4Afb!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0b12ca4-b3ec-45da-b8ea-58263408eb0b_2464x1479.png 848w, https://substackcdn.com/image/fetch/$s_!4Afb!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0b12ca4-b3ec-45da-b8ea-58263408eb0b_2464x1479.png 1272w, https://substackcdn.com/image/fetch/$s_!4Afb!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0b12ca4-b3ec-45da-b8ea-58263408eb0b_2464x1479.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!4Afb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0b12ca4-b3ec-45da-b8ea-58263408eb0b_2464x1479.png" width="1456" height="874" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d0b12ca4-b3ec-45da-b8ea-58263408eb0b_2464x1479.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:874,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:244877,&quot;alt&quot;:&quot;Clerk > Configure > Billing, organization billing enabled&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://www.productcompass.pm/i/214285251?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0b12ca4-b3ec-45da-b8ea-58263408eb0b_2464x1479.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Clerk > Configure > Billing, organization billing enabled" title="Clerk > Configure > Billing, organization billing enabled" srcset="https://substackcdn.com/image/fetch/$s_!4Afb!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0b12ca4-b3ec-45da-b8ea-58263408eb0b_2464x1479.png 424w, https://substackcdn.com/image/fetch/$s_!4Afb!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0b12ca4-b3ec-45da-b8ea-58263408eb0b_2464x1479.png 848w, https://substackcdn.com/image/fetch/$s_!4Afb!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0b12ca4-b3ec-45da-b8ea-58263408eb0b_2464x1479.png 1272w, https://substackcdn.com/image/fetch/$s_!4Afb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0b12ca4-b3ec-45da-b8ea-58263408eb0b_2464x1479.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Clerk &gt; Configure &gt; Billing, organization billing enabled</figcaption></figure></div><h3>Step 2.2: Define organization plans</h3><p>Next, go to Configure &gt; Billing &gt; Organization Plans. The Free plan is created automatically. I edited it and added the features that already existed: 1 active room and up to 100 participants per room.</p><p>Then I clicked &#8220;Create Plan&#8221; and defined Premium: up to 10 active rooms and up to 1,000 participants per room, with monthly and annual billing:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!tkKl!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92024cf1-a8b6-4222-82af-4a14d464a414_2458x1476.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!tkKl!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92024cf1-a8b6-4222-82af-4a14d464a414_2458x1476.png 424w, https://substackcdn.com/image/fetch/$s_!tkKl!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92024cf1-a8b6-4222-82af-4a14d464a414_2458x1476.png 848w, https://substackcdn.com/image/fetch/$s_!tkKl!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92024cf1-a8b6-4222-82af-4a14d464a414_2458x1476.png 1272w, https://substackcdn.com/image/fetch/$s_!tkKl!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92024cf1-a8b6-4222-82af-4a14d464a414_2458x1476.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!tkKl!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92024cf1-a8b6-4222-82af-4a14d464a414_2458x1476.png" width="1456" height="874" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/92024cf1-a8b6-4222-82af-4a14d464a414_2458x1476.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:874,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:210067,&quot;alt&quot;:&quot;Clerk organization plans: Free and Premium&quot;,&quot;title&quot;:&quot;Clerk organization plans: Free and Premium&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://www.productcompass.pm/i/214285251?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92024cf1-a8b6-4222-82af-4a14d464a414_2458x1476.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Clerk organization plans: Free and Premium" title="Clerk organization plans: Free and Premium" srcset="https://substackcdn.com/image/fetch/$s_!tkKl!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92024cf1-a8b6-4222-82af-4a14d464a414_2458x1476.png 424w, https://substackcdn.com/image/fetch/$s_!tkKl!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92024cf1-a8b6-4222-82af-4a14d464a414_2458x1476.png 848w, https://substackcdn.com/image/fetch/$s_!tkKl!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92024cf1-a8b6-4222-82af-4a14d464a414_2458x1476.png 1272w, https://substackcdn.com/image/fetch/$s_!tkKl!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92024cf1-a8b6-4222-82af-4a14d464a414_2458x1476.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Clerk organization plans: Free and Premium</em></figcaption></figure></div><p>An important configuration element is the feature <strong>key</strong>. After adding a feature, I edited its key: <code>rooms_10</code> and <code>participants_1000</code>. This is important later in the prompt:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!J9bD!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b6e0cb1-5995-4d99-8d43-be636c1108d9_2456x1675.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!J9bD!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b6e0cb1-5995-4d99-8d43-be636c1108d9_2456x1675.png 424w, https://substackcdn.com/image/fetch/$s_!J9bD!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b6e0cb1-5995-4d99-8d43-be636c1108d9_2456x1675.png 848w, https://substackcdn.com/image/fetch/$s_!J9bD!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b6e0cb1-5995-4d99-8d43-be636c1108d9_2456x1675.png 1272w, https://substackcdn.com/image/fetch/$s_!J9bD!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b6e0cb1-5995-4d99-8d43-be636c1108d9_2456x1675.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!J9bD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b6e0cb1-5995-4d99-8d43-be636c1108d9_2456x1675.png" width="1456" height="993" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8b6e0cb1-5995-4d99-8d43-be636c1108d9_2456x1675.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:993,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:265708,&quot;alt&quot;:&quot;Editing a feature key in Clerk&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://www.productcompass.pm/i/214285251?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b6e0cb1-5995-4d99-8d43-be636c1108d9_2456x1675.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Editing a feature key in Clerk" title="Editing a feature key in Clerk" srcset="https://substackcdn.com/image/fetch/$s_!J9bD!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b6e0cb1-5995-4d99-8d43-be636c1108d9_2456x1675.png 424w, https://substackcdn.com/image/fetch/$s_!J9bD!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b6e0cb1-5995-4d99-8d43-be636c1108d9_2456x1675.png 848w, https://substackcdn.com/image/fetch/$s_!J9bD!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b6e0cb1-5995-4d99-8d43-be636c1108d9_2456x1675.png 1272w, https://substackcdn.com/image/fetch/$s_!J9bD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b6e0cb1-5995-4d99-8d43-be636c1108d9_2456x1675.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Editing a feature key in Clerk</em></figcaption></figure></div><p>Rather than hard-coding subscription plans in the app, we defined features that gate capabilities. Now, we can create a new plan anytime and choose, for example, up to 10 active rooms, but without 1,000 participants per room:</p><ul><li><p>What you can do in an organization depends on its plan features</p></li><li><p>What specific users in that organization can do depends on their role</p></li></ul><h3>Step 2.3: Rename Member to Moderator</h3><p>Go to Configure &gt; Organizations &gt; Roles &amp; Permissions. By default, you have two roles: Admin and Member. I opened Member, renamed it to Moderator, and changed the key to <code>org:moderator</code>. I didn&#8217;t change its permissions:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ZcLx!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdd0ddd6-bdad-4da8-bc7a-0b21a6c6b6cd_2440x1596.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ZcLx!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdd0ddd6-bdad-4da8-bc7a-0b21a6c6b6cd_2440x1596.png 424w, https://substackcdn.com/image/fetch/$s_!ZcLx!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdd0ddd6-bdad-4da8-bc7a-0b21a6c6b6cd_2440x1596.png 848w, https://substackcdn.com/image/fetch/$s_!ZcLx!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdd0ddd6-bdad-4da8-bc7a-0b21a6c6b6cd_2440x1596.png 1272w, https://substackcdn.com/image/fetch/$s_!ZcLx!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdd0ddd6-bdad-4da8-bc7a-0b21a6c6b6cd_2440x1596.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ZcLx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdd0ddd6-bdad-4da8-bc7a-0b21a6c6b6cd_2440x1596.png" width="1456" height="952" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cdd0ddd6-bdad-4da8-bc7a-0b21a6c6b6cd_2440x1596.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:952,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:265673,&quot;alt&quot;:&quot;Clerk roles, Member renamed to Moderator with the key org:moderator&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://www.productcompass.pm/i/214285251?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdd0ddd6-bdad-4da8-bc7a-0b21a6c6b6cd_2440x1596.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Clerk roles, Member renamed to Moderator with the key org:moderator" title="Clerk roles, Member renamed to Moderator with the key org:moderator" srcset="https://substackcdn.com/image/fetch/$s_!ZcLx!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdd0ddd6-bdad-4da8-bc7a-0b21a6c6b6cd_2440x1596.png 424w, https://substackcdn.com/image/fetch/$s_!ZcLx!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdd0ddd6-bdad-4da8-bc7a-0b21a6c6b6cd_2440x1596.png 848w, https://substackcdn.com/image/fetch/$s_!ZcLx!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdd0ddd6-bdad-4da8-bc7a-0b21a6c6b6cd_2440x1596.png 1272w, https://substackcdn.com/image/fetch/$s_!ZcLx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcdd0ddd6-bdad-4da8-bc7a-0b21a6c6b6cd_2440x1596.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Clerk roles, Member renamed to Moderator with the key org:moderator</em></figcaption></figure></div><div class="callout-block" data-callout="true"><p>&#128204; After enabling those plans, we don&#8217;t have to change anything in the app. Again, there is no prompt. The app is integrated with Clerk. I tested it on the Free plan: I had two open rooms, and the button to open a new one got disabled.</p></div><h3>Step 2.4: Ask the agent</h3><p>The prompt is in the template: <code>prompts/007-organizations-moderation-and-billing.md</code>. Replace the company details with yours and paste it into Claude Code (or Codex, see Section 3).</p><p>In the prompt, I explained that there is a role, <code>org:moderator</code>, that can view open and archived rooms only in its organization. If you are an admin, you can do everything in this organization. I also explained the plans, and that we do not rely on plan names, but on those two features.</p><p>Just to make this prompt comprehensive, I also asked it to build a landing page:</p><ul><li><p>research competitors (without naming them)</p></li><li><p>show Clerk&#8217;s pricing table</p></li><li><p>suggest legal documents</p></li><li><p>add public metadata (so that when you share the website, it is visible with a preview)</p></li><li><p>mention Microsoft Clarity without cookies in the policies (more in Section 8)</p></li><li><p>update all the documentation</p></li></ul><div class="callout-block" data-callout="true"><p>&#128204; Claude asked me: what if there is a single user and there is no moderator? We decided that by default, rooms should be moderated, but there is a special flag you can disable in the interface. That&#8217;s the discussion from Section 1. The prompt is its outcome.</p></div><p>You will get a moderated room. When opening a room, there is a special checkbox: whether the room should be moderated:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!-gIs!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdec2de9f-fb3c-4327-b968-4c1543016785_2473x1388.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!-gIs!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdec2de9f-fb3c-4327-b968-4c1543016785_2473x1388.png 424w, https://substackcdn.com/image/fetch/$s_!-gIs!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdec2de9f-fb3c-4327-b968-4c1543016785_2473x1388.png 848w, https://substackcdn.com/image/fetch/$s_!-gIs!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdec2de9f-fb3c-4327-b968-4c1543016785_2473x1388.png 1272w, https://substackcdn.com/image/fetch/$s_!-gIs!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdec2de9f-fb3c-4327-b968-4c1543016785_2473x1388.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!-gIs!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdec2de9f-fb3c-4327-b968-4c1543016785_2473x1388.png" width="1456" height="817" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/dec2de9f-fb3c-4327-b968-4c1543016785_2473x1388.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:817,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:178161,&quot;alt&quot;:&quot;Open a room with &#8220;Hold questions for a moderator&#8221; ticked&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://www.productcompass.pm/i/214285251?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdec2de9f-fb3c-4327-b968-4c1543016785_2473x1388.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Open a room with &#8220;Hold questions for a moderator&#8221; ticked" title="Open a room with &#8220;Hold questions for a moderator&#8221; ticked" srcset="https://substackcdn.com/image/fetch/$s_!-gIs!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdec2de9f-fb3c-4327-b968-4c1543016785_2473x1388.png 424w, https://substackcdn.com/image/fetch/$s_!-gIs!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdec2de9f-fb3c-4327-b968-4c1543016785_2473x1388.png 848w, https://substackcdn.com/image/fetch/$s_!-gIs!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdec2de9f-fb3c-4327-b968-4c1543016785_2473x1388.png 1272w, https://substackcdn.com/image/fetch/$s_!-gIs!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdec2de9f-fb3c-4327-b968-4c1543016785_2473x1388.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Open a room with &#8220;Hold questions for a moderator&#8221; ticked</em></figcaption></figure></div><p>If a participant asks a question, it is waiting for the host. As a host, I see all those questions, and I can approve, reject, or ban the user. Even though the user is anonymous, they will be blocked by the cookie. If they have disabled cookies, they cannot ask questions.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!_inn!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d8e861b-ef69-43c3-9b93-6040a40e8384_2473x1051.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!_inn!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d8e861b-ef69-43c3-9b93-6040a40e8384_2473x1051.png 424w, https://substackcdn.com/image/fetch/$s_!_inn!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d8e861b-ef69-43c3-9b93-6040a40e8384_2473x1051.png 848w, https://substackcdn.com/image/fetch/$s_!_inn!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d8e861b-ef69-43c3-9b93-6040a40e8384_2473x1051.png 1272w, https://substackcdn.com/image/fetch/$s_!_inn!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d8e861b-ef69-43c3-9b93-6040a40e8384_2473x1051.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!_inn!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d8e861b-ef69-43c3-9b93-6040a40e8384_2473x1051.png" width="1456" height="619" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9d8e861b-ef69-43c3-9b93-6040a40e8384_2473x1051.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:619,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:119687,&quot;alt&quot;:&quot;Moderator&#8217;s view with pending questions and approve / reject / ban&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://www.productcompass.pm/i/214285251?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d8e861b-ef69-43c3-9b93-6040a40e8384_2473x1051.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Moderator&#8217;s view with pending questions and approve / reject / ban" title="Moderator&#8217;s view with pending questions and approve / reject / ban" srcset="https://substackcdn.com/image/fetch/$s_!_inn!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d8e861b-ef69-43c3-9b93-6040a40e8384_2473x1051.png 424w, https://substackcdn.com/image/fetch/$s_!_inn!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d8e861b-ef69-43c3-9b93-6040a40e8384_2473x1051.png 848w, https://substackcdn.com/image/fetch/$s_!_inn!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d8e861b-ef69-43c3-9b93-6040a40e8384_2473x1051.png 1272w, https://substackcdn.com/image/fetch/$s_!_inn!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d8e861b-ef69-43c3-9b93-6040a40e8384_2473x1051.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Moderator&#8217;s view with pending questions and approve / reject / ban</figcaption></figure></div><p>After the moderator approves, the question becomes visible for everyone. We can open the projector view - this is what the host would present on the screen:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!PX3B!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff0e8d6e7-86b1-429c-a0cc-954c494b55d0_2473x1031.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!PX3B!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff0e8d6e7-86b1-429c-a0cc-954c494b55d0_2473x1031.png 424w, https://substackcdn.com/image/fetch/$s_!PX3B!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff0e8d6e7-86b1-429c-a0cc-954c494b55d0_2473x1031.png 848w, https://substackcdn.com/image/fetch/$s_!PX3B!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff0e8d6e7-86b1-429c-a0cc-954c494b55d0_2473x1031.png 1272w, https://substackcdn.com/image/fetch/$s_!PX3B!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff0e8d6e7-86b1-429c-a0cc-954c494b55d0_2473x1031.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!PX3B!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff0e8d6e7-86b1-429c-a0cc-954c494b55d0_2473x1031.png" width="1456" height="607" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f0e8d6e7-86b1-429c-a0cc-954c494b55d0_2473x1031.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:607,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:184978,&quot;alt&quot;:&quot;Projector view&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://www.productcompass.pm/i/214285251?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff0e8d6e7-86b1-429c-a0cc-954c494b55d0_2473x1031.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Projector view" title="Projector view" srcset="https://substackcdn.com/image/fetch/$s_!PX3B!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff0e8d6e7-86b1-429c-a0cc-954c494b55d0_2473x1031.png 424w, https://substackcdn.com/image/fetch/$s_!PX3B!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff0e8d6e7-86b1-429c-a0cc-954c494b55d0_2473x1031.png 848w, https://substackcdn.com/image/fetch/$s_!PX3B!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff0e8d6e7-86b1-429c-a0cc-954c494b55d0_2473x1031.png 1272w, https://substackcdn.com/image/fetch/$s_!PX3B!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff0e8d6e7-86b1-429c-a0cc-954c494b55d0_2473x1031.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Projector view</em></figcaption></figure></div><p>On the landing page, people who are not signed up see basic information about the product: the value proposition, how it is different, and the legal documents:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ghA_!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ecc43a4-a5c1-4898-9667-43dfca06e89b_2475x1630.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ghA_!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ecc43a4-a5c1-4898-9667-43dfca06e89b_2475x1630.png 424w, https://substackcdn.com/image/fetch/$s_!ghA_!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ecc43a4-a5c1-4898-9667-43dfca06e89b_2475x1630.png 848w, https://substackcdn.com/image/fetch/$s_!ghA_!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ecc43a4-a5c1-4898-9667-43dfca06e89b_2475x1630.png 1272w, https://substackcdn.com/image/fetch/$s_!ghA_!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ecc43a4-a5c1-4898-9667-43dfca06e89b_2475x1630.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ghA_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ecc43a4-a5c1-4898-9667-43dfca06e89b_2475x1630.png" width="1456" height="959" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3ecc43a4-a5c1-4898-9667-43dfca06e89b_2475x1630.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:959,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:287810,&quot;alt&quot;:&quot;Landing page - basic information about the product&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://www.productcompass.pm/i/214285251?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ecc43a4-a5c1-4898-9667-43dfca06e89b_2475x1630.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Landing page - basic information about the product" title="Landing page - basic information about the product" srcset="https://substackcdn.com/image/fetch/$s_!ghA_!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ecc43a4-a5c1-4898-9667-43dfca06e89b_2475x1630.png 424w, https://substackcdn.com/image/fetch/$s_!ghA_!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ecc43a4-a5c1-4898-9667-43dfca06e89b_2475x1630.png 848w, https://substackcdn.com/image/fetch/$s_!ghA_!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ecc43a4-a5c1-4898-9667-43dfca06e89b_2475x1630.png 1272w, https://substackcdn.com/image/fetch/$s_!ghA_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ecc43a4-a5c1-4898-9667-43dfca06e89b_2475x1630.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><a href="https://askone.org/">Landing page</a> - basic information about the product</figcaption></figure></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h2><strong>3. Create a Production GitHub Branch</strong></h2><p>So far, every change we push to GitHub appears on Netlify immediately. For a production environment, we need a separate branch. Ask the agent:</p><pre><code><code>Create a production branch from origin/askone. Call it askone-prod. Ignore my local modifications, they are work in progress.</code></code></pre><p>&#8220;Origin&#8221; means what is right now on GitHub, not my local modifications. LLMs understand it.</p><div class="callout-block" data-callout="true"><p>&#128204; Normally, you keep <code>main</code> as your development environment and create a separate branch for production. Mine is the starter template I shared with you, so that&#8217;s why I have two extra branches: <code>askone</code> (dev) and <code>askone-prod</code> (production).</p></div><p>People asked me on Slack how to use other coding agents. The solution template I shared in the previous and the current article is ready for it. </p><p>I ran this step with Codex. All the agents, whether it is Grok, Codex, or Claude Code, read AGENTS.md and the Clerk and Supabase skills. The only thing I had to fix was authenticating the Supabase MCP server, because Codex needed a separate one. It helped me do it. Other than that, out of the box, Codex works:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jnX_!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e40eb9f-3e43-4c92-ba6a-8eb5519b7fe3_1253x1083.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jnX_!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e40eb9f-3e43-4c92-ba6a-8eb5519b7fe3_1253x1083.png 424w, https://substackcdn.com/image/fetch/$s_!jnX_!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e40eb9f-3e43-4c92-ba6a-8eb5519b7fe3_1253x1083.png 848w, https://substackcdn.com/image/fetch/$s_!jnX_!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e40eb9f-3e43-4c92-ba6a-8eb5519b7fe3_1253x1083.png 1272w, https://substackcdn.com/image/fetch/$s_!jnX_!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e40eb9f-3e43-4c92-ba6a-8eb5519b7fe3_1253x1083.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jnX_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e40eb9f-3e43-4c92-ba6a-8eb5519b7fe3_1253x1083.png" width="1253" height="1083" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8e40eb9f-3e43-4c92-ba6a-8eb5519b7fe3_1253x1083.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1083,&quot;width&quot;:1253,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:154989,&quot;alt&quot;:&quot;Codex creating askone-prod GitHub branch&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://www.productcompass.pm/i/214285251?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e40eb9f-3e43-4c92-ba6a-8eb5519b7fe3_1253x1083.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Codex creating askone-prod GitHub branch" title="Codex creating askone-prod GitHub branch" srcset="https://substackcdn.com/image/fetch/$s_!jnX_!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e40eb9f-3e43-4c92-ba6a-8eb5519b7fe3_1253x1083.png 424w, https://substackcdn.com/image/fetch/$s_!jnX_!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e40eb9f-3e43-4c92-ba6a-8eb5519b7fe3_1253x1083.png 848w, https://substackcdn.com/image/fetch/$s_!jnX_!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e40eb9f-3e43-4c92-ba6a-8eb5519b7fe3_1253x1083.png 1272w, https://substackcdn.com/image/fetch/$s_!jnX_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e40eb9f-3e43-4c92-ba6a-8eb5519b7fe3_1253x1083.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Codex creating a new GitHub branch</em></figcaption></figure></div><p>You can learn more about GitHub branches here: <a href="https://bytebytego.com/guides/how-does-git-work/">How Git Works by ByteByteGo</a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h2><strong>4. Create a Production Supabase Project</strong></h2><p>Just like on GitHub, we can have multiple variants of the database. Supabase calls them branches. But this requires a paid subscription, and you can&#8217;t create a branch and make it the production one. I don&#8217;t want you to fight it.</p><p>Instead, create a new project and sync it with the production branch on GitHub. It&#8217;s clean, and it&#8217;s free.</p><h3>Step 4.1: Create a new project</h3><p>Go to <a href="https://supabase.com/">Supabase</a> and create a new project, just like in Part 1 (Step 3.1). Call it, for example, askone-prod. Then go to Project Settings &gt; API, as in Part 1. Note:</p><ul><li><p><code>SUPABASE_URL</code></p></li><li><p><code>SUPABASE_SECRET_KEY</code></p></li></ul><h3>Step 4.2: Sync it with GitHub</h3><p>Go to Supabase, select your project, click &#8220;Manage branches.&#8221; An example for a different project:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!lODq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51fec797-18f1-4c5a-adc5-b6550383c893_2173x837.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!lODq!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51fec797-18f1-4c5a-adc5-b6550383c893_2173x837.png 424w, https://substackcdn.com/image/fetch/$s_!lODq!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51fec797-18f1-4c5a-adc5-b6550383c893_2173x837.png 848w, https://substackcdn.com/image/fetch/$s_!lODq!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51fec797-18f1-4c5a-adc5-b6550383c893_2173x837.png 1272w, https://substackcdn.com/image/fetch/$s_!lODq!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51fec797-18f1-4c5a-adc5-b6550383c893_2173x837.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!lODq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51fec797-18f1-4c5a-adc5-b6550383c893_2173x837.png" width="1456" height="561" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/51fec797-18f1-4c5a-adc5-b6550383c893_2173x837.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:561,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:177603,&quot;alt&quot;:&quot;Go to a new Supabase project, click &#8220;Manage branches&#8221;&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://www.productcompass.pm/i/214285251?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51fec797-18f1-4c5a-adc5-b6550383c893_2173x837.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Go to a new Supabase project, click &#8220;Manage branches&#8221;" title="Go to a new Supabase project, click &#8220;Manage branches&#8221;" srcset="https://substackcdn.com/image/fetch/$s_!lODq!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51fec797-18f1-4c5a-adc5-b6550383c893_2173x837.png 424w, https://substackcdn.com/image/fetch/$s_!lODq!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51fec797-18f1-4c5a-adc5-b6550383c893_2173x837.png 848w, https://substackcdn.com/image/fetch/$s_!lODq!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51fec797-18f1-4c5a-adc5-b6550383c893_2173x837.png 1272w, https://substackcdn.com/image/fetch/$s_!lODq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51fec797-18f1-4c5a-adc5-b6550383c893_2173x837.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Go to a new Supabase project, click &#8220;Manage branches&#8221;</figcaption></figure></div><p>Then, under Configure, click &#8220;GitHub connection:&#8221;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Y3mg!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02f28c5e-703f-47f9-866f-25f6c1adf745_2473x927.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Y3mg!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02f28c5e-703f-47f9-866f-25f6c1adf745_2473x927.png 424w, https://substackcdn.com/image/fetch/$s_!Y3mg!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02f28c5e-703f-47f9-866f-25f6c1adf745_2473x927.png 848w, https://substackcdn.com/image/fetch/$s_!Y3mg!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02f28c5e-703f-47f9-866f-25f6c1adf745_2473x927.png 1272w, https://substackcdn.com/image/fetch/$s_!Y3mg!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02f28c5e-703f-47f9-866f-25f6c1adf745_2473x927.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Y3mg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02f28c5e-703f-47f9-866f-25f6c1adf745_2473x927.png" width="2473" height="927" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/02f28c5e-703f-47f9-866f-25f6c1adf745_2473x927.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:927,&quot;width&quot;:2473,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:202999,&quot;alt&quot;:&quot;Under Configure, click GitHub connection&quot;,&quot;title&quot;:&quot;Under Configure, click GitHub connection&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://www.productcompass.pm/i/214285251?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00c556df-8641-4768-978f-4737b1b0ba51_2473x1114.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Under Configure, click GitHub connection" title="Under Configure, click GitHub connection" srcset="https://substackcdn.com/image/fetch/$s_!Y3mg!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02f28c5e-703f-47f9-866f-25f6c1adf745_2473x927.png 424w, https://substackcdn.com/image/fetch/$s_!Y3mg!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02f28c5e-703f-47f9-866f-25f6c1adf745_2473x927.png 848w, https://substackcdn.com/image/fetch/$s_!Y3mg!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02f28c5e-703f-47f9-866f-25f6c1adf745_2473x927.png 1272w, https://substackcdn.com/image/fetch/$s_!Y3mg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02f28c5e-703f-47f9-866f-25f6c1adf745_2473x927.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Under Configure, click &#8220;GitHub connection&#8221;</figcaption></figure></div><p>And select your GitHub repository and a production branch:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!F-0S!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd8a1df2-c67e-40b1-a17c-f0825afea82a_2469x1403.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!F-0S!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd8a1df2-c67e-40b1-a17c-f0825afea82a_2469x1403.png 424w, https://substackcdn.com/image/fetch/$s_!F-0S!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd8a1df2-c67e-40b1-a17c-f0825afea82a_2469x1403.png 848w, https://substackcdn.com/image/fetch/$s_!F-0S!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd8a1df2-c67e-40b1-a17c-f0825afea82a_2469x1403.png 1272w, https://substackcdn.com/image/fetch/$s_!F-0S!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd8a1df2-c67e-40b1-a17c-f0825afea82a_2469x1403.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!F-0S!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd8a1df2-c67e-40b1-a17c-f0825afea82a_2469x1403.png" width="1456" height="827" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/dd8a1df2-c67e-40b1-a17c-f0825afea82a_2469x1403.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:827,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:386562,&quot;alt&quot;:&quot;Supabase GitHub integration with askone-prod as the production branch&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://www.productcompass.pm/i/214285251?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd8a1df2-c67e-40b1-a17c-f0825afea82a_2469x1403.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Supabase GitHub integration with askone-prod as the production branch" title="Supabase GitHub integration with askone-prod as the production branch" srcset="https://substackcdn.com/image/fetch/$s_!F-0S!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd8a1df2-c67e-40b1-a17c-f0825afea82a_2469x1403.png 424w, https://substackcdn.com/image/fetch/$s_!F-0S!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd8a1df2-c67e-40b1-a17c-f0825afea82a_2469x1403.png 848w, https://substackcdn.com/image/fetch/$s_!F-0S!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd8a1df2-c67e-40b1-a17c-f0825afea82a_2469x1403.png 1272w, https://substackcdn.com/image/fetch/$s_!F-0S!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd8a1df2-c67e-40b1-a17c-f0825afea82a_2469x1403.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Supabase GitHub integration with askone-prod as the production branch</em></figcaption></figure></div><p><strong>It will get updated every time you push changes to that branch.</strong> So, right now, when a user inserts some data on dev, or when I change the database structure, those changes <strong>will not propagate to production</strong>. That&#8217;s what we want.</p><p>Wait. What about the tables?</p><p>All the modifications in the database are written as <strong>migration scripts</strong>. This is also part of the template. Every time we add a new field or a new form in our product, there will be a migration script. It appears in GitHub, next to the 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_!rsuv!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b30c9a5-12dd-4e75-b4eb-bd9ff5e5abd0_1385x905.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!rsuv!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b30c9a5-12dd-4e75-b4eb-bd9ff5e5abd0_1385x905.png 424w, https://substackcdn.com/image/fetch/$s_!rsuv!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b30c9a5-12dd-4e75-b4eb-bd9ff5e5abd0_1385x905.png 848w, https://substackcdn.com/image/fetch/$s_!rsuv!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b30c9a5-12dd-4e75-b4eb-bd9ff5e5abd0_1385x905.png 1272w, https://substackcdn.com/image/fetch/$s_!rsuv!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b30c9a5-12dd-4e75-b4eb-bd9ff5e5abd0_1385x905.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!rsuv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b30c9a5-12dd-4e75-b4eb-bd9ff5e5abd0_1385x905.png" width="1385" height="905" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3b30c9a5-12dd-4e75-b4eb-bd9ff5e5abd0_1385x905.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:905,&quot;width&quot;:1385,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:128377,&quot;alt&quot;:&quot;supabase/migrations with the Phase 1, votes, and Phase 2 scripts&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://www.productcompass.pm/i/214285251?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b30c9a5-12dd-4e75-b4eb-bd9ff5e5abd0_1385x905.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="supabase/migrations with the Phase 1, votes, and Phase 2 scripts" title="supabase/migrations with the Phase 1, votes, and Phase 2 scripts" srcset="https://substackcdn.com/image/fetch/$s_!rsuv!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b30c9a5-12dd-4e75-b4eb-bd9ff5e5abd0_1385x905.png 424w, https://substackcdn.com/image/fetch/$s_!rsuv!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b30c9a5-12dd-4e75-b4eb-bd9ff5e5abd0_1385x905.png 848w, https://substackcdn.com/image/fetch/$s_!rsuv!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b30c9a5-12dd-4e75-b4eb-bd9ff5e5abd0_1385x905.png 1272w, https://substackcdn.com/image/fetch/$s_!rsuv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b30c9a5-12dd-4e75-b4eb-bd9ff5e5abd0_1385x905.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>VS Code, supabase/migrations with the Phase 1, votes, and Phase 2 scripts</em></figcaption></figure></div><p>When you transfer your app version from dev to prod, the logic is transferred because you transfer the code. Database changes are transferred through those migration scripts, and Supabase executes them.</p><blockquote><p>Code and database migrations move together. Not the data.</p></blockquote><p>After the sync, I was curious if there is any data inside. Go to Table Editor: the tables are there, and there are no rows. The structure was copied, the data was not. </p><div><hr></div><h2><strong>5. Create a Production Netlify Site</strong></h2><p>Normally, you would have multiple environments: dev for developers, test, preprod (a copy of production, often without personal information), and production. The release goes through all of them. </p><p>We will implement a simplified version. Instead of creating another Netlify project, I took the one from Part 1 and just made it production. Dev stays on my local machine. I don&#8217;t need it hosted on Netlify.</p><h3>Step 5.1: Switch the production branch</h3><p>Go to <a href="https://app.netlify.com/">Netlify</a> &gt; your project &gt; Project configuration &gt; Build &amp; deploy &gt; Manage repository &gt; Link to a different repository &gt; GitHub. </p><p>Select your repository (here, &#8220;fde-template&#8221;) and the production branch (here, &#8220;askone-prod&#8221;):</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!uwZc!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbebc0b6c-bdae-481b-8558-d56966b9ff15_2231x1159.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!uwZc!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbebc0b6c-bdae-481b-8558-d56966b9ff15_2231x1159.png 424w, https://substackcdn.com/image/fetch/$s_!uwZc!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbebc0b6c-bdae-481b-8558-d56966b9ff15_2231x1159.png 848w, https://substackcdn.com/image/fetch/$s_!uwZc!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbebc0b6c-bdae-481b-8558-d56966b9ff15_2231x1159.png 1272w, https://substackcdn.com/image/fetch/$s_!uwZc!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbebc0b6c-bdae-481b-8558-d56966b9ff15_2231x1159.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!uwZc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbebc0b6c-bdae-481b-8558-d56966b9ff15_2231x1159.png" width="1456" height="756" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/bebc0b6c-bdae-481b-8558-d56966b9ff15_2231x1159.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:756,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:219438,&quot;alt&quot;:&quot;Netlify production branch set to askone-prod&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://www.productcompass.pm/i/214285251?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbebc0b6c-bdae-481b-8558-d56966b9ff15_2231x1159.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Netlify production branch set to askone-prod" title="Netlify production branch set to askone-prod" srcset="https://substackcdn.com/image/fetch/$s_!uwZc!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbebc0b6c-bdae-481b-8558-d56966b9ff15_2231x1159.png 424w, https://substackcdn.com/image/fetch/$s_!uwZc!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbebc0b6c-bdae-481b-8558-d56966b9ff15_2231x1159.png 848w, https://substackcdn.com/image/fetch/$s_!uwZc!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbebc0b6c-bdae-481b-8558-d56966b9ff15_2231x1159.png 1272w, https://substackcdn.com/image/fetch/$s_!uwZc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbebc0b6c-bdae-481b-8558-d56966b9ff15_2231x1159.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Netlify production branch set to askone-prod</em></figcaption></figure></div><h3>Step 5.2: Replace the Supabase keys</h3><p>Go to Project configuration &gt; Environment variables and edit two values:</p><ol><li><p>SUPABASE_URL -&gt; copy from Section 4</p></li><li><p>SUPABASE_SECRET_KEY -&gt; copy from Section 4, mark as secret</p></li></ol><p>I&#8217;m still using the development Clerk instance, just so that we don&#8217;t switch everything at once. We will switch it in Section 7.</p><h3>Step 5.3: Deploy</h3><p>New environment variables need a new deploy. Go to Deploys &gt; Trigger deploy &gt; Deploy project:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!2DCq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8083cdd4-24af-4a81-a428-3e06cc7f08e3_2236x1164.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!2DCq!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8083cdd4-24af-4a81-a428-3e06cc7f08e3_2236x1164.png 424w, https://substackcdn.com/image/fetch/$s_!2DCq!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8083cdd4-24af-4a81-a428-3e06cc7f08e3_2236x1164.png 848w, https://substackcdn.com/image/fetch/$s_!2DCq!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8083cdd4-24af-4a81-a428-3e06cc7f08e3_2236x1164.png 1272w, https://substackcdn.com/image/fetch/$s_!2DCq!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8083cdd4-24af-4a81-a428-3e06cc7f08e3_2236x1164.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!2DCq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8083cdd4-24af-4a81-a428-3e06cc7f08e3_2236x1164.png" width="1456" height="758" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8083cdd4-24af-4a81-a428-3e06cc7f08e3_2236x1164.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:758,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:300890,&quot;alt&quot;:&quot;Netlify > Deploys > Trigger deploy&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://www.productcompass.pm/i/214285251?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8083cdd4-24af-4a81-a428-3e06cc7f08e3_2236x1164.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Netlify > Deploys > Trigger deploy" title="Netlify > Deploys > Trigger deploy" srcset="https://substackcdn.com/image/fetch/$s_!2DCq!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8083cdd4-24af-4a81-a428-3e06cc7f08e3_2236x1164.png 424w, https://substackcdn.com/image/fetch/$s_!2DCq!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8083cdd4-24af-4a81-a428-3e06cc7f08e3_2236x1164.png 848w, https://substackcdn.com/image/fetch/$s_!2DCq!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8083cdd4-24af-4a81-a428-3e06cc7f08e3_2236x1164.png 1272w, https://substackcdn.com/image/fetch/$s_!2DCq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8083cdd4-24af-4a81-a428-3e06cc7f08e3_2236x1164.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Netlify &gt; Deploys &gt; Trigger deploy</em></figcaption></figure></div><p>After those changes, you should see an empty app. I&#8217;m signed in, but my data disappeared, because right now we are using the new production database.</p><div class="callout-block" data-callout="true"><p>&#128204; The result: we can test anything on dev: add new features, implement new logic. The new app behavior lives on GitHub, in the <code>askone</code> branch. The test data lives in the <code>askone</code> Supabase project. <strong>Neither reaches production until we ask the agent to push</strong>.</p></div><div><hr></div><h2><strong>6. Plug a Custom DNS Domain</strong></h2><p>We have a production app, but we don&#8217;t have the production URL. I purchased a cheap domain on <a href="https://www.godaddy.com/en">GoDaddy</a>: askone.org. In every provider, it is similar.</p><h3>Step 6.1: Add the domain in Netlify</h3><p>Go to Domain management &gt; Add a domain. Netlify verifies that you own it and recommends Netlify DNS:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!vF1l!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb0d65bd-8906-4c1d-bf7a-0fa3d7583ddc_2245x1262.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!vF1l!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb0d65bd-8906-4c1d-bf7a-0fa3d7583ddc_2245x1262.png 424w, https://substackcdn.com/image/fetch/$s_!vF1l!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb0d65bd-8906-4c1d-bf7a-0fa3d7583ddc_2245x1262.png 848w, https://substackcdn.com/image/fetch/$s_!vF1l!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb0d65bd-8906-4c1d-bf7a-0fa3d7583ddc_2245x1262.png 1272w, https://substackcdn.com/image/fetch/$s_!vF1l!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb0d65bd-8906-4c1d-bf7a-0fa3d7583ddc_2245x1262.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!vF1l!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb0d65bd-8906-4c1d-bf7a-0fa3d7583ddc_2245x1262.png" width="1456" height="818" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/bb0d65bd-8906-4c1d-bf7a-0fa3d7583ddc_2245x1262.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:818,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:271968,&quot;alt&quot;:&quot;Netlify > Add a domain&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://www.productcompass.pm/i/214285251?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb0d65bd-8906-4c1d-bf7a-0fa3d7583ddc_2245x1262.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Netlify > Add a domain" title="Netlify > Add a domain" srcset="https://substackcdn.com/image/fetch/$s_!vF1l!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb0d65bd-8906-4c1d-bf7a-0fa3d7583ddc_2245x1262.png 424w, https://substackcdn.com/image/fetch/$s_!vF1l!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb0d65bd-8906-4c1d-bf7a-0fa3d7583ddc_2245x1262.png 848w, https://substackcdn.com/image/fetch/$s_!vF1l!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb0d65bd-8906-4c1d-bf7a-0fa3d7583ddc_2245x1262.png 1272w, https://substackcdn.com/image/fetch/$s_!vF1l!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb0d65bd-8906-4c1d-bf7a-0fa3d7583ddc_2245x1262.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Netlify &gt; Add a domain</em></figcaption></figure></div><p>In the next step, I got a list of four Netlify DNS servers:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!3rB4!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9131ad3c-9723-4cf9-8789-9acfcb152d9c_1845x1085.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!3rB4!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9131ad3c-9723-4cf9-8789-9acfcb152d9c_1845x1085.png 424w, https://substackcdn.com/image/fetch/$s_!3rB4!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9131ad3c-9723-4cf9-8789-9acfcb152d9c_1845x1085.png 848w, https://substackcdn.com/image/fetch/$s_!3rB4!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9131ad3c-9723-4cf9-8789-9acfcb152d9c_1845x1085.png 1272w, https://substackcdn.com/image/fetch/$s_!3rB4!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9131ad3c-9723-4cf9-8789-9acfcb152d9c_1845x1085.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!3rB4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9131ad3c-9723-4cf9-8789-9acfcb152d9c_1845x1085.png" width="1456" height="856" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9131ad3c-9723-4cf9-8789-9acfcb152d9c_1845x1085.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:856,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:127229,&quot;alt&quot;:&quot;Netlify > Add a domain > Activate Netlify DNS&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://www.productcompass.pm/i/214285251?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9131ad3c-9723-4cf9-8789-9acfcb152d9c_1845x1085.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Netlify > Add a domain > Activate Netlify DNS" title="Netlify > Add a domain > Activate Netlify DNS" srcset="https://substackcdn.com/image/fetch/$s_!3rB4!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9131ad3c-9723-4cf9-8789-9acfcb152d9c_1845x1085.png 424w, https://substackcdn.com/image/fetch/$s_!3rB4!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9131ad3c-9723-4cf9-8789-9acfcb152d9c_1845x1085.png 848w, https://substackcdn.com/image/fetch/$s_!3rB4!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9131ad3c-9723-4cf9-8789-9acfcb152d9c_1845x1085.png 1272w, https://substackcdn.com/image/fetch/$s_!3rB4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9131ad3c-9723-4cf9-8789-9acfcb152d9c_1845x1085.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Netlify &gt; Add a domain &gt; Activate Netlify DNS</figcaption></figure></div><h3>Step 6.2: Point GoDaddy to Netlify</h3><p>In GoDaddy, go to your domain &gt; DNS &gt; Nameservers &gt; Change, and paste the four Netlify name servers:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!fgRJ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F88476f0e-d231-443c-949f-3dc7ec08484b_2230x1463.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!fgRJ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F88476f0e-d231-443c-949f-3dc7ec08484b_2230x1463.png 424w, https://substackcdn.com/image/fetch/$s_!fgRJ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F88476f0e-d231-443c-949f-3dc7ec08484b_2230x1463.png 848w, https://substackcdn.com/image/fetch/$s_!fgRJ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F88476f0e-d231-443c-949f-3dc7ec08484b_2230x1463.png 1272w, https://substackcdn.com/image/fetch/$s_!fgRJ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F88476f0e-d231-443c-949f-3dc7ec08484b_2230x1463.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!fgRJ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F88476f0e-d231-443c-949f-3dc7ec08484b_2230x1463.png" width="1456" height="955" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/88476f0e-d231-443c-949f-3dc7ec08484b_2230x1463.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:955,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:207772,&quot;alt&quot;:&quot;GoDaddy nameservers set to Netlify DNS&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://www.productcompass.pm/i/214285251?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F88476f0e-d231-443c-949f-3dc7ec08484b_2230x1463.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="GoDaddy nameservers set to Netlify DNS" title="GoDaddy nameservers set to Netlify DNS" srcset="https://substackcdn.com/image/fetch/$s_!fgRJ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F88476f0e-d231-443c-949f-3dc7ec08484b_2230x1463.png 424w, https://substackcdn.com/image/fetch/$s_!fgRJ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F88476f0e-d231-443c-949f-3dc7ec08484b_2230x1463.png 848w, https://substackcdn.com/image/fetch/$s_!fgRJ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F88476f0e-d231-443c-949f-3dc7ec08484b_2230x1463.png 1272w, https://substackcdn.com/image/fetch/$s_!fgRJ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F88476f0e-d231-443c-949f-3dc7ec08484b_2230x1463.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">GoDaddy nameservers set to Netlify DNS</figcaption></figure></div><div class="callout-block" data-callout="true"><p>&#128204; I first tried a CNAME record in GoDaddy. It didn&#8217;t propagate during the live session. Netlify DNS is the easiest option.</p></div><h3>Step 6.3: Wait</h3><p>It can take up to an hour. Then Netlify detects the domain, and DNS verification is successful. What it means is that Netlify will provide an automatic certificate for us, and our domain will be secure (HTTPS). We don&#8217;t have to purchase a certificate. It will just do it automatically:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!JjLb!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2cffbf60-fba9-471f-bdc8-01b6cc123a47_2236x999.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!JjLb!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2cffbf60-fba9-471f-bdc8-01b6cc123a47_2236x999.png 424w, https://substackcdn.com/image/fetch/$s_!JjLb!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2cffbf60-fba9-471f-bdc8-01b6cc123a47_2236x999.png 848w, https://substackcdn.com/image/fetch/$s_!JjLb!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2cffbf60-fba9-471f-bdc8-01b6cc123a47_2236x999.png 1272w, https://substackcdn.com/image/fetch/$s_!JjLb!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2cffbf60-fba9-471f-bdc8-01b6cc123a47_2236x999.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!JjLb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2cffbf60-fba9-471f-bdc8-01b6cc123a47_2236x999.png" width="1456" height="651" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2cffbf60-fba9-471f-bdc8-01b6cc123a47_2236x999.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:651,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:164752,&quot;alt&quot;:&quot;Netlify DNS zones: askone.org, the connection was successful&quot;,&quot;title&quot;:&quot;Netlify DNS zones: askone.org, the connection was successful&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://www.productcompass.pm/i/214285251?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2cffbf60-fba9-471f-bdc8-01b6cc123a47_2236x999.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Netlify DNS zones: askone.org, the connection was successful" title="Netlify DNS zones: askone.org, the connection was successful" srcset="https://substackcdn.com/image/fetch/$s_!JjLb!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2cffbf60-fba9-471f-bdc8-01b6cc123a47_2236x999.png 424w, https://substackcdn.com/image/fetch/$s_!JjLb!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2cffbf60-fba9-471f-bdc8-01b6cc123a47_2236x999.png 848w, https://substackcdn.com/image/fetch/$s_!JjLb!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2cffbf60-fba9-471f-bdc8-01b6cc123a47_2236x999.png 1272w, https://substackcdn.com/image/fetch/$s_!JjLb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2cffbf60-fba9-471f-bdc8-01b6cc123a47_2236x999.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Netlify &gt; DNS: askone.org, the connection was successful</em></figcaption></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!X8t0!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12e3b879-041e-4ffe-952d-540ae19f9116_2247x829.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!X8t0!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12e3b879-041e-4ffe-952d-540ae19f9116_2247x829.png 424w, https://substackcdn.com/image/fetch/$s_!X8t0!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12e3b879-041e-4ffe-952d-540ae19f9116_2247x829.png 848w, https://substackcdn.com/image/fetch/$s_!X8t0!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12e3b879-041e-4ffe-952d-540ae19f9116_2247x829.png 1272w, https://substackcdn.com/image/fetch/$s_!X8t0!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12e3b879-041e-4ffe-952d-540ae19f9116_2247x829.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!X8t0!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12e3b879-041e-4ffe-952d-540ae19f9116_2247x829.png" width="1456" height="537" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/12e3b879-041e-4ffe-952d-540ae19f9116_2247x829.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:537,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:178626,&quot;alt&quot;:&quot;Netlify domain (DNS zone) details&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://www.productcompass.pm/i/214285251?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12e3b879-041e-4ffe-952d-540ae19f9116_2247x829.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Netlify domain (DNS zone) details" title="Netlify domain (DNS zone) details" srcset="https://substackcdn.com/image/fetch/$s_!X8t0!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12e3b879-041e-4ffe-952d-540ae19f9116_2247x829.png 424w, https://substackcdn.com/image/fetch/$s_!X8t0!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12e3b879-041e-4ffe-952d-540ae19f9116_2247x829.png 848w, https://substackcdn.com/image/fetch/$s_!X8t0!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12e3b879-041e-4ffe-952d-540ae19f9116_2247x829.png 1272w, https://substackcdn.com/image/fetch/$s_!X8t0!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12e3b879-041e-4ffe-952d-540ae19f9116_2247x829.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Netlify domain (DNS zone) details</figcaption></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!XqqI!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fac1bfccd-27d4-451d-a2ab-bfea2f5d4a5f_1915x881.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!XqqI!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fac1bfccd-27d4-451d-a2ab-bfea2f5d4a5f_1915x881.png 424w, https://substackcdn.com/image/fetch/$s_!XqqI!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fac1bfccd-27d4-451d-a2ab-bfea2f5d4a5f_1915x881.png 848w, https://substackcdn.com/image/fetch/$s_!XqqI!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fac1bfccd-27d4-451d-a2ab-bfea2f5d4a5f_1915x881.png 1272w, https://substackcdn.com/image/fetch/$s_!XqqI!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fac1bfccd-27d4-451d-a2ab-bfea2f5d4a5f_1915x881.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!XqqI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fac1bfccd-27d4-451d-a2ab-bfea2f5d4a5f_1915x881.png" width="1456" height="670" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ac1bfccd-27d4-451d-a2ab-bfea2f5d4a5f_1915x881.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:670,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:154066,&quot;alt&quot;:&quot;SSL certificate provided by Netlify&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://www.productcompass.pm/i/214285251?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fac1bfccd-27d4-451d-a2ab-bfea2f5d4a5f_1915x881.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="SSL certificate provided by Netlify" title="SSL certificate provided by Netlify" srcset="https://substackcdn.com/image/fetch/$s_!XqqI!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fac1bfccd-27d4-451d-a2ab-bfea2f5d4a5f_1915x881.png 424w, https://substackcdn.com/image/fetch/$s_!XqqI!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fac1bfccd-27d4-451d-a2ab-bfea2f5d4a5f_1915x881.png 848w, https://substackcdn.com/image/fetch/$s_!XqqI!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fac1bfccd-27d4-451d-a2ab-bfea2f5d4a5f_1915x881.png 1272w, https://substackcdn.com/image/fetch/$s_!XqqI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fac1bfccd-27d4-451d-a2ab-bfea2f5d4a5f_1915x881.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">SSL certificate provided by Netlify</figcaption></figure></div><h3>Step 6.4: Adjust the app URL</h3><p>The app URL has changed. We need it to display the join codes for participants. In Netlify, go to Project configuration &gt; Environment variables, set APP_URL to https://askone.org, and trigger a deploy, as in Step 5.3.</p><p>We discussed how to manage Netlify secrets in <a href="https://www.productcompass.pm/p/product-engineering-for-pms">Part 1</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_!lLf-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe60e0578-4be6-4535-b32a-a5c078bd9054_2245x827.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!lLf-!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe60e0578-4be6-4535-b32a-a5c078bd9054_2245x827.png 424w, https://substackcdn.com/image/fetch/$s_!lLf-!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe60e0578-4be6-4535-b32a-a5c078bd9054_2245x827.png 848w, https://substackcdn.com/image/fetch/$s_!lLf-!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe60e0578-4be6-4535-b32a-a5c078bd9054_2245x827.png 1272w, https://substackcdn.com/image/fetch/$s_!lLf-!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe60e0578-4be6-4535-b32a-a5c078bd9054_2245x827.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!lLf-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe60e0578-4be6-4535-b32a-a5c078bd9054_2245x827.png" width="1456" height="536" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e60e0578-4be6-4535-b32a-a5c078bd9054_2245x827.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:536,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:227539,&quot;alt&quot;:&quot;Go to Project configuration > Environment variables, set APP_URL&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://www.productcompass.pm/i/214285251?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe60e0578-4be6-4535-b32a-a5c078bd9054_2245x827.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Go to Project configuration > Environment variables, set APP_URL" title="Go to Project configuration > Environment variables, set APP_URL" srcset="https://substackcdn.com/image/fetch/$s_!lLf-!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe60e0578-4be6-4535-b32a-a5c078bd9054_2245x827.png 424w, https://substackcdn.com/image/fetch/$s_!lLf-!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe60e0578-4be6-4535-b32a-a5c078bd9054_2245x827.png 848w, https://substackcdn.com/image/fetch/$s_!lLf-!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe60e0578-4be6-4535-b32a-a5c078bd9054_2245x827.png 1272w, https://substackcdn.com/image/fetch/$s_!lLf-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe60e0578-4be6-4535-b32a-a5c078bd9054_2245x827.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Go to Project configuration &gt; Environment variables, set APP_URL</figcaption></figure></div><p>You, too, can access it: <a href="https://askone.org">https://askone.org</a>. It&#8217;s not perfect, but it works, on a real domain.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h2><strong>7. Create a Production Clerk Instance</strong></h2><p>We have a production app, we have a production URL, but we don&#8217;t have production users yet. And we do not want to use the dev/test users in production.</p><p>To fix that, go to <a href="https://dashboard.clerk.com/">Clerk Dashboard</a>, click &#8220;Go to Production,&#8221; and clone your development instance. All the pricing plans and features will be cloned. The application domain will be askone.org. This is where users can access the app:</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Xlws!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d4cc800-b8ad-4cc9-8e32-8ff3d70b069b_2235x491.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Xlws!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d4cc800-b8ad-4cc9-8e32-8ff3d70b069b_2235x491.png 424w, https://substackcdn.com/image/fetch/$s_!Xlws!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d4cc800-b8ad-4cc9-8e32-8ff3d70b069b_2235x491.png 848w, https://substackcdn.com/image/fetch/$s_!Xlws!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d4cc800-b8ad-4cc9-8e32-8ff3d70b069b_2235x491.png 1272w, https://substackcdn.com/image/fetch/$s_!Xlws!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d4cc800-b8ad-4cc9-8e32-8ff3d70b069b_2235x491.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Xlws!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d4cc800-b8ad-4cc9-8e32-8ff3d70b069b_2235x491.png" width="1456" height="320" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2d4cc800-b8ad-4cc9-8e32-8ff3d70b069b_2235x491.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:320,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:112230,&quot;alt&quot;:&quot;Clerk > Go to 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://www.productcompass.pm/i/214285251?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d4cc800-b8ad-4cc9-8e32-8ff3d70b069b_2235x491.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Clerk > Go to production" title="Clerk > Go to production" srcset="https://substackcdn.com/image/fetch/$s_!Xlws!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d4cc800-b8ad-4cc9-8e32-8ff3d70b069b_2235x491.png 424w, https://substackcdn.com/image/fetch/$s_!Xlws!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d4cc800-b8ad-4cc9-8e32-8ff3d70b069b_2235x491.png 848w, https://substackcdn.com/image/fetch/$s_!Xlws!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d4cc800-b8ad-4cc9-8e32-8ff3d70b069b_2235x491.png 1272w, https://substackcdn.com/image/fetch/$s_!Xlws!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d4cc800-b8ad-4cc9-8e32-8ff3d70b069b_2235x491.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a><figcaption class="image-caption">Clerk &gt; Go to production</figcaption></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!QS6-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5dd1d72c-d2b2-4401-b8b2-4c3395b12ef9_2245x942.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!QS6-!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5dd1d72c-d2b2-4401-b8b2-4c3395b12ef9_2245x942.png 424w, https://substackcdn.com/image/fetch/$s_!QS6-!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5dd1d72c-d2b2-4401-b8b2-4c3395b12ef9_2245x942.png 848w, https://substackcdn.com/image/fetch/$s_!QS6-!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5dd1d72c-d2b2-4401-b8b2-4c3395b12ef9_2245x942.png 1272w, https://substackcdn.com/image/fetch/$s_!QS6-!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5dd1d72c-d2b2-4401-b8b2-4c3395b12ef9_2245x942.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!QS6-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5dd1d72c-d2b2-4401-b8b2-4c3395b12ef9_2245x942.png" width="1456" height="611" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5dd1d72c-d2b2-4401-b8b2-4c3395b12ef9_2245x942.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:611,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:534644,&quot;alt&quot;:&quot;Clerk > Go to Production > Clone development instance > Continue&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://www.productcompass.pm/i/214285251?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5dd1d72c-d2b2-4401-b8b2-4c3395b12ef9_2245x942.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Clerk > Go to Production > Clone development instance > Continue" title="Clerk > Go to Production > Clone development instance > Continue" srcset="https://substackcdn.com/image/fetch/$s_!QS6-!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5dd1d72c-d2b2-4401-b8b2-4c3395b12ef9_2245x942.png 424w, https://substackcdn.com/image/fetch/$s_!QS6-!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5dd1d72c-d2b2-4401-b8b2-4c3395b12ef9_2245x942.png 848w, https://substackcdn.com/image/fetch/$s_!QS6-!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5dd1d72c-d2b2-4401-b8b2-4c3395b12ef9_2245x942.png 1272w, https://substackcdn.com/image/fetch/$s_!QS6-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5dd1d72c-d2b2-4401-b8b2-4c3395b12ef9_2245x942.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Clerk &gt; Go to Production &gt; Clone development instance &gt; Continue</figcaption></figure></div><p>And we have a new secret key for Clerk that we need to configure in environment variables. So let&#8217;s do that. Go to Configure &gt; API keys, as in Part 1. Note:</p><ul><li><p><code>NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY</code></p></li><li><p><code>CLERK_SECRET_KEY</code></p></li></ul><p>In Netlify, go to Project configuration &gt; Environment variables:</p><ol><li><p>CLERK_SECRET_KEY -&gt; again, I will replace it, mark as secret</p></li><li><p>NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY -&gt; we have a new one, too. This is not a secret</p></li></ol><p>Then trigger a deploy, as in Step 5.3.</p><p>What else? SSO connections. Right now, Google is not supported. We will do it in Section 9. And we need to add the DNS records that Clerk requested to Netlify:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!gEft!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72bc85a5-21ea-461d-b10c-f17e925e3893_2525x1586.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!gEft!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72bc85a5-21ea-461d-b10c-f17e925e3893_2525x1586.png 424w, https://substackcdn.com/image/fetch/$s_!gEft!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72bc85a5-21ea-461d-b10c-f17e925e3893_2525x1586.png 848w, https://substackcdn.com/image/fetch/$s_!gEft!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72bc85a5-21ea-461d-b10c-f17e925e3893_2525x1586.png 1272w, https://substackcdn.com/image/fetch/$s_!gEft!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72bc85a5-21ea-461d-b10c-f17e925e3893_2525x1586.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!gEft!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72bc85a5-21ea-461d-b10c-f17e925e3893_2525x1586.png" width="1456" height="915" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/72bc85a5-21ea-461d-b10c-f17e925e3893_2525x1586.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:915,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:256270,&quot;alt&quot;:&quot;Clerk > Configure > Developers > Domains, the DNS records to add&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://www.productcompass.pm/i/214285251?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72bc85a5-21ea-461d-b10c-f17e925e3893_2525x1586.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Clerk > Configure > Developers > Domains, the DNS records to add" title="Clerk > Configure > Developers > Domains, the DNS records to add" srcset="https://substackcdn.com/image/fetch/$s_!gEft!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72bc85a5-21ea-461d-b10c-f17e925e3893_2525x1586.png 424w, https://substackcdn.com/image/fetch/$s_!gEft!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72bc85a5-21ea-461d-b10c-f17e925e3893_2525x1586.png 848w, https://substackcdn.com/image/fetch/$s_!gEft!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72bc85a5-21ea-461d-b10c-f17e925e3893_2525x1586.png 1272w, https://substackcdn.com/image/fetch/$s_!gEft!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72bc85a5-21ea-461d-b10c-f17e925e3893_2525x1586.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Clerk &gt; Configure &gt; Developers &gt; Domains, the DNS records to add in Netlify</figcaption></figure></div><p>In Netlify, go to DNS &gt; your domain &gt; DNS settings &gt; Add new record. I did it like this:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!6Uc1!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F506582c6-d276-441c-8593-89d77529a9d0_2528x1483.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!6Uc1!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F506582c6-d276-441c-8593-89d77529a9d0_2528x1483.png 424w, https://substackcdn.com/image/fetch/$s_!6Uc1!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F506582c6-d276-441c-8593-89d77529a9d0_2528x1483.png 848w, https://substackcdn.com/image/fetch/$s_!6Uc1!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F506582c6-d276-441c-8593-89d77529a9d0_2528x1483.png 1272w, https://substackcdn.com/image/fetch/$s_!6Uc1!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F506582c6-d276-441c-8593-89d77529a9d0_2528x1483.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!6Uc1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F506582c6-d276-441c-8593-89d77529a9d0_2528x1483.png" width="1456" height="854" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/506582c6-d276-441c-8593-89d77529a9d0_2528x1483.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:854,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:328477,&quot;alt&quot;:&quot;Clerk DNS records added in Netlify DNS&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://www.productcompass.pm/i/214285251?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F506582c6-d276-441c-8593-89d77529a9d0_2528x1483.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Clerk DNS records added in Netlify DNS" title="Clerk DNS records added in Netlify DNS" srcset="https://substackcdn.com/image/fetch/$s_!6Uc1!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F506582c6-d276-441c-8593-89d77529a9d0_2528x1483.png 424w, https://substackcdn.com/image/fetch/$s_!6Uc1!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F506582c6-d276-441c-8593-89d77529a9d0_2528x1483.png 848w, https://substackcdn.com/image/fetch/$s_!6Uc1!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F506582c6-d276-441c-8593-89d77529a9d0_2528x1483.png 1272w, https://substackcdn.com/image/fetch/$s_!6Uc1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F506582c6-d276-441c-8593-89d77529a9d0_2528x1483.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Clerk DNS records added in Netlify DNS</figcaption></figure></div><p>All those records take time to propagate. But once they are verified, Clerk will start serving authentication for our production app:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!7TbY!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F37c50f39-f785-4189-b5e2-d7003859a388_2538x1821.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!7TbY!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F37c50f39-f785-4189-b5e2-d7003859a388_2538x1821.png 424w, https://substackcdn.com/image/fetch/$s_!7TbY!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F37c50f39-f785-4189-b5e2-d7003859a388_2538x1821.png 848w, https://substackcdn.com/image/fetch/$s_!7TbY!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F37c50f39-f785-4189-b5e2-d7003859a388_2538x1821.png 1272w, https://substackcdn.com/image/fetch/$s_!7TbY!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F37c50f39-f785-4189-b5e2-d7003859a388_2538x1821.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!7TbY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F37c50f39-f785-4189-b5e2-d7003859a388_2538x1821.png" width="2538" height="1821" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/37c50f39-f785-4189-b5e2-d7003859a388_2538x1821.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1821,&quot;width&quot;:2538,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:337000,&quot;alt&quot;:&quot;A verified domain in Clerk (Clerk > Configure > Developers > Domains)&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://www.productcompass.pm/i/214285251?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2595c207-f980-4419-9906-0fc51d669b8c_2543x1826.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="A verified domain in Clerk (Clerk > Configure > Developers > Domains)" title="A verified domain in Clerk (Clerk > Configure > Developers > Domains)" srcset="https://substackcdn.com/image/fetch/$s_!7TbY!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F37c50f39-f785-4189-b5e2-d7003859a388_2538x1821.png 424w, https://substackcdn.com/image/fetch/$s_!7TbY!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F37c50f39-f785-4189-b5e2-d7003859a388_2538x1821.png 848w, https://substackcdn.com/image/fetch/$s_!7TbY!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F37c50f39-f785-4189-b5e2-d7003859a388_2538x1821.png 1272w, https://substackcdn.com/image/fetch/$s_!7TbY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F37c50f39-f785-4189-b5e2-d7003859a388_2538x1821.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">A verified domain in Clerk (Clerk &gt; Configure &gt; Developers &gt; Domains)</figcaption></figure></div><div><hr></div><h2><strong>8. Add Product Analytics</strong></h2><p>I suggest you start with <a href="https://clarity.microsoft.com/">Microsoft Clarity</a>. It&#8217;s 100% free, without limits. Similarly, you can add other tracking codes in the future.</p><p>I&#8217;m not presenting creating an account. It&#8217;s straightforward.</p><p>Once inside, create a new project: </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!rBuf!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb274b226-0617-4584-9cb0-e9d430e465a9_2000x1067.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!rBuf!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb274b226-0617-4584-9cb0-e9d430e465a9_2000x1067.png 424w, https://substackcdn.com/image/fetch/$s_!rBuf!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb274b226-0617-4584-9cb0-e9d430e465a9_2000x1067.png 848w, https://substackcdn.com/image/fetch/$s_!rBuf!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb274b226-0617-4584-9cb0-e9d430e465a9_2000x1067.png 1272w, https://substackcdn.com/image/fetch/$s_!rBuf!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb274b226-0617-4584-9cb0-e9d430e465a9_2000x1067.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!rBuf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb274b226-0617-4584-9cb0-e9d430e465a9_2000x1067.png" width="1456" height="777" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b274b226-0617-4584-9cb0-e9d430e465a9_2000x1067.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:777,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:421902,&quot;alt&quot;:&quot;Microsoft Clarity > Add new project&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://www.productcompass.pm/i/214285251?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb274b226-0617-4584-9cb0-e9d430e465a9_2000x1067.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Microsoft Clarity > Add new project" title="Microsoft Clarity > Add new project" srcset="https://substackcdn.com/image/fetch/$s_!rBuf!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb274b226-0617-4584-9cb0-e9d430e465a9_2000x1067.png 424w, https://substackcdn.com/image/fetch/$s_!rBuf!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb274b226-0617-4584-9cb0-e9d430e465a9_2000x1067.png 848w, https://substackcdn.com/image/fetch/$s_!rBuf!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb274b226-0617-4584-9cb0-e9d430e465a9_2000x1067.png 1272w, https://substackcdn.com/image/fetch/$s_!rBuf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb274b226-0617-4584-9cb0-e9d430e465a9_2000x1067.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Microsoft Clarity &gt; Add new project</figcaption></figure></div><p>Then go to Settings &gt; Setup &gt; Advanced settings and switch cookies off:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!B2qP!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F454bf714-ce94-4721-93e1-8bf8e70a9fa9_2765x1048.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!B2qP!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F454bf714-ce94-4721-93e1-8bf8e70a9fa9_2765x1048.png 424w, https://substackcdn.com/image/fetch/$s_!B2qP!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F454bf714-ce94-4721-93e1-8bf8e70a9fa9_2765x1048.png 848w, https://substackcdn.com/image/fetch/$s_!B2qP!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F454bf714-ce94-4721-93e1-8bf8e70a9fa9_2765x1048.png 1272w, https://substackcdn.com/image/fetch/$s_!B2qP!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F454bf714-ce94-4721-93e1-8bf8e70a9fa9_2765x1048.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!B2qP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F454bf714-ce94-4721-93e1-8bf8e70a9fa9_2765x1048.png" width="1456" height="552" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/454bf714-ce94-4721-93e1-8bf8e70a9fa9_2765x1048.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:552,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:176344,&quot;alt&quot;:&quot;Microsoft Clarity > Settings > Setup > Advanced settings; Cookies: OFF&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://www.productcompass.pm/i/214285251?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F454bf714-ce94-4721-93e1-8bf8e70a9fa9_2765x1048.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Microsoft Clarity > Settings > Setup > Advanced settings; Cookies: OFF" title="Microsoft Clarity > Settings > Setup > Advanced settings; Cookies: OFF" srcset="https://substackcdn.com/image/fetch/$s_!B2qP!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F454bf714-ce94-4721-93e1-8bf8e70a9fa9_2765x1048.png 424w, https://substackcdn.com/image/fetch/$s_!B2qP!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F454bf714-ce94-4721-93e1-8bf8e70a9fa9_2765x1048.png 848w, https://substackcdn.com/image/fetch/$s_!B2qP!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F454bf714-ce94-4721-93e1-8bf8e70a9fa9_2765x1048.png 1272w, https://substackcdn.com/image/fetch/$s_!B2qP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F454bf714-ce94-4721-93e1-8bf8e70a9fa9_2765x1048.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Microsoft Clarity &gt; Settings &gt; Setup &gt; Advanced settings; Cookies: OFF</figcaption></figure></div><p>Go to Settings &gt; Setup &gt; Install manually and get a tracking 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_!tddm!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef161d1d-fbd8-4346-9945-aff966483841_2765x1048.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!tddm!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef161d1d-fbd8-4346-9945-aff966483841_2765x1048.png 424w, https://substackcdn.com/image/fetch/$s_!tddm!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef161d1d-fbd8-4346-9945-aff966483841_2765x1048.png 848w, https://substackcdn.com/image/fetch/$s_!tddm!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef161d1d-fbd8-4346-9945-aff966483841_2765x1048.png 1272w, https://substackcdn.com/image/fetch/$s_!tddm!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef161d1d-fbd8-4346-9945-aff966483841_2765x1048.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!tddm!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef161d1d-fbd8-4346-9945-aff966483841_2765x1048.png" width="1456" height="552" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ef161d1d-fbd8-4346-9945-aff966483841_2765x1048.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:552,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:223254,&quot;alt&quot;:&quot;Microsoft Clarity > Settings > Setup > Install manually > Get tracking code&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://www.productcompass.pm/i/214285251?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef161d1d-fbd8-4346-9945-aff966483841_2765x1048.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Microsoft Clarity > Settings > Setup > Install manually > Get tracking code" title="Microsoft Clarity > Settings > Setup > Install manually > Get tracking code" srcset="https://substackcdn.com/image/fetch/$s_!tddm!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef161d1d-fbd8-4346-9945-aff966483841_2765x1048.png 424w, https://substackcdn.com/image/fetch/$s_!tddm!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef161d1d-fbd8-4346-9945-aff966483841_2765x1048.png 848w, https://substackcdn.com/image/fetch/$s_!tddm!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef161d1d-fbd8-4346-9945-aff966483841_2765x1048.png 1272w, https://substackcdn.com/image/fetch/$s_!tddm!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef161d1d-fbd8-4346-9945-aff966483841_2765x1048.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Microsoft Clarity &gt; Settings &gt; Setup &gt; Install manually &gt; Get tracking code</figcaption></figure></div><p>Next, ask the agent (your code will be different):</p><pre><code><code>Inject the following Microsoft Clarity script to every page of our app:

&lt;script type="text/javascript"&gt;
    (function(c,l,a,r,i,t,y){
        c[a]=c[a]||function(){(c[a].q=c[a].q||[]).push(arguments)};
        t=l.createElement(r);t.async=1;t.src="https://www.clarity.ms/tag/"+i;
        y=l.getElementsByTagName(r)[0];y.parentNode.insertBefore(t,y);
    })(window, document, "clarity", "script", "yej44djiyd");
&lt;/script&gt;</code></code></pre><p>An example report you will see (a different app):</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ttSO!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F97c3ea12-87dd-4c84-a303-1e2718dcfd5e_2765x1676.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ttSO!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F97c3ea12-87dd-4c84-a303-1e2718dcfd5e_2765x1676.png 424w, https://substackcdn.com/image/fetch/$s_!ttSO!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F97c3ea12-87dd-4c84-a303-1e2718dcfd5e_2765x1676.png 848w, https://substackcdn.com/image/fetch/$s_!ttSO!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F97c3ea12-87dd-4c84-a303-1e2718dcfd5e_2765x1676.png 1272w, https://substackcdn.com/image/fetch/$s_!ttSO!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F97c3ea12-87dd-4c84-a303-1e2718dcfd5e_2765x1676.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ttSO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F97c3ea12-87dd-4c84-a303-1e2718dcfd5e_2765x1676.png" width="1456" height="883" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/97c3ea12-87dd-4c84-a303-1e2718dcfd5e_2765x1676.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:883,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:793561,&quot;alt&quot;:&quot;Heatmaps and session recordings in Microsoft Clarity (a different app)&quot;,&quot;title&quot;:&quot;Heatmaps and session recordings in Microsoft Clarity (a different app)&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://www.productcompass.pm/i/214285251?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F97c3ea12-87dd-4c84-a303-1e2718dcfd5e_2765x1676.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Heatmaps and session recordings in Microsoft Clarity (a different app)" title="Heatmaps and session recordings in Microsoft Clarity (a different app)" srcset="https://substackcdn.com/image/fetch/$s_!ttSO!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F97c3ea12-87dd-4c84-a303-1e2718dcfd5e_2765x1676.png 424w, https://substackcdn.com/image/fetch/$s_!ttSO!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F97c3ea12-87dd-4c84-a303-1e2718dcfd5e_2765x1676.png 848w, https://substackcdn.com/image/fetch/$s_!ttSO!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F97c3ea12-87dd-4c84-a303-1e2718dcfd5e_2765x1676.png 1272w, https://substackcdn.com/image/fetch/$s_!ttSO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F97c3ea12-87dd-4c84-a303-1e2718dcfd5e_2765x1676.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Heatmaps and session recordings in Microsoft Clarity</figcaption></figure></div><div class="callout-block" data-callout="true"><p>&#128204; No cookies means no cookie banner and no consent in the code. You will lose the ability to track the returning users, but this setup is all you need to analyze the landing page, view heatmaps, or watch session recordings and involves much less risk.</p></div><div><hr></div><h2><strong>9. Add Google Auth (For Real)</strong></h2><p>In development, Clerk provides shared Google credentials. In production, you need your own. The entire process (no screenshots, we would need too many):</p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;33c4104c-b887-4222-ae53-5659f79a7455&quot;,&quot;duration&quot;:null}"></div><p>I&#8217;m not presenting creating a <a href="https://console.cloud.google.com/">Google Cloud Console</a> (GCC) account. It&#8217;s straightforward. Once inside:</p><ol><li><p>[GCC] Create a new or select an existing project</p></li><li><p>[GCC] Go to APIs &amp; Services &gt; OAuth &gt; Get Started</p></li><li><p>[GCC] Add app information (External)</p></li><li><p>[GCC] Create OAuth client ID, note &#8220;Client ID&#8221; and &#8220;Client secret&#8221;</p></li><li><p>[GCC] Add your app URL to Authorized JavaScript Origins</p></li><li><p>[GCC] Go to Branding: add the app logo and the app domain, provide the terms of service and privacy policy links (we created those pages together with our landing page)</p></li><li><p>[GCC] Go to Audience &gt; Publish app</p></li><li><p>[GCC] Go to Branding &gt; Verify branding</p></li></ol><p>If the branding verification fails, go to <a href="https://search.google.com/search-console/about">Google Search Console</a> (GSC) and verify you&#8217;re the owner of the domain:</p><ol><li><p>[GSC] Add a website</p></li><li><p>[GSC] Copy TXT record for DNS configuration</p></li><li><p>[Netlify] Paste this record in Netlify &gt; DNS</p></li><li><p>[GSC] Click Verify</p></li><li><p>[GCC] Go to Branding &gt; Verify branding</p></li></ol><p>Next, configure Google Auth in Clerk:</p><ol><li><p>[Clerk] Configure &gt; User &amp; authentication &gt; SSO connections &gt; Google &gt; Enable</p></li><li><p>[Clerk] Configure &#8220;Client ID&#8221; and &#8220;Client secret&#8221; you got from Google</p></li><li><p>[Clerk] Copy &#8220;Authorized Redirect URI&#8221;</p></li><li><p>[GCC] Go to your project &gt; Credentials &gt; OAuth 2.0 &gt; use &#8220;Authorized Redirect URI&#8221; from Clerk</p></li><li><p>Wait 5 minutes</p></li></ol><p>&#127881; You can now Sign in / Sign up with Google in production. No &#8220;Development environment:&#8221;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!je2k!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22737417-0b5f-432c-bc05-23181e76d6df_2712x1556.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!je2k!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22737417-0b5f-432c-bc05-23181e76d6df_2712x1556.png 424w, https://substackcdn.com/image/fetch/$s_!je2k!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22737417-0b5f-432c-bc05-23181e76d6df_2712x1556.png 848w, https://substackcdn.com/image/fetch/$s_!je2k!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22737417-0b5f-432c-bc05-23181e76d6df_2712x1556.png 1272w, https://substackcdn.com/image/fetch/$s_!je2k!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22737417-0b5f-432c-bc05-23181e76d6df_2712x1556.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!je2k!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22737417-0b5f-432c-bc05-23181e76d6df_2712x1556.png" width="2712" height="1556" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/22737417-0b5f-432c-bc05-23181e76d6df_2712x1556.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1556,&quot;width&quot;:2712,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:220190,&quot;alt&quot;:&quot;AskOne production sign-in with Google, no development environment banner&quot;,&quot;title&quot;:&quot;AskOne production sign-in with Google, no development environment banner&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://www.productcompass.pm/i/214285251?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F424ca92f-a69c-4ff2-95ef-29d9791fa28d_2712x1664.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="AskOne production sign-in with Google, no development environment banner" title="AskOne production sign-in with Google, no development environment banner" srcset="https://substackcdn.com/image/fetch/$s_!je2k!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22737417-0b5f-432c-bc05-23181e76d6df_2712x1556.png 424w, https://substackcdn.com/image/fetch/$s_!je2k!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22737417-0b5f-432c-bc05-23181e76d6df_2712x1556.png 848w, https://substackcdn.com/image/fetch/$s_!je2k!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22737417-0b5f-432c-bc05-23181e76d6df_2712x1556.png 1272w, https://substackcdn.com/image/fetch/$s_!je2k!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22737417-0b5f-432c-bc05-23181e76d6df_2712x1556.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Production sign-in with Google, no development banner</figcaption></figure></div><div><hr></div><h2><strong>10. Conclusion</strong></h2><p>We have a production database, a production app, production users, and a production domain. Development stays on your laptop, but you know how to create more environments, if needed.</p><p>We still haven&#8217;t opened a file with the code.</p><p>Next in the series:</p><ul><li><p>Introducing a change and moving it between environments, end to end: the code and the database (not the data)</p></li><li><p>Enabling real Stripe payments</p></li><li><p>App-specific limits. Right now, an organization can have up to 10 active rooms. But can they open and close a room 1,000 times a second? What about free users?</p></li><li><p>Cloudflare: a web application firewall that guards the app against attacks that exhaust our resources</p></li><li><p>Tests in more detail: unit, integration, end-to-end, and AI looking at the screens</p></li><li><p>A checklist to verify that what we build is secure and efficient, and how to make sure AI has enough information to perform that verification</p></li></ul><p><strong>This Thursday, we continue building AskOne</strong>: <a href="https://go.productcompass.pm/events">https://go.productcompass.pm/events</a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h2><strong>11. Live Session Recording, Part 2</strong></h2><p>Part 1 and Part 2 are available here: <a href="https://go.productcompass.pm/events">https://go.productcompass.pm/events</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_!J-pO!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11f209ce-70ac-404e-a3a3-999d04bf90ce_2478x1692.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!J-pO!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11f209ce-70ac-404e-a3a3-999d04bf90ce_2478x1692.png 424w, https://substackcdn.com/image/fetch/$s_!J-pO!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11f209ce-70ac-404e-a3a3-999d04bf90ce_2478x1692.png 848w, https://substackcdn.com/image/fetch/$s_!J-pO!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11f209ce-70ac-404e-a3a3-999d04bf90ce_2478x1692.png 1272w, https://substackcdn.com/image/fetch/$s_!J-pO!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11f209ce-70ac-404e-a3a3-999d04bf90ce_2478x1692.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!J-pO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11f209ce-70ac-404e-a3a3-999d04bf90ce_2478x1692.png" width="1456" height="994" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/11f209ce-70ac-404e-a3a3-999d04bf90ce_2478x1692.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:994,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:748200,&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://www.productcompass.pm/i/214285251?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11f209ce-70ac-404e-a3a3-999d04bf90ce_2478x1692.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_!J-pO!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11f209ce-70ac-404e-a3a3-999d04bf90ce_2478x1692.png 424w, https://substackcdn.com/image/fetch/$s_!J-pO!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11f209ce-70ac-404e-a3a3-999d04bf90ce_2478x1692.png 848w, https://substackcdn.com/image/fetch/$s_!J-pO!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11f209ce-70ac-404e-a3a3-999d04bf90ce_2478x1692.png 1272w, https://substackcdn.com/image/fetch/$s_!J-pO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11f209ce-70ac-404e-a3a3-999d04bf90ce_2478x1692.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><p><em>P.S. If you&#8217;re looking for a structured cohort, I just joined Product Faculty as a trainer.</em></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!TptZ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16bfde5a-7500-4c7f-b559-9de86fb97740_800x800.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!TptZ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16bfde5a-7500-4c7f-b559-9de86fb97740_800x800.jpeg 424w, https://substackcdn.com/image/fetch/$s_!TptZ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16bfde5a-7500-4c7f-b559-9de86fb97740_800x800.jpeg 848w, https://substackcdn.com/image/fetch/$s_!TptZ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16bfde5a-7500-4c7f-b559-9de86fb97740_800x800.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!TptZ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16bfde5a-7500-4c7f-b559-9de86fb97740_800x800.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!TptZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16bfde5a-7500-4c7f-b559-9de86fb97740_800x800.jpeg" width="800" height="800" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/16bfde5a-7500-4c7f-b559-9de86fb97740_800x800.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:800,&quot;width&quot;:800,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Product Faculty: 3 frontier AI experts joined the AI Builder Fellowship&quot;,&quot;title&quot;:&quot;Product Faculty: 3 frontier AI experts joined the AI Builder Fellowship&quot;,&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="Product Faculty: 3 frontier AI experts joined the AI Builder Fellowship" title="Product Faculty: 3 frontier AI experts joined the AI Builder Fellowship" srcset="https://substackcdn.com/image/fetch/$s_!TptZ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16bfde5a-7500-4c7f-b559-9de86fb97740_800x800.jpeg 424w, https://substackcdn.com/image/fetch/$s_!TptZ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16bfde5a-7500-4c7f-b559-9de86fb97740_800x800.jpeg 848w, https://substackcdn.com/image/fetch/$s_!TptZ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16bfde5a-7500-4c7f-b559-9de86fb97740_800x800.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!TptZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16bfde5a-7500-4c7f-b559-9de86fb97740_800x800.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><em>Currently, we offer<strong> 8 AI PM cohorts (Anthropic, Google, OpenAI)</strong> for the <strong>price of one</strong> + $1,500 off for my readers: &#128073; <a href="https://productfaculty.com/?code=PAWEL">https://productfaculty.com?code=PAWEL</a> </em></p><p><em>On Maven, this program would cost ~$22,000. That&#8217;s, by far, the best training offer in the market.</em></p><p><em>And that&#8217;s not everything. Everyone who enrolls with the above code can <strong>attend our</strong> <strong>Claudathon for PMs for free</strong>: <a href="https://go.productcompass.pm/claudathon">https://go.productcompass.pm/claudathon</a> (send me an email with a purchase confirmation: pawel@productcompass.pm) - we start on Sep 19.</em></p><div><hr></div><h2><strong>Thanks for Reading The Product Compass</strong></h2><p>It&#8217;s amazing to learn and grow together.</p><p>Have an amazing rest of the week, <br>Pawe&#322;</p><div><hr></div><p><em>And one more question: should I move agentic engineering (what this series is about) to a separate stream? The first option below is a dedicated newsletter you can subscribe to/unsubscribe from:</em></p><div class="poll-embed" data-attrs="{&quot;id&quot;:1165469}" data-component-name="PollToDOM"></div>]]></content:encoded></item><item><title><![CDATA[Product Engineering for PMs, Part 1: Build a SaaS App Without Coding]]></title><description><![CDATA[Design, build, secure, and deploy a real multi-tenant SaaS app in 3-4 hours: Claude Code, Clerk, Supabase. No coding. All prompts included.]]></description><link>https://www.productcompass.pm/p/product-engineering-for-pms</link><guid isPermaLink="false">https://www.productcompass.pm/p/product-engineering-for-pms</guid><dc:creator><![CDATA[Paweł Huryn]]></dc:creator><pubDate>Mon, 31 Aug 2026 15:35:45 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!EFin!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc3d6580-d5b1-4fe5-a01a-61c37e07e90e_1200x678.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Take a look at this leaked Gartner report:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!EFin!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc3d6580-d5b1-4fe5-a01a-61c37e07e90e_1200x678.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!EFin!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc3d6580-d5b1-4fe5-a01a-61c37e07e90e_1200x678.png 424w, https://substackcdn.com/image/fetch/$s_!EFin!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc3d6580-d5b1-4fe5-a01a-61c37e07e90e_1200x678.png 848w, https://substackcdn.com/image/fetch/$s_!EFin!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc3d6580-d5b1-4fe5-a01a-61c37e07e90e_1200x678.png 1272w, https://substackcdn.com/image/fetch/$s_!EFin!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc3d6580-d5b1-4fe5-a01a-61c37e07e90e_1200x678.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!EFin!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc3d6580-d5b1-4fe5-a01a-61c37e07e90e_1200x678.png" width="1200" height="678" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cc3d6580-d5b1-4fe5-a01a-61c37e07e90e_1200x678.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:678,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:587188,&quot;alt&quot;:&quot;Gartner roles merging and collapsing, product engineers&quot;,&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc3d6580-d5b1-4fe5-a01a-61c37e07e90e_1200x678.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Gartner roles merging and collapsing, product engineers" title="Gartner roles merging and collapsing, product engineers" srcset="https://substackcdn.com/image/fetch/$s_!EFin!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc3d6580-d5b1-4fe5-a01a-61c37e07e90e_1200x678.png 424w, https://substackcdn.com/image/fetch/$s_!EFin!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc3d6580-d5b1-4fe5-a01a-61c37e07e90e_1200x678.png 848w, https://substackcdn.com/image/fetch/$s_!EFin!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc3d6580-d5b1-4fe5-a01a-61c37e07e90e_1200x678.png 1272w, https://substackcdn.com/image/fetch/$s_!EFin!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcc3d6580-d5b1-4fe5-a01a-61c37e07e90e_1200x678.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Source: <a href="https://x.com/housecor"><span>@housecor</span></a></figcaption></figure></div><p><strong>The roles are merging </strong>whether or not you can already feel that in your organization<strong>.</strong> While product discovery remains the core of our job, as a PM you should develop a basic understanding of <strong>engineering with AI.</strong></p><p><strong>Good news: you don&#8217;t have to code.</strong></p><p>My recent project, Grok Build for VS Code and <a href="https://afkpilot.com/desktop">afkpilot.com/desktop</a>, has been installed by <strong>105K+ people</strong>. 37K MAU. 5,094 unit tests. ~177K lines of code - I&#8217;ve reviewed none.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!tPRd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52b440cf-26be-40e2-a789-281918fd9068_1020x343.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!tPRd!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52b440cf-26be-40e2-a789-281918fd9068_1020x343.png 424w, https://substackcdn.com/image/fetch/$s_!tPRd!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52b440cf-26be-40e2-a789-281918fd9068_1020x343.png 848w, https://substackcdn.com/image/fetch/$s_!tPRd!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52b440cf-26be-40e2-a789-281918fd9068_1020x343.png 1272w, https://substackcdn.com/image/fetch/$s_!tPRd!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52b440cf-26be-40e2-a789-281918fd9068_1020x343.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!tPRd!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52b440cf-26be-40e2-a789-281918fd9068_1020x343.png" width="1020" height="343" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/52b440cf-26be-40e2-a789-281918fd9068_1020x343.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:343,&quot;width&quot;:1020,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:75172,&quot;alt&quot;:&quot;Grok Build for VS Code - Open VSX stats&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52b440cf-26be-40e2-a789-281918fd9068_1020x343.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Grok Build for VS Code - Open VSX stats" title="Grok Build for VS Code - Open VSX stats" srcset="https://substackcdn.com/image/fetch/$s_!tPRd!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52b440cf-26be-40e2-a789-281918fd9068_1020x343.png 424w, https://substackcdn.com/image/fetch/$s_!tPRd!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52b440cf-26be-40e2-a789-281918fd9068_1020x343.png 848w, https://substackcdn.com/image/fetch/$s_!tPRd!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52b440cf-26be-40e2-a789-281918fd9068_1020x343.png 1272w, https://substackcdn.com/image/fetch/$s_!tPRd!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52b440cf-26be-40e2-a789-281918fd9068_1020x343.png 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Source: <a href="https://open-vsx.org/extension/PawelHuryn/grok-vscode-phuryn">Open VSX Repository</a></figcaption></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!PHfh!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F18a34275-624b-4d43-9544-40f6667eed28_1037x438.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!PHfh!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F18a34275-624b-4d43-9544-40f6667eed28_1037x438.png 424w, https://substackcdn.com/image/fetch/$s_!PHfh!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F18a34275-624b-4d43-9544-40f6667eed28_1037x438.png 848w, https://substackcdn.com/image/fetch/$s_!PHfh!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F18a34275-624b-4d43-9544-40f6667eed28_1037x438.png 1272w, https://substackcdn.com/image/fetch/$s_!PHfh!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F18a34275-624b-4d43-9544-40f6667eed28_1037x438.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!PHfh!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F18a34275-624b-4d43-9544-40f6667eed28_1037x438.png" width="1037" height="438" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/18a34275-624b-4d43-9544-40f6667eed28_1037x438.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:438,&quot;width&quot;:1037,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:91971,&quot;alt&quot;:&quot;Grok Build for VS Code - VS Code marketplace stats&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fabb8ad21-4905-462d-a1e3-9a9912f86ac0_1037x561.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Grok Build for VS Code - VS Code marketplace stats" title="Grok Build for VS Code - VS Code marketplace stats" srcset="https://substackcdn.com/image/fetch/$s_!PHfh!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F18a34275-624b-4d43-9544-40f6667eed28_1037x438.png 424w, https://substackcdn.com/image/fetch/$s_!PHfh!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F18a34275-624b-4d43-9544-40f6667eed28_1037x438.png 848w, https://substackcdn.com/image/fetch/$s_!PHfh!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F18a34275-624b-4d43-9544-40f6667eed28_1037x438.png 1272w, https://substackcdn.com/image/fetch/$s_!PHfh!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F18a34275-624b-4d43-9544-40f6667eed28_1037x438.png 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Source: <a href="https://marketplace.visualstudio.com/items?itemName=PawelHuryn.grok-vscode-phuryn">VS Code</a> marketplace</figcaption></figure></div><p>Many ask me how I can trust the agents.</p><p>If you think about the<strong> 5,094 tests, this number is crazy</strong>. Many of them impersonate users and drive the browser sessions end-to-end. Only AI could do that in 3 months. This <strong>transforms the quality</strong> of what we can ship as non-developers.</p><p>A critical part is also <strong>documenting the intent</strong>, so that agents have something to design tests and inspect the codebase against.</p><p>In my new series, rather than presenting infographics, I demonstrate the how <strong>step-by-step</strong>, with <strong>templates, prompts, </strong>and all the<strong> hacks</strong> I&#8217;ve learned. By the end you will know how to <strong>discover, design, build &amp; secure, launch &amp; monetize, analyze, and monitor</strong> a commercial product. A real side hustle or for your portfolio.</p><p>Without ever looking at the code.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><p><em>Side note: As some have asked, hooked users are already paying to use the remote client ($1,920 ARR). The first step was proving the value and the word-of-mouth. I will focus on monetization after launching <strong>managed</strong> <strong>hosting</strong> &#8212; tomorrow.</em></p><div><hr></div><p>In this issue:</p><ol><li><p>Case Study Context: AskOne, Slido Alternative</p></li><li><p>Claude Solution Template for Non-Coders</p></li><li><p>Step 1: Design your App</p></li><li><p>Step 2: Build a Static Website</p></li><li><p>Step 3: Setup Clerk &amp; Supabase</p></li><li><p>Step 4: Sign Up with Google, See Your Data</p></li><li><p>Step 5: Configure Billing and Plans, See a Purchase</p></li><li><p>Step 6: Add Test Accounts and Browser Automation</p></li><li><p>Step 7: Publish it, Simplified</p></li><li><p>&#128274; The Template to Download</p></li><li><p>Conclusion</p></li><li><p>&#128274; Live Session Recording</p></li></ol><p>You can choose <strong>any web product</strong>. The <strong>steps are universal</strong>. This part will take you 3-4 hours. Most of that is waiting for AI, so you can drive it remotely from your phone.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h2><strong>1. Case Study Context: AskOne, Slido Alternative</strong></h2><p><strong>AskOne</strong><span> is live Q&amp;A for talks, webinars and cohort sessions:</span></p><ul><li><p><span>A </span><strong><span>host</span></strong><span> opens a room and gets a join code. </span></p></li><li><p><span>The </span><strong><span>audience</span></strong><span> opens </span><code>askone.org/r/&lt;code&gt;</code><span> on their phones, no account, asks questions and upvotes. </span></p></li><li><p><span>The </span><strong><span>host</span></strong><span> and </span><strong><span>moderators</span></strong><span> approve, hide, pin and mark answered; the room updates live; a projector view shows the top questions. When the room closes, the host gets the Q&amp;A by email. </span></p></li><li><p><span>An </span><strong><span>API and an MCP server</span></strong><span> let the host's agent turn the questions into a FAQ.</span></p></li></ul><p>B2B2C SaaS.</p><p>A $5/month alternative to <a href="https://www.slido.com/pricing?plan=annual">Slido</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_!byci!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5321975c-2114-4c01-855d-3233a3efe181_2371x1446.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!byci!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5321975c-2114-4c01-855d-3233a3efe181_2371x1446.png 424w, https://substackcdn.com/image/fetch/$s_!byci!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5321975c-2114-4c01-855d-3233a3efe181_2371x1446.png 848w, https://substackcdn.com/image/fetch/$s_!byci!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5321975c-2114-4c01-855d-3233a3efe181_2371x1446.png 1272w, https://substackcdn.com/image/fetch/$s_!byci!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5321975c-2114-4c01-855d-3233a3efe181_2371x1446.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!byci!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5321975c-2114-4c01-855d-3233a3efe181_2371x1446.png" width="1456" height="888" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5321975c-2114-4c01-855d-3233a3efe181_2371x1446.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:888,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:237925,&quot;alt&quot;:&quot;Slido live Q&amp;A dashboard - the product AskOne replaces&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5321975c-2114-4c01-855d-3233a3efe181_2371x1446.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Slido live Q&amp;A dashboard - the product AskOne replaces" title="Slido live Q&amp;A dashboard - the product AskOne replaces" srcset="https://substackcdn.com/image/fetch/$s_!byci!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5321975c-2114-4c01-855d-3233a3efe181_2371x1446.png 424w, https://substackcdn.com/image/fetch/$s_!byci!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5321975c-2114-4c01-855d-3233a3efe181_2371x1446.png 848w, https://substackcdn.com/image/fetch/$s_!byci!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5321975c-2114-4c01-855d-3233a3efe181_2371x1446.png 1272w, https://substackcdn.com/image/fetch/$s_!byci!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5321975c-2114-4c01-855d-3233a3efe181_2371x1446.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Slido live Q&amp;A dashboard - the product AskOne replaces</figcaption></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!QoVj!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffac5bf44-bebf-401f-a3c6-14f09d122bfd_1041x674.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!QoVj!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffac5bf44-bebf-401f-a3c6-14f09d122bfd_1041x674.png 424w, https://substackcdn.com/image/fetch/$s_!QoVj!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffac5bf44-bebf-401f-a3c6-14f09d122bfd_1041x674.png 848w, https://substackcdn.com/image/fetch/$s_!QoVj!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffac5bf44-bebf-401f-a3c6-14f09d122bfd_1041x674.png 1272w, https://substackcdn.com/image/fetch/$s_!QoVj!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffac5bf44-bebf-401f-a3c6-14f09d122bfd_1041x674.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!QoVj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffac5bf44-bebf-401f-a3c6-14f09d122bfd_1041x674.png" width="1041" height="674" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/fac5bf44-bebf-401f-a3c6-14f09d122bfd_1041x674.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:674,&quot;width&quot;:1041,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:104327,&quot;alt&quot;:&quot;Slido pricing - the benchmark for the $5/month alternative&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffac5bf44-bebf-401f-a3c6-14f09d122bfd_1041x674.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Slido pricing - the benchmark for the $5/month alternative" title="Slido pricing - the benchmark for the $5/month alternative" srcset="https://substackcdn.com/image/fetch/$s_!QoVj!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffac5bf44-bebf-401f-a3c6-14f09d122bfd_1041x674.png 424w, https://substackcdn.com/image/fetch/$s_!QoVj!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffac5bf44-bebf-401f-a3c6-14f09d122bfd_1041x674.png 848w, https://substackcdn.com/image/fetch/$s_!QoVj!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffac5bf44-bebf-401f-a3c6-14f09d122bfd_1041x674.png 1272w, https://substackcdn.com/image/fetch/$s_!QoVj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffac5bf44-bebf-401f-a3c6-14f09d122bfd_1041x674.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Slido pricing - the benchmark for the $5/month alternative</figcaption></figure></div><p>Banal on purpose. It will demonstrate all critical elements, including a multi-tenant setup, Google authentication, paid subscriptions, roles and permissions, CI/CD, and securing the app.</p><p>You will never open a file with the code.</p><div><hr></div><h2><strong>2. Claude Solution Template for Non-Coders</strong></h2><p>You don&#8217;t have to start from scratch. A Claude SaaS solution template we will start with defines:</p><ul><li><p>The recommended, common tech stack (Next.js, Clerk, Supabase)</p></li><li><p>Preinstalled skills for Supabase and Clerk integrations</p></li><li><p>Instructions for the agent (quality, documentation, opinionated choices that worked best for me)</p></li></ul><p>AGENTS.md has a <strong>strategic context placeholder</strong> that should stem from your <a href="https://www.productcompass.pm/p/product-discovery-2026?r=1fipi8&amp;utm_campaign=post&amp;utm_medium=web">product discovery</a>. Explain what you want to build, market segments, value propositions, jobs to be done, use cases, who can do what, not in scope, and constraints:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!79-3!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5330814f-fa1c-414f-b3dc-6589260aba2c_2732x1727.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!79-3!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5330814f-fa1c-414f-b3dc-6589260aba2c_2732x1727.png 424w, https://substackcdn.com/image/fetch/$s_!79-3!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5330814f-fa1c-414f-b3dc-6589260aba2c_2732x1727.png 848w, https://substackcdn.com/image/fetch/$s_!79-3!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5330814f-fa1c-414f-b3dc-6589260aba2c_2732x1727.png 1272w, https://substackcdn.com/image/fetch/$s_!79-3!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5330814f-fa1c-414f-b3dc-6589260aba2c_2732x1727.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!79-3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5330814f-fa1c-414f-b3dc-6589260aba2c_2732x1727.png" width="1456" height="920" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5330814f-fa1c-414f-b3dc-6589260aba2c_2732x1727.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:920,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:515450,&quot;alt&quot;:&quot;AGENTS.md strategic context placeholder in the Claude SaaS solution template&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5330814f-fa1c-414f-b3dc-6589260aba2c_2732x1727.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="AGENTS.md strategic context placeholder in the Claude SaaS solution template" title="AGENTS.md strategic context placeholder in the Claude SaaS solution template" srcset="https://substackcdn.com/image/fetch/$s_!79-3!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5330814f-fa1c-414f-b3dc-6589260aba2c_2732x1727.png 424w, https://substackcdn.com/image/fetch/$s_!79-3!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5330814f-fa1c-414f-b3dc-6589260aba2c_2732x1727.png 848w, https://substackcdn.com/image/fetch/$s_!79-3!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5330814f-fa1c-414f-b3dc-6589260aba2c_2732x1727.png 1272w, https://substackcdn.com/image/fetch/$s_!79-3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5330814f-fa1c-414f-b3dc-6589260aba2c_2732x1727.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">AGENTS.md strategic context placeholder in the Claude SaaS solution template</figcaption></figure></div><p>This is just a high-level <a href="https://www.productcompass.pm/p/intent-engineering-framework-for-ai-agents">strategic context</a>, not a full specification upfront &#8212; we can&#8217;t know it without interacting with the app and getting feedback from the users. </p><p>You can use my case study, or replace it with what you know about your product.</p><div><hr></div><h2><strong>3. Step 1: Design your App</strong></h2><p>We start with design. Let&#8217;s keep it simple. No accounts, no keys, no database. Just you and the Claude Code chat. </p><p>Ask (all my prompts are part of the template, you can copy and adjust them):</p><pre><code><code>Read AGENTS.md. Design only &#8212; no code, no database, no .env.

/design the two Phase 1 screens with their empty states: the host's rooms list (desktop) and the participant's room page (phone). Use the `frontend-design` skill. I want to open and interact with the results.

Give me two genuinely different directions, one line each on what it optimizes for and the trade-off. Stop; I pick.

After I pick: build the kit in design/, rebuild the two screens from it, keep the artboards in the repo, commit, and stop again.

Layout, copy, type, color, what the kit contains &#8212; yours. Real copy, lucide icons, phone-first.</code> </code></pre><p>It gave me an interactive link with 2 designs: <a href="https://claude.ai/code/artifact/6abe1030-5b21-418e-9326-999b3edfa816">https://claude.ai/code/artifact/6abe1030-5b21-418e-9326-999b3edfa816</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_!d2UK!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c60a229-71de-47e2-b3e3-17c64b608e79_1525x701.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!d2UK!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c60a229-71de-47e2-b3e3-17c64b608e79_1525x701.png 424w, https://substackcdn.com/image/fetch/$s_!d2UK!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c60a229-71de-47e2-b3e3-17c64b608e79_1525x701.png 848w, https://substackcdn.com/image/fetch/$s_!d2UK!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c60a229-71de-47e2-b3e3-17c64b608e79_1525x701.png 1272w, https://substackcdn.com/image/fetch/$s_!d2UK!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c60a229-71de-47e2-b3e3-17c64b608e79_1525x701.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!d2UK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c60a229-71de-47e2-b3e3-17c64b608e79_1525x701.png" width="1456" height="669" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6c60a229-71de-47e2-b3e3-17c64b608e79_1525x701.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:669,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:210454,&quot;alt&quot;:&quot;Claude artifacts - an interactive link with 2 designs&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c60a229-71de-47e2-b3e3-17c64b608e79_1525x701.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Claude artifacts - an interactive link with 2 designs" title="Claude artifacts - an interactive link with 2 designs" srcset="https://substackcdn.com/image/fetch/$s_!d2UK!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c60a229-71de-47e2-b3e3-17c64b608e79_1525x701.png 424w, https://substackcdn.com/image/fetch/$s_!d2UK!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c60a229-71de-47e2-b3e3-17c64b608e79_1525x701.png 848w, https://substackcdn.com/image/fetch/$s_!d2UK!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c60a229-71de-47e2-b3e3-17c64b608e79_1525x701.png 1272w, https://substackcdn.com/image/fetch/$s_!d2UK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c60a229-71de-47e2-b3e3-17c64b608e79_1525x701.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>I rejected &#8220;A - Show of hands&#8221;:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!bume!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5543283f-5c18-4664-a6fa-388d0cc4a381_2613x1609.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!bume!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5543283f-5c18-4664-a6fa-388d0cc4a381_2613x1609.png 424w, https://substackcdn.com/image/fetch/$s_!bume!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5543283f-5c18-4664-a6fa-388d0cc4a381_2613x1609.png 848w, https://substackcdn.com/image/fetch/$s_!bume!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5543283f-5c18-4664-a6fa-388d0cc4a381_2613x1609.png 1272w, https://substackcdn.com/image/fetch/$s_!bume!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5543283f-5c18-4664-a6fa-388d0cc4a381_2613x1609.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!bume!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5543283f-5c18-4664-a6fa-388d0cc4a381_2613x1609.png" width="1456" height="897" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5543283f-5c18-4664-a6fa-388d0cc4a381_2613x1609.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:897,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:255356,&quot;alt&quot;:&quot;AskOne, prototype A - Show of hands&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5543283f-5c18-4664-a6fa-388d0cc4a381_2613x1609.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="AskOne, prototype A - Show of hands" title="AskOne, prototype A - Show of hands" srcset="https://substackcdn.com/image/fetch/$s_!bume!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5543283f-5c18-4664-a6fa-388d0cc4a381_2613x1609.png 424w, https://substackcdn.com/image/fetch/$s_!bume!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5543283f-5c18-4664-a6fa-388d0cc4a381_2613x1609.png 848w, https://substackcdn.com/image/fetch/$s_!bume!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5543283f-5c18-4664-a6fa-388d0cc4a381_2613x1609.png 1272w, https://substackcdn.com/image/fetch/$s_!bume!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5543283f-5c18-4664-a6fa-388d0cc4a381_2613x1609.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Prototype A - Show of hands</figcaption></figure></div><p>And selected B &#8212; Signal desk, to prioritize enterprise buyers:</p><div class="image-gallery-embed" data-attrs="{&quot;gallery&quot;:{&quot;images&quot;:[{&quot;type&quot;:&quot;image/png&quot;,&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b866a238-0e43-47fe-82de-f1c1eec3d29b_1058x651.png&quot;}],&quot;caption&quot;:&quot;Prototype B &#8212; Signal desk&quot;,&quot;alt&quot;:&quot;AskOne, prototype B - Signal desk&quot;,&quot;staticGalleryImage&quot;:{&quot;type&quot;:&quot;image/png&quot;,&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b866a238-0e43-47fe-82de-f1c1eec3d29b_1058x651.png&quot;}},&quot;isEditorNode&quot;:true}"></div><p>Then, Claude built a design system with tokens (colors, styles) we will use later when developing our product. You can preview it here: <a href="https://claude.ai/code/artifact/32fd141c-452d-45a7-8111-d6cb7792085a">https://claude.ai/code/artifact/32fd141c-452d-45a7-8111-d6cb7792085a</a></p><div><hr></div><h2><strong>4. Step 2: Build a Static Website</strong></h2><p>This step turns the design into an app we can click through. Still without accounts or database.</p><p>Ask the agent:</p><pre><code><code>Read AGENTS.md and design/README.md. Build the approved design as a running app: the host's rooms list and the participant's room page, with realistic content and their empty states.

No accounts and no database in this session. 003 connects Clerk and Supabase; 004 puts the real data model (&#167; 1.1 &#8212; workspaces, the three functions) behind these same screens. Build so that swap is small, and invent no storage in the meantime.

Plan briefly, build, commit, run it and give me the URL. Then stop and tell me what I can click.</code></code></pre><p>It gave me a URL I can click (localhost, works only on my machine):</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!pPyH!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6092bf99-075f-41ea-96eb-f7e40ce510e9_1742x1138.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!pPyH!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6092bf99-075f-41ea-96eb-f7e40ce510e9_1742x1138.png 424w, https://substackcdn.com/image/fetch/$s_!pPyH!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6092bf99-075f-41ea-96eb-f7e40ce510e9_1742x1138.png 848w, https://substackcdn.com/image/fetch/$s_!pPyH!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6092bf99-075f-41ea-96eb-f7e40ce510e9_1742x1138.png 1272w, https://substackcdn.com/image/fetch/$s_!pPyH!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6092bf99-075f-41ea-96eb-f7e40ce510e9_1742x1138.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!pPyH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6092bf99-075f-41ea-96eb-f7e40ce510e9_1742x1138.png" width="1456" height="951" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6092bf99-075f-41ea-96eb-f7e40ce510e9_1742x1138.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:951,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:271329,&quot;alt&quot;:&quot;Claude Code - build a static page&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6092bf99-075f-41ea-96eb-f7e40ce510e9_1742x1138.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Claude Code - build a static page" title="Claude Code - build a static page" srcset="https://substackcdn.com/image/fetch/$s_!pPyH!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6092bf99-075f-41ea-96eb-f7e40ce510e9_1742x1138.png 424w, https://substackcdn.com/image/fetch/$s_!pPyH!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6092bf99-075f-41ea-96eb-f7e40ce510e9_1742x1138.png 848w, https://substackcdn.com/image/fetch/$s_!pPyH!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6092bf99-075f-41ea-96eb-f7e40ce510e9_1742x1138.png 1272w, https://substackcdn.com/image/fetch/$s_!pPyH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6092bf99-075f-41ea-96eb-f7e40ce510e9_1742x1138.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="callout-block" data-callout="true"><p>&#128204; Note that in one of the bullets it mentioned pasting the <code>&lt;script&gt;</code> element - this eliminates the &#8220;XSS injection&#8221; attack surface. Our template instructions (AGENTS.md) teach the agent to consider common threats, even before review.</p></div><p>The live website looked just like the design:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!8Vmr!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F037093cb-850f-4843-abfa-aee841b38422_2542x1547.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!8Vmr!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F037093cb-850f-4843-abfa-aee841b38422_2542x1547.png 424w, https://substackcdn.com/image/fetch/$s_!8Vmr!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F037093cb-850f-4843-abfa-aee841b38422_2542x1547.png 848w, https://substackcdn.com/image/fetch/$s_!8Vmr!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F037093cb-850f-4843-abfa-aee841b38422_2542x1547.png 1272w, https://substackcdn.com/image/fetch/$s_!8Vmr!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F037093cb-850f-4843-abfa-aee841b38422_2542x1547.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!8Vmr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F037093cb-850f-4843-abfa-aee841b38422_2542x1547.png" width="1456" height="886" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/037093cb-850f-4843-abfa-aee841b38422_2542x1547.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:886,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:309341,&quot;alt&quot;:&quot;Claude Code - static website based on the design&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F037093cb-850f-4843-abfa-aee841b38422_2542x1547.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Claude Code - static website based on the design" title="Claude Code - static website based on the design" srcset="https://substackcdn.com/image/fetch/$s_!8Vmr!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F037093cb-850f-4843-abfa-aee841b38422_2542x1547.png 424w, https://substackcdn.com/image/fetch/$s_!8Vmr!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F037093cb-850f-4843-abfa-aee841b38422_2542x1547.png 848w, https://substackcdn.com/image/fetch/$s_!8Vmr!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F037093cb-850f-4843-abfa-aee841b38422_2542x1547.png 1272w, https://substackcdn.com/image/fetch/$s_!8Vmr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F037093cb-850f-4843-abfa-aee841b38422_2542x1547.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Static website Claude implemented based on the design</figcaption></figure></div><div><hr></div><h2><strong>5. Step 3: Setup Clerk &amp; Supabase</strong></h2><p>Our app exists and can be displayed in the browser, but with fake content. The next step is connecting the two services that make it real:</p><ul><li><p><strong>Clerk</strong><span> decides who you are</span></p></li><li><p><strong>Supabase</strong><span> is where the data lives</span></p></li></ul><h3>Step 3.1: Create two new projects</h3><p><strong>Configure Clerk</strong></p><p>Create a new, free application at <a href="https://dashboard.clerk.com/apps/new">https://dashboard.clerk.com/apps/new</a>. Make sure Google auth is enabled. Don&#8217;t enable multi-tenancy yet. We will do it later:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!oMYC!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9edf6e87-f929-46c9-a90c-054e935f0124_1456x1026.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!oMYC!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9edf6e87-f929-46c9-a90c-054e935f0124_1456x1026.png 424w, https://substackcdn.com/image/fetch/$s_!oMYC!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9edf6e87-f929-46c9-a90c-054e935f0124_1456x1026.png 848w, https://substackcdn.com/image/fetch/$s_!oMYC!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9edf6e87-f929-46c9-a90c-054e935f0124_1456x1026.png 1272w, https://substackcdn.com/image/fetch/$s_!oMYC!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9edf6e87-f929-46c9-a90c-054e935f0124_1456x1026.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!oMYC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9edf6e87-f929-46c9-a90c-054e935f0124_1456x1026.png" width="1456" height="1026" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9edf6e87-f929-46c9-a90c-054e935f0124_1456x1026.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1026,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:278815,&quot;alt&quot;:&quot;Create a free Clerk application with Google authentication enabled&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9edf6e87-f929-46c9-a90c-054e935f0124_1456x1026.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Create a free Clerk application with Google authentication enabled" title="Create a free Clerk application with Google authentication enabled" srcset="https://substackcdn.com/image/fetch/$s_!oMYC!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9edf6e87-f929-46c9-a90c-054e935f0124_1456x1026.png 424w, https://substackcdn.com/image/fetch/$s_!oMYC!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9edf6e87-f929-46c9-a90c-054e935f0124_1456x1026.png 848w, https://substackcdn.com/image/fetch/$s_!oMYC!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9edf6e87-f929-46c9-a90c-054e935f0124_1456x1026.png 1272w, https://substackcdn.com/image/fetch/$s_!oMYC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9edf6e87-f929-46c9-a90c-054e935f0124_1456x1026.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Create a free Clerk application with Google authentication enabled</figcaption></figure></div><p>You will land on the <strong>development</strong> instance. The dashboard offers a long &#8220;Add authentication&#8221; prompt: ignore it. The page you want is <strong>Configure &#8594; API keys</strong>. </p><p>Note:</p><ul><li><p><code>NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY</code></p></li><li><p><code>CLERK_SECRET_KEY</code></p></li></ul><p><strong>Configure Supabase</strong></p><p>Create an empty, free project at <a href="https://supabase.com/dashboard">https://supabase.com/dashboard</a>. </p><p>Go to <strong>Project Settings &#8594; API</strong> for the project URL and the <strong>secret</strong> key. The publishable key is optional, only for your unit tests.</p><p>Note:</p><ul><li><p><code>SUPABASE_URL</code></p></li><li><p><code>SUPABASE_SECRET_KEY</code></p></li><li><p><code>SUPABASE_PUBLISHABLE_KEY</code></p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!zOnr!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7f12438-3bbf-495e-94ae-e39c5508b157_2767x1724.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!zOnr!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7f12438-3bbf-495e-94ae-e39c5508b157_2767x1724.png 424w, https://substackcdn.com/image/fetch/$s_!zOnr!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7f12438-3bbf-495e-94ae-e39c5508b157_2767x1724.png 848w, https://substackcdn.com/image/fetch/$s_!zOnr!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7f12438-3bbf-495e-94ae-e39c5508b157_2767x1724.png 1272w, https://substackcdn.com/image/fetch/$s_!zOnr!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7f12438-3bbf-495e-94ae-e39c5508b157_2767x1724.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!zOnr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7f12438-3bbf-495e-94ae-e39c5508b157_2767x1724.png" width="1456" height="907" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b7f12438-3bbf-495e-94ae-e39c5508b157_2767x1724.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:907,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:539607,&quot;alt&quot;:&quot;How to Configure Supabase&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7f12438-3bbf-495e-94ae-e39c5508b157_2767x1724.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="How to Configure Supabase" title="How to Configure Supabase" srcset="https://substackcdn.com/image/fetch/$s_!zOnr!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7f12438-3bbf-495e-94ae-e39c5508b157_2767x1724.png 424w, https://substackcdn.com/image/fetch/$s_!zOnr!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7f12438-3bbf-495e-94ae-e39c5508b157_2767x1724.png 848w, https://substackcdn.com/image/fetch/$s_!zOnr!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7f12438-3bbf-495e-94ae-e39c5508b157_2767x1724.png 1272w, https://substackcdn.com/image/fetch/$s_!zOnr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7f12438-3bbf-495e-94ae-e39c5508b157_2767x1724.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">How to Configure Supabase</figcaption></figure></div><h3>Step 3.2: Establish a Supabase MCP connection</h3><p><span>Supabase generates this for </span>your<span> project under </span><strong>Connect &#8594; MCP &#8594; Claude Code</strong><span>. Select all feature groups, copy the prompt, and paste it into your Claude Code:</span></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!0RCn!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fede58d5c-90c2-41c5-9e54-7b73bc74026f_1872x1624.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!0RCn!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fede58d5c-90c2-41c5-9e54-7b73bc74026f_1872x1624.png 424w, https://substackcdn.com/image/fetch/$s_!0RCn!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fede58d5c-90c2-41c5-9e54-7b73bc74026f_1872x1624.png 848w, https://substackcdn.com/image/fetch/$s_!0RCn!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fede58d5c-90c2-41c5-9e54-7b73bc74026f_1872x1624.png 1272w, https://substackcdn.com/image/fetch/$s_!0RCn!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fede58d5c-90c2-41c5-9e54-7b73bc74026f_1872x1624.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!0RCn!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fede58d5c-90c2-41c5-9e54-7b73bc74026f_1872x1624.png" width="1456" height="1263" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ede58d5c-90c2-41c5-9e54-7b73bc74026f_1872x1624.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1263,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:236957,&quot;alt&quot;:&quot;How to Establish a Supabase MCP connection&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fede58d5c-90c2-41c5-9e54-7b73bc74026f_1872x1624.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="How to Establish a Supabase MCP connection" title="How to Establish a Supabase MCP connection" srcset="https://substackcdn.com/image/fetch/$s_!0RCn!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fede58d5c-90c2-41c5-9e54-7b73bc74026f_1872x1624.png 424w, https://substackcdn.com/image/fetch/$s_!0RCn!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fede58d5c-90c2-41c5-9e54-7b73bc74026f_1872x1624.png 848w, https://substackcdn.com/image/fetch/$s_!0RCn!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fede58d5c-90c2-41c5-9e54-7b73bc74026f_1872x1624.png 1272w, https://substackcdn.com/image/fetch/$s_!0RCn!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fede58d5c-90c2-41c5-9e54-7b73bc74026f_1872x1624.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">How to Establish a Supabase MCP connection</figcaption></figure></div><p><span>It carries your project ref, so the version below is only the shape:</span></p><pre><code><code>1. Add MCP server

claude mcp add --scope project --transport http supabase "https://mcp.supabase.com/mcp?project_ref=************"

2. Authenticate

Run this in a regular terminal, not an IDE extension. Select the supabase server, then Authenticate.

claude /mcp

3. Install Agent Skills (optional)

npx skills add supabase/agent-skills</code></code></pre><p><span>&#8220;</span><code>Install Agent Skills</code><span>&#8221; is already done (included in our template). Step 2 is yours: open Claude Code in the terminal, type </span><code>/mcp</code><span>, pick </span><code>supabase</code><span>, select </span><strong>Authenticate</strong> (hit Enter)<span>:</span></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!8xs6!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa217d029-ab5f-45eb-99e1-67f4a4c36749_1494x707.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!8xs6!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa217d029-ab5f-45eb-99e1-67f4a4c36749_1494x707.png 424w, https://substackcdn.com/image/fetch/$s_!8xs6!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa217d029-ab5f-45eb-99e1-67f4a4c36749_1494x707.png 848w, https://substackcdn.com/image/fetch/$s_!8xs6!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa217d029-ab5f-45eb-99e1-67f4a4c36749_1494x707.png 1272w, https://substackcdn.com/image/fetch/$s_!8xs6!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa217d029-ab5f-45eb-99e1-67f4a4c36749_1494x707.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!8xs6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa217d029-ab5f-45eb-99e1-67f4a4c36749_1494x707.png" width="1456" height="689" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a217d029-ab5f-45eb-99e1-67f4a4c36749_1494x707.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:689,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:86230,&quot;alt&quot;:&quot;Claude Code CLI - authenticate an MCP server&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa217d029-ab5f-45eb-99e1-67f4a4c36749_1494x707.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Claude Code CLI - authenticate an MCP server" title="Claude Code CLI - authenticate an MCP server" srcset="https://substackcdn.com/image/fetch/$s_!8xs6!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa217d029-ab5f-45eb-99e1-67f4a4c36749_1494x707.png 424w, https://substackcdn.com/image/fetch/$s_!8xs6!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa217d029-ab5f-45eb-99e1-67f4a4c36749_1494x707.png 848w, https://substackcdn.com/image/fetch/$s_!8xs6!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa217d029-ab5f-45eb-99e1-67f4a4c36749_1494x707.png 1272w, https://substackcdn.com/image/fetch/$s_!8xs6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa217d029-ab5f-45eb-99e1-67f4a4c36749_1494x707.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><span>Restart Claude Code by pressing &#8220;Ctrl + Shift + P,&#8221; then &#8220;Developer: Reload Window&#8221;: </span></p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!wZVc!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcafc4e3d-bcd8-47db-b791-fb5b574e6389_2380x470.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!wZVc!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcafc4e3d-bcd8-47db-b791-fb5b574e6389_2380x470.png 424w, https://substackcdn.com/image/fetch/$s_!wZVc!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcafc4e3d-bcd8-47db-b791-fb5b574e6389_2380x470.png 848w, https://substackcdn.com/image/fetch/$s_!wZVc!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcafc4e3d-bcd8-47db-b791-fb5b574e6389_2380x470.png 1272w, https://substackcdn.com/image/fetch/$s_!wZVc!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcafc4e3d-bcd8-47db-b791-fb5b574e6389_2380x470.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!wZVc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcafc4e3d-bcd8-47db-b791-fb5b574e6389_2380x470.png" width="1456" height="288" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cafc4e3d-bcd8-47db-b791-fb5b574e6389_2380x470.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:288,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:122109,&quot;alt&quot;:&quot;Restart Claude Code by pressing &#8220;Ctrl + Shift + P,&#8221; then &#8220;Developer: Reload Window&#8221;&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcafc4e3d-bcd8-47db-b791-fb5b574e6389_2380x470.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Restart Claude Code by pressing &#8220;Ctrl + Shift + P,&#8221; then &#8220;Developer: Reload Window&#8221;" title="Restart Claude Code by pressing &#8220;Ctrl + Shift + P,&#8221; then &#8220;Developer: Reload Window&#8221;" srcset="https://substackcdn.com/image/fetch/$s_!wZVc!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcafc4e3d-bcd8-47db-b791-fb5b574e6389_2380x470.png 424w, https://substackcdn.com/image/fetch/$s_!wZVc!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcafc4e3d-bcd8-47db-b791-fb5b574e6389_2380x470.png 848w, https://substackcdn.com/image/fetch/$s_!wZVc!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcafc4e3d-bcd8-47db-b791-fb5b574e6389_2380x470.png 1272w, https://substackcdn.com/image/fetch/$s_!wZVc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcafc4e3d-bcd8-47db-b791-fb5b574e6389_2380x470.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p><span>Or you can restart the entire VS Code.</span></p><h3>Step 3.3: <span>Configure your access keys</span></h3><p><span>Copy </span><code>.env.example</code><span> to </span><code>.env</code><span> and fill in the five values from Step 3.1:</span></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!bLJO!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fe72f25-3e22-443e-bb01-6d6614fe812c_2347x1067.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!bLJO!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fe72f25-3e22-443e-bb01-6d6614fe812c_2347x1067.png 424w, https://substackcdn.com/image/fetch/$s_!bLJO!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fe72f25-3e22-443e-bb01-6d6614fe812c_2347x1067.png 848w, https://substackcdn.com/image/fetch/$s_!bLJO!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fe72f25-3e22-443e-bb01-6d6614fe812c_2347x1067.png 1272w, https://substackcdn.com/image/fetch/$s_!bLJO!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fe72f25-3e22-443e-bb01-6d6614fe812c_2347x1067.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!bLJO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fe72f25-3e22-443e-bb01-6d6614fe812c_2347x1067.png" width="1456" height="662" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7fe72f25-3e22-443e-bb01-6d6614fe812c_2347x1067.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:662,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:352288,&quot;alt&quot;:&quot;VS Code, Configure your access keys&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fe72f25-3e22-443e-bb01-6d6614fe812c_2347x1067.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="VS Code, Configure your access keys" title="VS Code, Configure your access keys" srcset="https://substackcdn.com/image/fetch/$s_!bLJO!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fe72f25-3e22-443e-bb01-6d6614fe812c_2347x1067.png 424w, https://substackcdn.com/image/fetch/$s_!bLJO!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fe72f25-3e22-443e-bb01-6d6614fe812c_2347x1067.png 848w, https://substackcdn.com/image/fetch/$s_!bLJO!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fe72f25-3e22-443e-bb01-6d6614fe812c_2347x1067.png 1272w, https://substackcdn.com/image/fetch/$s_!bLJO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fe72f25-3e22-443e-bb01-6d6614fe812c_2347x1067.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Store your access keys in the .env file</figcaption></figure></div><div class="callout-block" data-callout="true"><p>&#128204; Keys go into <code>.env</code> and nowhere else - never into the chat. A key that touched the chat should be treated as compromised and rotated (regenerated). For production, you will store them elsewhere.</p></div><p>Ask the agent:</p><pre><code><code>I configured the secrets in .env. Please verify connections to Supabase and Clerk.</code> </code></pre><p>All should be green (not literally). If not, let the agent guide you.</p><div><hr></div><h2><strong>6. Step 4: Sign Up with Google, See Your Data</strong></h2><p>The screens exist and the two services are connected. This step makes them real: signing in, a database, and who is allowed to do what. It is the long one, though. You can delegate that work and go do something else.</p><p>Ask the agent (Opus 5 worked for ~30 min):</p><pre><code><code>Read AGENTS.md and design/README.md. Build Phase 1 for real: sign-in, a host's own rooms, the public room page anyone can use without an account, questions, and upvotes.

Check the ground first &#8212; the Supabase MCP answers, the project has no tables, .env is filled &#8212; and stop if any of that is false. Then plan in one page and stop.

Build it. The screens from design/ keep their shape; what changes is where their data comes from and how users can authenticate. Use standard Clerk components and integrate them with the existing design.

Then commit, run it, give me the URL, and one summary: what exists, what the tests cover, what you left out, and how I check it by hand.</code> </code></pre><p>You will get a working app you can sign up into:</p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;44c352ad-cecf-477a-80ce-6864b42177d7&quot;,&quot;duration&quot;:null}"></div><div class="callout-block" data-callout="true"><p>&#128204; Claude wrote <strong>detailed unit and integration tests</strong>. I didn&#8217;t ask for it. The instructions came from our Claude solution template.</p></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/p/product-engineering-for-pms?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;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/p/product-engineering-for-pms?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p><p>Part of its report:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!xX9F!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b6ed260-8fa4-48be-b6f1-496c7a8a4300_1653x853.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!xX9F!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b6ed260-8fa4-48be-b6f1-496c7a8a4300_1653x853.png 424w, https://substackcdn.com/image/fetch/$s_!xX9F!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b6ed260-8fa4-48be-b6f1-496c7a8a4300_1653x853.png 848w, https://substackcdn.com/image/fetch/$s_!xX9F!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b6ed260-8fa4-48be-b6f1-496c7a8a4300_1653x853.png 1272w, https://substackcdn.com/image/fetch/$s_!xX9F!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b6ed260-8fa4-48be-b6f1-496c7a8a4300_1653x853.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!xX9F!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b6ed260-8fa4-48be-b6f1-496c7a8a4300_1653x853.png" width="1456" height="751" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1b6ed260-8fa4-48be-b6f1-496c7a8a4300_1653x853.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:751,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:224305,&quot;alt&quot;:&quot;Claude Code - detailed unit and integration tests&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b6ed260-8fa4-48be-b6f1-496c7a8a4300_1653x853.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Claude Code - detailed unit and integration tests" title="Claude Code - detailed unit and integration tests" srcset="https://substackcdn.com/image/fetch/$s_!xX9F!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b6ed260-8fa4-48be-b6f1-496c7a8a4300_1653x853.png 424w, https://substackcdn.com/image/fetch/$s_!xX9F!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b6ed260-8fa4-48be-b6f1-496c7a8a4300_1653x853.png 848w, https://substackcdn.com/image/fetch/$s_!xX9F!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b6ed260-8fa4-48be-b6f1-496c7a8a4300_1653x853.png 1272w, https://substackcdn.com/image/fetch/$s_!xX9F!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b6ed260-8fa4-48be-b6f1-496c7a8a4300_1653x853.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="callout-block" data-callout="true"><p>&#128204; We haven&#8217;t provided Claude with test accounts yet, so browser automation couldn&#8217;t be tested. That&#8217;s expected.</p></div><p>The session didn&#8217;t end at the first summary. I tested the app manually and asked for what's missing. The follow-up prompt that was actually run:</p><pre><code><code>Issues:
- Implement the 'Open projector' and 'Close room' buttons - they currently do nothing.
- Add a QR code for the room URL, perhaps displayed on request on `/rooms` and inside the room. Include buttons to copy the URL and download the QR code as a PNG.
- Add confirmation before closing a room. Closing should block anonymous participants only. I should still be able to open the room, view questions, and reopen it for participants.
- Remove the Next.js icon.</code></code></pre><p>Claude fixed all those issues in one iteration. I already included them in the video above.</p><div class="callout-block" data-callout="true"><p>&#128204; Note the shape: a flat list of what&#8217;s wrong or missing, each item saying what should happen rather than how to build it. You define the intent, without micro-managing the agent. </p><p>You can also forget most of what you heard about prompt engineering - agents don&#8217;t need it anymore when they have the right context. <em>&#8220;IMO this looks bad. Look at the borders&#8221;</em> with the attached screenshot is perfectly fine.</p></div><div><hr></div><h2><strong>7. Step 5: Configure Billing and Plans, See a Purchase</strong></h2><p>We can&#8217;t offer our product for free forever. The next step is configuring subscription plans. Let&#8217;s start with B2C. </p><h3>Step 5.1: Enable billing</h3><p>Go to <a href="https://dashboard.clerk.com/">Clerk Dashboard</a> &gt; Configure &gt; Billing and turn on &#8220;Enable user billing:&#8221;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!87Rt!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6dde006e-5fbe-4be4-9dcb-99e150665edb_2375x867.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!87Rt!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6dde006e-5fbe-4be4-9dcb-99e150665edb_2375x867.png 424w, https://substackcdn.com/image/fetch/$s_!87Rt!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6dde006e-5fbe-4be4-9dcb-99e150665edb_2375x867.png 848w, https://substackcdn.com/image/fetch/$s_!87Rt!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6dde006e-5fbe-4be4-9dcb-99e150665edb_2375x867.png 1272w, https://substackcdn.com/image/fetch/$s_!87Rt!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6dde006e-5fbe-4be4-9dcb-99e150665edb_2375x867.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!87Rt!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6dde006e-5fbe-4be4-9dcb-99e150665edb_2375x867.png" width="1456" height="532" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dde006e-5fbe-4be4-9dcb-99e150665edb_2375x867.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:532,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:123952,&quot;alt&quot;:&quot;Go to Clerk Dashboard > Configure > Billing and turn on &#8220;Enable user billing&#8221;&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6dde006e-5fbe-4be4-9dcb-99e150665edb_2375x867.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Go to Clerk Dashboard > Configure > Billing and turn on &#8220;Enable user billing&#8221;" title="Go to Clerk Dashboard > Configure > Billing and turn on &#8220;Enable user billing&#8221;" srcset="https://substackcdn.com/image/fetch/$s_!87Rt!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6dde006e-5fbe-4be4-9dcb-99e150665edb_2375x867.png 424w, https://substackcdn.com/image/fetch/$s_!87Rt!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6dde006e-5fbe-4be4-9dcb-99e150665edb_2375x867.png 848w, https://substackcdn.com/image/fetch/$s_!87Rt!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6dde006e-5fbe-4be4-9dcb-99e150665edb_2375x867.png 1272w, https://substackcdn.com/image/fetch/$s_!87Rt!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6dde006e-5fbe-4be4-9dcb-99e150665edb_2375x867.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>On the same page enable &#8220;Clerk payment gateway&#8221; - on a dev environment, we don&#8217;t want real transactions (later, the integration with real Stripe is banal):</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!CdYf!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1901c9d-4532-48ff-b64f-3521db4039a4_2395x698.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!CdYf!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1901c9d-4532-48ff-b64f-3521db4039a4_2395x698.png 424w, https://substackcdn.com/image/fetch/$s_!CdYf!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1901c9d-4532-48ff-b64f-3521db4039a4_2395x698.png 848w, https://substackcdn.com/image/fetch/$s_!CdYf!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1901c9d-4532-48ff-b64f-3521db4039a4_2395x698.png 1272w, https://substackcdn.com/image/fetch/$s_!CdYf!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1901c9d-4532-48ff-b64f-3521db4039a4_2395x698.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!CdYf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1901c9d-4532-48ff-b64f-3521db4039a4_2395x698.png" width="1456" height="424" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b1901c9d-4532-48ff-b64f-3521db4039a4_2395x698.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:424,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:114351,&quot;alt&quot;:&quot;Configure Clerk payment gateway for a development environment&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1901c9d-4532-48ff-b64f-3521db4039a4_2395x698.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Configure Clerk payment gateway for a development environment" title="Configure Clerk payment gateway for a development environment" srcset="https://substackcdn.com/image/fetch/$s_!CdYf!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1901c9d-4532-48ff-b64f-3521db4039a4_2395x698.png 424w, https://substackcdn.com/image/fetch/$s_!CdYf!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1901c9d-4532-48ff-b64f-3521db4039a4_2395x698.png 848w, https://substackcdn.com/image/fetch/$s_!CdYf!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1901c9d-4532-48ff-b64f-3521db4039a4_2395x698.png 1272w, https://substackcdn.com/image/fetch/$s_!CdYf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1901c9d-4532-48ff-b64f-3521db4039a4_2395x698.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h3>Step 5.2: Define Subscription Plans</h3><p>Next, go to <a href="https://dashboard.clerk.com/">Clerk Dashboard</a> &gt; Configure &gt; Billing &gt; User Plans. Define two plans, for example:</p><ul><li><p>Free</p></li><li><p>Premium </p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!IXgi!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbad51105-0d22-4dbb-b302-e87998ea4705_2494x1740.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!IXgi!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbad51105-0d22-4dbb-b302-e87998ea4705_2494x1740.png 424w, https://substackcdn.com/image/fetch/$s_!IXgi!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbad51105-0d22-4dbb-b302-e87998ea4705_2494x1740.png 848w, https://substackcdn.com/image/fetch/$s_!IXgi!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbad51105-0d22-4dbb-b302-e87998ea4705_2494x1740.png 1272w, https://substackcdn.com/image/fetch/$s_!IXgi!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbad51105-0d22-4dbb-b302-e87998ea4705_2494x1740.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!IXgi!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbad51105-0d22-4dbb-b302-e87998ea4705_2494x1740.png" width="1456" height="1016" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/bad51105-0d22-4dbb-b302-e87998ea4705_2494x1740.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1016,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:318675,&quot;alt&quot;:&quot;Go to Clerk Dashboard > Configure > Billing > User Plans. Define subscription plans&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbad51105-0d22-4dbb-b302-e87998ea4705_2494x1740.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Go to Clerk Dashboard > Configure > Billing > User Plans. Define subscription plans" title="Go to Clerk Dashboard > Configure > Billing > User Plans. Define subscription plans" srcset="https://substackcdn.com/image/fetch/$s_!IXgi!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbad51105-0d22-4dbb-b302-e87998ea4705_2494x1740.png 424w, https://substackcdn.com/image/fetch/$s_!IXgi!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbad51105-0d22-4dbb-b302-e87998ea4705_2494x1740.png 848w, https://substackcdn.com/image/fetch/$s_!IXgi!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbad51105-0d22-4dbb-b302-e87998ea4705_2494x1740.png 1272w, https://substackcdn.com/image/fetch/$s_!IXgi!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbad51105-0d22-4dbb-b302-e87998ea4705_2494x1740.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>For each plan you can configure a monthly base fee (e.g., $5) and an annual base fee with an optional discount (e.g., $50) and enable/disable free trials. Play with the options:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!dUSl!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F56dfe78e-e692-40e9-ae3b-acbd18d09bd7_2317x840.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!dUSl!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F56dfe78e-e692-40e9-ae3b-acbd18d09bd7_2317x840.png 424w, https://substackcdn.com/image/fetch/$s_!dUSl!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F56dfe78e-e692-40e9-ae3b-acbd18d09bd7_2317x840.png 848w, https://substackcdn.com/image/fetch/$s_!dUSl!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F56dfe78e-e692-40e9-ae3b-acbd18d09bd7_2317x840.png 1272w, https://substackcdn.com/image/fetch/$s_!dUSl!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F56dfe78e-e692-40e9-ae3b-acbd18d09bd7_2317x840.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!dUSl!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F56dfe78e-e692-40e9-ae3b-acbd18d09bd7_2317x840.png" width="1456" height="528" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/56dfe78e-e692-40e9-ae3b-acbd18d09bd7_2317x840.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:528,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:126564,&quot;alt&quot;:&quot;Clerk - For each plan you can configure monthly base fee (e.g., $5) and annual base fee&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F56dfe78e-e692-40e9-ae3b-acbd18d09bd7_2317x840.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Clerk - For each plan you can configure monthly base fee (e.g., $5) and annual base fee" title="Clerk - For each plan you can configure monthly base fee (e.g., $5) and annual base fee" srcset="https://substackcdn.com/image/fetch/$s_!dUSl!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F56dfe78e-e692-40e9-ae3b-acbd18d09bd7_2317x840.png 424w, https://substackcdn.com/image/fetch/$s_!dUSl!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F56dfe78e-e692-40e9-ae3b-acbd18d09bd7_2317x840.png 848w, https://substackcdn.com/image/fetch/$s_!dUSl!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F56dfe78e-e692-40e9-ae3b-acbd18d09bd7_2317x840.png 1272w, https://substackcdn.com/image/fetch/$s_!dUSl!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F56dfe78e-e692-40e9-ae3b-acbd18d09bd7_2317x840.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>An important configuration element is the Features. These can be used to guide the app behavior (entitlements, we will discuss this later) or displayed in public pricing plans:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Cv-6!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F914abd08-68eb-44c3-8508-ce6b93ff80d5_2374x827.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Cv-6!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F914abd08-68eb-44c3-8508-ce6b93ff80d5_2374x827.png 424w, https://substackcdn.com/image/fetch/$s_!Cv-6!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F914abd08-68eb-44c3-8508-ce6b93ff80d5_2374x827.png 848w, https://substackcdn.com/image/fetch/$s_!Cv-6!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F914abd08-68eb-44c3-8508-ce6b93ff80d5_2374x827.png 1272w, https://substackcdn.com/image/fetch/$s_!Cv-6!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F914abd08-68eb-44c3-8508-ce6b93ff80d5_2374x827.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Cv-6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F914abd08-68eb-44c3-8508-ce6b93ff80d5_2374x827.png" width="1456" height="507" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/914abd08-68eb-44c3-8508-ce6b93ff80d5_2374x827.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:507,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:73745,&quot;alt&quot;:&quot;Clerk - how to configure features&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F914abd08-68eb-44c3-8508-ce6b93ff80d5_2374x827.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Clerk - how to configure features" title="Clerk - how to configure features" srcset="https://substackcdn.com/image/fetch/$s_!Cv-6!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F914abd08-68eb-44c3-8508-ce6b93ff80d5_2374x827.png 424w, https://substackcdn.com/image/fetch/$s_!Cv-6!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F914abd08-68eb-44c3-8508-ce6b93ff80d5_2374x827.png 848w, https://substackcdn.com/image/fetch/$s_!Cv-6!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F914abd08-68eb-44c3-8508-ce6b93ff80d5_2374x827.png 1272w, https://substackcdn.com/image/fetch/$s_!Cv-6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F914abd08-68eb-44c3-8508-ce6b93ff80d5_2374x827.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h3>Step 5.3: Test it</h3><p>Wait. What about the prompt? </p><p><strong>There is no prompt.</strong> We&#8217;ve previously implemented Clerk integration and asked Claude to use Clerk components. Subscription plans just work based on the current Clerk configuration:</p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;4701ba6a-3f15-4841-8bc2-37f21445ef92&quot;,&quot;duration&quot;:null}"></div><div><hr></div><h2><strong>8. Step 6: Add Test Accounts and Browser Automation</strong></h2><p>Go to <a href="https://dashboard.clerk.com/">Clerk Dashboard</a> &gt; Configure &gt; Instance. Enable the &#8220;Test mode.&#8221; This will allow the agent to sign in to your development environment. I recommend you <strong>change</strong> the default verification code (here, &#8220;424242&#8221;):</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!csO8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54617988-268b-46e7-ab83-8f074da1bc83_2376x1214.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!csO8!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54617988-268b-46e7-ab83-8f074da1bc83_2376x1214.png 424w, https://substackcdn.com/image/fetch/$s_!csO8!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54617988-268b-46e7-ab83-8f074da1bc83_2376x1214.png 848w, https://substackcdn.com/image/fetch/$s_!csO8!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54617988-268b-46e7-ab83-8f074da1bc83_2376x1214.png 1272w, https://substackcdn.com/image/fetch/$s_!csO8!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54617988-268b-46e7-ab83-8f074da1bc83_2376x1214.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!csO8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54617988-268b-46e7-ab83-8f074da1bc83_2376x1214.png" width="1456" height="744" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/54617988-268b-46e7-ab83-8f074da1bc83_2376x1214.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:744,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:168398,&quot;alt&quot;:&quot;Clerk - Add Test Accounts and Browser Automation for Claude Code in VS Code&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54617988-268b-46e7-ab83-8f074da1bc83_2376x1214.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Clerk - Add Test Accounts and Browser Automation for Claude Code in VS Code" title="Clerk - Add Test Accounts and Browser Automation for Claude Code in VS Code" srcset="https://substackcdn.com/image/fetch/$s_!csO8!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54617988-268b-46e7-ab83-8f074da1bc83_2376x1214.png 424w, https://substackcdn.com/image/fetch/$s_!csO8!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54617988-268b-46e7-ab83-8f074da1bc83_2376x1214.png 848w, https://substackcdn.com/image/fetch/$s_!csO8!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54617988-268b-46e7-ab83-8f074da1bc83_2376x1214.png 1272w, https://substackcdn.com/image/fetch/$s_!csO8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54617988-268b-46e7-ab83-8f074da1bc83_2376x1214.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">How to enable a test verification code for Claude</figcaption></figure></div><p>Next, go to <a href="https://dashboard.clerk.com/">Clerk Dashboard</a> &gt; Users and create an account with a special <code>+clerk_test@</code> part, for example:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!6cMT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed1bccc0-b8f1-4221-9044-847bc333b2f1_2418x1532.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!6cMT!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed1bccc0-b8f1-4221-9044-847bc333b2f1_2418x1532.png 424w, https://substackcdn.com/image/fetch/$s_!6cMT!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed1bccc0-b8f1-4221-9044-847bc333b2f1_2418x1532.png 848w, https://substackcdn.com/image/fetch/$s_!6cMT!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed1bccc0-b8f1-4221-9044-847bc333b2f1_2418x1532.png 1272w, https://substackcdn.com/image/fetch/$s_!6cMT!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed1bccc0-b8f1-4221-9044-847bc333b2f1_2418x1532.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!6cMT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed1bccc0-b8f1-4221-9044-847bc333b2f1_2418x1532.png" width="1456" height="922" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ed1bccc0-b8f1-4221-9044-847bc333b2f1_2418x1532.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:922,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:703101,&quot;alt&quot;:&quot;How to create a test user in Clerk&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed1bccc0-b8f1-4221-9044-847bc333b2f1_2418x1532.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="How to create a test user in Clerk" title="How to create a test user in Clerk" srcset="https://substackcdn.com/image/fetch/$s_!6cMT!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed1bccc0-b8f1-4221-9044-847bc333b2f1_2418x1532.png 424w, https://substackcdn.com/image/fetch/$s_!6cMT!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed1bccc0-b8f1-4221-9044-847bc333b2f1_2418x1532.png 848w, https://substackcdn.com/image/fetch/$s_!6cMT!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed1bccc0-b8f1-4221-9044-847bc333b2f1_2418x1532.png 1272w, https://substackcdn.com/image/fetch/$s_!6cMT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed1bccc0-b8f1-4221-9044-847bc333b2f1_2418x1532.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">How to create a test user account for Claude</figcaption></figure></div><p>Save the user data to your <code>.env</code> file (we discussed that file earlier): </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!8rH2!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c9f0a8f-7dcf-4b8e-8dfc-986383a9c75d_2006x964.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!8rH2!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c9f0a8f-7dcf-4b8e-8dfc-986383a9c75d_2006x964.png 424w, https://substackcdn.com/image/fetch/$s_!8rH2!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c9f0a8f-7dcf-4b8e-8dfc-986383a9c75d_2006x964.png 848w, https://substackcdn.com/image/fetch/$s_!8rH2!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c9f0a8f-7dcf-4b8e-8dfc-986383a9c75d_2006x964.png 1272w, https://substackcdn.com/image/fetch/$s_!8rH2!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c9f0a8f-7dcf-4b8e-8dfc-986383a9c75d_2006x964.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!8rH2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c9f0a8f-7dcf-4b8e-8dfc-986383a9c75d_2006x964.png" width="1456" height="700" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6c9f0a8f-7dcf-4b8e-8dfc-986383a9c75d_2006x964.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:700,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:255467,&quot;alt&quot;:&quot;Configure test user secrets in VS Code .env file&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c9f0a8f-7dcf-4b8e-8dfc-986383a9c75d_2006x964.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Configure test user secrets in VS Code .env file" title="Configure test user secrets in VS Code .env file" srcset="https://substackcdn.com/image/fetch/$s_!8rH2!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c9f0a8f-7dcf-4b8e-8dfc-986383a9c75d_2006x964.png 424w, https://substackcdn.com/image/fetch/$s_!8rH2!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c9f0a8f-7dcf-4b8e-8dfc-986383a9c75d_2006x964.png 848w, https://substackcdn.com/image/fetch/$s_!8rH2!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c9f0a8f-7dcf-4b8e-8dfc-986383a9c75d_2006x964.png 1272w, https://substackcdn.com/image/fetch/$s_!8rH2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c9f0a8f-7dcf-4b8e-8dfc-986383a9c75d_2006x964.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Store test credentials in the .env file</figcaption></figure></div><p>For your convenience:</p><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;plaintext&quot;,&quot;nodeId&quot;:&quot;7ff8a56c-3ac7-4f6e-a375-32165b71bfe1&quot;}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-plaintext"># --- Test accounts ---
TEST_VERIFICATION_CODE=424242
TEST_ADMIN_EMAIL=admin+clerk_test@gmail.com</code></pre></div><p>Next, ask the agent (Opus 5 worked for ~25 min):</p><pre><code><code>Implement e2e test scenarios using browser automation (headless). In .env, I defined Clerk's:
TEST_VERIFICATION_CODE
TEST_ADMIN_EMAIL

Suggest complete scenarios (such as Sign in &gt; Open a new room &gt; Users ask questions &gt; Users upvote questions &gt; Admin can see these questions on a Projector &gt; Admin closes the Room) and tell me what's covered. Run those tests.

Make sure test documentation is updated and create or show me a document with roles and permission matrix + what's not implemented yet.</code></code></pre><p>You will get a detailed test report:</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!HcOy!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F525892ec-4543-4ab1-8afd-c6d512921a2e_1735x335.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!HcOy!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F525892ec-4543-4ab1-8afd-c6d512921a2e_1735x335.png 424w, https://substackcdn.com/image/fetch/$s_!HcOy!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F525892ec-4543-4ab1-8afd-c6d512921a2e_1735x335.png 848w, https://substackcdn.com/image/fetch/$s_!HcOy!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F525892ec-4543-4ab1-8afd-c6d512921a2e_1735x335.png 1272w, https://substackcdn.com/image/fetch/$s_!HcOy!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F525892ec-4543-4ab1-8afd-c6d512921a2e_1735x335.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!HcOy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F525892ec-4543-4ab1-8afd-c6d512921a2e_1735x335.png" width="1735" height="335" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/525892ec-4543-4ab1-8afd-c6d512921a2e_1735x335.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:335,&quot;width&quot;:1735,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:77848,&quot;alt&quot;:&quot;Claude Code in VS Code - test report&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5414710e-8468-4c63-8ee3-88c925c6cd5e_1735x776.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Claude Code in VS Code - test report" title="Claude Code in VS Code - test report" srcset="https://substackcdn.com/image/fetch/$s_!HcOy!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F525892ec-4543-4ab1-8afd-c6d512921a2e_1735x335.png 424w, https://substackcdn.com/image/fetch/$s_!HcOy!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F525892ec-4543-4ab1-8afd-c6d512921a2e_1735x335.png 848w, https://substackcdn.com/image/fetch/$s_!HcOy!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F525892ec-4543-4ab1-8afd-c6d512921a2e_1735x335.png 1272w, https://substackcdn.com/image/fetch/$s_!HcOy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F525892ec-4543-4ab1-8afd-c6d512921a2e_1735x335.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>And detailed documentation with a permission matrix:</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!r_Oi!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8b7e042-2f0f-4719-b54b-c67a16a305d2_1596x336.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!r_Oi!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8b7e042-2f0f-4719-b54b-c67a16a305d2_1596x336.png 424w, https://substackcdn.com/image/fetch/$s_!r_Oi!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8b7e042-2f0f-4719-b54b-c67a16a305d2_1596x336.png 848w, https://substackcdn.com/image/fetch/$s_!r_Oi!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8b7e042-2f0f-4719-b54b-c67a16a305d2_1596x336.png 1272w, https://substackcdn.com/image/fetch/$s_!r_Oi!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8b7e042-2f0f-4719-b54b-c67a16a305d2_1596x336.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!r_Oi!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8b7e042-2f0f-4719-b54b-c67a16a305d2_1596x336.png" width="1596" height="336" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f8b7e042-2f0f-4719-b54b-c67a16a305d2_1596x336.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:336,&quot;width&quot;:1596,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:108745,&quot;alt&quot;:&quot;Claude Code in VS Code - permissions and roles documentation&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe779eaaa-88ad-40b6-905f-168e5ca7a7ee_1596x612.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Claude Code in VS Code - permissions and roles documentation" title="Claude Code in VS Code - permissions and roles documentation" srcset="https://substackcdn.com/image/fetch/$s_!r_Oi!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8b7e042-2f0f-4719-b54b-c67a16a305d2_1596x336.png 424w, https://substackcdn.com/image/fetch/$s_!r_Oi!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8b7e042-2f0f-4719-b54b-c67a16a305d2_1596x336.png 848w, https://substackcdn.com/image/fetch/$s_!r_Oi!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8b7e042-2f0f-4719-b54b-c67a16a305d2_1596x336.png 1272w, https://substackcdn.com/image/fetch/$s_!r_Oi!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8b7e042-2f0f-4719-b54b-c67a16a305d2_1596x336.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p><strong>Review it against your intent</strong>. This is the base for future tests and automated code inspections. Without it, your agent may not know whether the observed behavior is a bug or a feature:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!CPcj!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff64fea18-066b-492f-8f38-0358f09f0fe5_2846x1886.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!CPcj!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff64fea18-066b-492f-8f38-0358f09f0fe5_2846x1886.png 424w, https://substackcdn.com/image/fetch/$s_!CPcj!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff64fea18-066b-492f-8f38-0358f09f0fe5_2846x1886.png 848w, https://substackcdn.com/image/fetch/$s_!CPcj!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff64fea18-066b-492f-8f38-0358f09f0fe5_2846x1886.png 1272w, https://substackcdn.com/image/fetch/$s_!CPcj!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff64fea18-066b-492f-8f38-0358f09f0fe5_2846x1886.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!CPcj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff64fea18-066b-492f-8f38-0358f09f0fe5_2846x1886.png" width="1456" height="965" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f64fea18-066b-492f-8f38-0358f09f0fe5_2846x1886.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:965,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:568440,&quot;alt&quot;:&quot;Claude Code - the importance of reviewing a documented intent&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff64fea18-066b-492f-8f38-0358f09f0fe5_2846x1886.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Claude Code - the importance of reviewing a documented intent" title="Claude Code - the importance of reviewing a documented intent" srcset="https://substackcdn.com/image/fetch/$s_!CPcj!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff64fea18-066b-492f-8f38-0358f09f0fe5_2846x1886.png 424w, https://substackcdn.com/image/fetch/$s_!CPcj!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff64fea18-066b-492f-8f38-0358f09f0fe5_2846x1886.png 848w, https://substackcdn.com/image/fetch/$s_!CPcj!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff64fea18-066b-492f-8f38-0358f09f0fe5_2846x1886.png 1272w, https://substackcdn.com/image/fetch/$s_!CPcj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff64fea18-066b-492f-8f38-0358f09f0fe5_2846x1886.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Roles and permissions matrix, part of the documented intent for you to review</figcaption></figure></div><p>If you don&#8217;t see nice markdown formatting: Right click the tab name above the file content &gt; &#8220;Open with&#8221; &gt; &#8220;Markdown preview.&#8221;</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/p/product-engineering-for-pms?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;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/p/product-engineering-for-pms?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p><div><hr></div><h2><strong>9. Step 7: Publish it, Simplified</strong></h2><p>Let&#8217;s publish our dev environment. No advanced branches yet. For that, we need:</p><ul><li><p>A free GitHub account</p></li><li><p>The GitHub CLI</p></li><li><p>A free Netlify account</p></li></ul><h3>Step 7.1: Install GitHub CLI</h3><p>I&#8217;m not presenting creating a <a href="https://github.com/">GitHub account</a>. It&#8217;s straightforward.</p><p>Once you have one, go to <a href="https://cli.github.com/">https://cli.github.com/</a> and copy the installation prompt for your operating 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_!OUrG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e5680d5-5213-4981-8b5f-6b865ea2ec3b_2168x1008.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!OUrG!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e5680d5-5213-4981-8b5f-6b865ea2ec3b_2168x1008.png 424w, https://substackcdn.com/image/fetch/$s_!OUrG!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e5680d5-5213-4981-8b5f-6b865ea2ec3b_2168x1008.png 848w, https://substackcdn.com/image/fetch/$s_!OUrG!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e5680d5-5213-4981-8b5f-6b865ea2ec3b_2168x1008.png 1272w, https://substackcdn.com/image/fetch/$s_!OUrG!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e5680d5-5213-4981-8b5f-6b865ea2ec3b_2168x1008.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!OUrG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e5680d5-5213-4981-8b5f-6b865ea2ec3b_2168x1008.png" width="1456" height="677" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1e5680d5-5213-4981-8b5f-6b865ea2ec3b_2168x1008.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:677,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:155554,&quot;alt&quot;:&quot;How to Install GitHub CLI&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e5680d5-5213-4981-8b5f-6b865ea2ec3b_2168x1008.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="How to Install GitHub CLI" title="How to Install GitHub CLI" srcset="https://substackcdn.com/image/fetch/$s_!OUrG!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e5680d5-5213-4981-8b5f-6b865ea2ec3b_2168x1008.png 424w, https://substackcdn.com/image/fetch/$s_!OUrG!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e5680d5-5213-4981-8b5f-6b865ea2ec3b_2168x1008.png 848w, https://substackcdn.com/image/fetch/$s_!OUrG!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e5680d5-5213-4981-8b5f-6b865ea2ec3b_2168x1008.png 1272w, https://substackcdn.com/image/fetch/$s_!OUrG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e5680d5-5213-4981-8b5f-6b865ea2ec3b_2168x1008.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Execute it in your terminal (mine was already installed):</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!gna8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f5fdb40-e65d-4043-be80-a2b78eca877a_2044x795.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!gna8!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f5fdb40-e65d-4043-be80-a2b78eca877a_2044x795.png 424w, https://substackcdn.com/image/fetch/$s_!gna8!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f5fdb40-e65d-4043-be80-a2b78eca877a_2044x795.png 848w, https://substackcdn.com/image/fetch/$s_!gna8!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f5fdb40-e65d-4043-be80-a2b78eca877a_2044x795.png 1272w, https://substackcdn.com/image/fetch/$s_!gna8!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f5fdb40-e65d-4043-be80-a2b78eca877a_2044x795.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!gna8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f5fdb40-e65d-4043-be80-a2b78eca877a_2044x795.png" width="1456" height="566" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1f5fdb40-e65d-4043-be80-a2b78eca877a_2044x795.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:566,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:126966,&quot;alt&quot;:&quot;GitHub CLI installation&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f5fdb40-e65d-4043-be80-a2b78eca877a_2044x795.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="GitHub CLI installation" title="GitHub CLI installation" srcset="https://substackcdn.com/image/fetch/$s_!gna8!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f5fdb40-e65d-4043-be80-a2b78eca877a_2044x795.png 424w, https://substackcdn.com/image/fetch/$s_!gna8!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f5fdb40-e65d-4043-be80-a2b78eca877a_2044x795.png 848w, https://substackcdn.com/image/fetch/$s_!gna8!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f5fdb40-e65d-4043-be80-a2b78eca877a_2044x795.png 1272w, https://substackcdn.com/image/fetch/$s_!gna8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1f5fdb40-e65d-4043-be80-a2b78eca877a_2044x795.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Then type &#8220;gh auth login&#8221; and answer four questions: </p><ul><li><p>&#8220;GitHub.com&#8221;</p></li><li><p>&#8220;HTTPS&#8221;</p></li><li><p>&#8220;Y&#8221;</p></li><li><p>&#8220;Login with a web browser&#8221;</p></li></ul><p>Hit &#8220;Enter.&#8221; Use the code displayed on the screen to authorize your device. I anonymized my 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_!i336!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccddf150-014e-404b-af9f-729e53a825fc_2109x1646.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!i336!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccddf150-014e-404b-af9f-729e53a825fc_2109x1646.png 424w, https://substackcdn.com/image/fetch/$s_!i336!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccddf150-014e-404b-af9f-729e53a825fc_2109x1646.png 848w, https://substackcdn.com/image/fetch/$s_!i336!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccddf150-014e-404b-af9f-729e53a825fc_2109x1646.png 1272w, https://substackcdn.com/image/fetch/$s_!i336!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccddf150-014e-404b-af9f-729e53a825fc_2109x1646.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!i336!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccddf150-014e-404b-af9f-729e53a825fc_2109x1646.png" width="1456" height="1136" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ccddf150-014e-404b-af9f-729e53a825fc_2109x1646.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1136,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:248712,&quot;alt&quot;:&quot;How to login to GitHub CLI and authorize the device&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccddf150-014e-404b-af9f-729e53a825fc_2109x1646.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="How to login to GitHub CLI and authorize the device" title="How to login to GitHub CLI and authorize the device" srcset="https://substackcdn.com/image/fetch/$s_!i336!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccddf150-014e-404b-af9f-729e53a825fc_2109x1646.png 424w, https://substackcdn.com/image/fetch/$s_!i336!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccddf150-014e-404b-af9f-729e53a825fc_2109x1646.png 848w, https://substackcdn.com/image/fetch/$s_!i336!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccddf150-014e-404b-af9f-729e53a825fc_2109x1646.png 1272w, https://substackcdn.com/image/fetch/$s_!i336!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccddf150-014e-404b-af9f-729e53a825fc_2109x1646.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Now, ask the agent:</p><pre><code><code>Just installed GitHub CLI. Create a new private repository for my project, "askone," and push the current to origin. Give me its URL.

Before the push, add netlify.toml as I will</code> host this on Netlify.</code></pre><p>&#8220;Push to origin&#8221; means &#8220;push to GitHub branch.&#8221; Here, it may not be needed. In the future, this is how you transfer your local changes to GitHub.</p><p>You will get a URL such as <code>https://github.com/phuryn/askone</code>. That's your online code repository!</p><h3>Step 7.2: Publish it on Netlify</h3><p>I&#8217;m not presenting creating a free <a href="https://app.netlify.com/">Netlify account</a>. It&#8217;s straightforward. Just remember to <strong>Sign up with GitHub</strong>.</p><p>Once inside, go to <a href="https://app.netlify.com/start">https://app.netlify.com/start</a> &gt; Import a Git repository &gt; click &#8220;GitHub:&#8221;</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!HRDP!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ecff39c-721f-4eb4-bb15-69649ce99e82_2689x275.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!HRDP!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ecff39c-721f-4eb4-bb15-69649ce99e82_2689x275.png 424w, https://substackcdn.com/image/fetch/$s_!HRDP!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ecff39c-721f-4eb4-bb15-69649ce99e82_2689x275.png 848w, https://substackcdn.com/image/fetch/$s_!HRDP!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ecff39c-721f-4eb4-bb15-69649ce99e82_2689x275.png 1272w, https://substackcdn.com/image/fetch/$s_!HRDP!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ecff39c-721f-4eb4-bb15-69649ce99e82_2689x275.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!HRDP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ecff39c-721f-4eb4-bb15-69649ce99e82_2689x275.png" width="1456" height="149" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1ecff39c-721f-4eb4-bb15-69649ce99e82_2689x275.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:149,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:45295,&quot;alt&quot;:&quot;How to import a GitHub repo on Netlify&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ecff39c-721f-4eb4-bb15-69649ce99e82_2689x275.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="How to import a GitHub repo on Netlify" title="How to import a GitHub repo on Netlify" srcset="https://substackcdn.com/image/fetch/$s_!HRDP!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ecff39c-721f-4eb4-bb15-69649ce99e82_2689x275.png 424w, https://substackcdn.com/image/fetch/$s_!HRDP!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ecff39c-721f-4eb4-bb15-69649ce99e82_2689x275.png 848w, https://substackcdn.com/image/fetch/$s_!HRDP!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ecff39c-721f-4eb4-bb15-69649ce99e82_2689x275.png 1272w, https://substackcdn.com/image/fetch/$s_!HRDP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1ecff39c-721f-4eb4-bb15-69649ce99e82_2689x275.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>Select your repository:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!A7F4!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F33dd4ce0-c780-4058-bf9e-ab7221c66544_2095x684.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!A7F4!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F33dd4ce0-c780-4058-bf9e-ab7221c66544_2095x684.png 424w, https://substackcdn.com/image/fetch/$s_!A7F4!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F33dd4ce0-c780-4058-bf9e-ab7221c66544_2095x684.png 848w, https://substackcdn.com/image/fetch/$s_!A7F4!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F33dd4ce0-c780-4058-bf9e-ab7221c66544_2095x684.png 1272w, https://substackcdn.com/image/fetch/$s_!A7F4!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F33dd4ce0-c780-4058-bf9e-ab7221c66544_2095x684.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!A7F4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F33dd4ce0-c780-4058-bf9e-ab7221c66544_2095x684.png" width="1456" height="475" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/33dd4ce0-c780-4058-bf9e-ab7221c66544_2095x684.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:475,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:85252,&quot;alt&quot;:&quot;Netlify - Select your repository&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F33dd4ce0-c780-4058-bf9e-ab7221c66544_2095x684.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Netlify - Select your repository" title="Netlify - Select your repository" srcset="https://substackcdn.com/image/fetch/$s_!A7F4!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F33dd4ce0-c780-4058-bf9e-ab7221c66544_2095x684.png 424w, https://substackcdn.com/image/fetch/$s_!A7F4!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F33dd4ce0-c780-4058-bf9e-ab7221c66544_2095x684.png 848w, https://substackcdn.com/image/fetch/$s_!A7F4!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F33dd4ce0-c780-4058-bf9e-ab7221c66544_2095x684.png 1272w, https://substackcdn.com/image/fetch/$s_!A7F4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F33dd4ce0-c780-4058-bf9e-ab7221c66544_2095x684.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Give it a name and click &#8220;Deploy&#8221; at the very bottom of the page:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!BsAT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd2707e8-a323-4933-914b-14bc90aef5ac_2104x747.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!BsAT!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd2707e8-a323-4933-914b-14bc90aef5ac_2104x747.png 424w, https://substackcdn.com/image/fetch/$s_!BsAT!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd2707e8-a323-4933-914b-14bc90aef5ac_2104x747.png 848w, https://substackcdn.com/image/fetch/$s_!BsAT!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd2707e8-a323-4933-914b-14bc90aef5ac_2104x747.png 1272w, https://substackcdn.com/image/fetch/$s_!BsAT!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd2707e8-a323-4933-914b-14bc90aef5ac_2104x747.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!BsAT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd2707e8-a323-4933-914b-14bc90aef5ac_2104x747.png" width="2104" height="747" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cd2707e8-a323-4933-914b-14bc90aef5ac_2104x747.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:747,&quot;width&quot;:2104,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:96414,&quot;alt&quot;:&quot;Netlify - select project name&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8485c411-e384-466f-8f04-e4a8543630ef_2104x1553.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Netlify - select project name" title="Netlify - select project name" srcset="https://substackcdn.com/image/fetch/$s_!BsAT!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd2707e8-a323-4933-914b-14bc90aef5ac_2104x747.png 424w, https://substackcdn.com/image/fetch/$s_!BsAT!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd2707e8-a323-4933-914b-14bc90aef5ac_2104x747.png 848w, https://substackcdn.com/image/fetch/$s_!BsAT!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd2707e8-a323-4933-914b-14bc90aef5ac_2104x747.png 1272w, https://substackcdn.com/image/fetch/$s_!BsAT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd2707e8-a323-4933-914b-14bc90aef5ac_2104x747.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>On the same page, it should automatically detect the right build settings (previously, we asked in the prompt to define <code>netlify.toml</code>). I didn&#8217;t have to type it manually:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!HGmY!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a3b274a-0a68-4bc9-b23b-babb044a8def_2029x1426.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!HGmY!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a3b274a-0a68-4bc9-b23b-babb044a8def_2029x1426.png 424w, https://substackcdn.com/image/fetch/$s_!HGmY!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a3b274a-0a68-4bc9-b23b-babb044a8def_2029x1426.png 848w, https://substackcdn.com/image/fetch/$s_!HGmY!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a3b274a-0a68-4bc9-b23b-babb044a8def_2029x1426.png 1272w, https://substackcdn.com/image/fetch/$s_!HGmY!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a3b274a-0a68-4bc9-b23b-babb044a8def_2029x1426.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!HGmY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a3b274a-0a68-4bc9-b23b-babb044a8def_2029x1426.png" width="1456" height="1023" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5a3b274a-0a68-4bc9-b23b-babb044a8def_2029x1426.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1023,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:174425,&quot;alt&quot;:&quot;Netlify - configuration from netlify.toml&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a3b274a-0a68-4bc9-b23b-babb044a8def_2029x1426.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Netlify - configuration from netlify.toml" title="Netlify - configuration from netlify.toml" srcset="https://substackcdn.com/image/fetch/$s_!HGmY!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a3b274a-0a68-4bc9-b23b-babb044a8def_2029x1426.png 424w, https://substackcdn.com/image/fetch/$s_!HGmY!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a3b274a-0a68-4bc9-b23b-babb044a8def_2029x1426.png 848w, https://substackcdn.com/image/fetch/$s_!HGmY!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a3b274a-0a68-4bc9-b23b-babb044a8def_2029x1426.png 1272w, https://substackcdn.com/image/fetch/$s_!HGmY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a3b274a-0a68-4bc9-b23b-babb044a8def_2029x1426.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>At the bottom of the page you will find a deploy button. Hit 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_!CRNc!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8115667-adfb-4b98-9ab4-d7f41d47757f_1580x509.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!CRNc!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8115667-adfb-4b98-9ab4-d7f41d47757f_1580x509.png 424w, https://substackcdn.com/image/fetch/$s_!CRNc!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8115667-adfb-4b98-9ab4-d7f41d47757f_1580x509.png 848w, https://substackcdn.com/image/fetch/$s_!CRNc!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8115667-adfb-4b98-9ab4-d7f41d47757f_1580x509.png 1272w, https://substackcdn.com/image/fetch/$s_!CRNc!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8115667-adfb-4b98-9ab4-d7f41d47757f_1580x509.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!CRNc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8115667-adfb-4b98-9ab4-d7f41d47757f_1580x509.png" width="1456" height="469" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e8115667-adfb-4b98-9ab4-d7f41d47757f_1580x509.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:469,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:49259,&quot;alt&quot;:&quot;Netlify - deploy a GitHub repository&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8115667-adfb-4b98-9ab4-d7f41d47757f_1580x509.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Netlify - deploy a GitHub repository" title="Netlify - deploy a GitHub repository" srcset="https://substackcdn.com/image/fetch/$s_!CRNc!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8115667-adfb-4b98-9ab4-d7f41d47757f_1580x509.png 424w, https://substackcdn.com/image/fetch/$s_!CRNc!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8115667-adfb-4b98-9ab4-d7f41d47757f_1580x509.png 848w, https://substackcdn.com/image/fetch/$s_!CRNc!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8115667-adfb-4b98-9ab4-d7f41d47757f_1580x509.png 1272w, https://substackcdn.com/image/fetch/$s_!CRNc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8115667-adfb-4b98-9ab4-d7f41d47757f_1580x509.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h3>Step 7.3: Configure Netlify Environment Variables</h3><p>The .env file is untracked. Netlify doesn&#8217;t know your secrets.</p><p>Go to &#8220;Project navigation&#8221; &gt; &#8220;Project configuration&#8221; &gt; &#8220;Environment variables:&#8221;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!aWXn!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38809dc3-a916-4889-9acd-e6d142271b74_2139x1044.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!aWXn!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38809dc3-a916-4889-9acd-e6d142271b74_2139x1044.png 424w, https://substackcdn.com/image/fetch/$s_!aWXn!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38809dc3-a916-4889-9acd-e6d142271b74_2139x1044.png 848w, https://substackcdn.com/image/fetch/$s_!aWXn!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38809dc3-a916-4889-9acd-e6d142271b74_2139x1044.png 1272w, https://substackcdn.com/image/fetch/$s_!aWXn!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38809dc3-a916-4889-9acd-e6d142271b74_2139x1044.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!aWXn!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38809dc3-a916-4889-9acd-e6d142271b74_2139x1044.png" width="2139" height="1044" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/38809dc3-a916-4889-9acd-e6d142271b74_2139x1044.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1044,&quot;width&quot;:2139,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:315004,&quot;alt&quot;:&quot;Where to find environment variables in a Netlify project&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48533d50-b95f-4d8d-82bb-eccb3f86b68e_2139x1953.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Where to find environment variables in a Netlify project" title="Where to find environment variables in a Netlify project" srcset="https://substackcdn.com/image/fetch/$s_!aWXn!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38809dc3-a916-4889-9acd-e6d142271b74_2139x1044.png 424w, https://substackcdn.com/image/fetch/$s_!aWXn!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38809dc3-a916-4889-9acd-e6d142271b74_2139x1044.png 848w, https://substackcdn.com/image/fetch/$s_!aWXn!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38809dc3-a916-4889-9acd-e6d142271b74_2139x1044.png 1272w, https://substackcdn.com/image/fetch/$s_!aWXn!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38809dc3-a916-4889-9acd-e6d142271b74_2139x1044.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>You could import the entire content of your <code>.env</code> file, but I prefer adding them manually:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Mc_l!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00720bbf-fb3a-483f-ae46-64065e919290_2576x1004.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Mc_l!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00720bbf-fb3a-483f-ae46-64065e919290_2576x1004.png 424w, https://substackcdn.com/image/fetch/$s_!Mc_l!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00720bbf-fb3a-483f-ae46-64065e919290_2576x1004.png 848w, https://substackcdn.com/image/fetch/$s_!Mc_l!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00720bbf-fb3a-483f-ae46-64065e919290_2576x1004.png 1272w, https://substackcdn.com/image/fetch/$s_!Mc_l!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00720bbf-fb3a-483f-ae46-64065e919290_2576x1004.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Mc_l!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00720bbf-fb3a-483f-ae46-64065e919290_2576x1004.png" width="1456" height="567" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/00720bbf-fb3a-483f-ae46-64065e919290_2576x1004.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:567,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:317393,&quot;alt&quot;:&quot;How to add an environment variable in Netlify&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00720bbf-fb3a-483f-ae46-64065e919290_2576x1004.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="How to add an environment variable in Netlify" title="How to add an environment variable in Netlify" srcset="https://substackcdn.com/image/fetch/$s_!Mc_l!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00720bbf-fb3a-483f-ae46-64065e919290_2576x1004.png 424w, https://substackcdn.com/image/fetch/$s_!Mc_l!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00720bbf-fb3a-483f-ae46-64065e919290_2576x1004.png 848w, https://substackcdn.com/image/fetch/$s_!Mc_l!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00720bbf-fb3a-483f-ae46-64065e919290_2576x1004.png 1272w, https://substackcdn.com/image/fetch/$s_!Mc_l!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00720bbf-fb3a-483f-ae46-64065e919290_2576x1004.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Dogx!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b01059b-4369-411c-853c-781d3298553b_2207x1699.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Dogx!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b01059b-4369-411c-853c-781d3298553b_2207x1699.png 424w, https://substackcdn.com/image/fetch/$s_!Dogx!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b01059b-4369-411c-853c-781d3298553b_2207x1699.png 848w, https://substackcdn.com/image/fetch/$s_!Dogx!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b01059b-4369-411c-853c-781d3298553b_2207x1699.png 1272w, https://substackcdn.com/image/fetch/$s_!Dogx!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b01059b-4369-411c-853c-781d3298553b_2207x1699.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Dogx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b01059b-4369-411c-853c-781d3298553b_2207x1699.png" width="1456" height="1121" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5b01059b-4369-411c-853c-781d3298553b_2207x1699.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1121,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:289078,&quot;alt&quot;:&quot;Netlify - new environment variable marked as secret&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b01059b-4369-411c-853c-781d3298553b_2207x1699.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Netlify - new environment variable marked as secret" title="Netlify - new environment variable marked as secret" srcset="https://substackcdn.com/image/fetch/$s_!Dogx!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b01059b-4369-411c-853c-781d3298553b_2207x1699.png 424w, https://substackcdn.com/image/fetch/$s_!Dogx!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b01059b-4369-411c-853c-781d3298553b_2207x1699.png 848w, https://substackcdn.com/image/fetch/$s_!Dogx!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b01059b-4369-411c-853c-781d3298553b_2207x1699.png 1272w, https://substackcdn.com/image/fetch/$s_!Dogx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b01059b-4369-411c-853c-781d3298553b_2207x1699.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>The full set the app refuses to boot without. All six, or nothing serves:</p><ol><li><p>APP_URL - use your URL, e.g., https://askone.netlify.app</p></li><li><p>PARTICIPANT_COOKIE_SECRET -&gt; copy from .env, mark as secret</p></li><li><p>SUPABASE_URL -&gt; copy from .env</p></li><li><p>SUPABASE_SECRET_KEY -&gt; copy from .env, mark as secret</p></li><li><p>NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY -&gt; copy from .env</p></li><li><p>CLERK_SECRET_KEY -&gt; copy from .env, mark as secret</p></li></ol><h3>Step 7.4: Test it</h3><p>You, too, can access my dev environment: <a href="https://askone.netlify.app/">https://askone.netlify.app/</a> It&#8217;s far from perfect, but it works, and won&#8217;t reveal your room&#8217;s data to others.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!5AJN!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5974c6ac-81e7-47d3-8081-74643213198a_2991x1911.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!5AJN!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5974c6ac-81e7-47d3-8081-74643213198a_2991x1911.png 424w, https://substackcdn.com/image/fetch/$s_!5AJN!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5974c6ac-81e7-47d3-8081-74643213198a_2991x1911.png 848w, https://substackcdn.com/image/fetch/$s_!5AJN!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5974c6ac-81e7-47d3-8081-74643213198a_2991x1911.png 1272w, https://substackcdn.com/image/fetch/$s_!5AJN!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5974c6ac-81e7-47d3-8081-74643213198a_2991x1911.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!5AJN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5974c6ac-81e7-47d3-8081-74643213198a_2991x1911.png" width="1456" height="930" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5974c6ac-81e7-47d3-8081-74643213198a_2991x1911.png&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;:329340,&quot;alt&quot;:&quot;A site deployed on Netlify with Clerk and Supabase integrations and Google authentication&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5974c6ac-81e7-47d3-8081-74643213198a_2991x1911.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="A site deployed on Netlify with Clerk and Supabase integrations and Google authentication" title="A site deployed on Netlify with Clerk and Supabase integrations and Google authentication" srcset="https://substackcdn.com/image/fetch/$s_!5AJN!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5974c6ac-81e7-47d3-8081-74643213198a_2991x1911.png 424w, https://substackcdn.com/image/fetch/$s_!5AJN!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5974c6ac-81e7-47d3-8081-74643213198a_2991x1911.png 848w, https://substackcdn.com/image/fetch/$s_!5AJN!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5974c6ac-81e7-47d3-8081-74643213198a_2991x1911.png 1272w, https://substackcdn.com/image/fetch/$s_!5AJN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5974c6ac-81e7-47d3-8081-74643213198a_2991x1911.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">A working app with Google authentication and Clerk Supabase published on Netlify. Development environment.</figcaption></figure></div><div><hr></div><h2><strong>10. The Template to Download</strong></h2><div class="callout-block" data-callout="true"><p>&#128274; The template is available only to premium members. Upgrade, and it will appear right below.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p></div><p>After clicking the link you will see:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!PpcD!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73e25352-39e6-4f51-aabf-9a18a5b4a1d4_1848x863.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!PpcD!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73e25352-39e6-4f51-aabf-9a18a5b4a1d4_1848x863.png 424w, https://substackcdn.com/image/fetch/$s_!PpcD!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73e25352-39e6-4f51-aabf-9a18a5b4a1d4_1848x863.png 848w, https://substackcdn.com/image/fetch/$s_!PpcD!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73e25352-39e6-4f51-aabf-9a18a5b4a1d4_1848x863.png 1272w, https://substackcdn.com/image/fetch/$s_!PpcD!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73e25352-39e6-4f51-aabf-9a18a5b4a1d4_1848x863.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!PpcD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73e25352-39e6-4f51-aabf-9a18a5b4a1d4_1848x863.png" width="1456" height="680" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/73e25352-39e6-4f51-aabf-9a18a5b4a1d4_1848x863.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:680,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:141287,&quot;alt&quot;:&quot;Download fde-template-main.zip - a starter Claude Code solution template&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73e25352-39e6-4f51-aabf-9a18a5b4a1d4_1848x863.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Download fde-template-main.zip - a starter Claude Code solution template" title="Download fde-template-main.zip - a starter Claude Code solution template" srcset="https://substackcdn.com/image/fetch/$s_!PpcD!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73e25352-39e6-4f51-aabf-9a18a5b4a1d4_1848x863.png 424w, https://substackcdn.com/image/fetch/$s_!PpcD!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73e25352-39e6-4f51-aabf-9a18a5b4a1d4_1848x863.png 848w, https://substackcdn.com/image/fetch/$s_!PpcD!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73e25352-39e6-4f51-aabf-9a18a5b4a1d4_1848x863.png 1272w, https://substackcdn.com/image/fetch/$s_!PpcD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73e25352-39e6-4f51-aabf-9a18a5b4a1d4_1848x863.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Download fde-template-main.zip - a starter Claude Code solution template</figcaption></figure></div><p>Unzip fde-template-main.zip and open it with VS 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_!f1dT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa28be125-18e2-405f-9f0b-4204ffb14275_2339x1305.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!f1dT!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa28be125-18e2-405f-9f0b-4204ffb14275_2339x1305.png 424w, https://substackcdn.com/image/fetch/$s_!f1dT!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa28be125-18e2-405f-9f0b-4204ffb14275_2339x1305.png 848w, https://substackcdn.com/image/fetch/$s_!f1dT!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa28be125-18e2-405f-9f0b-4204ffb14275_2339x1305.png 1272w, https://substackcdn.com/image/fetch/$s_!f1dT!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa28be125-18e2-405f-9f0b-4204ffb14275_2339x1305.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!f1dT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa28be125-18e2-405f-9f0b-4204ffb14275_2339x1305.png" width="1456" height="812" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a28be125-18e2-405f-9f0b-4204ffb14275_2339x1305.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:812,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:476034,&quot;alt&quot;:&quot;Claude Code solution template for Product Engineers&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa28be125-18e2-405f-9f0b-4204ffb14275_2339x1305.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Claude Code solution template for Product Engineers" title="Claude Code solution template for Product Engineers" srcset="https://substackcdn.com/image/fetch/$s_!f1dT!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa28be125-18e2-405f-9f0b-4204ffb14275_2339x1305.png 424w, https://substackcdn.com/image/fetch/$s_!f1dT!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa28be125-18e2-405f-9f0b-4204ffb14275_2339x1305.png 848w, https://substackcdn.com/image/fetch/$s_!f1dT!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa28be125-18e2-405f-9f0b-4204ffb14275_2339x1305.png 1272w, https://substackcdn.com/image/fetch/$s_!f1dT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa28be125-18e2-405f-9f0b-4204ffb14275_2339x1305.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Claude Code solution template for Product Engineers</figcaption></figure></div><p>I&#8217;ll be adding more prompts, but I&#8217;m not going to change the template, so you can already start building on top of it.</p><div><hr></div><h2><strong>11. Conclusion</strong></h2><p>I wrote this because the roles are merging whether or not you can already feel that in your organization. While product discovery remains the core of our job, as a PM you should understand how to engineer with AI.</p><p><strong>You don&#8217;t have to code.</strong> At the same time, understanding the basic engineering concepts helps a lot.</p><p>So, here are some extra materials you can review in your free time:</p><p>[Day 1] Review these helicopter view resources:</p><ul><li><p><a href="https://github.com/ByteByteGoHq/system-design-101">System Design 101 by ByteByteGo</a></p></li><li><p><a href="https://bytebytego.com/guides/">Engineering Visual Guides</a></p></li><li><p><a href="https://youtu.be/dU7GwCOgvNY">Become a Supabase Pro in 1.5 Hours (YouTube, 1:26:39)</a></p></li><li><p><a href="https://developer.mozilla.org/en-US/docs/Web/HTTP/Guides/Overview">Overview of HTTP by Mozilla</a></p></li><li><p><a href="https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Methods">HTTP Request Methods</a></p></li><li><p><a href="https://youtu.be/2YIgGdUtbXM?si=84ZJz_gfwl35ul2f">The most important concepts of Node.js and Express.js (YouTube 17:09)</a></p></li><li><p><a href="https://developer.mozilla.org/en-US/docs/Web/HTTP/Guides/CSP">CSP Guide by Mozilla</a></p></li><li><p><a href="https://owasp.org/www-project-top-ten/">OWASP Top 10</a></p></li><li><p><a href="https://bytebytego.com/guides/how-does-git-work/">How Git Works by ByteByteGo</a></p></li><li><p><a href="https://www.selenium.dev/">Overview of Test Automation with Selenium</a></p></li></ul><p>[Days 2-3] Start working with Claude Code and Codex (our recordings with templates):</p><ul><li><p><a href="https://www.productcompass.pm/i/204536782/3-get-the-first-three-free">Codex for PMs</a></p></li><li><p><a href="https://www.productcompass.pm/i/204536782/3-get-the-first-three-free">Claude Code for PMs</a></p></li><li><p><a href="https://go.productcompass.pm/events/3f30e9b4-3854-4f36-aabd-e7acb0d6963b">Claude Code Power Skills for PMs</a></p></li></ul><p>[Day 4] Proven ways to manage AI agents (not what people say):</p><ul><li><p><a href="https://www.productcompass.pm/p/intent-engineering-framework-for-ai-agents">Intent Engineering</a></p></li><li><p><a href="https://www.productcompass.pm/p/agentic-engineering-for-pms">Don&#8217;t review code, review artifacts</a></p></li></ul><p>Next in the series, we will cover:</p><ul><li><p>Plugging a custom domain (askone.org)</p></li><li><p>Multi-tenant setup &amp; more user roles</p></li><li><p>Mapping features to entitlements</p></li><li><p>Enabling real Stripe payments</p></li><li><p>App monitoring &amp; support</p></li><li><p>CI/CD best practices &amp; automation</p></li><li><p>PII, Terms of Use, Privacy Policy</p></li><li><p>Securing the app (WEF with Cloudflare, app-specific limits)</p></li><li><p>Security and performance tests</p></li></ul><p><strong>This Thursday, we continue building AskOne</strong>: <a href="https://go.productcompass.pm/events">https://go.productcompass.pm/events</a><br>The recording of the recent Thursday&#8217;s session will be available later today. </p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h2><strong>12. Live Session Recording</strong></h2><p>You can watch it here, Steps 1-5: <a href="https://go.productcompass.pm/events">https://go.productcompass.pm/events</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_!eR6x!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c11e7aa-3c65-4934-aced-f3969af24bc9_2477x1337.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!eR6x!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c11e7aa-3c65-4934-aced-f3969af24bc9_2477x1337.png 424w, https://substackcdn.com/image/fetch/$s_!eR6x!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c11e7aa-3c65-4934-aced-f3969af24bc9_2477x1337.png 848w, https://substackcdn.com/image/fetch/$s_!eR6x!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c11e7aa-3c65-4934-aced-f3969af24bc9_2477x1337.png 1272w, https://substackcdn.com/image/fetch/$s_!eR6x!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c11e7aa-3c65-4934-aced-f3969af24bc9_2477x1337.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!eR6x!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c11e7aa-3c65-4934-aced-f3969af24bc9_2477x1337.png" width="1456" height="786" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3c11e7aa-3c65-4934-aced-f3969af24bc9_2477x1337.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:786,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Live Session Recordings - The Product Compass&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="Live Session Recordings - The Product Compass" title="Live Session Recordings - The Product Compass" srcset="https://substackcdn.com/image/fetch/$s_!eR6x!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c11e7aa-3c65-4934-aced-f3969af24bc9_2477x1337.png 424w, https://substackcdn.com/image/fetch/$s_!eR6x!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c11e7aa-3c65-4934-aced-f3969af24bc9_2477x1337.png 848w, https://substackcdn.com/image/fetch/$s_!eR6x!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c11e7aa-3c65-4934-aced-f3969af24bc9_2477x1337.png 1272w, https://substackcdn.com/image/fetch/$s_!eR6x!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c11e7aa-3c65-4934-aced-f3969af24bc9_2477x1337.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>If you do not have an account, sign up with your newsletter email. The benefits will sync in 5 min (existing subscribers) - 2 hours (just subscribed).</p><div><hr></div><p><em>P.S. If you&#8217;re looking for a cohort, I just joined Product Faculty as a trainer.</em></p><p><em>Currently, we offer<strong> 8 AI PM cohorts (Anthropic, Google, OpenAI)</strong> for the <strong>price of one</strong> + $1,500 off for my readers: &#128073; </em><a href="https://productfaculty.com?code=PAWEL">https://productfaculty.com?code=PAWEL</a></p><p><em>You get them all for $3,500. On Maven, this program would cost ~$22,000. That&#8217;s, by far, the best training offer in the market.</em></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!-6fZ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed0ce491-5ac0-4d66-afaf-fa408cfbfd9f_766x650.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!-6fZ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed0ce491-5ac0-4d66-afaf-fa408cfbfd9f_766x650.png 424w, https://substackcdn.com/image/fetch/$s_!-6fZ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed0ce491-5ac0-4d66-afaf-fa408cfbfd9f_766x650.png 848w, https://substackcdn.com/image/fetch/$s_!-6fZ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed0ce491-5ac0-4d66-afaf-fa408cfbfd9f_766x650.png 1272w, https://substackcdn.com/image/fetch/$s_!-6fZ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed0ce491-5ac0-4d66-afaf-fa408cfbfd9f_766x650.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!-6fZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed0ce491-5ac0-4d66-afaf-fa408cfbfd9f_766x650.png" width="766" height="650" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ed0ce491-5ac0-4d66-afaf-fa408cfbfd9f_766x650.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:650,&quot;width&quot;:766,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:272876,&quot;alt&quot;:&quot;8 AI PM cohorts (Anthropic, Google, OpenAI)&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed0ce491-5ac0-4d66-afaf-fa408cfbfd9f_766x650.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="8 AI PM cohorts (Anthropic, Google, OpenAI)" title="8 AI PM cohorts (Anthropic, Google, OpenAI)" srcset="https://substackcdn.com/image/fetch/$s_!-6fZ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed0ce491-5ac0-4d66-afaf-fa408cfbfd9f_766x650.png 424w, https://substackcdn.com/image/fetch/$s_!-6fZ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed0ce491-5ac0-4d66-afaf-fa408cfbfd9f_766x650.png 848w, https://substackcdn.com/image/fetch/$s_!-6fZ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed0ce491-5ac0-4d66-afaf-fa408cfbfd9f_766x650.png 1272w, https://substackcdn.com/image/fetch/$s_!-6fZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed0ce491-5ac0-4d66-afaf-fa408cfbfd9f_766x650.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>8 AI PM cohorts (Anthropic, Google, OpenAI)</em></figcaption></figure></div><p><em>And that&#8217;s not everything. Everyone who enrolls with the above code can <strong>attend our</strong> <strong>Claudathon for PMs for free</strong>: <a href="https://go.productcompass.pm/claudathon">https://go.productcompass.pm/claudathon</a> (send me an email with a purchase confirmation: pawel@productcompass.pm) - we start on Sep 19.</em></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!4yMD!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05b4ed2f-5acb-45fe-b151-85eaadd02ffe_1120x721.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!4yMD!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05b4ed2f-5acb-45fe-b151-85eaadd02ffe_1120x721.png 424w, https://substackcdn.com/image/fetch/$s_!4yMD!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05b4ed2f-5acb-45fe-b151-85eaadd02ffe_1120x721.png 848w, https://substackcdn.com/image/fetch/$s_!4yMD!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05b4ed2f-5acb-45fe-b151-85eaadd02ffe_1120x721.png 1272w, https://substackcdn.com/image/fetch/$s_!4yMD!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05b4ed2f-5acb-45fe-b151-85eaadd02ffe_1120x721.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!4yMD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05b4ed2f-5acb-45fe-b151-85eaadd02ffe_1120x721.png" width="1120" height="721" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/05b4ed2f-5acb-45fe-b151-85eaadd02ffe_1120x721.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:721,&quot;width&quot;:1120,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:141165,&quot;alt&quot;:&quot;Claudathon for PMs&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://www.productcompass.pm/i/213103699?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05b4ed2f-5acb-45fe-b151-85eaadd02ffe_1120x721.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Claudathon for PMs" title="Claudathon for PMs" srcset="https://substackcdn.com/image/fetch/$s_!4yMD!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05b4ed2f-5acb-45fe-b151-85eaadd02ffe_1120x721.png 424w, https://substackcdn.com/image/fetch/$s_!4yMD!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05b4ed2f-5acb-45fe-b151-85eaadd02ffe_1120x721.png 848w, https://substackcdn.com/image/fetch/$s_!4yMD!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05b4ed2f-5acb-45fe-b151-85eaadd02ffe_1120x721.png 1272w, https://substackcdn.com/image/fetch/$s_!4yMD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05b4ed2f-5acb-45fe-b151-85eaadd02ffe_1120x721.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em><a href="https://go.productcompass.pm/claudathon">Claudathon for PMs, start: 19 Sep 2026</a></em></figcaption></figure></div><div><hr></div><h2><strong>Thanks for Reading The Product Compass</strong></h2><p>It&#8217;s amazing to learn and grow together.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&amp;gift=true&quot;,&quot;text&quot;:&quot;Give a gift subscription&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://www.productcompass.pm/subscribe?&amp;gift=true"><span>Give a gift subscription</span></a></p><p>Have an amazing rest of the week, <br>Pawe&#322;</p>]]></content:encoded></item><item><title><![CDATA[AI Prototyping in 2026: The PM Field Guide]]></title><description><![CDATA[I built the same CRM four times in just over an hour, live. The field guide: which tool for which job, the context prompt that beats a spec, the security check before you share a link, and the pixel-perfect handoff]]></description><link>https://www.productcompass.pm/p/ai-prototyping-lovable-ai-studio-claude</link><guid isPermaLink="false">https://www.productcompass.pm/p/ai-prototyping-lovable-ai-studio-claude</guid><dc:creator><![CDATA[Paweł Huryn]]></dc:creator><pubDate>Wed, 19 Aug 2026 12:19:16 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!PGah!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F381b9e01-b83e-4328-a690-7aee546e7122_3840x2063.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>At Meta, PMs vibe code prototypes and demo them to Zuckerberg. Their product sense interviews now include a live prototyping round.</p><p>So recently, I ran a live workshop with a group of PMs using popular tools. We built the same simple CRM in Lovable, in Google AI Studio, in Claude Design, and Claude Code.</p><p>In this issue:</p><ol><li><p>Why AI Prototyping (+Why Now)</p></li><li><p>The Four AI Prototyping Tools: Helicopter View</p></li><li><p>Iterate. Don't Spec.</p></li><li><p>Lovable: From Prompt to Published App</p></li><li><p>Google AI Studio: Good Enough to Prototype</p></li><li><p>Claude Design: The Best-Looking Prototype, With a Ceiling</p></li><li><p>Claude Code: The Prototype That's a Real App</p></li><li><p>How to Instrument Your Prototypes</p></li><li><p>Conclusion</p></li></ol><div><hr></div><h2><strong>1. Why AI Prototyping (+Why Now)</strong></h2><p>In product, most of our ideas don't work. As Marty Cagan says, <em><a href="https://www.svpg.com/product-fail/">&#8220;at least half of our ideas are just not going to work.&#8221;</a></em> Good teams assume at least three-quarters of their ideas won't perform as they hope.</p><p>The last time I worked as a PM, at Ideals, I worked with 7-8 engineers, and building anything still took us 2-4 weeks. So, like many product teams, we tested our ideas, mostly with user prototypes (Figma) before committing. </p><p>That's a standard in <a href="https://www.productcompass.pm/p/product-discovery-2026">product discovery</a>.</p><p>AI has changed a lot. That prototyping part is not gone. It changed, in two ways:</p><ul><li><p><strong>PMs prototype themselves now. </strong>Designers didn&#8217;t disappear, but it makes no sense to wait for a designer with every simple question when a working prototype is one or two prompts away. You show the thing to peers, stakeholders, or even users, instead of describing it.</p></li><li><p><strong>Ideas get tested as production-ready features.</strong> For cheap, reversible ideas, shipping behind a feature flag and measuring real usage is often easier than running a separate experiment. High-risk or hard-to-reverse ideas still get experiments.</p></li></ul><blockquote><p>Keep this in mind when we compare the tools below: <strong>prototype and feature, those two terms are closer than ever</strong>. The boundary is blurring.</p></blockquote><p>It's not just my experience:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!NEjN!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F094cd340-f5ce-4421-a28d-fc613d736709_1860x1427.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!NEjN!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F094cd340-f5ce-4421-a28d-fc613d736709_1860x1427.png 424w, https://substackcdn.com/image/fetch/$s_!NEjN!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F094cd340-f5ce-4421-a28d-fc613d736709_1860x1427.png 848w, https://substackcdn.com/image/fetch/$s_!NEjN!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F094cd340-f5ce-4421-a28d-fc613d736709_1860x1427.png 1272w, https://substackcdn.com/image/fetch/$s_!NEjN!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F094cd340-f5ce-4421-a28d-fc613d736709_1860x1427.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!NEjN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F094cd340-f5ce-4421-a28d-fc613d736709_1860x1427.png" width="558" height="428.08104395604397" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/094cd340-f5ce-4421-a28d-fc613d736709_1860x1427.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1117,&quot;width&quot;:1456,&quot;resizeWidth&quot;:558,&quot;bytes&quot;:955444,&quot;alt&quot;:&quot;Business Insider: Meta PMs demo vibe-coded prototypes to Zuckerberg&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://www.productcompass.pm/i/211601931?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F094cd340-f5ce-4421-a28d-fc613d736709_1860x1427.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Business Insider: Meta PMs demo vibe-coded prototypes to Zuckerberg" title="Business Insider: Meta PMs demo vibe-coded prototypes to Zuckerberg" srcset="https://substackcdn.com/image/fetch/$s_!NEjN!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F094cd340-f5ce-4421-a28d-fc613d736709_1860x1427.png 424w, https://substackcdn.com/image/fetch/$s_!NEjN!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F094cd340-f5ce-4421-a28d-fc613d736709_1860x1427.png 848w, https://substackcdn.com/image/fetch/$s_!NEjN!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F094cd340-f5ce-4421-a28d-fc613d736709_1860x1427.png 1272w, https://substackcdn.com/image/fetch/$s_!NEjN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F094cd340-f5ce-4421-a28d-fc613d736709_1860x1427.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Source: <a href="https://x.com/BusinessInsider/status/2013130787059610035">Business Insider</a></figcaption></figure></div><p>In <a href="https://www.productboard.com/blog/ai-in-product-management-report/">Productboard's survey</a> of enterprise product teams, 60% already use two different AI tools just for prototyping.</p><p>And you? Do you prototype as a PM?</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/p/ai-prototyping-lovable-ai-studio-claude/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://www.productcompass.pm/p/ai-prototyping-lovable-ai-studio-claude/comments"><span>Leave a comment</span></a></p><div><hr></div><h2><strong>2. The Four AI Prototyping Tools: Helicopter View</strong></h2><p>Below, a helicopter view of the four popular tools you will work with as a PM. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!xECs!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8b971ec-cfcb-4d84-b067-3cf478f3c8b2_2400x2902.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!xECs!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8b971ec-cfcb-4d84-b067-3cf478f3c8b2_2400x2902.png 424w, https://substackcdn.com/image/fetch/$s_!xECs!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8b971ec-cfcb-4d84-b067-3cf478f3c8b2_2400x2902.png 848w, https://substackcdn.com/image/fetch/$s_!xECs!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8b971ec-cfcb-4d84-b067-3cf478f3c8b2_2400x2902.png 1272w, https://substackcdn.com/image/fetch/$s_!xECs!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8b971ec-cfcb-4d84-b067-3cf478f3c8b2_2400x2902.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!xECs!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8b971ec-cfcb-4d84-b067-3cf478f3c8b2_2400x2902.png" width="1456" height="1761" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b8b971ec-cfcb-4d84-b067-3cf478f3c8b2_2400x2902.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1761,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2518238,&quot;alt&quot;:&quot;AI prototyping tools compared: Lovable, Google AI Studio, Claude Design and Claude Code across ease of use, price, hosting, security and auth defaults, intake questions, design variants, UI strength, vendor lock-in, handoff to engineers, and instrumentation.&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://www.productcompass.pm/i/211601931?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8b971ec-cfcb-4d84-b067-3cf478f3c8b2_2400x2902.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="AI prototyping tools compared: Lovable, Google AI Studio, Claude Design and Claude Code across ease of use, price, hosting, security and auth defaults, intake questions, design variants, UI strength, vendor lock-in, handoff to engineers, and instrumentation." title="AI prototyping tools compared: Lovable, Google AI Studio, Claude Design and Claude Code across ease of use, price, hosting, security and auth defaults, intake questions, design variants, UI strength, vendor lock-in, handoff to engineers, and instrumentation." srcset="https://substackcdn.com/image/fetch/$s_!xECs!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8b971ec-cfcb-4d84-b067-3cf478f3c8b2_2400x2902.png 424w, https://substackcdn.com/image/fetch/$s_!xECs!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8b971ec-cfcb-4d84-b067-3cf478f3c8b2_2400x2902.png 848w, https://substackcdn.com/image/fetch/$s_!xECs!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8b971ec-cfcb-4d84-b067-3cf478f3c8b2_2400x2902.png 1272w, https://substackcdn.com/image/fetch/$s_!xECs!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8b971ec-cfcb-4d84-b067-3cf478f3c8b2_2400x2902.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><strong>Selected insights:</strong></p><ul><li><p><strong>Lovable:</strong> hosting and Google auth solved in one click, strong UI. Check the default data policy (RLS) before publishing. Hardest to leave if you use Lovable Cloud, and your engineers are unlikely to build on it.</p></li><li><p><strong>Google AI Studio:</strong> test an idea today, no subscription. Weakest UI. Firestore and Google auth tie you to Google.</p></li><li><p><strong>Claude Design:</strong> the best-looking prototype, and it interviews you first. No tracking, no analytics, no databases. It doesn&#8217;t allow you to build features end-to-end.</p></li><li><p><strong>Claude Code:</strong> the most setup, zero lock-in. Real code in your repo, instrument anything, the strongest handoff.</p></li></ul><p>People often ask me about <strong>Bolt</strong> or <strong>Magic Patterns</strong>. I don't recommend those tools. Magic Patterns creates a mess and breaks when multiple people work on the same design. Bolt is not a bad tool. There are just better alternatives.</p><p>I also didn&#8217;t include chatbots such as <strong>ChatGPT.</strong> They are easy to use and can create static HTML pages, but you&#8217;re unlikely to use them for prototyping in a professional environment - you can&#8217;t instrument them. Use <strong>Google AI Studio </strong>instead.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h2><strong>3. Iterate. Don't Spec.</strong></h2><p>Do you believe you can document a solution, hand it to the developers, and hope the documentation is complete? <strong>That is waterfall. It has never worked.</strong></p><p>But for some reason, people have been proposing specs-driven development, where you do exactly the same thing with agents. </p><p>Of course, it cannot work. We understand what should be adjusted only once we see the product. And we will get much better feedback from the users interacting with what we built.</p><p>I'm not alone. Allen Holub, <a href="https://x.com/allenholub/status/2044445712109150318">in April 2026</a>:</p><blockquote><p><em>&#8220;I really don't get 'spec-based development,' which is nothing but a fancy way to describe a phase-gated 'waterfall.' An upfront specification is never correct.&#8221;</em></p></blockquote><p>So what is the alternative? The one Scrum and Agile discovered long ago: iterating.</p><p>That's how I develop Grok Build (<a href="https://open-vsx.org/extension/PawelHuryn/grok-vscode-phuryn">Open VSX</a>, <a href="https://marketplace.visualstudio.com/items?itemName=PawelHuryn.grok-vscode-phuryn">VS Code Marketplace</a>) and <a href="https://afkpilot.com/">AFK Pilot</a> (75K+ installs), with production releases sometimes twice a day:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!63WT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39416c6a-0371-4fea-b5df-ffe595e22a7d_3840x2280.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!63WT!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39416c6a-0371-4fea-b5df-ffe595e22a7d_3840x2280.png 424w, https://substackcdn.com/image/fetch/$s_!63WT!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39416c6a-0371-4fea-b5df-ffe595e22a7d_3840x2280.png 848w, https://substackcdn.com/image/fetch/$s_!63WT!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39416c6a-0371-4fea-b5df-ffe595e22a7d_3840x2280.png 1272w, https://substackcdn.com/image/fetch/$s_!63WT!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39416c6a-0371-4fea-b5df-ffe595e22a7d_3840x2280.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!63WT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39416c6a-0371-4fea-b5df-ffe595e22a7d_3840x2280.png" width="1456" height="865" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/39416c6a-0371-4fea-b5df-ffe595e22a7d_3840x2280.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:865,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1472655,&quot;alt&quot;:&quot;Grok Build Desktop (Community)&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://www.productcompass.pm/i/211601931?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39416c6a-0371-4fea-b5df-ffe595e22a7d_3840x2280.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Grok Build Desktop (Community)" title="Grok Build Desktop (Community)" srcset="https://substackcdn.com/image/fetch/$s_!63WT!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39416c6a-0371-4fea-b5df-ffe595e22a7d_3840x2280.png 424w, https://substackcdn.com/image/fetch/$s_!63WT!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39416c6a-0371-4fea-b5df-ffe595e22a7d_3840x2280.png 848w, https://substackcdn.com/image/fetch/$s_!63WT!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39416c6a-0371-4fea-b5df-ffe595e22a7d_3840x2280.png 1272w, https://substackcdn.com/image/fetch/$s_!63WT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F39416c6a-0371-4fea-b5df-ffe595e22a7d_3840x2280.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Grok Build Desktop (Community)</figcaption></figure></div><h3>3.1 Don't iterate blindly: define the strategic context</h3><p>While I encourage iteration, we shouldn't iterate blindly. What we can define before starting is the strategic context:</p><ul><li><p><strong>Users:</strong> who is this product for</p></li><li><p><strong>Problems:</strong> what hurts them today</p></li><li><p><strong>What matters most:</strong> their jobs to be done</p></li></ul><p>For an existing product, this should be part of your <code>CLAUDE.md</code>, the file that provides the strategic context for your agent. If you are not working with Anthropic's tools, this file is called <code>AGENTS.md</code>.</p><p>I explained it in more detail in: <a href="https://www.productcompass.pm/p/claude-code-beginners-guide">Claude Code for PMs: The Beginner&#8217;s Guide</a></p><p>In most cases, this context is enough for an agent to make good decisions. More on leading agents with context, not control: <a href="https://www.productcompass.pm/p/intent-engineering-framework-for-ai-agents">The Intent Engineering Framework</a>.</p><h3>3.2 The prompt: a new feature or a new product </h3><p>When you prototype <strong>a new feature for an existing product</strong>, the strategic context is already in the file. The prompt carries only the context relevant to the feature:</p><pre><code><code>Prototype [feature] for our existing product.

For this feature:
- Users: [who has this problem]
- Problem: [what hurts them today]
- The specific job it solves: [what the user is trying to do]
- What we know: [data, interviews, support tickets]

I think it could work like [your idea], but my idea is not binding.
Think about alternative solutions and propose one if it's better.</code></code></pre><p>When you prototype a <strong>new product</strong>, there is no context file yet. So the context goes in the prompt, and you ask the agent to save it:</p><pre><code>Build a prototype of a simple CRM.

Context, not requirements:
- Users: a 2-5 person B2B sales team
- Problem(s): follow-ups slip through the inbox
- The job(s) to be done: show what needs follow-up today
- Out of scope: billing, admin, integrations
- Rough idea (optional, not binding): a simple pipeline with a "due today" view
- What we know so far (optional): [interviews, data, anything relevant]

Decide the screens and the interface yourself.
Ask me up to 5 questions before you start.
Then save this context to CLAUDE.md.</code></pre><p>Two notes on those prompts:</p><ul><li><p>If you suggest a solution, still encourage the agent to think about alternatives. Many times agents suggested ideas I hadn&#8217;t thought about.</p></li><li><p>A one-line prompt (<em>&#8220;Help me build a simple CRM for a small organization&#8221;)</em> also works, especially with the <em>&#8220;ask me 5 questions&#8221;</em> line (some agents do it without the prompt, more on that later in this post).</p></li></ul><div><hr></div><h2><strong>4. Lovable: From Prompt to Published App</strong></h2><p>We started with Lovable. It's the simplest path from a prompt to something working, potentially in production.</p><h3>Step 1: Open Lovable and type the prompt</h3><p>Go to <a href="https://lovable.dev">lovable.dev</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_!2Gto!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73ca597a-149c-4806-b038-d6df5ea88939_1920x1142.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!2Gto!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73ca597a-149c-4806-b038-d6df5ea88939_1920x1142.png 424w, https://substackcdn.com/image/fetch/$s_!2Gto!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73ca597a-149c-4806-b038-d6df5ea88939_1920x1142.png 848w, https://substackcdn.com/image/fetch/$s_!2Gto!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73ca597a-149c-4806-b038-d6df5ea88939_1920x1142.png 1272w, https://substackcdn.com/image/fetch/$s_!2Gto!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73ca597a-149c-4806-b038-d6df5ea88939_1920x1142.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!2Gto!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73ca597a-149c-4806-b038-d6df5ea88939_1920x1142.png" width="728" height="433.0083333333333" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/73ca597a-149c-4806-b038-d6df5ea88939_1920x1142.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:1142,&quot;width&quot;:1920,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:537459,&quot;alt&quot;:&quot;Lovable, type the prompt&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://www.productcompass.pm/i/211601931?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73ca597a-149c-4806-b038-d6df5ea88939_1920x1142.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Lovable, type the prompt" title="Lovable, type the prompt" srcset="https://substackcdn.com/image/fetch/$s_!2Gto!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73ca597a-149c-4806-b038-d6df5ea88939_1920x1142.png 424w, https://substackcdn.com/image/fetch/$s_!2Gto!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73ca597a-149c-4806-b038-d6df5ea88939_1920x1142.png 848w, https://substackcdn.com/image/fetch/$s_!2Gto!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73ca597a-149c-4806-b038-d6df5ea88939_1920x1142.png 1272w, https://substackcdn.com/image/fetch/$s_!2Gto!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73ca597a-149c-4806-b038-d6df5ea88939_1920x1142.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Lovable, type the prompt</figcaption></figure></div><pre><code>Help me build a simple CRM for a small organization</code></pre><p>You don&#8217;t have to think about hosting. By default, Lovable will use Lovable Cloud, a Supabase they host. You just publish. </p><p>And you don't have to think about authentication, because their Google sign-in works out of the box. You pay for the editor. Hosting is virtually free.</p><p>You can also bring your own design system: import it as a <code>design.md</code> or upload a zip.</p><h3>Step 2: Answer the interview</h3><p>If your prompt was not precise, Lovable will ask you a few questions before it starts. Mine asked who uses it, what the CRM should track first, how deals should be displayed, and whether I had a style preference:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!TdNe!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22722d26-409c-45c7-89be-8cb0e4467098_936x590.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!TdNe!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22722d26-409c-45c7-89be-8cb0e4467098_936x590.png 424w, https://substackcdn.com/image/fetch/$s_!TdNe!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22722d26-409c-45c7-89be-8cb0e4467098_936x590.png 848w, https://substackcdn.com/image/fetch/$s_!TdNe!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22722d26-409c-45c7-89be-8cb0e4467098_936x590.png 1272w, https://substackcdn.com/image/fetch/$s_!TdNe!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22722d26-409c-45c7-89be-8cb0e4467098_936x590.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!TdNe!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22722d26-409c-45c7-89be-8cb0e4467098_936x590.png" width="728" height="458.8888888888889" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/22722d26-409c-45c7-89be-8cb0e4467098_936x590.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:590,&quot;width&quot;:936,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:101377,&quot;alt&quot;:&quot;Lovable interview: \&quot;Who uses it?\&quot; I picked a small team with logins, shared data.&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://www.productcompass.pm/i/211601931?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d5a1af8-2e47-4080-b60c-0339e6efbc1e_1920x1142.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Lovable interview: &quot;Who uses it?&quot; I picked a small team with logins, shared data." title="Lovable interview: &quot;Who uses it?&quot; I picked a small team with logins, shared data." srcset="https://substackcdn.com/image/fetch/$s_!TdNe!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22722d26-409c-45c7-89be-8cb0e4467098_936x590.png 424w, https://substackcdn.com/image/fetch/$s_!TdNe!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22722d26-409c-45c7-89be-8cb0e4467098_936x590.png 848w, https://substackcdn.com/image/fetch/$s_!TdNe!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22722d26-409c-45c7-89be-8cb0e4467098_936x590.png 1272w, https://substackcdn.com/image/fetch/$s_!TdNe!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F22722d26-409c-45c7-89be-8cb0e4467098_936x590.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Lovable interview: "Who uses it?" I picked a small team with logins, shared data.</figcaption></figure></div><p>I picked <strong>a small team with logins, shared data</strong>, and not "each user only sees their own records." Then contacts, deals, activity notes, and a style.</p><h3>Step 3: Sign in with Google</h3><p>Lovable finished. You can open the preview in a separate tab and sign in with Google:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!O60m!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F860e011c-c316-4414-a874-d15d2cde4010_3840x2063.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!O60m!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F860e011c-c316-4414-a874-d15d2cde4010_3840x2063.png 424w, https://substackcdn.com/image/fetch/$s_!O60m!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F860e011c-c316-4414-a874-d15d2cde4010_3840x2063.png 848w, https://substackcdn.com/image/fetch/$s_!O60m!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F860e011c-c316-4414-a874-d15d2cde4010_3840x2063.png 1272w, https://substackcdn.com/image/fetch/$s_!O60m!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F860e011c-c316-4414-a874-d15d2cde4010_3840x2063.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!O60m!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F860e011c-c316-4414-a874-d15d2cde4010_3840x2063.png" width="1456" height="782" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/860e011c-c316-4414-a874-d15d2cde4010_3840x2063.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:782,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:456107,&quot;alt&quot;:&quot;Prototype (OrbitCRM), sign in with Google&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://www.productcompass.pm/i/211601931?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F860e011c-c316-4414-a874-d15d2cde4010_3840x2063.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Prototype (OrbitCRM), sign in with Google" title="Prototype (OrbitCRM), sign in with Google" srcset="https://substackcdn.com/image/fetch/$s_!O60m!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F860e011c-c316-4414-a874-d15d2cde4010_3840x2063.png 424w, https://substackcdn.com/image/fetch/$s_!O60m!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F860e011c-c316-4414-a874-d15d2cde4010_3840x2063.png 848w, https://substackcdn.com/image/fetch/$s_!O60m!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F860e011c-c316-4414-a874-d15d2cde4010_3840x2063.png 1272w, https://substackcdn.com/image/fetch/$s_!O60m!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F860e011c-c316-4414-a874-d15d2cde4010_3840x2063.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Prototype (OrbitCRM), sign in with Google</figcaption></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!3Bd2!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9dd8223-ae45-49d6-9f7a-01e32c784c7c_3827x2047.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!3Bd2!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9dd8223-ae45-49d6-9f7a-01e32c784c7c_3827x2047.png 424w, https://substackcdn.com/image/fetch/$s_!3Bd2!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9dd8223-ae45-49d6-9f7a-01e32c784c7c_3827x2047.png 848w, https://substackcdn.com/image/fetch/$s_!3Bd2!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9dd8223-ae45-49d6-9f7a-01e32c784c7c_3827x2047.png 1272w, https://substackcdn.com/image/fetch/$s_!3Bd2!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9dd8223-ae45-49d6-9f7a-01e32c784c7c_3827x2047.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!3Bd2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9dd8223-ae45-49d6-9f7a-01e32c784c7c_3827x2047.png" width="1456" height="779" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c9dd8223-ae45-49d6-9f7a-01e32c784c7c_3827x2047.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:779,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:547848,&quot;alt&quot;:&quot;Prototype (OrbitCRM), signed in&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://www.productcompass.pm/i/211601931?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9dd8223-ae45-49d6-9f7a-01e32c784c7c_3827x2047.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Prototype (OrbitCRM), signed in" title="Prototype (OrbitCRM), signed in" srcset="https://substackcdn.com/image/fetch/$s_!3Bd2!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9dd8223-ae45-49d6-9f7a-01e32c784c7c_3827x2047.png 424w, https://substackcdn.com/image/fetch/$s_!3Bd2!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9dd8223-ae45-49d6-9f7a-01e32c784c7c_3827x2047.png 848w, https://substackcdn.com/image/fetch/$s_!3Bd2!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9dd8223-ae45-49d6-9f7a-01e32c784c7c_3827x2047.png 1272w, https://substackcdn.com/image/fetch/$s_!3Bd2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9dd8223-ae45-49d6-9f7a-01e32c784c7c_3827x2047.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Prototype (OrbitCRM), signed in</figcaption></figure></div><p>Google authentication comes with Lovable Cloud. When I implemented <a href="https://www.accredia.io/">Accredia</a>, I used a custom Supabase and I had to wait ~2 weeks for Google to approve the app. Here, it just works from the start.</p><p>I added a couple of contacts manually.</p><h3>Step 4: Check Cloud</h3><p>Click the project name, then open <strong>More &#8594;</strong> <strong>Cloud</strong>, next to 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_!gNey!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51140dc9-06fd-48ff-b8f1-b87e99bc59f6_1920x1142.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!gNey!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51140dc9-06fd-48ff-b8f1-b87e99bc59f6_1920x1142.png 424w, https://substackcdn.com/image/fetch/$s_!gNey!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51140dc9-06fd-48ff-b8f1-b87e99bc59f6_1920x1142.png 848w, https://substackcdn.com/image/fetch/$s_!gNey!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51140dc9-06fd-48ff-b8f1-b87e99bc59f6_1920x1142.png 1272w, https://substackcdn.com/image/fetch/$s_!gNey!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51140dc9-06fd-48ff-b8f1-b87e99bc59f6_1920x1142.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!gNey!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51140dc9-06fd-48ff-b8f1-b87e99bc59f6_1920x1142.png" width="728" height="433.0083333333333" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/51140dc9-06fd-48ff-b8f1-b87e99bc59f6_1920x1142.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:1142,&quot;width&quot;:1920,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:405570,&quot;alt&quot;:&quot;Lovable, More &#8594; Cloud &#8594; Overview&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://www.productcompass.pm/i/211601931?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51140dc9-06fd-48ff-b8f1-b87e99bc59f6_1920x1142.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Lovable, More &#8594; Cloud &#8594; Overview" title="Lovable, More &#8594; Cloud &#8594; Overview" srcset="https://substackcdn.com/image/fetch/$s_!gNey!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51140dc9-06fd-48ff-b8f1-b87e99bc59f6_1920x1142.png 424w, https://substackcdn.com/image/fetch/$s_!gNey!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51140dc9-06fd-48ff-b8f1-b87e99bc59f6_1920x1142.png 848w, https://substackcdn.com/image/fetch/$s_!gNey!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51140dc9-06fd-48ff-b8f1-b87e99bc59f6_1920x1142.png 1272w, https://substackcdn.com/image/fetch/$s_!gNey!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51140dc9-06fd-48ff-b8f1-b87e99bc59f6_1920x1142.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Lovable, More &#8594; Cloud &#8594; Overview</figcaption></figure></div><p>This is the database Lovable created and manages for us. Not a traditional Supabase you can easily access. Your options are limited.</p><h3>Step 5: Read the RLS policies</h3><p>Go to <strong>More &#8594; Cloud</strong> and open <strong>policies</strong>.</p><p>RLS is row-level security: who can see which rows.</p><p>I had already answered the interview: a small team, shared data. That is not the same as the policy Lovable implemented.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!mnwh!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7689c7cc-71a9-40b3-bcf4-b4b93910f2f1_1456x866.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!mnwh!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7689c7cc-71a9-40b3-bcf4-b4b93910f2f1_1456x866.png 424w, https://substackcdn.com/image/fetch/$s_!mnwh!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7689c7cc-71a9-40b3-bcf4-b4b93910f2f1_1456x866.png 848w, https://substackcdn.com/image/fetch/$s_!mnwh!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7689c7cc-71a9-40b3-bcf4-b4b93910f2f1_1456x866.png 1272w, https://substackcdn.com/image/fetch/$s_!mnwh!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7689c7cc-71a9-40b3-bcf4-b4b93910f2f1_1456x866.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!mnwh!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7689c7cc-71a9-40b3-bcf4-b4b93910f2f1_1456x866.png" width="1456" height="866" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7689c7cc-71a9-40b3-bcf4-b4b93910f2f1_1456x866.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:866,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:429374,&quot;alt&quot;:&quot;Lovable, Cloud &#8594; policies: contacts are USING true&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://www.productcompass.pm/i/211601931?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7689c7cc-71a9-40b3-bcf4-b4b93910f2f1_1456x866.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Lovable, Cloud &#8594; policies: contacts are USING true" title="Lovable, Cloud &#8594; policies: contacts are USING true" srcset="https://substackcdn.com/image/fetch/$s_!mnwh!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7689c7cc-71a9-40b3-bcf4-b4b93910f2f1_1456x866.png 424w, https://substackcdn.com/image/fetch/$s_!mnwh!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7689c7cc-71a9-40b3-bcf4-b4b93910f2f1_1456x866.png 848w, https://substackcdn.com/image/fetch/$s_!mnwh!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7689c7cc-71a9-40b3-bcf4-b4b93910f2f1_1456x866.png 1272w, https://substackcdn.com/image/fetch/$s_!mnwh!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7689c7cc-71a9-40b3-bcf4-b4b93910f2f1_1456x866.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Lovable, Cloud &#8594; policies: contacts are USING true</figcaption></figure></div><p>On contacts, mine was <code>USING true</code>, which means any signed-in user, not just my team. Shared with the team and anyone with a Google login are not the same thing.</p><p>It seemed to me that right now anyone can see any data. You don&#8217;t have to overthink your prompts. Just ask:</p><pre><code><code>Hey, users should see only their data. Ensure that's the case.</code></code></pre><p>And Lovable fixed the RLS:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!RAJr!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F13e11aac-08ed-494b-9a92-420edc191ae5_1456x866.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!RAJr!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F13e11aac-08ed-494b-9a92-420edc191ae5_1456x866.png 424w, https://substackcdn.com/image/fetch/$s_!RAJr!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F13e11aac-08ed-494b-9a92-420edc191ae5_1456x866.png 848w, https://substackcdn.com/image/fetch/$s_!RAJr!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F13e11aac-08ed-494b-9a92-420edc191ae5_1456x866.png 1272w, https://substackcdn.com/image/fetch/$s_!RAJr!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F13e11aac-08ed-494b-9a92-420edc191ae5_1456x866.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!RAJr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F13e11aac-08ed-494b-9a92-420edc191ae5_1456x866.png" width="1456" height="866" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/13e11aac-08ed-494b-9a92-420edc191ae5_1456x866.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:866,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:437923,&quot;alt&quot;:&quot;Lovable, policies after the fix: own contacts only&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://www.productcompass.pm/i/211601931?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F13e11aac-08ed-494b-9a92-420edc191ae5_1456x866.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Lovable, policies after the fix: own contacts only" title="Lovable, policies after the fix: own contacts only" srcset="https://substackcdn.com/image/fetch/$s_!RAJr!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F13e11aac-08ed-494b-9a92-420edc191ae5_1456x866.png 424w, https://substackcdn.com/image/fetch/$s_!RAJr!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F13e11aac-08ed-494b-9a92-420edc191ae5_1456x866.png 848w, https://substackcdn.com/image/fetch/$s_!RAJr!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F13e11aac-08ed-494b-9a92-420edc191ae5_1456x866.png 1272w, https://substackcdn.com/image/fetch/$s_!RAJr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F13e11aac-08ed-494b-9a92-420edc191ae5_1456x866.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Lovable, policies after the fix: own contacts only (Per-user isolation is right for a demo. A team CRM would want an organization ID on every record, with users grouped by organization. Just ask in the chat.)</figcaption></figure></div><p>I opened it in incognito and signed in with a different Google account: empty contact list. Users are isolated. An attendee confirmed it from the outside, 62 seconds after I shared the link. I should have done it before publishing. </p><blockquote><p><strong>Answering the interview is not the same as setting the policy. Ask what users can see in the chat, test the app using different accounts, and consider opening Cloud &#8594; policies before you publish anything.</strong></p></blockquote><h3>Step 6: Publish</h3><p>Click <strong>Publish</strong>, and the app is available to anyone with the link. <br>Mine: <a href="https://hearth-home-crm.lovable.app/">https://hearth-home-crm.lovable.app</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_!b6mx!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc4d817fa-590a-4c78-9803-f00144314630_1920x1142.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!b6mx!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc4d817fa-590a-4c78-9803-f00144314630_1920x1142.png 424w, https://substackcdn.com/image/fetch/$s_!b6mx!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc4d817fa-590a-4c78-9803-f00144314630_1920x1142.png 848w, https://substackcdn.com/image/fetch/$s_!b6mx!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc4d817fa-590a-4c78-9803-f00144314630_1920x1142.png 1272w, https://substackcdn.com/image/fetch/$s_!b6mx!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc4d817fa-590a-4c78-9803-f00144314630_1920x1142.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!b6mx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc4d817fa-590a-4c78-9803-f00144314630_1920x1142.png" width="728" height="433" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c4d817fa-590a-4c78-9803-f00144314630_1920x1142.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:866,&quot;width&quot;:1456,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:391039,&quot;alt&quot;:&quot;Your Lovable prototype is live&quot;,&quot;title&quot;:&quot;Your Lovable prototype is live&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://www.productcompass.pm/i/211601931?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc4d817fa-590a-4c78-9803-f00144314630_1920x1142.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Your Lovable prototype is live" title="Your Lovable prototype is live" srcset="https://substackcdn.com/image/fetch/$s_!b6mx!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc4d817fa-590a-4c78-9803-f00144314630_1920x1142.png 424w, https://substackcdn.com/image/fetch/$s_!b6mx!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc4d817fa-590a-4c78-9803-f00144314630_1920x1142.png 848w, https://substackcdn.com/image/fetch/$s_!b6mx!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc4d817fa-590a-4c78-9803-f00144314630_1920x1142.png 1272w, https://substackcdn.com/image/fetch/$s_!b6mx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc4d817fa-590a-4c78-9803-f00144314630_1920x1142.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Your Lovable prototype is live</figcaption></figure></div><p>You can point your own domain, but theirs is often enough for testing. To make it look less like a prototype, hide the Lovable badge in the settings.</p><h3>Lovable Cheat Sheet</h3><ul><li><p><strong>Use it when:</strong> you need a link today, with Google auth and a database.</p></li><li><p><strong>Skip it when:</strong> engineers will take this over. There is no click that says "I want to stop using Lovable Cloud." Also skip if you&#8217;re looking for a budget solution.</p></li><li><p><strong>Watch for:</strong> RLS (<code>USING true</code> is not "my team"). One database for every environment (no DEV / STAGING / PROD separation). Unknown LLM model.</p></li></ul><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Upgrade&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">&#128274; The session recording: the Lovable build end to end, including the live security fix. For premium subscribers.</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="Upgrade"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><div><hr></div><h2><strong>5. Google AI Studio: Good Enough to Prototype</strong></h2><p>Google AI Studio is no longer only a user interface tool. It can create a database in Firestore, and it can authenticate your users. I'm on the Pro license, but there is also a free version.</p><h3>Step 1: Open Build and paste the prompt</h3><p>Open <a href="https://aistudio.google.com">aistudio.google.com</a> and switch to <strong>Build</strong>:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!AqBQ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4eaf8344-dad4-452b-bb8a-a72d87b3625c_1920x1142.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!AqBQ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4eaf8344-dad4-452b-bb8a-a72d87b3625c_1920x1142.png 424w, https://substackcdn.com/image/fetch/$s_!AqBQ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4eaf8344-dad4-452b-bb8a-a72d87b3625c_1920x1142.png 848w, https://substackcdn.com/image/fetch/$s_!AqBQ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4eaf8344-dad4-452b-bb8a-a72d87b3625c_1920x1142.png 1272w, https://substackcdn.com/image/fetch/$s_!AqBQ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4eaf8344-dad4-452b-bb8a-a72d87b3625c_1920x1142.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!AqBQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4eaf8344-dad4-452b-bb8a-a72d87b3625c_1920x1142.png" width="728" height="433.0083333333333" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4eaf8344-dad4-452b-bb8a-a72d87b3625c_1920x1142.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:1142,&quot;width&quot;:1920,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:263688,&quot;alt&quot;:&quot;Google AI Studio, the Build tab > New app&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://www.productcompass.pm/i/211601931?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4eaf8344-dad4-452b-bb8a-a72d87b3625c_1920x1142.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Google AI Studio, the Build tab > New app" title="Google AI Studio, the Build tab > New app" srcset="https://substackcdn.com/image/fetch/$s_!AqBQ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4eaf8344-dad4-452b-bb8a-a72d87b3625c_1920x1142.png 424w, https://substackcdn.com/image/fetch/$s_!AqBQ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4eaf8344-dad4-452b-bb8a-a72d87b3625c_1920x1142.png 848w, https://substackcdn.com/image/fetch/$s_!AqBQ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4eaf8344-dad4-452b-bb8a-a72d87b3625c_1920x1142.png 1272w, https://substackcdn.com/image/fetch/$s_!AqBQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4eaf8344-dad4-452b-bb8a-a72d87b3625c_1920x1142.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Google AI Studio, the Build tab &gt; New app</figcaption></figure></div><pre><code>Help me build a simple CRM for a small organization that includes contact management, task tracking, and basic email integration</code></pre><h3>Step 2: Enable Firebase when it asks</h3><p>It asked me if I want to enable Firebase. This is the database that Google can host, so I agreed:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Hha1!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5bf75e47-c316-48d8-9df2-e8351a340f91_1456x866.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Hha1!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5bf75e47-c316-48d8-9df2-e8351a340f91_1456x866.png 424w, https://substackcdn.com/image/fetch/$s_!Hha1!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5bf75e47-c316-48d8-9df2-e8351a340f91_1456x866.png 848w, https://substackcdn.com/image/fetch/$s_!Hha1!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5bf75e47-c316-48d8-9df2-e8351a340f91_1456x866.png 1272w, https://substackcdn.com/image/fetch/$s_!Hha1!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5bf75e47-c316-48d8-9df2-e8351a340f91_1456x866.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Hha1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5bf75e47-c316-48d8-9df2-e8351a340f91_1456x866.png" width="1456" height="866" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5bf75e47-c316-48d8-9df2-e8351a340f91_1456x866.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:866,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:400866,&quot;alt&quot;:&quot;AI Studio, enable Firebase Firestore&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://www.productcompass.pm/i/211601931?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5bf75e47-c316-48d8-9df2-e8351a340f91_1456x866.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="AI Studio, enable Firebase Firestore" title="AI Studio, enable Firebase Firestore" srcset="https://substackcdn.com/image/fetch/$s_!Hha1!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5bf75e47-c316-48d8-9df2-e8351a340f91_1456x866.png 424w, https://substackcdn.com/image/fetch/$s_!Hha1!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5bf75e47-c316-48d8-9df2-e8351a340f91_1456x866.png 848w, https://substackcdn.com/image/fetch/$s_!Hha1!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5bf75e47-c316-48d8-9df2-e8351a340f91_1456x866.png 1272w, https://substackcdn.com/image/fetch/$s_!Hha1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5bf75e47-c316-48d8-9df2-e8351a340f91_1456x866.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">AI Studio, enable Firebase Firestore</figcaption></figure></div><h3>Step 3: Pick a visual style and confirm</h3><p>I like this slick interface, so let's select this design:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!E7Op!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc7e69d0-1d9f-42b5-afa8-b23fc3370d25_1189x738.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!E7Op!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc7e69d0-1d9f-42b5-afa8-b23fc3370d25_1189x738.png 424w, https://substackcdn.com/image/fetch/$s_!E7Op!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc7e69d0-1d9f-42b5-afa8-b23fc3370d25_1189x738.png 848w, https://substackcdn.com/image/fetch/$s_!E7Op!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc7e69d0-1d9f-42b5-afa8-b23fc3370d25_1189x738.png 1272w, https://substackcdn.com/image/fetch/$s_!E7Op!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc7e69d0-1d9f-42b5-afa8-b23fc3370d25_1189x738.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!E7Op!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc7e69d0-1d9f-42b5-afa8-b23fc3370d25_1189x738.png" width="728" height="451.86206896551727" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/bc7e69d0-1d9f-42b5-afa8-b23fc3370d25_1189x738.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:738,&quot;width&quot;:1189,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:180587,&quot;alt&quot;:&quot;AI Studio, pick a style: Sleek Interface&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://www.productcompass.pm/i/211601931?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02386c9a-b0ad-4367-9153-536dfec3f16a_1920x1142.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="AI Studio, pick a style: Sleek Interface" title="AI Studio, pick a style: Sleek Interface" srcset="https://substackcdn.com/image/fetch/$s_!E7Op!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc7e69d0-1d9f-42b5-afa8-b23fc3370d25_1189x738.png 424w, https://substackcdn.com/image/fetch/$s_!E7Op!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc7e69d0-1d9f-42b5-afa8-b23fc3370d25_1189x738.png 848w, https://substackcdn.com/image/fetch/$s_!E7Op!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc7e69d0-1d9f-42b5-afa8-b23fc3370d25_1189x738.png 1272w, https://substackcdn.com/image/fetch/$s_!E7Op!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc7e69d0-1d9f-42b5-afa8-b23fc3370d25_1189x738.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">AI Studio, pick a style: Sleek Interface</figcaption></figure></div><p>Once you confirm, the build is more technical than Lovable's. You will see file names going by, but you don't have to open any of them.</p><h3>Step 4: Seed the data</h3><p>The first dashboard is empty, so click <strong>Seed Demo Data</strong>. Then you get a pipeline, contacts, and tasks you can click through:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!kwE9!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7cb3508-faf7-4edc-8383-e661cb63b32d_1456x866.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!kwE9!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7cb3508-faf7-4edc-8383-e661cb63b32d_1456x866.png 424w, https://substackcdn.com/image/fetch/$s_!kwE9!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7cb3508-faf7-4edc-8383-e661cb63b32d_1456x866.png 848w, https://substackcdn.com/image/fetch/$s_!kwE9!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7cb3508-faf7-4edc-8383-e661cb63b32d_1456x866.png 1272w, https://substackcdn.com/image/fetch/$s_!kwE9!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7cb3508-faf7-4edc-8383-e661cb63b32d_1456x866.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!kwE9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7cb3508-faf7-4edc-8383-e661cb63b32d_1456x866.png" width="1456" height="866" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d7cb3508-faf7-4edc-8383-e661cb63b32d_1456x866.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:866,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:546722,&quot;alt&quot;:&quot;Prototype (OrgCRM) after Seed Demo Data&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://www.productcompass.pm/i/211601931?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7cb3508-faf7-4edc-8383-e661cb63b32d_1456x866.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Prototype (OrgCRM) after Seed Demo Data" title="Prototype (OrgCRM) after Seed Demo Data" srcset="https://substackcdn.com/image/fetch/$s_!kwE9!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7cb3508-faf7-4edc-8383-e661cb63b32d_1456x866.png 424w, https://substackcdn.com/image/fetch/$s_!kwE9!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7cb3508-faf7-4edc-8383-e661cb63b32d_1456x866.png 848w, https://substackcdn.com/image/fetch/$s_!kwE9!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7cb3508-faf7-4edc-8383-e661cb63b32d_1456x866.png 1272w, https://substackcdn.com/image/fetch/$s_!kwE9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7cb3508-faf7-4edc-8383-e661cb63b32d_1456x866.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Prototype (OrgCRM) after clicking Seed Demo Data</figcaption></figure></div><p>I don&#8217;t really like how Google designs interfaces. I selected what seemed the best. Still, not a Lovable level. Their default model is Gemini Flash.</p><p>But for prototyping, it is often all that you need. And you can steer it with prompts or by giving examples / screenshots of the products you like.</p><h3>Step 5: Publish</h3><p>Click <strong>Publish</strong>, and you get a nice URL to share. <br>Mine: <a href="https://organization-crm.ai.studio/">https://organization-crm.ai.studio/</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_!NB7T!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17013598-e939-4167-aff6-839db9b14b81_1456x866.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!NB7T!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17013598-e939-4167-aff6-839db9b14b81_1456x866.png 424w, https://substackcdn.com/image/fetch/$s_!NB7T!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17013598-e939-4167-aff6-839db9b14b81_1456x866.png 848w, https://substackcdn.com/image/fetch/$s_!NB7T!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17013598-e939-4167-aff6-839db9b14b81_1456x866.png 1272w, https://substackcdn.com/image/fetch/$s_!NB7T!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17013598-e939-4167-aff6-839db9b14b81_1456x866.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!NB7T!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17013598-e939-4167-aff6-839db9b14b81_1456x866.png" width="1456" height="866" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/17013598-e939-4167-aff6-839db9b14b81_1456x866.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:866,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:509414,&quot;alt&quot;:&quot;Organization CRM, click Publish&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://www.productcompass.pm/i/211601931?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17013598-e939-4167-aff6-839db9b14b81_1456x866.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Organization CRM, click Publish" title="Organization CRM, click Publish" srcset="https://substackcdn.com/image/fetch/$s_!NB7T!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17013598-e939-4167-aff6-839db9b14b81_1456x866.png 424w, https://substackcdn.com/image/fetch/$s_!NB7T!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17013598-e939-4167-aff6-839db9b14b81_1456x866.png 848w, https://substackcdn.com/image/fetch/$s_!NB7T!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17013598-e939-4167-aff6-839db9b14b81_1456x866.png 1272w, https://substackcdn.com/image/fetch/$s_!NB7T!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17013598-e939-4167-aff6-839db9b14b81_1456x866.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Organization CRM, click Publish</figcaption></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jz5a!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffce42312-cf1c-4945-a7ba-a11b0a903252_1918x1034.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jz5a!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffce42312-cf1c-4945-a7ba-a11b0a903252_1918x1034.png 424w, https://substackcdn.com/image/fetch/$s_!jz5a!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffce42312-cf1c-4945-a7ba-a11b0a903252_1918x1034.png 848w, https://substackcdn.com/image/fetch/$s_!jz5a!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffce42312-cf1c-4945-a7ba-a11b0a903252_1918x1034.png 1272w, https://substackcdn.com/image/fetch/$s_!jz5a!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffce42312-cf1c-4945-a7ba-a11b0a903252_1918x1034.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jz5a!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffce42312-cf1c-4945-a7ba-a11b0a903252_1918x1034.png" width="1456" height="785" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/fce42312-cf1c-4945-a7ba-a11b0a903252_1918x1034.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:785,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:184277,&quot;alt&quot;:&quot;Prototype, live view&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://www.productcompass.pm/i/211601931?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffce42312-cf1c-4945-a7ba-a11b0a903252_1918x1034.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Prototype, live view" title="Prototype, live view" srcset="https://substackcdn.com/image/fetch/$s_!jz5a!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffce42312-cf1c-4945-a7ba-a11b0a903252_1918x1034.png 424w, https://substackcdn.com/image/fetch/$s_!jz5a!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffce42312-cf1c-4945-a7ba-a11b0a903252_1918x1034.png 848w, https://substackcdn.com/image/fetch/$s_!jz5a!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffce42312-cf1c-4945-a7ba-a11b0a903252_1918x1034.png 1272w, https://substackcdn.com/image/fetch/$s_!jz5a!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffce42312-cf1c-4945-a7ba-a11b0a903252_1918x1034.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Prototype, live view</figcaption></figure></div><p>You can also sync the project with GitHub in the settings. Then you can open the same project in Claude or in Codex and continue there.</p><h3>AI Studio Cheat Sheet</h3><ul><li><p><strong>Use it when:</strong> you want to test an idea today. Free version exists.</p></li><li><p><strong>Skip it when:</strong> you need a top-notch design.</p></li><li><p><strong>Watch for:</strong> Google ecosystem. Swapping Firestore is not that straightforward (for an agent, probably one day).</p></li></ul><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Upgrade&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">&#128274; The session recording: the AI Studio build, from prompt to published URL. For premium subscribers.</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="Upgrade"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><div><hr></div><h2><strong>6. Claude Design: The Best-Looking Prototype, With a Ceiling</strong></h2>
      <p>
          <a href="https://www.productcompass.pm/p/ai-prototyping-lovable-ai-studio-claude">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[Claude Opus 5: The Best Opus Yet, Once You Heal It]]></title><description><![CDATA[Anthropic was proud of removing 80% of instructions. This model needs more of them. The eight blocks that made Opus 5 the best Opus I have used.]]></description><link>https://www.productcompass.pm/p/claude-opus-5-the-best-opus-yet-once</link><guid isPermaLink="false">https://www.productcompass.pm/p/claude-opus-5-the-best-opus-yet-once</guid><dc:creator><![CDATA[Paweł Huryn]]></dc:creator><pubDate>Mon, 10 Aug 2026 17:52:32 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/8f149b91-cf4f-44e0-8306-633a6666e4c3_1280x720.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>At first I loved Opus 5.</p><p>On July 24, Anthropic put it at the top of nearly every test they publish:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!P-St!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd832674b-e9d8-4b02-81ed-8abdec354a94_2160x2160.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!P-St!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd832674b-e9d8-4b02-81ed-8abdec354a94_2160x2160.png 424w, https://substackcdn.com/image/fetch/$s_!P-St!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd832674b-e9d8-4b02-81ed-8abdec354a94_2160x2160.png 848w, https://substackcdn.com/image/fetch/$s_!P-St!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd832674b-e9d8-4b02-81ed-8abdec354a94_2160x2160.png 1272w, https://substackcdn.com/image/fetch/$s_!P-St!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd832674b-e9d8-4b02-81ed-8abdec354a94_2160x2160.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!P-St!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd832674b-e9d8-4b02-81ed-8abdec354a94_2160x2160.png" width="728" height="728" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d832674b-e9d8-4b02-81ed-8abdec354a94_2160x2160.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:2160,&quot;width&quot;:2160,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:202745,&quot;alt&quot;:&quot;Anthropic's own evaluation table for Claude Opus 5, July 24, 2026.&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Anthropic's own evaluation table for Claude Opus 5, July 24, 2026." title="Anthropic's own evaluation table for Claude Opus 5, July 24, 2026." srcset="https://substackcdn.com/image/fetch/$s_!P-St!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd832674b-e9d8-4b02-81ed-8abdec354a94_2160x2160.png 424w, https://substackcdn.com/image/fetch/$s_!P-St!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd832674b-e9d8-4b02-81ed-8abdec354a94_2160x2160.png 848w, https://substackcdn.com/image/fetch/$s_!P-St!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd832674b-e9d8-4b02-81ed-8abdec354a94_2160x2160.png 1272w, https://substackcdn.com/image/fetch/$s_!P-St!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd832674b-e9d8-4b02-81ed-8abdec354a94_2160x2160.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Anthropic's own evaluation table for Claude Opus 5, July 24, 2026.</figcaption></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!x18O!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2e21304-2474-4f2d-a9fb-9192d95d32ee_3840x2160.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!x18O!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2e21304-2474-4f2d-a9fb-9192d95d32ee_3840x2160.png 424w, https://substackcdn.com/image/fetch/$s_!x18O!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2e21304-2474-4f2d-a9fb-9192d95d32ee_3840x2160.png 848w, https://substackcdn.com/image/fetch/$s_!x18O!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2e21304-2474-4f2d-a9fb-9192d95d32ee_3840x2160.png 1272w, https://substackcdn.com/image/fetch/$s_!x18O!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2e21304-2474-4f2d-a9fb-9192d95d32ee_3840x2160.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!x18O!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2e21304-2474-4f2d-a9fb-9192d95d32ee_3840x2160.png" width="728" height="409.5" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b2e21304-2474-4f2d-a9fb-9192d95d32ee_3840x2160.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:2160,&quot;width&quot;:3840,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:161677,&quot;alt&quot;:&quot;ARC-AGI-3 measures novel problem solving. Opus 5 scored about three times the next best model.&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="ARC-AGI-3 measures novel problem solving. Opus 5 scored about three times the next best model." title="ARC-AGI-3 measures novel problem solving. Opus 5 scored about three times the next best model." srcset="https://substackcdn.com/image/fetch/$s_!x18O!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2e21304-2474-4f2d-a9fb-9192d95d32ee_3840x2160.png 424w, https://substackcdn.com/image/fetch/$s_!x18O!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2e21304-2474-4f2d-a9fb-9192d95d32ee_3840x2160.png 848w, https://substackcdn.com/image/fetch/$s_!x18O!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2e21304-2474-4f2d-a9fb-9192d95d32ee_3840x2160.png 1272w, https://substackcdn.com/image/fetch/$s_!x18O!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2e21304-2474-4f2d-a9fb-9192d95d32ee_3840x2160.png 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">ARC-AGI-3 measures novel problem solving. Opus 5 scored about three times the next best model.</figcaption></figure></div><p>But then I used it for a few days. <strong>The</strong> <strong>more I worked with it, the less I liked it</strong>. </p><p>And it&#8217;s not just me. For example:</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/kimmonismus/status/2084727476761083926&quot;,&quot;full_text&quot;:&quot;I'm going to cancel Claude. It's just so bad, I can't believe it.\n\nIt's just lazy. The most recent example: I have Claude check my inbox for important emails, summarize them, work with them, and send out replies if necessary. I caught Claude again simply not reading the email&quot;,&quot;username&quot;:&quot;kimmonismus&quot;,&quot;name&quot;:&quot;Chubby&#9832;&#65039;&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1728327996375719936/RW7VBJfD_normal.jpg&quot;,&quot;date&quot;:&quot;2026-08-04T19:45:37.000Z&quot;,&quot;photos&quot;:[],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:2019,&quot;retweet_count&quot;:566,&quot;like_count&quot;:16409,&quot;impression_count&quot;:2501903,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:false}" data-component-name="Twitter2ToDOM"></div><p>My timeline has looked like this for two weeks. <em>&#8220;Cancel the subscription.&#8221; &#8220;Bring back 4.6.&#8221; &#8220;Anthropic broke it.&#8221;</em></p><p>The closest thing to advice out there is this:</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/mattshumer_/status/2085776751150485642&quot;,&quot;full_text&quot;:&quot;Claude Opus 5 is way better than people give it credit for.\n\nIf you're using it like previous Claude models, it's going to suck.\n\nTwo things make a huge difference:\n- Delete ALL your skills/MCPs/Claude.md/etc. Start fresh.\n- Stop telling it how to do the thing. Just say what you&quot;,&quot;username&quot;:&quot;mattshumer_&quot;,&quot;name&quot;:&quot;Matt Shumer&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1490950574090571778/BtgOaqUP_normal.jpg&quot;,&quot;date&quot;:&quot;2026-08-07T17:15:03.000Z&quot;,&quot;photos&quot;:[],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:472,&quot;retweet_count&quot;:100,&quot;like_count&quot;:2462,&quot;impression_count&quot;:760613,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p>Right diagnosis, half a prescription. <em>&#8220;Delete everything&#8221;</em> and you also delete the half no model can guess: your preferences, the decisions you already made, <a href="https://www.productcompass.pm/p/intent-engineering-framework-for-ai-agents">the strategic context</a>.</p><p>Here is what I think happened:</p><ul><li><p>Anthropic removed 80% of Claude Code's system prompt and was proud of it. I <a href="https://github.com/phuryn/experiments/tree/main/claude-code-system-prompt-shrink">measured the cut</a>: <strong>2,686 words down to 514</strong>. </p></li><li><p>As Kun Chen explained, Anthropic also pushed reinforcement learning too far toward long jobs. It was <strong>trained to work without you</strong>, so it <strong>stopped working with you</strong>:</p></li></ul><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/kunchenguid/status/2086557022422770096&quot;,&quot;full_text&quot;:&quot;opus 5 is a sign that the obsession with &#8220;long-horizon agents&#8221; in model training is finally backfiring\n\ni don&#8217;t like long-horizon agents, and i&#8217;ll explain why they fundamentally don&#8217;t work\n\nsome people will immediately jump out and say &#8220;skill issue&#8221;. well, show me one profitable&quot;,&quot;username&quot;:&quot;kunchenguid&quot;,&quot;name&quot;:&quot;Kun Chen&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1946076752024895489/ScNir1Fy_normal.jpg&quot;,&quot;date&quot;:&quot;2026-08-09T20:55:35.000Z&quot;,&quot;photos&quot;:[],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:132,&quot;retweet_count&quot;:117,&quot;like_count&quot;:1348,&quot;impression_count&quot;:117563,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p>Both mean this model needs more instructions, not fewer.</p><p><strong>Luckily, you can heal it.</strong></p><p>I never switched away from Opus 5. Every time a failure repeated, I wrote the rule that stopped it, then kept working. After two weeks, <strong>eight blocks survived</strong>.</p><p>With them, <strong>Opus 5 is the best Opus I have used</strong> by a large margin.</p><div><hr></div><h2>1. Act. Don't Ask.</h2><p><strong>The failure:</strong> Opus 5 stops to ask for permission when the decision is obvious.</p><p>It pauses mid-task to ask whether it should follow the naming convention visible in the folder it just read. Or it finishes real work and ends with <em>"want me to also update the documentation?"</em> I got that exact ending five times in one session.</p><p>A block you can copy and paste into your CLAUDE.md:</p><pre><code>## Act. Don't ask.

Reversible and cheap? Do it, then tell me. Research, data pulls, analysis,
drafts, refactors inside the scope I gave you, testing an API. A question costs
me more than a re-run costs you.

Ask first only for: anything reaching an audience, anything we cannot undo,
anything expensive.

Before you hand something back as blocked, try it. Read the API. Check the flag.
Run the command. "Can you do X?" when the answer was yes wastes a round trip
and buys nothing.

Something is broken? Fix it. Reporting an issue you could have fixed turns your
work into my to-do list.</code></pre><p>That last paragraph came from a morning when it turned out that my X scheduled job had been failing for days. The agent reported it, and waited. I reacted 2 days later. The fix was one command.</p><div><hr></div><h2>2. A Question Is a Question</h2><p><strong>The failure:</strong> you ask a question and Opus 5 starts changing things. Like a psychopath.</p><p>I ask <em>"how could we improve this?"</em> and it starts rebuilding a feature.</p><pre><code>## A question is a question

When I ask a question, answer it. Do not implement it.

"Why is this failing?" is not "make it stop failing."
"Should we use X?" is not "migrate everything to X."
"What would it take to add Y?" is not "add Y."

When in doubt, assume it is a question. Answer first. Act when I say go.

Full freedom about how. None about what.</code></pre><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h2>3. Done Means Done</h2><p><strong>The failure:</strong> it does four of the five things you asked, then reports done. Until you ask <em>&#8220;everything?&#8221;</em></p><pre><code>## Done means done

Done means done. Not half done. Not done except for the part you decided to skip.
And not a report about how it will be done.

Five things asked means five things delivered, no matter how long they take.
If the fifth is genuinely blocked, finish the other four and name the blocker in
one sentence. The specific blocker. Not "this needs more investigation."

"I'll continue in the next message" is not a state this project has.</code></pre><div class="callout-block" data-callout="true"><p>&#128274; Thanks for reading. 5 more blocks left. Consider upgrading to continue and support my work. </p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p></div>
      <p>
          <a href="https://www.productcompass.pm/p/claude-opus-5-the-best-opus-yet-once">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[How to Cut Your AI Bill From $200 to $20 a Month]]></title><description><![CDATA[Measured, not estimated: 105 hidden bugs, 10 frontier models, 14 runs. The $1.80 run beat the $104 one. My routing, and the setup.]]></description><link>https://www.productcompass.pm/p/ai-coding-bill-20-a-month</link><guid isPermaLink="false">https://www.productcompass.pm/p/ai-coding-bill-20-a-month</guid><dc:creator><![CDATA[Paweł Huryn]]></dc:creator><pubDate>Sun, 02 Aug 2026 12:24:55 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/92eb57cb-8784-407d-a300-dd1aabf4e188_1280x720.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em><span>Hey, Pawe&#322; here. Welcome to the </span>free<span> edition of The Product Compass Newsletter.</span></em></p><p><em>Every week, I share actionable tips, templates, resources, and insights for PMs.</em></p><p><em><span>This is the #1 AI PM newsletter for those who want to quickly learn by doing rather than listening or studying theory. No coding.</span><br><br><span>Here&#8217;s what you might have recently missed:</span></em></p><ul><li><p><em><a href="https://www.productcompass.pm/p/product-discovery-2026">What Is Product Discovery? The Ultimate Guide for PMs (2026 Edition)</a></em></p></li><li><p><em><a href="https://www.productcompass.pm/p/loop-engineering-for-pms">Agent Loops for PMs: 20+ You Can Run This Week</a></em></p></li><li><p><em><a href="https://www.productcompass.pm/p/claude-code-beginners-guide">Claude Code for PMs: The Beginner&#8217;s Guide</a></em></p></li><li><p><em><a href="https://www.productcompass.pm/p/claude-md-snippets">Three CLAUDE.md Blocks That Make Claude Get Smarter Every Session</a></em></p></li><li><p><em><a href="https://www.productcompass.pm/p/evaluating-ai-products-error-analysis">AI Evals: Error Analysis (everything a PM should know)</a></em></p></li></ul><p><em>Consider subscribing and upgrading your account for the full experience:</em></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><p><em>Note: I&#8217;m on vacation in Italy till 8/6, but in this post, I wanted to share the results of the experiments I keep running. This one can radically lower your AI bill.</em></p><div><hr></div><p>In April, I demonstrated <a href="https://www.productcompass.pm/p/stop-hitting-claude-code-limits">how I cut my Claude bill $1,389/mo &#8594; $200/mo</a> by adjusting the context window, delegating work to subagents, reading PDFs as text, and so on.<br><br>Still, $200 is a lot of money, depending on your situation. And despite some social media claims, the <strong>$20 Claude</strong> subscription <strong>was never enough</strong> for any real work.</p><p>The situation got worse recently. For new 1M models, Anthropic no longer supports <a href="https://www.productcompass.pm/i/195650302/2-context-bloat">disabling the 1M context window or overriding auto compact thresholds</a>. You will pay premium for Claude cache writes and reads in both Cowork and Claude Code, especially when <a href="https://www.productcompass.pm/p/loop-engineering-for-pms">running autonomous loops</a> (there is no human to hit <code>/compact</code>).</p><h3>What's just changed</h3><blockquote><p>On July 30, OpenAI <a href="https://x.com/OpenAI/status/2082878156483219672?s=20">reduced prices</a> for <strong>GPT-5.6 Luna by 80%</strong>. The same week, they <strong><a href="https://x.com/i/status/2082577277246972300">radically improved</a></strong> their models&#8217; performance and token efficiency. The reports said that Luna with max effort scores similarly to Opus 5 at a fraction of the cost.</p></blockquote><p>I decided to test it. The results are crazy, verified multiple times.</p><div><hr></div><h2>1. Bug Hunt Bench</h2><p>Here&#8217;s a benchmark I&#8217;ve been improving for several weeks, never published in this newsletter. Look at the blue Luna rows and their last column, cost:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!mnWH!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92be675c-8a6d-4a82-878b-6a32044c97fa_2400x2936.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!mnWH!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92be675c-8a6d-4a82-878b-6a32044c97fa_2400x2936.png 424w, https://substackcdn.com/image/fetch/$s_!mnWH!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92be675c-8a6d-4a82-878b-6a32044c97fa_2400x2936.png 848w, https://substackcdn.com/image/fetch/$s_!mnWH!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92be675c-8a6d-4a82-878b-6a32044c97fa_2400x2936.png 1272w, https://substackcdn.com/image/fetch/$s_!mnWH!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92be675c-8a6d-4a82-878b-6a32044c97fa_2400x2936.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!mnWH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92be675c-8a6d-4a82-878b-6a32044c97fa_2400x2936.png" width="1456" height="1781" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/92be675c-8a6d-4a82-878b-6a32044c97fa_2400x2936.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1781,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2271566,&quot;alt&quot;:&quot;Bug Hunt Bench V7: 10 frontier models compared on 105 hidden bugs across two real repos, showing bugs fixed, wall clock, and cost per run. GPT-5.6 Sol at max effort leads with 42 fixes at $69.61, GPT-5.6 Luna at max fixes 33 for $1.80, and Fable 5 at max fixes 29 for $104.49.&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://www.productcompass.pm/i/209370541?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92be675c-8a6d-4a82-878b-6a32044c97fa_2400x2936.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Bug Hunt Bench V7: 10 frontier models compared on 105 hidden bugs across two real repos, showing bugs fixed, wall clock, and cost per run. GPT-5.6 Sol at max effort leads with 42 fixes at $69.61, GPT-5.6 Luna at max fixes 33 for $1.80, and Fable 5 at max fixes 29 for $104.49." title="Bug Hunt Bench V7: 10 frontier models compared on 105 hidden bugs across two real repos, showing bugs fixed, wall clock, and cost per run. GPT-5.6 Sol at max effort leads with 42 fixes at $69.61, GPT-5.6 Luna at max fixes 33 for $1.80, and Fable 5 at max fixes 29 for $104.49." srcset="https://substackcdn.com/image/fetch/$s_!mnWH!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92be675c-8a6d-4a82-878b-6a32044c97fa_2400x2936.png 424w, https://substackcdn.com/image/fetch/$s_!mnWH!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92be675c-8a6d-4a82-878b-6a32044c97fa_2400x2936.png 848w, https://substackcdn.com/image/fetch/$s_!mnWH!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92be675c-8a6d-4a82-878b-6a32044c97fa_2400x2936.png 1272w, https://substackcdn.com/image/fetch/$s_!mnWH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92be675c-8a6d-4a82-878b-6a32044c97fa_2400x2936.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>In version 7, I ran 105 hidden bugs through 10 frontier models:</p><ul><li><p>GPT-5.6 Luna at max reasoning effort fixed 33 bugs.</p></li><li><p>Anthropic's Fable 5 fixed 29. </p></li><li><p><strong>Luna's run cost $1.80 at API rates. Fable's cost $104.</strong></p></li><li><p>The same Luna at high effort fixed 13. The effort is the whole difference.</p></li></ul><h3>What this means for you</h3><p>Luna is included in the <strong>$20 ChatGPT Plus</strong> plan. And subscriptions are heavily subsidized. In practice, you get at least <strong>$500 of API</strong> equivalent credits.</p><blockquote><p>For the first time, <strong>$20 a month is enough</strong> not just for learning but also for serious agentic work.</p></blockquote><h3>How much cheaper is it, really?</h3><p>Most of the gap comes straight from the rate card. Opus 5 and GPT-5.6 Luna are priced 20 to 25x apart on every token type:</p><ul><li><p><strong>Input:</strong> $5.00 vs $0.20 per million tokens</p></li><li><p><strong>Cached input:</strong> $0.50 vs $0.02</p></li><li><p><strong>Output:</strong> $25.00 vs $1.20</p></li></ul><p>In my tests the actual spread ran from <strong>20x to 90x, depending on the configuration and the session length</strong> (Anthropic&#8217;s 1M sessions make the situation worse). One thing I can say with confidence:</p><blockquote><p>You will get <strong>more real work</strong> out of the <strong>$20 OpenAI plan</strong> &amp; Luna max than out of the <strong>$200 Claude plan</strong> &amp; Opus high.</p></blockquote><h3>What about speed?</h3><p>As demonstrated by the benchmark, Luna at the max effort level is slower than Opus 5 at high. I suggest using:</p><ul><li><p><strong>Luna (max effort) for the most challenging tasks</strong>: planning, strategy, large implementations. Or for everything that can run async (nightly builds).</p></li></ul><ul><li><p><strong>Luna (high effort) for small, daily tasks</strong>: batch operations, bug fixing, small features, summaries. It&#8217;s still clearly better than Sonnet 5 at high effort, a very strong model.</p></li></ul><p>I measured this by asking the same easy questions about one of my solutions in two ways: </p><ul><li><p>a cold one-shot call, </p></li><li><p>and follow-up turns inside a live session (more realistic). </p></li></ul><p>Median time and median cost per question:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!N-B8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Face37308-a7ba-420f-9167-9b469c33ba90_2400x1646.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!N-B8!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Face37308-a7ba-420f-9167-9b469c33ba90_2400x1646.png 424w, https://substackcdn.com/image/fetch/$s_!N-B8!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Face37308-a7ba-420f-9167-9b469c33ba90_2400x1646.png 848w, https://substackcdn.com/image/fetch/$s_!N-B8!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Face37308-a7ba-420f-9167-9b469c33ba90_2400x1646.png 1272w, https://substackcdn.com/image/fetch/$s_!N-B8!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Face37308-a7ba-420f-9167-9b469c33ba90_2400x1646.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!N-B8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Face37308-a7ba-420f-9167-9b469c33ba90_2400x1646.png" width="2400" height="1646" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ace37308-a7ba-420f-9167-9b469c33ba90_2400x1646.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1646,&quot;width&quot;:2400,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1363199,&quot;alt&quot;:&quot;Median response time and cost per question, cold start versus in session. Cold start: Opus 5 high 8.1 seconds and 10.10 cents, Opus 5 max 8.6 seconds and 10.15 cents, GPT-5.6 Luna high 16.0 seconds and 0.11 cents, Luna max 22.6 seconds and 0.11 cents. In session: Opus 5 max 9.8 seconds and 2.79 cents, Opus 5 high 10.1 seconds and 2.45 cents, Luna high 15.6 seconds and 0.05 cents, Luna max 17.0 seconds and 0.06 cents.&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://www.productcompass.pm/i/209370541?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Face37308-a7ba-420f-9167-9b469c33ba90_2400x1646.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Median response time and cost per question, cold start versus in session. Cold start: Opus 5 high 8.1 seconds and 10.10 cents, Opus 5 max 8.6 seconds and 10.15 cents, GPT-5.6 Luna high 16.0 seconds and 0.11 cents, Luna max 22.6 seconds and 0.11 cents. In session: Opus 5 max 9.8 seconds and 2.79 cents, Opus 5 high 10.1 seconds and 2.45 cents, Luna high 15.6 seconds and 0.05 cents, Luna max 17.0 seconds and 0.06 cents." title="Median response time and cost per question, cold start versus in session. Cold start: Opus 5 high 8.1 seconds and 10.10 cents, Opus 5 max 8.6 seconds and 10.15 cents, GPT-5.6 Luna high 16.0 seconds and 0.11 cents, Luna max 22.6 seconds and 0.11 cents. In session: Opus 5 max 9.8 seconds and 2.79 cents, Opus 5 high 10.1 seconds and 2.45 cents, Luna high 15.6 seconds and 0.05 cents, Luna max 17.0 seconds and 0.06 cents." srcset="https://substackcdn.com/image/fetch/$s_!N-B8!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Face37308-a7ba-420f-9167-9b469c33ba90_2400x1646.png 424w, https://substackcdn.com/image/fetch/$s_!N-B8!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Face37308-a7ba-420f-9167-9b469c33ba90_2400x1646.png 848w, https://substackcdn.com/image/fetch/$s_!N-B8!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Face37308-a7ba-420f-9167-9b469c33ba90_2400x1646.png 1272w, https://substackcdn.com/image/fetch/$s_!N-B8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Face37308-a7ba-420f-9167-9b469c33ba90_2400x1646.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Cold start is a fresh one-shot call. In session is turns 2 to 6 of one conversation, three sessions per configuration, interleaved.</figcaption></figure></div><p>Both get cheaper once the session is warm. Opus 5 stops paying to re-upload your instructions and drops about 4x. Luna roughly halves, because more of its context is already cached. That closes the gap from about 90x to about 40x on these small questions.</p><p>One more setting: fast mode. It bills at 2x on the API, 2.5x in ChatGPT credits, and is supposed to run 1.5x faster. In every test I ran, it made no measurable difference to Luna.</p><h3>Does it really work with a $20/mo plan?</h3><p>Before publishing this, I created the second subscription and verified that everything I described is available on the Plus plan:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!9upE!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d4990ac-04fe-4ca4-8266-84dfa7b04744_2322x1500.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!9upE!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d4990ac-04fe-4ca4-8266-84dfa7b04744_2322x1500.png 424w, https://substackcdn.com/image/fetch/$s_!9upE!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d4990ac-04fe-4ca4-8266-84dfa7b04744_2322x1500.png 848w, https://substackcdn.com/image/fetch/$s_!9upE!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d4990ac-04fe-4ca4-8266-84dfa7b04744_2322x1500.png 1272w, https://substackcdn.com/image/fetch/$s_!9upE!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d4990ac-04fe-4ca4-8266-84dfa7b04744_2322x1500.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!9upE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d4990ac-04fe-4ca4-8266-84dfa7b04744_2322x1500.png" width="1456" height="941" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7d4990ac-04fe-4ca4-8266-84dfa7b04744_2322x1500.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:941,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:230948,&quot;alt&quot;:&quot;ChatGPT desktop app, Usage and billing settings. Your plan reads Plus plan, $20 per month.&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://www.productcompass.pm/i/209370541?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d4990ac-04fe-4ca4-8266-84dfa7b04744_2322x1500.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="ChatGPT desktop app, Usage and billing settings. Your plan reads Plus plan, $20 per month." title="ChatGPT desktop app, Usage and billing settings. Your plan reads Plus plan, $20 per month." srcset="https://substackcdn.com/image/fetch/$s_!9upE!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d4990ac-04fe-4ca4-8266-84dfa7b04744_2322x1500.png 424w, https://substackcdn.com/image/fetch/$s_!9upE!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d4990ac-04fe-4ca4-8266-84dfa7b04744_2322x1500.png 848w, https://substackcdn.com/image/fetch/$s_!9upE!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d4990ac-04fe-4ca4-8266-84dfa7b04744_2322x1500.png 1272w, https://substackcdn.com/image/fetch/$s_!9upE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d4990ac-04fe-4ca4-8266-84dfa7b04744_2322x1500.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Every run, the method, and the raw logs are public: <a href="https://github.com/phuryn/experiments/tree/main/bug-hunt-bench">github.com/phuryn/experiments</a>. The answer keys stay hidden so the benchmark keeps working.</p><div><hr></div><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/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">Consider subscribing and upgrading your account to support my work</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><hr></div><h2>2. How to Start With ChatGPT Desktop App</h2><p>Unlike Cowork, the ChatGPT app is a real agentic environment. It supports autonomous loops and graphs (<code>/goal</code>), agentic coding, project-level skills and MCP, and manual compaction. All within a single interface, with no IDE or CLI.</p><h3>Step 1: Install the ChatGPT desktop app</h3><p>The Codex app is now called ChatGPT.<br>You can download it here: <a href="https://chatgpt.com/download/">https://chatgpt.com/download/</a></p><p>When installing, you can import your existing settings (projects, skills, etc.) from Claude. Here, I skip that step.</p><h3>Step 2: Sign in and open your project folder</h3><p>Before using the ChatGPT desktop app, sign in or create a new account. The &#8220;Plus&#8221; subscription costs $20/mo and is enough to start.</p><p>Click &#8220;Projects&#8221; and open an existing folder or create a new one:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!aApF!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F34e82657-e873-407a-9e4b-beb5f1b7410b_2571x1500.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!aApF!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F34e82657-e873-407a-9e4b-beb5f1b7410b_2571x1500.png 424w, https://substackcdn.com/image/fetch/$s_!aApF!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F34e82657-e873-407a-9e4b-beb5f1b7410b_2571x1500.png 848w, https://substackcdn.com/image/fetch/$s_!aApF!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F34e82657-e873-407a-9e4b-beb5f1b7410b_2571x1500.png 1272w, https://substackcdn.com/image/fetch/$s_!aApF!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F34e82657-e873-407a-9e4b-beb5f1b7410b_2571x1500.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!aApF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F34e82657-e873-407a-9e4b-beb5f1b7410b_2571x1500.png" width="1456" height="849" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/34e82657-e873-407a-9e4b-beb5f1b7410b_2571x1500.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:849,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:254341,&quot;alt&quot;:&quot;ChatGPT desktop app, Projects panel, opening an existing folder or creating a new one.&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://www.productcompass.pm/i/209370541?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F34e82657-e873-407a-9e4b-beb5f1b7410b_2571x1500.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="ChatGPT desktop app, Projects panel, opening an existing folder or creating a new one." title="ChatGPT desktop app, Projects panel, opening an existing folder or creating a new one." srcset="https://substackcdn.com/image/fetch/$s_!aApF!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F34e82657-e873-407a-9e4b-beb5f1b7410b_2571x1500.png 424w, https://substackcdn.com/image/fetch/$s_!aApF!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F34e82657-e873-407a-9e4b-beb5f1b7410b_2571x1500.png 848w, https://substackcdn.com/image/fetch/$s_!aApF!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F34e82657-e873-407a-9e4b-beb5f1b7410b_2571x1500.png 1272w, https://substackcdn.com/image/fetch/$s_!aApF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F34e82657-e873-407a-9e4b-beb5f1b7410b_2571x1500.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>In the top left corner, you will see two modes:</p><ul><li><p><strong>ChatGPT:</strong> documents, decks, research. Best for knowledge work.</p></li><li><p><strong>Codex:</strong> the coding agent. A more advanced view, best if you&#8217;re prototyping.</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!AMds!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faed0162c-dddc-487a-97c2-36871c818ffc_2397x715.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!AMds!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faed0162c-dddc-487a-97c2-36871c818ffc_2397x715.png 424w, https://substackcdn.com/image/fetch/$s_!AMds!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faed0162c-dddc-487a-97c2-36871c818ffc_2397x715.png 848w, https://substackcdn.com/image/fetch/$s_!AMds!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faed0162c-dddc-487a-97c2-36871c818ffc_2397x715.png 1272w, https://substackcdn.com/image/fetch/$s_!AMds!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faed0162c-dddc-487a-97c2-36871c818ffc_2397x715.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!AMds!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faed0162c-dddc-487a-97c2-36871c818ffc_2397x715.png" width="1456" height="434" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/aed0162c-dddc-487a-97c2-36871c818ffc_2397x715.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:434,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:96488,&quot;alt&quot;:&quot;ChatGPT desktop app, the ChatGPT and Codex mode switcher in the top left corner.&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://www.productcompass.pm/i/209370541?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faed0162c-dddc-487a-97c2-36871c818ffc_2397x715.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="ChatGPT desktop app, the ChatGPT and Codex mode switcher in the top left corner." title="ChatGPT desktop app, the ChatGPT and Codex mode switcher in the top left corner." srcset="https://substackcdn.com/image/fetch/$s_!AMds!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faed0162c-dddc-487a-97c2-36871c818ffc_2397x715.png 424w, https://substackcdn.com/image/fetch/$s_!AMds!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faed0162c-dddc-487a-97c2-36871c818ffc_2397x715.png 848w, https://substackcdn.com/image/fetch/$s_!AMds!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faed0162c-dddc-487a-97c2-36871c818ffc_2397x715.png 1272w, https://substackcdn.com/image/fetch/$s_!AMds!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faed0162c-dddc-487a-97c2-36871c818ffc_2397x715.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>In the Codex mode, you will see:</p><ul><li><p>File tree on the right (&#8220;Files&#8221;)</p></li><li><p>Visual diffs in the same panel (&#8220;Review&#8221;)</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Dz4d!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F906e042d-6e5c-4adb-b819-ffe9c7e779cf_2517x1500.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Dz4d!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F906e042d-6e5c-4adb-b819-ffe9c7e779cf_2517x1500.png 424w, https://substackcdn.com/image/fetch/$s_!Dz4d!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F906e042d-6e5c-4adb-b819-ffe9c7e779cf_2517x1500.png 848w, https://substackcdn.com/image/fetch/$s_!Dz4d!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F906e042d-6e5c-4adb-b819-ffe9c7e779cf_2517x1500.png 1272w, https://substackcdn.com/image/fetch/$s_!Dz4d!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F906e042d-6e5c-4adb-b819-ffe9c7e779cf_2517x1500.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Dz4d!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F906e042d-6e5c-4adb-b819-ffe9c7e779cf_2517x1500.png" width="1456" height="868" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/906e042d-6e5c-4adb-b819-ffe9c7e779cf_2517x1500.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:868,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:290421,&quot;alt&quot;:&quot;ChatGPT desktop app, file tree and visual diffs&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://www.productcompass.pm/i/209370541?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F906e042d-6e5c-4adb-b819-ffe9c7e779cf_2517x1500.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="ChatGPT desktop app, file tree and visual diffs" title="ChatGPT desktop app, file tree and visual diffs" srcset="https://substackcdn.com/image/fetch/$s_!Dz4d!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F906e042d-6e5c-4adb-b819-ffe9c7e779cf_2517x1500.png 424w, https://substackcdn.com/image/fetch/$s_!Dz4d!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F906e042d-6e5c-4adb-b819-ffe9c7e779cf_2517x1500.png 848w, https://substackcdn.com/image/fetch/$s_!Dz4d!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F906e042d-6e5c-4adb-b819-ffe9c7e779cf_2517x1500.png 1272w, https://substackcdn.com/image/fetch/$s_!Dz4d!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F906e042d-6e5c-4adb-b819-ffe9c7e779cf_2517x1500.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>For example, here&#8217;s how you can browse files and documents without terminal or IDE:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!mUBL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3bbdbd3-df48-4525-8856-b403b3d5ffce_3174x1500.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!mUBL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3bbdbd3-df48-4525-8856-b403b3d5ffce_3174x1500.png 424w, https://substackcdn.com/image/fetch/$s_!mUBL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3bbdbd3-df48-4525-8856-b403b3d5ffce_3174x1500.png 848w, https://substackcdn.com/image/fetch/$s_!mUBL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3bbdbd3-df48-4525-8856-b403b3d5ffce_3174x1500.png 1272w, https://substackcdn.com/image/fetch/$s_!mUBL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3bbdbd3-df48-4525-8856-b403b3d5ffce_3174x1500.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!mUBL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3bbdbd3-df48-4525-8856-b403b3d5ffce_3174x1500.png" width="1456" height="688" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f3bbdbd3-df48-4525-8856-b403b3d5ffce_3174x1500.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:688,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:410004,&quot;alt&quot;:&quot;ChatGPT desktop app, browse files and documents&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://www.productcompass.pm/i/209370541?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3bbdbd3-df48-4525-8856-b403b3d5ffce_3174x1500.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="ChatGPT desktop app, browse files and documents" title="ChatGPT desktop app, browse files and documents" srcset="https://substackcdn.com/image/fetch/$s_!mUBL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3bbdbd3-df48-4525-8856-b403b3d5ffce_3174x1500.png 424w, https://substackcdn.com/image/fetch/$s_!mUBL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3bbdbd3-df48-4525-8856-b403b3d5ffce_3174x1500.png 848w, https://substackcdn.com/image/fetch/$s_!mUBL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3bbdbd3-df48-4525-8856-b403b3d5ffce_3174x1500.png 1272w, https://substackcdn.com/image/fetch/$s_!mUBL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3bbdbd3-df48-4525-8856-b403b3d5ffce_3174x1500.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h3>Step 3: If you also use Claude</h3><ul><li><p>Create AGENTS.md at the repo root</p></li><li><p>Copy and paste lines pointing to CLAUDE.md</p></li></ul><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;markdown&quot;,&quot;nodeId&quot;:&quot;93062cb3-e4ee-4143-ac53-79d50e88aa94&quot;}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-markdown">This project's agent and contributor guidance lives in **[CLAUDE.md](CLAUDE.md)**.

Read it before making changes. Do not add rules here &#8212; keep all guidance in CLAUDE.md
so there is a single source of truth.</code></pre></div><p>You can see an example in Step 2.</p><p>Both agents now use one source of truth. The longer version, including how I run the two side by side, is here: <a href="https://www.productcompass.pm/p/codex-setup-for-pms">How to Set Up Codex as a PM and Run It Next to Claude</a>.</p><h3>Step 4: Set reasoning effort to max</h3><p>It's off by default. Luna at max is a different model than Luna at high. Here&#8217;s how:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!wr3G!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89ae798b-c6c7-499b-bde0-56851d200919_2411x1500.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!wr3G!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89ae798b-c6c7-499b-bde0-56851d200919_2411x1500.png 424w, https://substackcdn.com/image/fetch/$s_!wr3G!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89ae798b-c6c7-499b-bde0-56851d200919_2411x1500.png 848w, https://substackcdn.com/image/fetch/$s_!wr3G!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89ae798b-c6c7-499b-bde0-56851d200919_2411x1500.png 1272w, https://substackcdn.com/image/fetch/$s_!wr3G!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89ae798b-c6c7-499b-bde0-56851d200919_2411x1500.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!wr3G!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89ae798b-c6c7-499b-bde0-56851d200919_2411x1500.png" width="1456" height="906" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/89ae798b-c6c7-499b-bde0-56851d200919_2411x1500.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:906,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:281056,&quot;alt&quot;:&quot;ChatGPT app, Luna, enable max effort, step 1&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://www.productcompass.pm/i/209370541?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89ae798b-c6c7-499b-bde0-56851d200919_2411x1500.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="ChatGPT app, Luna, enable max effort, step 1" title="ChatGPT app, Luna, enable max effort, step 1" srcset="https://substackcdn.com/image/fetch/$s_!wr3G!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89ae798b-c6c7-499b-bde0-56851d200919_2411x1500.png 424w, https://substackcdn.com/image/fetch/$s_!wr3G!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89ae798b-c6c7-499b-bde0-56851d200919_2411x1500.png 848w, https://substackcdn.com/image/fetch/$s_!wr3G!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89ae798b-c6c7-499b-bde0-56851d200919_2411x1500.png 1272w, https://substackcdn.com/image/fetch/$s_!wr3G!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89ae798b-c6c7-499b-bde0-56851d200919_2411x1500.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!G-2p!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a40b8cc-b974-43dd-9d9f-c12c93a00465_2411x1621.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!G-2p!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a40b8cc-b974-43dd-9d9f-c12c93a00465_2411x1621.png 424w, https://substackcdn.com/image/fetch/$s_!G-2p!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a40b8cc-b974-43dd-9d9f-c12c93a00465_2411x1621.png 848w, https://substackcdn.com/image/fetch/$s_!G-2p!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a40b8cc-b974-43dd-9d9f-c12c93a00465_2411x1621.png 1272w, https://substackcdn.com/image/fetch/$s_!G-2p!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a40b8cc-b974-43dd-9d9f-c12c93a00465_2411x1621.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!G-2p!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a40b8cc-b974-43dd-9d9f-c12c93a00465_2411x1621.png" width="1456" height="979" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3a40b8cc-b974-43dd-9d9f-c12c93a00465_2411x1621.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:979,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:304577,&quot;alt&quot;:&quot;ChatGPT app, Luna, enable max effort, step 2&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://www.productcompass.pm/i/209370541?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a40b8cc-b974-43dd-9d9f-c12c93a00465_2411x1621.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="ChatGPT app, Luna, enable max effort, step 2" title="ChatGPT app, Luna, enable max effort, step 2" srcset="https://substackcdn.com/image/fetch/$s_!G-2p!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a40b8cc-b974-43dd-9d9f-c12c93a00465_2411x1621.png 424w, https://substackcdn.com/image/fetch/$s_!G-2p!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a40b8cc-b974-43dd-9d9f-c12c93a00465_2411x1621.png 848w, https://substackcdn.com/image/fetch/$s_!G-2p!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a40b8cc-b974-43dd-9d9f-c12c93a00465_2411x1621.png 1272w, https://substackcdn.com/image/fetch/$s_!G-2p!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a40b8cc-b974-43dd-9d9f-c12c93a00465_2411x1621.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!1dA1!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc58e9899-9fde-4b28-8318-dbce432f716c_2411x1599.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!1dA1!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc58e9899-9fde-4b28-8318-dbce432f716c_2411x1599.png 424w, https://substackcdn.com/image/fetch/$s_!1dA1!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc58e9899-9fde-4b28-8318-dbce432f716c_2411x1599.png 848w, https://substackcdn.com/image/fetch/$s_!1dA1!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc58e9899-9fde-4b28-8318-dbce432f716c_2411x1599.png 1272w, https://substackcdn.com/image/fetch/$s_!1dA1!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc58e9899-9fde-4b28-8318-dbce432f716c_2411x1599.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!1dA1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc58e9899-9fde-4b28-8318-dbce432f716c_2411x1599.png" width="1456" height="966" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c58e9899-9fde-4b28-8318-dbce432f716c_2411x1599.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:966,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:279781,&quot;alt&quot;:&quot;ChatGPT app, Luna, select max effort&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://www.productcompass.pm/i/209370541?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc58e9899-9fde-4b28-8318-dbce432f716c_2411x1599.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="ChatGPT app, Luna, select max effort" title="ChatGPT app, Luna, select max effort" srcset="https://substackcdn.com/image/fetch/$s_!1dA1!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc58e9899-9fde-4b28-8318-dbce432f716c_2411x1599.png 424w, https://substackcdn.com/image/fetch/$s_!1dA1!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc58e9899-9fde-4b28-8318-dbce432f716c_2411x1599.png 848w, https://substackcdn.com/image/fetch/$s_!1dA1!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc58e9899-9fde-4b28-8318-dbce432f716c_2411x1599.png 1272w, https://substackcdn.com/image/fetch/$s_!1dA1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc58e9899-9fde-4b28-8318-dbce432f716c_2411x1599.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div><hr></div><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/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">To access all articles and templates and to support my work, consider becoming a paid subscriber. You&#8217;ll save much more by following the advice I share with paid subscribers.</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><hr></div><h2>3. My Model Routing</h2><blockquote><p>Using Luna (max) for all the hardest tasks and Luna (high) for everything else <strong>maximizes value / cost.</strong> It&#8217;s a sweet &#8220;Pareto&#8221; spot.</p></blockquote><p>At the same time, I keep multiple subscriptions, because I have to test things and want the best model for each job.</p><p>Here&#8217;s my routing table for daily work:</p><ul><li><p><strong>Judgment, strategy, complex cases:</strong> Fable 5</p></li><li><p><strong>Frontend:</strong> Opus 5 (Kimi K3 is reportedly better, but it&#8217;s too slow for me)</p></li><li><p><strong>Writing:</strong> Opus 5</p></li><li><p><strong>Real-time information:</strong> Grok 4.5 (it has internal access to X API)</p></li><li><p><strong>Research:</strong> I delegate to Grok 4.5 and Opus in parallel rather than using Perplexity</p></li><li><p><strong>Coding, debugging:</strong> Sol at high, Luna at max effort, or Grok 4.5. Often working together as peers.</p></li></ul><p>The most expensive model I use (Fable 5) never touches code.</p><p>You can learn more about how I run other models next to Claude from <a href="https://www.productcompass.pm/p/codex-setup-for-pms">How to Set Up Codex as a PM and Run It Next to Claude</a>.</p><div><hr></div><h2>4. Unsolved Bugs from Bug Hunt Bench</h2><p>In my benchmark, 53 of the 105 bugs survived every model and every run. The natural question is: <strong>can we trust AI with quality?</strong></p><p>Those were not random bugs, but real bugs frontier models missed between January and July 2026 and their synthetic analogs. Models failing at them was the default expectation.</p><p>This week, <a href="https://blog.google/security/chrome-stronger-with-every-update/">Google published its own numbers</a>. In Chrome 149 and 150 (a month) they fixed 1,072 security bugs, more than in the previous 23 releases combined (2 years):</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!-e1c!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fd0c496-69e2-411d-a743-f94c2d3f216c_1600x900.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!-e1c!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fd0c496-69e2-411d-a743-f94c2d3f216c_1600x900.jpeg 424w, https://substackcdn.com/image/fetch/$s_!-e1c!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fd0c496-69e2-411d-a743-f94c2d3f216c_1600x900.jpeg 848w, https://substackcdn.com/image/fetch/$s_!-e1c!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fd0c496-69e2-411d-a743-f94c2d3f216c_1600x900.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!-e1c!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fd0c496-69e2-411d-a743-f94c2d3f216c_1600x900.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!-e1c!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fd0c496-69e2-411d-a743-f94c2d3f216c_1600x900.jpeg" width="1600" height="900" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4fd0c496-69e2-411d-a743-f94c2d3f216c_1600x900.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:900,&quot;width&quot;:1600,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:66598,&quot;alt&quot;:&quot;Chart from Google titled Bug fixes by milestone, showing Chrome security bugs fixed per release from M126 to M150. Counts sit near 20 to 50 per release until M146, then rise sharply to roughly 355 at M148 and about 570 at M149, with the internally found line tracking the same spike.&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.productcompass.pm/i/209370541?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fd0c496-69e2-411d-a743-f94c2d3f216c_1600x900.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Chart from Google titled Bug fixes by milestone, showing Chrome security bugs fixed per release from M126 to M150. Counts sit near 20 to 50 per release until M146, then rise sharply to roughly 355 at M148 and about 570 at M149, with the internally found line tracking the same spike." title="Chart from Google titled Bug fixes by milestone, showing Chrome security bugs fixed per release from M126 to M150. Counts sit near 20 to 50 per release until M146, then rise sharply to roughly 355 at M148 and about 570 at M149, with the internally found line tracking the same spike." srcset="https://substackcdn.com/image/fetch/$s_!-e1c!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fd0c496-69e2-411d-a743-f94c2d3f216c_1600x900.jpeg 424w, https://substackcdn.com/image/fetch/$s_!-e1c!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fd0c496-69e2-411d-a743-f94c2d3f216c_1600x900.jpeg 848w, https://substackcdn.com/image/fetch/$s_!-e1c!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fd0c496-69e2-411d-a743-f94c2d3f216c_1600x900.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!-e1c!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fd0c496-69e2-411d-a743-f94c2d3f216c_1600x900.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Chrome security bugs fixed per release. The spike starts at M146. Source: Google.</figcaption></figure></div><p>One of them was a sandbox escape that let a compromised renderer trick the browser into reading local files. It had been sitting in the codebase for more than 13 years, under one of the best-funded bug bounty programs in the industry. An agent found it in early 2026, on the first version of their harness.</p><blockquote><p>No solution guarantees eliminating all bugs, but models are much more effective at finding them than people. In my opinion, <strong>human code review no longer makes sense</strong>. </p></blockquote><p>What still does make sense is humans testing the solution. My Grok Build extension (<a href="https://open-vsx.org/extension/PawelHuryn/grok-vscode-phuryn">link 1</a>, <a href="https://marketplace.visualstudio.com/items?itemName=PawelHuryn.grok-vscode-phuryn">link 2</a>) has 1,600+ unit tests, all written by AI, with AI testing the app end-to-end using the browser. Still, many visual defects before each release are found by me testing with my eyes. </p><p>Not a single code review. See how <a href="https://github.com/phuryn/grok-build-vscode/issues">clean the issue registry</a> is despite a few thousands of agentic sessions a day.</p><p>You still review the solution. But what you review moves up, to the artifacts: what changed, why, and whether it should ship. I wrote about that a few weeks ago in <a href="https://www.productcompass.pm/p/agentic-engineering-for-pms">I Don't Review the Code. I Review the Artifacts.</a></p><div><hr></div><h2>5. Weekly Virtual Events for Product Managers</h2><p>You can learn much more about Claude and Codex from our event series. We meet every week on Thursday (6 PM CET, 9 AM PT). Recent recordings with templates and additional resources are available in <a href="https://go.productcompass.pm/events">our events archive</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_!6pGn!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3566add-cd9f-4f62-bfda-4a88d5d371c8_2185x992.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!6pGn!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3566add-cd9f-4f62-bfda-4a88d5d371c8_2185x992.png 424w, https://substackcdn.com/image/fetch/$s_!6pGn!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3566add-cd9f-4f62-bfda-4a88d5d371c8_2185x992.png 848w, https://substackcdn.com/image/fetch/$s_!6pGn!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3566add-cd9f-4f62-bfda-4a88d5d371c8_2185x992.png 1272w, https://substackcdn.com/image/fetch/$s_!6pGn!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3566add-cd9f-4f62-bfda-4a88d5d371c8_2185x992.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!6pGn!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3566add-cd9f-4f62-bfda-4a88d5d371c8_2185x992.png" width="1456" height="661" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d3566add-cd9f-4f62-bfda-4a88d5d371c8_2185x992.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:661,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:522876,&quot;alt&quot;:&quot;Weekly Virtual Events for 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://www.productcompass.pm/i/209370541?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3566add-cd9f-4f62-bfda-4a88d5d371c8_2185x992.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Weekly Virtual Events for Product Managers" title="Weekly Virtual Events for Product Managers" srcset="https://substackcdn.com/image/fetch/$s_!6pGn!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3566add-cd9f-4f62-bfda-4a88d5d371c8_2185x992.png 424w, https://substackcdn.com/image/fetch/$s_!6pGn!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3566add-cd9f-4f62-bfda-4a88d5d371c8_2185x992.png 848w, https://substackcdn.com/image/fetch/$s_!6pGn!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3566add-cd9f-4f62-bfda-4a88d5d371c8_2185x992.png 1272w, https://substackcdn.com/image/fetch/$s_!6pGn!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3566add-cd9f-4f62-bfda-4a88d5d371c8_2185x992.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>All sessions are available to paid subscribers.</p><p>Coming next:</p><ul><li><p>AI Prototyping for PMs (August 6)</p></li><li><p>AI Evals for PMs (August 13)</p></li><li><p>Agentic Engineering for PMs (August 20)</p></li><li><p>Production Hardening with Claude (August 27)</p></li></ul><p>Consider subscribing and upgrading your account to get full access:</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><p>As a paid subscriber, you can sync your calendar by visiting <a href="https://go.productcompass.pm/premium">https://go.productcompass.pm/premium</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_!jrm-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08dc1940-dbcf-459b-8127-52e2b3907829_2202x875.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jrm-!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08dc1940-dbcf-459b-8127-52e2b3907829_2202x875.png 424w, https://substackcdn.com/image/fetch/$s_!jrm-!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08dc1940-dbcf-459b-8127-52e2b3907829_2202x875.png 848w, https://substackcdn.com/image/fetch/$s_!jrm-!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08dc1940-dbcf-459b-8127-52e2b3907829_2202x875.png 1272w, https://substackcdn.com/image/fetch/$s_!jrm-!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08dc1940-dbcf-459b-8127-52e2b3907829_2202x875.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jrm-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08dc1940-dbcf-459b-8127-52e2b3907829_2202x875.png" width="1456" height="579" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/08dc1940-dbcf-459b-8127-52e2b3907829_2202x875.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:579,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:256830,&quot;alt&quot;:&quot;As a paid subscriber, you can sync your calendar by visiting https://go.productcompass.pm/premium &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://www.productcompass.pm/i/209370541?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08dc1940-dbcf-459b-8127-52e2b3907829_2202x875.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="As a paid subscriber, you can sync your calendar by visiting https://go.productcompass.pm/premium " title="As a paid subscriber, you can sync your calendar by visiting https://go.productcompass.pm/premium " srcset="https://substackcdn.com/image/fetch/$s_!jrm-!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08dc1940-dbcf-459b-8127-52e2b3907829_2202x875.png 424w, https://substackcdn.com/image/fetch/$s_!jrm-!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08dc1940-dbcf-459b-8127-52e2b3907829_2202x875.png 848w, https://substackcdn.com/image/fetch/$s_!jrm-!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08dc1940-dbcf-459b-8127-52e2b3907829_2202x875.png 1272w, https://substackcdn.com/image/fetch/$s_!jrm-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08dc1940-dbcf-459b-8127-52e2b3907829_2202x875.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div><hr></div><h2>Thanks for Reading The Product Compass</h2><p>It's amazing to learn and grow together.</p><p>Have a great Sunday and an amazing week ahead, <br>Pawe&#322;</p><div><hr></div><h2>Resources</h2><ul><li><p><em><a href="https://github.com/phuryn/experiments/tree/main/bug-hunt-bench">Bug Hunt Bench: every run, script, and raw log</a> (answer keys withheld, so the benchmark stays reusable)</em></p></li><li><p><em><a href="https://www.productcompass.pm/p/codex-setup-for-pms">How to Set Up Codex as a PM and Run It Next to Claude</a></em></p></li><li><p><em><a href="https://www.productcompass.pm/p/loop-engineering-for-pms">Agent Loops for PMs: 20+ You Can Run This Week</a></em></p></li><li><p><em><a href="https://www.productcompass.pm/p/stop-hitting-claude-code-limits">How I cut my Claude bill $1,389/mo to $200/mo</a></em></p></li></ul>]]></content:encoded></item><item><title><![CDATA[The Ultimate AI PM Learning Roadmap 2026]]></title><description><![CDATA[Every skill, tool, and guide to become an AI Product Manager in 2026, built around one question: does the agent run on your work, or inside your product?]]></description><link>https://www.productcompass.pm/p/ai-product-manager-roadmap-2026</link><guid isPermaLink="false">https://www.productcompass.pm/p/ai-product-manager-roadmap-2026</guid><dc:creator><![CDATA[Paweł Huryn]]></dc:creator><pubDate>Sun, 05 Jul 2026 18:37:53 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!PEiz!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6f885c0a-b3db-43e8-a725-c6a42bbb7ba2_1200x2225.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Someone recently asked me: </p><p>Did Claude replace n8n? Should you drop one and learn the other?</p><p>I get why.</p><p>For more than a year, when I wrote about building AI agents, I wrote about n8n. Then I started writing about Claude Code, Cowork, and Codex.</p><p>But the answer is no.</p><p>That is the whole point of this roadmap.</p><p>You learn the foundations once. Then one question splits the rest:</p><blockquote><p><strong>Does the agent run on your work, or inside your product?</strong></p></blockquote><p>Some agents run in your workspace, on your own work: Claude Code, Cowork, Codex. Others are embedded inside a product or a business process, running on their own for your users or your team: n8n, the Agent SDK, managed platforms.</p><p>So it&#8217;s not n8n versus Claude Code.</p><p>It&#8217;s workspace agents and product agents. You need both, and you use the first to build the second.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!PEiz!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6f885c0a-b3db-43e8-a725-c6a42bbb7ba2_1200x2225.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!PEiz!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6f885c0a-b3db-43e8-a725-c6a42bbb7ba2_1200x2225.png 424w, https://substackcdn.com/image/fetch/$s_!PEiz!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6f885c0a-b3db-43e8-a725-c6a42bbb7ba2_1200x2225.png 848w, https://substackcdn.com/image/fetch/$s_!PEiz!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6f885c0a-b3db-43e8-a725-c6a42bbb7ba2_1200x2225.png 1272w, https://substackcdn.com/image/fetch/$s_!PEiz!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6f885c0a-b3db-43e8-a725-c6a42bbb7ba2_1200x2225.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!PEiz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6f885c0a-b3db-43e8-a725-c6a42bbb7ba2_1200x2225.png" width="1200" height="2225" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6f885c0a-b3db-43e8-a725-c6a42bbb7ba2_1200x2225.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:2225,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:557279,&quot;alt&quot;:&quot;AI Product Manager Learning Roadmap 2026&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://www.productcompass.pm/i/205281041?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6f885c0a-b3db-43e8-a725-c6a42bbb7ba2_1200x2225.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="AI Product Manager Learning Roadmap 2026" title="AI Product Manager Learning Roadmap 2026" srcset="https://substackcdn.com/image/fetch/$s_!PEiz!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6f885c0a-b3db-43e8-a725-c6a42bbb7ba2_1200x2225.png 424w, https://substackcdn.com/image/fetch/$s_!PEiz!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6f885c0a-b3db-43e8-a725-c6a42bbb7ba2_1200x2225.png 848w, https://substackcdn.com/image/fetch/$s_!PEiz!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6f885c0a-b3db-43e8-a725-c6a42bbb7ba2_1200x2225.png 1272w, https://substackcdn.com/image/fetch/$s_!PEiz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6f885c0a-b3db-43e8-a725-c6a42bbb7ba2_1200x2225.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Here is the path:</p><ul><li><p>The foundations every AI PM needs, tool-agnostic, learned once</p></li><li><p>How you work with agents: the workspace agents you do everything with, and the product agents you build using them</p></li><li><p>How to make production agents reliable once they run without you</p></li><li><p>Where AI product strategy fits on top</p></li><li><p>The exact programs and live sessions that take you deeper on each part</p></li></ul><div class="callout-block" data-callout="true"><p>Models change every month. The skills below don&#8217;t.</p><p>That&#8217;s why this roadmap is built around what you actually do, not whichever tool shipped last week.</p></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h1><strong>Part 1. Foundations (Learn Once, Before the Split)</strong></h1><p>Concepts, communication, and knowledge apply the same way whether the agent runs on your work or inside your product. We learn them once here, and everything after gets easier.</p><h3>1. The Role of an AI PM</h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!VGYn!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdabd3ca7-ff86-4e9e-b87b-7ae12b9372e7_1070x613.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!VGYn!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdabd3ca7-ff86-4e9e-b87b-7ae12b9372e7_1070x613.png 424w, https://substackcdn.com/image/fetch/$s_!VGYn!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdabd3ca7-ff86-4e9e-b87b-7ae12b9372e7_1070x613.png 848w, https://substackcdn.com/image/fetch/$s_!VGYn!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdabd3ca7-ff86-4e9e-b87b-7ae12b9372e7_1070x613.png 1272w, https://substackcdn.com/image/fetch/$s_!VGYn!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdabd3ca7-ff86-4e9e-b87b-7ae12b9372e7_1070x613.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!VGYn!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdabd3ca7-ff86-4e9e-b87b-7ae12b9372e7_1070x613.png" width="1070" height="613" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/dabd3ca7-ff86-4e9e-b87b-7ae12b9372e7_1070x613.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:613,&quot;width&quot;:1070,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:141791,&quot;alt&quot;:&quot;Continuous Discovery and Continuous Delivery&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://www.productcompass.pm/i/205281041?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdabd3ca7-ff86-4e9e-b87b-7ae12b9372e7_1070x613.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Continuous Discovery and Continuous Delivery" title="Continuous Discovery and Continuous Delivery" srcset="https://substackcdn.com/image/fetch/$s_!VGYn!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdabd3ca7-ff86-4e9e-b87b-7ae12b9372e7_1070x613.png 424w, https://substackcdn.com/image/fetch/$s_!VGYn!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdabd3ca7-ff86-4e9e-b87b-7ae12b9372e7_1070x613.png 848w, https://substackcdn.com/image/fetch/$s_!VGYn!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdabd3ca7-ff86-4e9e-b87b-7ae12b9372e7_1070x613.png 1272w, https://substackcdn.com/image/fetch/$s_!VGYn!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdabd3ca7-ff86-4e9e-b87b-7ae12b9372e7_1070x613.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Start with the job. Before any tool or technique, get clear on what the role actually is and where it differs from classic PM. The mindset shift underneath everything: <strong>models and tools are easy to get excited about, reliable systems that create value are the actual job.</strong></p><ul><li><p><a href="https://www.productcompass.pm/p/what-is-an-ai-product-manager">WTF is an AI Product Manager</a>: the role, and where AI PM differs from PM</p></li><li><p><a href="https://www.productcompass.pm/p/what-exactly-is-product-discovery">What Is Product Discovery</a>: the discovery foundations, still the PM core</p></li><li><p><a href="https://www.productcompass.pm/p/ai-2026-designing-ai-systems">Stop Watching AI Models. Start Designing AI Systems</a>: the models-to-systems shift, in full</p></li></ul><h3>2. Basic Concepts</h3><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!l-Ew!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14f96fb0-a9a7-47aa-801d-45aaee6a15b1_2000x450.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!l-Ew!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14f96fb0-a9a7-47aa-801d-45aaee6a15b1_2000x450.png 424w, https://substackcdn.com/image/fetch/$s_!l-Ew!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14f96fb0-a9a7-47aa-801d-45aaee6a15b1_2000x450.png 848w, https://substackcdn.com/image/fetch/$s_!l-Ew!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14f96fb0-a9a7-47aa-801d-45aaee6a15b1_2000x450.png 1272w, https://substackcdn.com/image/fetch/$s_!l-Ew!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14f96fb0-a9a7-47aa-801d-45aaee6a15b1_2000x450.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!l-Ew!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14f96fb0-a9a7-47aa-801d-45aaee6a15b1_2000x450.png" width="1456" height="328" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/14f96fb0-a9a7-47aa-801d-45aaee6a15b1_2000x450.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:328,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:37594,&quot;alt&quot;:&quot;Basic Concepts&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://www.productcompass.pm/i/205281041?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14f96fb0-a9a7-47aa-801d-45aaee6a15b1_2000x450.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Basic Concepts" title="Basic Concepts" srcset="https://substackcdn.com/image/fetch/$s_!l-Ew!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14f96fb0-a9a7-47aa-801d-45aaee6a15b1_2000x450.png 424w, https://substackcdn.com/image/fetch/$s_!l-Ew!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14f96fb0-a9a7-47aa-801d-45aaee6a15b1_2000x450.png 848w, https://substackcdn.com/image/fetch/$s_!l-Ew!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14f96fb0-a9a7-47aa-801d-45aaee6a15b1_2000x450.png 1272w, https://substackcdn.com/image/fetch/$s_!l-Ew!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F14f96fb0-a9a7-47aa-801d-45aaee6a15b1_2000x450.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>For most PMs it makes no sense to dive deep into statistics, Python, or loss functions. You need to understand what a model can and can&#8217;t do, and how to design a system around it.</p><p>Recommended resources:</p><ul><li><p><a href="https://www.productcompass.pm/p/introduction-to-ai-product-management">Introduction to AI Product Management</a>: neural networks, transformers, LLMs, tokenization, no math required</p></li><li><p><a href="https://bbycroft.net/llm">Interactive LLM visualization</a>: watch a model run token by token, in your browser</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!OQSI!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7d02689-fdec-4c10-b09f-cb1f06202b3e_1100x577.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!OQSI!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7d02689-fdec-4c10-b09f-cb1f06202b3e_1100x577.png 424w, https://substackcdn.com/image/fetch/$s_!OQSI!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7d02689-fdec-4c10-b09f-cb1f06202b3e_1100x577.png 848w, https://substackcdn.com/image/fetch/$s_!OQSI!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7d02689-fdec-4c10-b09f-cb1f06202b3e_1100x577.png 1272w, https://substackcdn.com/image/fetch/$s_!OQSI!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7d02689-fdec-4c10-b09f-cb1f06202b3e_1100x577.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!OQSI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7d02689-fdec-4c10-b09f-cb1f06202b3e_1100x577.png" width="578" height="303.1872727272727" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e7d02689-fdec-4c10-b09f-cb1f06202b3e_1100x577.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:577,&quot;width&quot;:1100,&quot;resizeWidth&quot;:578,&quot;bytes&quot;:185411,&quot;alt&quot;:&quot;an interactive LLM visualization&quot;,&quot;title&quot;:&quot;an interactive LLM visualization&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://www.productcompass.pm/i/164633384?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7d02689-fdec-4c10-b09f-cb1f06202b3e_1100x577.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="an interactive LLM visualization" title="an interactive LLM visualization" srcset="https://substackcdn.com/image/fetch/$s_!OQSI!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7d02689-fdec-4c10-b09f-cb1f06202b3e_1100x577.png 424w, https://substackcdn.com/image/fetch/$s_!OQSI!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7d02689-fdec-4c10-b09f-cb1f06202b3e_1100x577.png 848w, https://substackcdn.com/image/fetch/$s_!OQSI!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7d02689-fdec-4c10-b09f-cb1f06202b3e_1100x577.png 1272w, https://substackcdn.com/image/fetch/$s_!OQSI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7d02689-fdec-4c10-b09f-cb1f06202b3e_1100x577.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Source: <a href="https://bbycroft.net/llm">an interactive LLM visualization</a></figcaption></figure></div></li><li><p><a href="https://www.productcompass.pm/p/ai-product-manager-glossary">AI Product Manager Glossary</a>: 100+ terms (recently updated), save it as a reference</p></li></ul><h3>3. Talking to AI: Prompt, Context, and Intent</h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Jaem!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc23c61f0-d8d8-47f7-8750-fd4be7628abf_2000x528.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Jaem!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc23c61f0-d8d8-47f7-8750-fd4be7628abf_2000x528.png 424w, https://substackcdn.com/image/fetch/$s_!Jaem!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc23c61f0-d8d8-47f7-8750-fd4be7628abf_2000x528.png 848w, https://substackcdn.com/image/fetch/$s_!Jaem!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc23c61f0-d8d8-47f7-8750-fd4be7628abf_2000x528.png 1272w, https://substackcdn.com/image/fetch/$s_!Jaem!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc23c61f0-d8d8-47f7-8750-fd4be7628abf_2000x528.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Jaem!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc23c61f0-d8d8-47f7-8750-fd4be7628abf_2000x528.png" width="1456" height="384" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c23c61f0-d8d8-47f7-8750-fd4be7628abf_2000x528.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:384,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:59078,&quot;alt&quot;:&quot;Talking to AI: Prompt, Context, and Intent Engineering&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://www.productcompass.pm/i/205281041?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc23c61f0-d8d8-47f7-8750-fd4be7628abf_2000x528.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Talking to AI: Prompt, Context, and Intent Engineering" title="Talking to AI: Prompt, Context, and Intent Engineering" srcset="https://substackcdn.com/image/fetch/$s_!Jaem!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc23c61f0-d8d8-47f7-8750-fd4be7628abf_2000x528.png 424w, https://substackcdn.com/image/fetch/$s_!Jaem!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc23c61f0-d8d8-47f7-8750-fd4be7628abf_2000x528.png 848w, https://substackcdn.com/image/fetch/$s_!Jaem!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc23c61f0-d8d8-47f7-8750-fd4be7628abf_2000x528.png 1272w, https://substackcdn.com/image/fetch/$s_!Jaem!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc23c61f0-d8d8-47f7-8750-fd4be7628abf_2000x528.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>This skill carries over to every agent you&#8217;ll touch, workspace or product, so it lives here, above the split. Three layers, each building on the last:</p><ul><li><p><strong>Prompt engineering</strong> steers a single answer.</p></li><li><p><strong>Context engineering</strong> gives the agent memory, tools, and the information it needs.</p></li><li><p><strong>Intent engineering</strong> constrains an agent that acts autonomously, even long-term, so it does the right thing without you watching every step.</p></li></ul><p>Learn all three and you can talk to any agent, workspace or product.</p><p>Recommended resources:</p><ul><li><p><a href="https://www.productcompass.pm/p/prompting-techniques">14 Prompting Techniques Every PM Should Know</a></p></li><li><p><a href="https://www.productcompass.pm/p/context-engineering">A Guide to Context Engineering for PMs</a>: the new prompt engineering, covering RAG, memory, tools, and retrieval</p></li><li><p><a href="https://www.productcompass.pm/p/intent-engineering-framework-for-ai-agents">The Intent Engineering Framework for AI Agents</a>: objectives, outcomes, enforced constraints</p></li><li><p>Prompt resources: <a href="https://www.productcompass.pm/p/the-ultimate-chatgpt-prompts-product-managers">The Ultimate Prompts Library for PMs</a>, <a href="https://docs.anthropic.com/en/docs/build-with-claude/prompt-engineering/overview">Anthropic&#8217;s Prompt Engineering guide</a> and its <a href="https://github.com/anthropics/prompt-eng-interactive-tutorial">free interactive course</a>, plus the <a href="https://docs.anthropic.com/en/docs/build-with-claude/prompt-engineering/prompt-generator">Prompt Generator</a> and <a href="https://docs.anthropic.com/en/prompt-library/library">Prompt Library</a></p></li></ul><h3>4. Knowledge Systems: How Agents Know Things</h3><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ZJD0!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51a8e4fd-d1bc-4e2c-838a-e56e036e6120_2000x450.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ZJD0!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51a8e4fd-d1bc-4e2c-838a-e56e036e6120_2000x450.png 424w, https://substackcdn.com/image/fetch/$s_!ZJD0!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51a8e4fd-d1bc-4e2c-838a-e56e036e6120_2000x450.png 848w, https://substackcdn.com/image/fetch/$s_!ZJD0!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51a8e4fd-d1bc-4e2c-838a-e56e036e6120_2000x450.png 1272w, https://substackcdn.com/image/fetch/$s_!ZJD0!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51a8e4fd-d1bc-4e2c-838a-e56e036e6120_2000x450.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ZJD0!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51a8e4fd-d1bc-4e2c-838a-e56e036e6120_2000x450.png" width="1456" height="328" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/51a8e4fd-d1bc-4e2c-838a-e56e036e6120_2000x450.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:328,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:47607,&quot;alt&quot;:&quot;Knowledge Systems: How Agents Know Things&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://www.productcompass.pm/i/205281041?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51a8e4fd-d1bc-4e2c-838a-e56e036e6120_2000x450.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Knowledge Systems: How Agents Know Things" title="Knowledge Systems: How Agents Know Things" srcset="https://substackcdn.com/image/fetch/$s_!ZJD0!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51a8e4fd-d1bc-4e2c-838a-e56e036e6120_2000x450.png 424w, https://substackcdn.com/image/fetch/$s_!ZJD0!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51a8e4fd-d1bc-4e2c-838a-e56e036e6120_2000x450.png 848w, https://substackcdn.com/image/fetch/$s_!ZJD0!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51a8e4fd-d1bc-4e2c-838a-e56e036e6120_2000x450.png 1272w, https://substackcdn.com/image/fetch/$s_!ZJD0!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51a8e4fd-d1bc-4e2c-838a-e56e036e6120_2000x450.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p><span>Look closely at knowledge systems and the split almost disappears. A markdown second brain that Claude Code reads before it answers, and a vector database that a production agent searches, are the same idea wearing two outfits: </span><strong>how an agent knows what it needs to know.</strong></p><p><span>Your agent is only as good as the context system it can retrieve from and update. Second brains, </span><code>CLAUDE.md</code><span>, RAG, vector stores, files, and past tool outputs all answer that one question.</span></p><p>Recommended resources:</p><ul><li><p><a href="https://rag.productcompass.pm/">An Interactive RAG Simulator</a>: watch retrieval work, chunk by chunk (free)</p></li><li><p><a href="https://www.productcompass.pm/p/how-to-build-a-rag-chatbot">How to Build a RAG Chatbot Without Coding</a>: vector stores, embeddings, chunking, step by step</p></li><li><p><a href="https://www.productcompass.pm/i/163255770/5-three-essential-agentic-rag-architectures-in-n8n">Three Essential Agentic RAG Architectures in n8n</a></p></li><li><p><a href="https://www.productcompass.pm/p/self-improving-claude-system">What I Learned Building a Self-Improving Agentic System</a>: systems that compound, and how they degrade</p></li><li><p><a href="https://www.productcompass.pm/p/claude-md-snippets">Three CLAUDE.md Blocks That Make Claude Get Smarter</a></p></li><li><p><a href="https://www.productcompass.pm/p/pm-brain-os">PM Brain OS: The Second Brain for PMs, Made of Markdown</a></p></li><li><p><a href="https://www.productcompass.pm/p/gemini-file-search-api">Gemini File Search API: A Practical Handbook</a>: RAG as a service</p></li></ul><blockquote><p><strong>For PMs:</strong> Learn markdown and vectors first. Reach for graphs only when your relationships get genuinely complex.</p></blockquote><h3>5. Fine-Tuning</h3><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!n2mi!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3540e10f-0888-4f57-be1d-96b8cdc6eb32_2000x300.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!n2mi!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3540e10f-0888-4f57-be1d-96b8cdc6eb32_2000x300.png 424w, https://substackcdn.com/image/fetch/$s_!n2mi!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3540e10f-0888-4f57-be1d-96b8cdc6eb32_2000x300.png 848w, https://substackcdn.com/image/fetch/$s_!n2mi!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3540e10f-0888-4f57-be1d-96b8cdc6eb32_2000x300.png 1272w, https://substackcdn.com/image/fetch/$s_!n2mi!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3540e10f-0888-4f57-be1d-96b8cdc6eb32_2000x300.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!n2mi!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3540e10f-0888-4f57-be1d-96b8cdc6eb32_2000x300.png" width="1456" height="218" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3540e10f-0888-4f57-be1d-96b8cdc6eb32_2000x300.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:218,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:32158,&quot;alt&quot;:&quot;Fine-Tuning&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://www.productcompass.pm/i/205281041?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3540e10f-0888-4f57-be1d-96b8cdc6eb32_2000x300.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Fine-Tuning" title="Fine-Tuning" srcset="https://substackcdn.com/image/fetch/$s_!n2mi!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3540e10f-0888-4f57-be1d-96b8cdc6eb32_2000x300.png 424w, https://substackcdn.com/image/fetch/$s_!n2mi!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3540e10f-0888-4f57-be1d-96b8cdc6eb32_2000x300.png 848w, https://substackcdn.com/image/fetch/$s_!n2mi!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3540e10f-0888-4f57-be1d-96b8cdc6eb32_2000x300.png 1272w, https://substackcdn.com/image/fetch/$s_!n2mi!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3540e10f-0888-4f57-be1d-96b8cdc6eb32_2000x300.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p><span>Fine-tuning is not where most PMs should start. It's what you reach for when prompting and retrieval stop being enough, and the skill is knowing </span>when<span> that moment arrives. Most days, RAG wins.</span></p><p>Recommended resources:</p><ul><li><p><a href="https://www.productcompass.pm/p/what-is-fine-tuning">The Ultimate Guide to Fine-Tuning for PMs</a>: when to fine-tune vs stick with RAG, plus SFT, DPO, and ORPO</p></li><li><p>Practice platforms (no coding): </p><ul><li><p><a href="https://platform.openai.com/">OpenAI Platform</a>, </p></li><li><p><a href="https://huggingface.co/autotrain">Hugging Face AutoTrain</a>, </p></li><li><p><a href="https://llamafactory.readthedocs.io/en/latest/">LLaMA-Factory</a></p></li></ul></li></ul><div><hr></div><h2><strong>Part 2. How You Work With Agents</strong></h2><p>Foundations done. Next:</p><ul><li><p><strong>Workspace agents are how you do the work</strong><span>, all of it: discovery, prototyping, delivery, shipping, research, marketing.</span></p></li><li><p><strong>Product agents are what you build with them</strong><span>, when the agent has to live inside a product.</span></p></li></ul><p>You use one to make the other, so they were never rivals. Learn both, starting with your workspace agents.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!nV3g!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F327d7c4f-1c93-46b3-a7d4-3a78c7f4724e_2400x1104.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!nV3g!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F327d7c4f-1c93-46b3-a7d4-3a78c7f4724e_2400x1104.png 424w, https://substackcdn.com/image/fetch/$s_!nV3g!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F327d7c4f-1c93-46b3-a7d4-3a78c7f4724e_2400x1104.png 848w, https://substackcdn.com/image/fetch/$s_!nV3g!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F327d7c4f-1c93-46b3-a7d4-3a78c7f4724e_2400x1104.png 1272w, https://substackcdn.com/image/fetch/$s_!nV3g!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F327d7c4f-1c93-46b3-a7d4-3a78c7f4724e_2400x1104.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!nV3g!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F327d7c4f-1c93-46b3-a7d4-3a78c7f4724e_2400x1104.png" width="1456" height="670" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/327d7c4f-1c93-46b3-a7d4-3a78c7f4724e_2400x1104.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:670,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:236099,&quot;alt&quot;:&quot;How You Work With Agents: Workspace agents vs. Product 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://www.productcompass.pm/i/205281041?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F327d7c4f-1c93-46b3-a7d4-3a78c7f4724e_2400x1104.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="How You Work With Agents: Workspace agents vs. Product agents" title="How You Work With Agents: Workspace agents vs. Product agents" srcset="https://substackcdn.com/image/fetch/$s_!nV3g!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F327d7c4f-1c93-46b3-a7d4-3a78c7f4724e_2400x1104.png 424w, https://substackcdn.com/image/fetch/$s_!nV3g!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F327d7c4f-1c93-46b3-a7d4-3a78c7f4724e_2400x1104.png 848w, https://substackcdn.com/image/fetch/$s_!nV3g!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F327d7c4f-1c93-46b3-a7d4-3a78c7f4724e_2400x1104.png 1272w, https://substackcdn.com/image/fetch/$s_!nV3g!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F327d7c4f-1c93-46b3-a7d4-3a78c7f4724e_2400x1104.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h3>6. Workspace Agents: Run on Your Work</h3><p>A workspace agent runs on your own work. You give it intent and review what it produces, whether you watch it live or let it run on a schedule overnight. It's agentic: you set the goal, the agent plans and runs the steps. You use them across the whole job, from discovery to prototyping to delivery to shipping. This is the bench everything else runs on, so it goes first.</p><p><span>Start with the tool, then learn to operate it well: how to organize it with </span><code>CLAUDE.md</code><span> / </span><code>AGENTS.md</code><span>, skills, MCP servers, hooks, and subagents.</span></p><p>Recommended resources:</p><ul><li><p><a href="https://www.productcompass.pm/p/claude-cowork-guide">Claude Cowork: The Ultimate Guide for PMs</a>: no terminal required</p></li><li><p><a href="https://www.productcompass.pm/p/claude-code-beginners-guide">Claude Code for PMs: The Beginner&#8217;s Guide</a>: install, MCP, skills, start here</p></li><li><p><a href="https://www.productcompass.pm/p/claude-code-guide">The Guide to Claude Code for PMs</a>: more advanced</p></li><li><p><a href="https://www.productcompass.pm/p/codex-setup-for-pms">How to Set Up Codex as a PM and Run It Next to Claude</a></p></li><li><p><a href="https://www.productcompass.pm/p/claude-code-dynamic-workflows">Claude Dynamic Workflows for PMs</a>: set a goal tonight, results by morning</p></li><li><p><a href="https://www.productcompass.pm/p/loop-engineering-for-pms">Agent Loops for PMs: 20+ You Can Run This Week</a></p></li></ul><p><strong>The advanced move: agentic engineering.</strong><span> Once you can manage one agent, you can build real things with it. </span>Recommended resources:</p><ul><li><p><a href="https://www.productcompass.pm/p/vibe-coding-vs-vibe-engineering">The Rise of Vibe Engineering</a>: the basic engineering skills you now need</p></li><li><p><a href="https://www.productcompass.pm/p/agentic-engineering-for-pms">I Don&#8217;t Review the Code. I Review the Artifacts.</a></p></li></ul><h4><strong>What a workspace agent gets you: AI product discovery and prototyping</strong></h4><p>This is the payoff of your workspace agents, and the work that sits closest to what a PM already does. Product sense plus the ability to build: that's the combination you bring here. You use workspace agents to discover and prototype in hours instead of weeks: test a hypothesis, build a working prototype, put it in front of users, learn, repeat.</p><p>Recommended resources:</p><ul><li><p><a href="https://www.productcompass.pm/p/ai-prototyping-the-ultimate-guide">AI Prototyping: The Ultimate Guide for PMs</a></p></li><li><p><a href="https://www.productcompass.pm/p/claude-design-product-discovery">From Weeks to Hours: How Claude Design Compresses Product Discovery</a></p></li><li><p>Other tools to prototype with: <a href="https://www.productcompass.pm/p/full-stack-app-with-lovable">Lovable full-stack course</a>, <a href="https://www.productcompass.pm/p/base44-vs-lovable">Base44</a>, <a href="https://www.productcompass.pm/p/dyad-free-lovable-alternative">Dyad (free)</a>, <a href="https://www.productcompass.pm/p/stitch-vs-google-ai-studio-vs-firebase">Stitch vs Google AI Studio vs Firebase</a></p></li></ul><blockquote><p><strong>Dedicated AI discovery and prototyping guides 2026 are coming.</strong> Until then, the discovery fundamentals still hold, and AI changes the speed, not the logic: <a href="https://www.productcompass.pm/p/the-ultimate-experiments-library">The Ultimate Validation Experiments Library</a>, <a href="https://www.productcompass.pm/p/the-4-steps-of-continuous-product">Continuous Product Discovery 101</a>, <a href="https://www.productcompass.pm/p/product-discovery-sources-of-insights">12 Proven Sources of Insights</a>, <a href="https://www.productcompass.pm/p/jobs-to-be-done-masterclass-with">Jobs-to-be-Done Masterclass with Tony Ulwick</a>, <a href="https://www.productcompass.pm/p/prioritization-framework-product-backlog">How to Prioritize Ideas as a Product Manager</a></p></blockquote><h3>7. Product Agents: Embedded in a Product</h3><p>A product agent is embedded inside a product or a business process. You design the architecture, wire the tools, set the guardrails, and it runs on its own, for your users or your team. You build it with your workspace agents, which is why it comes second here, not because it matters less.</p><p>Product agents are orchestration-first: you design the steps, tools, guardrails, and handoffs instead of letting the model improvise the whole process. The question you&#8217;re probably asking: why learn n8n, if Claude and the Agents API can build agents too?</p><p>Because <strong>building them visually first teaches you more</strong>. In n8n, you can see how the agent works. You drag the boxes, connect the tools, and watch the data move, the same way you&#8217;d build RAG by hand. You feel where the loop lives, where the model decides, where a tool result comes back.</p><p><strong>That understanding compounds.</strong> It&#8217;s why I was writing about  <a href="https://www.productcompass.pm/i/168134805/5-orchestration-autonomy">orchestration over autonomy</a> months before &#8220;harness&#8221; caught on, and why the <a href="https://www.productcompass.pm/p/intent-engineering-framework-for-ai-agents">intent engineering framework</a> was here before the labs shipped their /goal commands.</p><blockquote><p><strong>Build a few agents visually before you build them in code.</strong><span> You'll understand the harness in a way that's hard to get if you start in Claude Code, and that understanding carries back into Claude Code too.</span></p></blockquote><p><span>My favorite tool for this, by far, is n8n: drag-and-drop workflows and multi-agent systems that connect to almost anything.</span></p><p>Recommended resources:</p><ul><li><p><a href="https://www.productcompass.pm/p/the-ultimate-guide-to-n8n-for-pms">The Guide to n8n for PMs</a>: the leading no-code framework</p></li><li><p><a href="https://www.productcompass.pm/p/free-n8n-course">Master 80% of n8n in 59 Minutes (Free Course)</a></p></li><li><p><a href="https://www.productcompass.pm/p/ai-agents">Introduction to AI Agents for PMs</a>: what an agent is, building blocks, workflows vs agents vs multi-agent</p></li><li><p><a href="https://www.productcompass.pm/p/ai-agent-architectures">AI Agent Architectures: The Ultimate Guide With n8n Examples</a></p></li><li><p><a href="https://www.productcompass.pm/p/building-ai-agents-best-practices">14 Principles of Building AI Agents (Learned the Hard Way)</a></p></li><li><p><a href="https://www.productcompass.pm/p/multi-agent-research-system">I Copied the Multi-Agent Research System by Anthropic</a></p></li><li><p><a href="https://www.productcompass.pm/p/mcp-case-study-jira-figma">MCP for PMs: Automate Figma to Jira in 10 Minutes</a> and <a href="https://www.productcompass.pm/p/n8n-mcp-servers-uv">J.A.R.V.I.S.: n8n + Any MCP Server</a></p></li><li><p><a href="https://www.productcompass.pm/p/claude-agent-sdk-production-agent">Your .claude/ Folder Is a Production Agent</a>: the Agent SDK, reframed</p></li></ul><div><hr></div><h2><strong>Part 3. When Agents Need to Be Trusted</strong></h2><p><span>Once an agent touches real work or real users, one question matters: can you trust it? </span></p><p><strong>Evals are mostly a production concern.</strong><span> When you manage a workspace agent, you review its work as it goes, the artifact review from Part 2. When an agent runs without you watching and can impact your customer, you can't eyeball quality, so you have to measure it. Shipping and hardening cover the apps you build along the way.</span></p><h3>8. AI Evals and Observability</h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!J_LF!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85a81847-0e3a-48ee-ac7e-ab6ed444acd0_1200x504.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!J_LF!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85a81847-0e3a-48ee-ac7e-ab6ed444acd0_1200x504.png 424w, https://substackcdn.com/image/fetch/$s_!J_LF!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85a81847-0e3a-48ee-ac7e-ab6ed444acd0_1200x504.png 848w, https://substackcdn.com/image/fetch/$s_!J_LF!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85a81847-0e3a-48ee-ac7e-ab6ed444acd0_1200x504.png 1272w, https://substackcdn.com/image/fetch/$s_!J_LF!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85a81847-0e3a-48ee-ac7e-ab6ed444acd0_1200x504.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!J_LF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85a81847-0e3a-48ee-ac7e-ab6ed444acd0_1200x504.png" width="1200" height="504" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/85a81847-0e3a-48ee-ac7e-ab6ed444acd0_1200x504.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:504,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:207990,&quot;alt&quot;:&quot;AI Evals and Observability&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://www.productcompass.pm/i/205281041?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85a81847-0e3a-48ee-ac7e-ab6ed444acd0_1200x504.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="AI Evals and Observability" title="AI Evals and Observability" srcset="https://substackcdn.com/image/fetch/$s_!J_LF!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85a81847-0e3a-48ee-ac7e-ab6ed444acd0_1200x504.png 424w, https://substackcdn.com/image/fetch/$s_!J_LF!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85a81847-0e3a-48ee-ac7e-ab6ed444acd0_1200x504.png 848w, https://substackcdn.com/image/fetch/$s_!J_LF!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85a81847-0e3a-48ee-ac7e-ab6ed444acd0_1200x504.png 1272w, https://substackcdn.com/image/fetch/$s_!J_LF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85a81847-0e3a-48ee-ac7e-ab6ed444acd0_1200x504.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Fancy architecture doesn't matter if the product doesn't work, especially once it runs on its own. Evals are where trust is won or lost, and they're your job, not only the engineers'. </p><p>Recommended resources:</p><ul><li><p><a href="https://www.productcompass.pm/p/ai-evals">Introduction to AI Evals: A Complete Guide for PMs</a>: start here (free)</p></li><li><p><a href="https://www.productcompass.pm/p/evaluating-ai-products-error-analysis">AI Evals: How to Find the Right Metrics (Error Analysis)</a></p></li><li><p><a href="https://www.productcompass.pm/p/how-to-evaluate-ai-agents-n8n">The action-based framework</a>: evaluate actions, not words</p></li><li><p><a href="https://www.productcompass.pm/p/ai-observability-evaluation-platforms">The Ultimate Guide to AI Observability and Evaluation Platforms</a></p></li><li><p>A massive free FAQ: <a href="https://hamel.dev/blog/posts/evals-faq/">hamel.dev/blog/posts/evals-faq</a></p></li></ul><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><h3>9. AI Shipping and Hardening</h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!0bPp!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8c73ff5-c378-4b9e-9ca4-7be0b78f362a_1200x343.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!0bPp!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8c73ff5-c378-4b9e-9ca4-7be0b78f362a_1200x343.png 424w, https://substackcdn.com/image/fetch/$s_!0bPp!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8c73ff5-c378-4b9e-9ca4-7be0b78f362a_1200x343.png 848w, https://substackcdn.com/image/fetch/$s_!0bPp!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8c73ff5-c378-4b9e-9ca4-7be0b78f362a_1200x343.png 1272w, https://substackcdn.com/image/fetch/$s_!0bPp!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8c73ff5-c378-4b9e-9ca4-7be0b78f362a_1200x343.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!0bPp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8c73ff5-c378-4b9e-9ca4-7be0b78f362a_1200x343.png" width="1200" height="343" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b8c73ff5-c378-4b9e-9ca4-7be0b78f362a_1200x343.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:343,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:108487,&quot;alt&quot;:&quot;AI Shipping and Hardening&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://www.productcompass.pm/i/205281041?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8c73ff5-c378-4b9e-9ca4-7be0b78f362a_1200x343.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="AI Shipping and Hardening" title="AI Shipping and Hardening" srcset="https://substackcdn.com/image/fetch/$s_!0bPp!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8c73ff5-c378-4b9e-9ca4-7be0b78f362a_1200x343.png 424w, https://substackcdn.com/image/fetch/$s_!0bPp!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8c73ff5-c378-4b9e-9ca4-7be0b78f362a_1200x343.png 848w, https://substackcdn.com/image/fetch/$s_!0bPp!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8c73ff5-c378-4b9e-9ca4-7be0b78f362a_1200x343.png 1272w, https://substackcdn.com/image/fetch/$s_!0bPp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb8c73ff5-c378-4b9e-9ca4-7be0b78f362a_1200x343.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>When something you built with a workspace agent becomes a product people rely on, the question shifts from "what can I do?" to "how do I not break production?" Branching, hosting, CI/CD, security, and performance.</p><p>Recommended resources:</p><ul><li><p><a href="https://www.productcompass.pm/p/lovable-branching">How to Build and Scale Full-Stack Apps in Lovable Without Breaking Production</a>: branching to separate dev, test, and prod</p></li><li><p><a href="https://www.productcompass.pm/p/penetration-testing-performance-testing-prompts">17 Penetration and Performance Testing Prompts for Vibe Coders</a></p></li><li><p><a href="https://www.productcompass.pm/p/pm-skills-2-red-team-ship">PM Skills 2.0: Red-Team Your Roadmap, Then Check the Code Before You Ship</a></p></li></ul><div><hr></div><h2><strong>Part 4. Zoom Out: AI Product Strategy and Leadership</strong></h2><p>Tools and agents are the how. This is the why, where product thinking still beats any model. Don&#8217;t skip it. The PM job is expanding into shipping and business outcomes, not just solving problems for users.</p><p>Recommended resources:</p><ul><li><p><a href="https://www.productcompass.pm/p/how-to-create-an-ai-product-strategy">How to Create an AI Product Strategy: The AI Strategic Lens Framework</a></p></li><li><p><a href="https://www.productcompass.pm/p/openai-how-to-build-ai-product-strategy">OpenAI&#8217;s Product Leader: 5 Phases to Build, Deploy, and Scale AI Strategy</a></p></li><li><p><a href="https://www.productcompass.pm/p/distribution-framework-ai-products">3-Layer AI Product Distribution Framework</a>: features get cloned, models commoditize, distribution compounds</p></li><li><p><a href="https://www.productcompass.pm/p/5-gtm-principles-with-frameworks-templates">5 GTM Principles With Frameworks and Templates</a>: the go-to-market layer, with playbooks you can reuse</p></li><li><p><a href="https://www.productcompass.pm/p/ai-product-pricing">The AI Product Pricing Masterclass: Why SaaS Pricing Fails in AI</a></p></li><li><p><a href="https://www.productcompass.pm/p/how-to-build-an-ai-product-team">How to Build an AI Product Team</a></p></li><li><p><a href="https://www.productcompass.pm/p/product-model-first-principles-transformed-cagan">Product Model First Principles: Team</a>: how the strongest product teams are structured, from Marty Cagan&#8217;s first principles (free)</p></li><li><p><a href="https://www.productcompass.pm/p/ai-prd-template">A Proven AI PRD Template by Miqdad Jaffer (OpenAI)</a>: the artifact that turns product strategy into a build spec</p></li></ul><div><hr></div><h2><strong>Choose Your Path</strong></h2><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!JAi7!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa25438cb-5330-4f0f-b5ab-070e6e8175ec_2255x479.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!JAi7!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa25438cb-5330-4f0f-b5ab-070e6e8175ec_2255x479.png 424w, https://substackcdn.com/image/fetch/$s_!JAi7!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa25438cb-5330-4f0f-b5ab-070e6e8175ec_2255x479.png 848w, https://substackcdn.com/image/fetch/$s_!JAi7!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa25438cb-5330-4f0f-b5ab-070e6e8175ec_2255x479.png 1272w, https://substackcdn.com/image/fetch/$s_!JAi7!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa25438cb-5330-4f0f-b5ab-070e6e8175ec_2255x479.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!JAi7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa25438cb-5330-4f0f-b5ab-070e6e8175ec_2255x479.png" width="1456" height="309" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a25438cb-5330-4f0f-b5ab-070e6e8175ec_2255x479.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:309,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:97312,&quot;alt&quot;:&quot;AI Product Manager Learning Paths&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://www.productcompass.pm/i/205281041?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa25438cb-5330-4f0f-b5ab-070e6e8175ec_2255x479.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="AI Product Manager Learning Paths" title="AI Product Manager Learning Paths" srcset="https://substackcdn.com/image/fetch/$s_!JAi7!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa25438cb-5330-4f0f-b5ab-070e6e8175ec_2255x479.png 424w, https://substackcdn.com/image/fetch/$s_!JAi7!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa25438cb-5330-4f0f-b5ab-070e6e8175ec_2255x479.png 848w, https://substackcdn.com/image/fetch/$s_!JAi7!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa25438cb-5330-4f0f-b5ab-070e6e8175ec_2255x479.png 1272w, https://substackcdn.com/image/fetch/$s_!JAi7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa25438cb-5330-4f0f-b5ab-070e6e8175ec_2255x479.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>The roadmap above is free. If you want the structured version, with lessons, projects, certification, and support, here&#8217;s how the parts map to the programs.</p><p><strong>I. <a href="https://www.productcompass.pm/p/ai-pm-learning-program">The AI PM Learning Program</a>.</strong> Included for paid subscribers, async and hands-on, with a dedicated Slack and weekly office hours:</p><ul><li><p><a href="https://www.productcompass.pm/p/c10-llm-practitioner-pm-ai-pm">C11. LLM Practitioner Certified PM</a>: the foundations, built by doing</p></li><li><p><a href="https://www.productcompass.pm/p/c21-ai-agents-practitioner-pm">C21. AI Agents Practitioner PM</a>: build and deploy production agents</p></li></ul><p><strong>II. <a href="https://www.productcompass.pm/p/ai-native-pm-roadmap">The AI-Native PM Roadmap</a>.</strong> Live, hands-on session every week + recordings. The first three are free, from Claude Cowork to Claude Code in VS Code. This teaches your workspace agents, live.</p><ul><li><p>C31. AI-Native PM (coming soon)</p></li></ul><div class="callout-block" data-callout="true"><p>&#128204; The highest-leverage move for a PM right now is workspace agents and Claude Code (&#167;6), which is what I&#8217;ve been writing about so much in recent months.</p><p>Next comes shipping with AI - from strategy and discovery to agentic engineering to GTM, monetization, and beyond.</p></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h2><strong>Thanks for Reading The Product Compass</strong></h2><p>It&#8217;s amazing to learn and grow together.</p><p>Start building. Stop theorizing.</p><p>Have a fantastic Sunday and a great week ahead,<br>Pawe&#322;</p><div><hr></div><p><em>P.S. If you want to learn workspace agents live, the first three <a href="https://www.productcompass.pm/p/ai-native-pm-roadmap">AI-Native PM sessions</a> are free.</em></p>]]></content:encoded></item><item><title><![CDATA[The AI-Native PM Roadmap: A Live Session Every Week, First 3 Free]]></title><description><![CDATA[One live, hands-on session every week. The first three are free, from Claude Cowork to Claude Code in VS Code.]]></description><link>https://www.productcompass.pm/p/ai-native-pm-roadmap</link><guid isPermaLink="false">https://www.productcompass.pm/p/ai-native-pm-roadmap</guid><dc:creator><![CDATA[Paweł Huryn]]></dc:creator><pubDate>Wed, 01 Jul 2026 23:08:13 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/f7c2481a-1c1a-49ab-94ba-a2e7aef3b901_1280x720.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>I want to get you hands-on with AI agents, fast.</p><p>Product management is splitting into two speeds: PMs who work with agents every day, and PMs who haven&#8217;t started. That gap grows every week. But closing it is easier than it looks, and I&#8217;ll show you how, live.</p><p>Maybe you understand agents in theory, then open VS Code to actually use one and freeze. It&#8217;s not that you can&#8217;t. You just haven&#8217;t done it hands-on yet.</p><p>You don&#8217;t get past that freeze by reading threads or listening to podcasts. You get past it by doing the work, breaking things, and fixing them. That starts with VS Code, the baseline you can&#8217;t skip. 90% of what you learn there works with any agent.</p><p>So I&#8217;m running one live session a week, starting this Thursday (tomorrow). We do it together: quick theory, live examples and best practices, then homework on your own product. </p><p>In the last Claudathon, I watched PMs go from stuck to building real agents in a few weeks.</p><blockquote><p>The first three sessions are free for everyone. They take you from Cowork to Codex to Claude Code in VS Code, the one most PMs avoid.</p></blockquote><div><hr></div><h2><strong>1. How the Sessions Work</strong></h2><ul><li><p><strong>90 minutes, live at 6:00 PM CET.</strong> Three free sessions to kick off over two weeks, then one every Thursday.</p></li><li><p><strong>A live walkthrough, plus the materials.</strong> I demo each skill live and share the training materials.</p></li><li><p><strong>Homework on your own product.</strong> You apply each skill to your real work, not toy examples.</p></li><li><p><strong>Recording after.</strong> Can&#8217;t make it live? Participants keep the recording.</p></li><li><p><strong>Drop in on the ones you need.</strong> Each session stands alone. It isn&#8217;t a cohort you enroll in once.</p></li></ul><p>If you&#8217;d rather read first, the written <a href="https://www.productcompass.pm/p/claude-cowork-guide">Cowork</a> and <a href="https://www.productcompass.pm/p/claude-code-beginners-guide">Claude Code</a> guides already cover the basics.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h2><strong>2. The Roadmap</strong></h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!IOH-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57c8236d-3b78-41e1-b518-d355f5390cd4_1200x1500.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!IOH-!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57c8236d-3b78-41e1-b518-d355f5390cd4_1200x1500.png 424w, https://substackcdn.com/image/fetch/$s_!IOH-!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57c8236d-3b78-41e1-b518-d355f5390cd4_1200x1500.png 848w, https://substackcdn.com/image/fetch/$s_!IOH-!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57c8236d-3b78-41e1-b518-d355f5390cd4_1200x1500.png 1272w, https://substackcdn.com/image/fetch/$s_!IOH-!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57c8236d-3b78-41e1-b518-d355f5390cd4_1200x1500.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!IOH-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57c8236d-3b78-41e1-b518-d355f5390cd4_1200x1500.png" width="1200" height="1500" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/57c8236d-3b78-41e1-b518-d355f5390cd4_1200x1500.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1500,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1019456,&quot;alt&quot;:&quot;The AI-Native PM Roadmap&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://www.productcompass.pm/i/204536782?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57c8236d-3b78-41e1-b518-d355f5390cd4_1200x1500.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="The AI-Native PM Roadmap" title="The AI-Native PM Roadmap" srcset="https://substackcdn.com/image/fetch/$s_!IOH-!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57c8236d-3b78-41e1-b518-d355f5390cd4_1200x1500.png 424w, https://substackcdn.com/image/fetch/$s_!IOH-!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57c8236d-3b78-41e1-b518-d355f5390cd4_1200x1500.png 848w, https://substackcdn.com/image/fetch/$s_!IOH-!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57c8236d-3b78-41e1-b518-d355f5390cd4_1200x1500.png 1272w, https://substackcdn.com/image/fetch/$s_!IOH-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57c8236d-3b78-41e1-b518-d355f5390cd4_1200x1500.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><strong>Update:</strong> Due to personal issues, I moved the Codex App for PMs to July 8, 2026. Same time.</p><div><hr></div><h2><strong>3. Get the First Three (Free)</strong></h2><p>The first three sessions are open to every subscriber. Subscribe (free) and you'll find the three recordings and templates to download right here: </p><div class="callout-block" data-callout="true"><div class="callout-block" data-callout="true"><p>&#128274;Three videos and templates to download are free for all subscribers. Sign up and get full access (don&#8217;t pay anything):</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!-v7Q!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F851c87e8-6835-4f73-af86-941be66fd9fa_1542x863.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!-v7Q!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F851c87e8-6835-4f73-af86-941be66fd9fa_1542x863.png 424w, https://substackcdn.com/image/fetch/$s_!-v7Q!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F851c87e8-6835-4f73-af86-941be66fd9fa_1542x863.png 848w, https://substackcdn.com/image/fetch/$s_!-v7Q!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F851c87e8-6835-4f73-af86-941be66fd9fa_1542x863.png 1272w, https://substackcdn.com/image/fetch/$s_!-v7Q!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F851c87e8-6835-4f73-af86-941be66fd9fa_1542x863.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!-v7Q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F851c87e8-6835-4f73-af86-941be66fd9fa_1542x863.png" width="1456" height="815" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/851c87e8-6835-4f73-af86-941be66fd9fa_1542x863.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:815,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:260537,&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://www.productcompass.pm/i/204536782?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F851c87e8-6835-4f73-af86-941be66fd9fa_1542x863.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_!-v7Q!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F851c87e8-6835-4f73-af86-941be66fd9fa_1542x863.png 424w, https://substackcdn.com/image/fetch/$s_!-v7Q!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F851c87e8-6835-4f73-af86-941be66fd9fa_1542x863.png 848w, https://substackcdn.com/image/fetch/$s_!-v7Q!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F851c87e8-6835-4f73-af86-941be66fd9fa_1542x863.png 1272w, https://substackcdn.com/image/fetch/$s_!-v7Q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F851c87e8-6835-4f73-af86-941be66fd9fa_1542x863.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div></div><div><hr></div><h2><strong>4. The Rest of the Roadmap (Premium)</strong></h2><p>Everything from July 16 on is for premium members: the full roadmap, every recording, and the exercises. </p><p>Go to <a href="https://go.productcompass.pm/premium">go.productcompass.pm/premium</a>, sign up with your Substack email, and sync your calendar. Every session drops into your calendar automatically, so you never miss one.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><p>There&#8217;s a certificate too. A knowledge test plus practical exercises you submit (anonymized projects or screenshots are fine). You don&#8217;t have to wait for the series to end. Submit when you&#8217;re ready. I&#8217;ll publish the criteria the next week inside this post.</p><p>The last two sessions, Agentic Engineering and Production Hardening, go deeper into production and are an advanced add-on, not part of it.</p><div><hr></div><h2><strong>Closing</strong></h2><p>A year from now, working with agents will feel obvious to you. Right now it just takes practice.</p><p>We start Thursday (tomorrow), with Cowork.</p><p>Have a great rest of the week, Pawe&#322;</p><div><hr></div><p><em>P.S. This Saturday I&#8217;m publishing the <strong>updated AI PM Learning Roadmap</strong> across every skill area, with recommended paths. This live series is the workspace track inside it. You&#8217;ll see exactly where it fits.</em></p>]]></content:encoded></item><item><title><![CDATA[Agent Loops for PMs: 20+ You Can Run This Week]]></title><description><![CDATA[PMs already define done: acceptance criteria, metrics, signoff. That's what makes loops useful. Includes PRD hardening, feedback clustering, competitor watch, and ship checks.]]></description><link>https://www.productcompass.pm/p/loop-engineering-for-pms</link><guid isPermaLink="false">https://www.productcompass.pm/p/loop-engineering-for-pms</guid><dc:creator><![CDATA[Paweł Huryn]]></dc:creator><pubDate>Mon, 22 Jun 2026 15:15:49 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/9ecd6b13-91d6-42d5-bce3-d7901d6d411c_1280x720.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>A loop does not fail because the agent keeps working. It fails because nobody told it what &#8220;done&#8221; means.</p><p>That&#8217;s the part most loop guides skip, and it isn&#8217;t a coding detail. Defining &#8220;done&#8221; is writing acceptance criteria, picking a success metric, and deciding who signs off. </p><blockquote><p>A loop is only as good as the thing that tells it to stop.</p></blockquote><p>It also explains why the loop debate sounds so confused. Nvidia's Jensen Huang: <em>"Nobody writes prompts anymore. The new job is to write and handle loops."</em> Boris Cherny, who built Claude Code: <em>"My job is to write loops."</em> Then a week later, another builder declared loops dead. </p><blockquote><p>One camp means retrying the same prompt forever. Another means a <strong>goal-driven system that checks itself</strong>. They're not arguing about the same thing.</p></blockquote><p>A loop is an agent that repeats one cycle until something tells it to stop. Goal, act, check, adjust, go again. It's the feedback loop agile teams have been running, with the agent running the cycle instead of you.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!UDK5!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72fb2ff6-68b6-462b-adf3-dd29515f46b8_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!UDK5!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72fb2ff6-68b6-462b-adf3-dd29515f46b8_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!UDK5!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72fb2ff6-68b6-462b-adf3-dd29515f46b8_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!UDK5!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72fb2ff6-68b6-462b-adf3-dd29515f46b8_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!UDK5!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72fb2ff6-68b6-462b-adf3-dd29515f46b8_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!UDK5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72fb2ff6-68b6-462b-adf3-dd29515f46b8_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/72fb2ff6-68b6-462b-adf3-dd29515f46b8_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:831665,&quot;alt&quot;:&quot;Loop Engineering&quot;,&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://www.productcompass.pm/i/203079879?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72fb2ff6-68b6-462b-adf3-dd29515f46b8_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Loop Engineering" title="Loop Engineering" srcset="https://substackcdn.com/image/fetch/$s_!UDK5!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72fb2ff6-68b6-462b-adf3-dd29515f46b8_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!UDK5!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72fb2ff6-68b6-462b-adf3-dd29515f46b8_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!UDK5!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72fb2ff6-68b6-462b-adf3-dd29515f46b8_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!UDK5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72fb2ff6-68b6-462b-adf3-dd29515f46b8_1536x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>What's new is that the agent runs the cycle itself instead of waiting for your next prompt.</p><p><strong>What you&#8217;ll learn:</strong></p><ul><li><p>What a loop is, and how it differs from a routine and a workflow</p></li><li><p>How to build one, and how to define the stop condition that makes it work</p></li><li><p>Whether your loops need a schedule (most don&#8217;t)</p></li><li><p>A library of 20+ loops for PMs worth running</p></li><li><p>Where loops break, and when not to bother</p></li></ul><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><p>If you&#8217;re new to Claude Code, start with:</p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;6682e4ec-cea5-48ce-b1e4-fa5cbf706c60&quot;,&quot;caption&quot;:&quot;In 2026, top PMs (especially at Meta/Google and AI-native companies) treat Claude Code as a daily tool. Here&#8217;s the zero-to-one path I&#8217;d give a PM today.&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 Code for PMs: The Beginner's Guide&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:86533280,&quot;name&quot;:&quot;Pawe&#322; Huryn&quot;,&quot;bio&quot;:&quot;AI &amp; PM. Author, The Product Compass. Deep research. I build, test, then teach. 5 years as a CPO, 10+ years as a PM, 15+ years in tech.&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5fcfcfec-32a1-4970-aee1-8a1ab05a76c0_750x750.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:1000}],&quot;post_date&quot;:&quot;2026-05-12T21:39:56.788Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a0492e79-138f-4848-affb-e05b7b38f778_1730x909.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.productcompass.pm/p/claude-code-beginners-guide&quot;,&quot;section_name&quot;:&quot;AI Product Management&quot;,&quot;video_upload_id&quot;:null,&quot;id&quot;:197350322,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:107,&quot;comment_count&quot;:0,&quot;publication_id&quot;:943157,&quot;publication_name&quot;:&quot;The Product Compass&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!Isz9!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F761d3970-dad7-483b-8fcf-9fada16e0d33_1080x1080.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div><hr></div><h2><strong>1. What an AI Agent Loop Actually Is</strong></h2><p>The fight dissolves once you separate three things:</p><ul><li><p>A <strong>routine</strong> runs fixed steps.</p></li><li><p>A <strong>workflow</strong> branches on what it finds. </p></li><li><p>A <strong>loop</strong> repeats and checks its own work until a condition holds.</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!oa23!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbff7de56-4039-4beb-b0cf-3bde5efee037_1200x701.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!oa23!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbff7de56-4039-4beb-b0cf-3bde5efee037_1200x701.png 424w, https://substackcdn.com/image/fetch/$s_!oa23!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbff7de56-4039-4beb-b0cf-3bde5efee037_1200x701.png 848w, https://substackcdn.com/image/fetch/$s_!oa23!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbff7de56-4039-4beb-b0cf-3bde5efee037_1200x701.png 1272w, https://substackcdn.com/image/fetch/$s_!oa23!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbff7de56-4039-4beb-b0cf-3bde5efee037_1200x701.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!oa23!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbff7de56-4039-4beb-b0cf-3bde5efee037_1200x701.png" width="1200" height="701" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/bff7de56-4039-4beb-b0cf-3bde5efee037_1200x701.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:701,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:297748,&quot;alt&quot;:&quot;What an AI Agent Loop Actually Is&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://www.productcompass.pm/i/203079879?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbff7de56-4039-4beb-b0cf-3bde5efee037_1200x701.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="What an AI Agent Loop Actually Is" title="What an AI Agent Loop Actually Is" srcset="https://substackcdn.com/image/fetch/$s_!oa23!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbff7de56-4039-4beb-b0cf-3bde5efee037_1200x701.png 424w, https://substackcdn.com/image/fetch/$s_!oa23!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbff7de56-4039-4beb-b0cf-3bde5efee037_1200x701.png 848w, https://substackcdn.com/image/fetch/$s_!oa23!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbff7de56-4039-4beb-b0cf-3bde5efee037_1200x701.png 1272w, https://substackcdn.com/image/fetch/$s_!oa23!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbff7de56-4039-4beb-b0cf-3bde5efee037_1200x701.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>That's what the "loops are dead" critic is rejecting: the naive rerun. The goal-driven loop is the one worth keeping. That's the definition that makes sense, and it's Cherny's: he splits the work into three layers, routines, workflows, and loops. </p><p>Claude Code's /loop reruns a prompt on a timer, so if that prompt is fixed steps it's a routine on a clock whatever the name says. </p><p>The better-named primitive is /goal, which runs a thread until a condition you set is met, with the stop built in. The cadence is optional. The goal is not. Full definitions, including /loop and /goal, are in <a href="https://www.productcompass.pm/p/ai-product-manager-glossary?open=false#%C2%A77-agent-loops-and-orchestration">the refreshed AI PM Glossary</a>.</p><div><hr></div><h2><strong>2. How to Build a Loop (Copy-Paste Template)</strong></h2><p>A loop is a /goal and a check. Here&#8217;s the shape to copy. In Claude Code or Codex, /goal runs the thread until the condition holds. In any other agent, paste the same and tell it to repeat until done.</p><h3>2.1 The template</h3><pre><code><code>/goal &lt;what "done" looks like, stated as a condition you can check&gt;.
Each pass: &lt;the action to repeat&gt;, then check the result against &lt;success criteria&gt;.
Guardrails: at most &lt;N&gt; passes. Don't invent. Stop and ask before any irreversible write.
Checked by: &lt;an objective test the loop runs, or an independent grader for anything subjective&gt;.</code></code></pre><p>The goal and the check do all the work. The goal carries the stop: when it&#8217;s met, the loop ends, so there&#8217;s no separate &#8220;stop when&#8221; to write. The check is what keeps it honest.</p><h3>2.2 A filled example</h3><p>The competitor-watch loop, ready to paste:</p><pre><code><code>/goal Produce a short brief of every material change to &lt;competitor&gt;'s product, pricing, or positioning since the last run, with each change classified and sourced. 

Each run: pull their changelog, pricing page, and last 7 days of posts. Decide whether a change is one a customer would notice. If yes, classify it (feature, price, message) and add one line on why it matters, with the source URL. 

Cap at 1 pass per run. Flag anything you're unsure is material rather than dropping it. </code> </code></pre><p><em>Note:</em> <em>A human reviews the brief (a gate after the loop, not inside it).</em></p><p>The goal and the &#8220;checked by&#8221; are the same decision in two places: what &#8220;done&#8221; means, and who checks it. Getting that right is the next section.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h2><strong>3. How to Define the Stop Condition</strong></h2><p>A loop is the easy part. The work is the stop condition: the check that ends it, the budget that caps it (the free hook I built, <strong><a href="https://github.com/phuryn/burnstop">burnstop</a>, halts a Claude Code session at a token or dollar ceiling</strong>, subagents included), and a target that&#8217;s actually reachable.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!X4yf!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe5ffbc46-eea7-443e-b3b3-8fee302f36c1_2021x1436.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!X4yf!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe5ffbc46-eea7-443e-b3b3-8fee302f36c1_2021x1436.png 424w, https://substackcdn.com/image/fetch/$s_!X4yf!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe5ffbc46-eea7-443e-b3b3-8fee302f36c1_2021x1436.png 848w, https://substackcdn.com/image/fetch/$s_!X4yf!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe5ffbc46-eea7-443e-b3b3-8fee302f36c1_2021x1436.png 1272w, https://substackcdn.com/image/fetch/$s_!X4yf!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe5ffbc46-eea7-443e-b3b3-8fee302f36c1_2021x1436.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!X4yf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe5ffbc46-eea7-443e-b3b3-8fee302f36c1_2021x1436.png" width="2021" height="1436" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e5ffbc46-eea7-443e-b3b3-8fee302f36c1_2021x1436.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1436,&quot;width&quot;:2021,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:567469,&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://www.productcompass.pm/i/203079879?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d45bdfb-2894-4160-bb9a-35918b841efd_2021x1524.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_!X4yf!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe5ffbc46-eea7-443e-b3b3-8fee302f36c1_2021x1436.png 424w, https://substackcdn.com/image/fetch/$s_!X4yf!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe5ffbc46-eea7-443e-b3b3-8fee302f36c1_2021x1436.png 848w, https://substackcdn.com/image/fetch/$s_!X4yf!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe5ffbc46-eea7-443e-b3b3-8fee302f36c1_2021x1436.png 1272w, https://substackcdn.com/image/fetch/$s_!X4yf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe5ffbc46-eea7-443e-b3b3-8fee302f36c1_2021x1436.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><a href="https://github.com/phuryn/burnstop">phuryn/burnstop</a> on GitHub</figcaption></figure></div><p>Get those wrong and the loop doesn&#8217;t crash. It runs all night producing plausible-looking garbage faster than you can read it, or it chases a target it can never hit (&#8221;repeat until every page loads under 50ms,&#8221; when that&#8217;s out of reach) and never stops on its own. Here&#8217;s how to define one that holds.</p><h3>3.1 Make the check objective, or the grader independent</h3><p>&#8220;Never let a loop grade itself&#8221; is wrong as stated. A loop can check its own work, as long as the check is <strong>objective</strong>. &#8220;All tests pass.&#8221; &#8220;The build is green.&#8221; &#8220;The schema validates.&#8221; These are verifiable, not a matter of opinion, and most good loops self-check this way.</p><p>The danger is letting a loop grade something <strong>subjective</strong>: &#8220;Is this copy good.&#8221; &#8220;Is this the right design.&#8221; An agent asked to judge its own quality passes itself every time. For those, the grader has to be independent: a rubric, a second model, a test you wrote, or you.</p><blockquote><p>The cleanest way to get that is to <strong>split the maker from the checker</strong>. The model that did the work is too generous about it. A second agent, with different instructions and sometimes a stronger model, catches what the first one talked itself into. That separation is most of the quality.</p></blockquote><p>It&#8217;s how I gate my own writing. I start with a goal, then run a panel of judges over the draft, each hunting a different failure mode, the way you run <a href="https://www.productcompass.pm/p/evaluating-ai-products-error-analysis">Error Analysis</a> on an AI feature. The draft only ships what survives:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!NsKy!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6caf0328-b58c-4286-a123-f3eccfa2f140_1945x905.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!NsKy!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6caf0328-b58c-4286-a123-f3eccfa2f140_1945x905.png 424w, https://substackcdn.com/image/fetch/$s_!NsKy!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6caf0328-b58c-4286-a123-f3eccfa2f140_1945x905.png 848w, https://substackcdn.com/image/fetch/$s_!NsKy!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6caf0328-b58c-4286-a123-f3eccfa2f140_1945x905.png 1272w, https://substackcdn.com/image/fetch/$s_!NsKy!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6caf0328-b58c-4286-a123-f3eccfa2f140_1945x905.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!NsKy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6caf0328-b58c-4286-a123-f3eccfa2f140_1945x905.png" width="1456" height="677" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6caf0328-b58c-4286-a123-f3eccfa2f140_1945x905.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:677,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:267024,&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://www.productcompass.pm/i/203079879?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6caf0328-b58c-4286-a123-f3eccfa2f140_1945x905.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_!NsKy!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6caf0328-b58c-4286-a123-f3eccfa2f140_1945x905.png 424w, https://substackcdn.com/image/fetch/$s_!NsKy!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6caf0328-b58c-4286-a123-f3eccfa2f140_1945x905.png 848w, https://substackcdn.com/image/fetch/$s_!NsKy!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6caf0328-b58c-4286-a123-f3eccfa2f140_1945x905.png 1272w, https://substackcdn.com/image/fetch/$s_!NsKy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6caf0328-b58c-4286-a123-f3eccfa2f140_1945x905.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">A panel of judges scoring my writing</figcaption></figure></div><blockquote><p>The rule isn&#8217;t &#8220;never let a loop check itself.&#8221; It&#8217;s: make the <strong>check objective, or make the grader independent</strong>.</p></blockquote><p>Sometimes the goal is real, but it either can't be reached or can't be checked from inside the loop. So I give my loops a way out, one line in the prompt:</p><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;plaintext&quot;,&quot;nodeId&quot;:&quot;91929113-9b7a-4a0c-b4fe-ac1c71e97580&quot;}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-plaintext">You can quit the goal by saying "STOP" three times if you can't achieve it or can't measure it. 
In that case, the goal is achieved.</code></pre></div><p>Without that line, an agent handed an impossible goal spins in place. Think "optimize until every page renders under 100ms": it can't be hit, so the loop never stops on its own. </p><p>Just a few days ago I watched one of my agents beg Claude Code to let it stop, repeating that the goal couldn't be met, while a non-deterministic grader kept refusing to pass it.</p><h3>3.2 Why this is a PM job, not a coding one</h3><p>Look at what defining a stop condition actually requires. State &#8220;done&#8221; as a measurable condition. Name who verifies it. Set the budget. That&#8217;s not coding. That&#8217;s writing acceptance criteria, picking a success metric, and deciding who signs off. You already do this for features. A loop just needs it in writing.</p><p>It&#8217;s the same work I&#8217;ve written up as <a href="https://www.productcompass.pm/p/intent-engineering-framework-for-ai-agents">Intent Engineering</a>: name the objective, the desired outcomes, and the health metrics up front, and the agent has enough to act on its own inside the loop instead of waiting for you at every step. The clearer the intent, the longer the leash the loop can safely run on.</p><blockquote><p>You'll also see advice to let the agent write its own goals. It can pass objectives to its own subagents, no problem, but it doesn't need the /goal syntax for that. The syntax exists because a human walks away. An agent doesn't: it stays in the loop, waits, and reacts, no automation to force. What you don't hand off is the definition of done, the judgment most likely to come out fuzzy if you let the agent guess at it.</p></blockquote><h3>3.3 One loop, start to finish: PRD hardening</h3><p>Here&#8217;s a job you already do, with the stop condition doing all the work. You want a PRD that two engineers can&#8217;t read two different ways, so you make that the goal:</p><pre><code><code>/goal Harden a PRD until two engineers, reading independently, would build the same thing. 

Each pass: find the single biggest ambiguity (the spot two readers would resolve differently), resolve it by adding the missing acceptance criterion, number, or edge case, then re-read for the next-biggest gap. 

Cap at 5 passes. Flag anything that needs a product decision you haven't made.

Checked by: an independent second model reads the PRD cold and finds no ambiguity that would split two builds.</code></code></pre><p><em>Note: A teammate can do the same final read (a gate after the loop, not inside it).</em></p><p>"Two engineers build the same thing" isn't a coding concept. It's the bar you already hold a spec to. The goal carries the stop, and the cold read is the check. Every loop has this shape. The only hard part, each time, is naming the bar.</p><div><hr></div><h2><strong>4. Do Your Loops Need a Schedule?</strong></h2><p>Most loops should run once. The repeating-until-done part happens inside a single run. The schedule is a separate wrapper around it. Run &#8220;refactor until the tests pass&#8221; once and walk away. You add a schedule only when new input shows up between runs. That&#8217;s the whole rule.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!1FDy!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1c02487-ec58-4723-a9a2-bcbaeb4c658b_1200x673.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!1FDy!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1c02487-ec58-4723-a9a2-bcbaeb4c658b_1200x673.png 424w, https://substackcdn.com/image/fetch/$s_!1FDy!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1c02487-ec58-4723-a9a2-bcbaeb4c658b_1200x673.png 848w, https://substackcdn.com/image/fetch/$s_!1FDy!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1c02487-ec58-4723-a9a2-bcbaeb4c658b_1200x673.png 1272w, https://substackcdn.com/image/fetch/$s_!1FDy!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1c02487-ec58-4723-a9a2-bcbaeb4c658b_1200x673.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!1FDy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1c02487-ec58-4723-a9a2-bcbaeb4c658b_1200x673.png" width="1200" height="673" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f1c02487-ec58-4723-a9a2-bcbaeb4c658b_1200x673.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:673,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:290470,&quot;alt&quot;:&quot;Do Your Loops Need a Schedule&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://www.productcompass.pm/i/203079879?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1c02487-ec58-4723-a9a2-bcbaeb4c658b_1200x673.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Do Your Loops Need a Schedule" title="Do Your Loops Need a Schedule" srcset="https://substackcdn.com/image/fetch/$s_!1FDy!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1c02487-ec58-4723-a9a2-bcbaeb4c658b_1200x673.png 424w, https://substackcdn.com/image/fetch/$s_!1FDy!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1c02487-ec58-4723-a9a2-bcbaeb4c658b_1200x673.png 848w, https://substackcdn.com/image/fetch/$s_!1FDy!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1c02487-ec58-4723-a9a2-bcbaeb4c658b_1200x673.png 1272w, https://substackcdn.com/image/fetch/$s_!1FDy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1c02487-ec58-4723-a9a2-bcbaeb4c658b_1200x673.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><blockquote><p>Schedule a loop only when new data arrives between runs. A fixed input on a schedule re-runs on nothing, or drifts into slop.</p></blockquote><p>A schedule raises the stakes on your stop condition, it doesn't lower them. An unattended loop with a loose "done" is the machine that makes slop while you sleep. The simplest way to run one is a recurring task inside the tool (Claude Code's /loop, a Cowork scheduled task). You don't need anything heavier to start.</p><h3>4.1 When not to loop</h3><p>A loop is the wrong tool more often than it looks. Skip it when:</p><ul><li><p><strong>The job is one-shot:</strong> A single, well-specified task needs one good pass, not a cycle.</p></li><li><p><strong>You can&#8217;t say what &#8220;done&#8221; is:</strong> No stop condition means the loop has nothing to check against and runs until the budget dies. Fix the spec first.</p></li><li><p><strong>The check costs as much as the work:</strong> Loops pay off when checking is cheap and doing is expensive.</p></li></ul><blockquote><p>And the one that catches people: anything that leaves the building keeps a human on the send button. A loop can draft the email, the reply, the outreach. It doesn&#8217;t send it.</p></blockquote><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/p/loop-engineering-for-pms?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;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/p/loop-engineering-for-pms?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p><div><hr></div><h2><strong>5. The Loop Library: 20+ Loops, by Category</strong></h2><p>Almost every loop being shared right now is for engineers. This one is built for PMs. There are three kinds, and you&#8217;ve already seen the shape of all of them.</p><ul><li><p><strong>Product and discovery.</strong> Feedback clustering, competitor watch, win/loss, metric-anomaly tracing, prioritization, strategy red-team.</p></li><li><p><strong>Build and ship.</strong> Prototype iteration, bug-fix from logs, test coverage, security audit, performance audit, intended-vs-implemented, ship-check, and the prompt-improvement loop most libraries miss (iterate the prompt, not the output, and keep the best version).</p></li><li><p><strong>Personal and ops.</strong> Inbox triage, email draft-and-judge, claim audit, PRD hardening, onboarding friction, AI-feature evals, doc freshness.</p></li></ul><p>One spelled out, so the shape is concrete. <strong>Feedback clustering:</strong> group every ticket, review, and call into themes tagged by area and severity, re-cluster, and stop when the themes stop changing. That&#8217;s the whole loop. The other twenty are the same move pointed at a different job.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!XYDS!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c32e35c-1f1c-4d8a-8fc6-fe16bc6935b6_2196x3293.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!XYDS!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c32e35c-1f1c-4d8a-8fc6-fe16bc6935b6_2196x3293.png 424w, https://substackcdn.com/image/fetch/$s_!XYDS!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c32e35c-1f1c-4d8a-8fc6-fe16bc6935b6_2196x3293.png 848w, https://substackcdn.com/image/fetch/$s_!XYDS!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c32e35c-1f1c-4d8a-8fc6-fe16bc6935b6_2196x3293.png 1272w, https://substackcdn.com/image/fetch/$s_!XYDS!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c32e35c-1f1c-4d8a-8fc6-fe16bc6935b6_2196x3293.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!XYDS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c32e35c-1f1c-4d8a-8fc6-fe16bc6935b6_2196x3293.png" width="1456" height="2183" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3c32e35c-1f1c-4d8a-8fc6-fe16bc6935b6_2196x3293.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:2183,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:610628,&quot;alt&quot;:&quot;The Loop Engineering Library: 20+ Loops, by Category&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://www.productcompass.pm/i/203079879?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c32e35c-1f1c-4d8a-8fc6-fe16bc6935b6_2196x3293.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="The Loop Engineering Library: 20+ Loops, by Category" title="The Loop Engineering Library: 20+ Loops, by Category" srcset="https://substackcdn.com/image/fetch/$s_!XYDS!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c32e35c-1f1c-4d8a-8fc6-fe16bc6935b6_2196x3293.png 424w, https://substackcdn.com/image/fetch/$s_!XYDS!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c32e35c-1f1c-4d8a-8fc6-fe16bc6935b6_2196x3293.png 848w, https://substackcdn.com/image/fetch/$s_!XYDS!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c32e35c-1f1c-4d8a-8fc6-fe16bc6935b6_2196x3293.png 1272w, https://substackcdn.com/image/fetch/$s_!XYDS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3c32e35c-1f1c-4d8a-8fc6-fe16bc6935b6_2196x3293.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">The Loop Library: 20+ Loops, by Category</figcaption></figure></div><p>I put all 21 in one Notion collection, each a ready-to-paste prompt with its stop condition, guardrails, and grader already filled in. Get them below &#128071;</p><div><hr></div><h2><strong>&#128274; 6. The Collection: All 21 Loops</strong></h2><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Upgrade&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">The entire Notion collection is available for paid subscribers. Upgrade to get full access.</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="Upgrade"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><div><hr></div><h2><strong>7. Where Agent Loops Break</strong></h2><p>The honest section. Every one of these is a real failure people are hitting right now:</p><ul><li><p><strong>Cost moved from tokens to iterations:</strong> The bill is no longer which model you picked, it's how many times the loop goes around, and the context re-reads grow each pass. The metric that matters, and almost nobody tracks, is cost per accepted change. If the loop hands you ten results and you throw away six, you're doing the review work it was meant to save. Below roughly half accepted, treat the loop as underperforming: narrow the task, improve the checker, or stop running it. And cap the spend, not just the passes: <strong><a href="https://github.com/phuryn/burnstop">phuryn/burnstop</a></strong> halts a runaway /goal at the cost ceiling.</p></li><li><p><strong>Long loops drift:</strong> The further a loop runs from where it started, the more its context rots and the more likely it is to wander. The fix is a fresh context each pass and one task per loop, not one loop trying to do everything.</p></li><li><p><strong>Passing is not the same as correct:</strong> A loop can make every test pass and still ship the wrong thing, because tests check behavior, not intent. Taste, strategy, and &#8220;is this what the customer wanted&#8221; stay yours.</p></li><li><p><strong>The judgment doesn&#8217;t automate:</strong> The useful part of most workflows is the one weird decision nobody wrote down. A loop can run the steps around that decision. It can&#8217;t make it. Keep the judgment, automate the repetition.</p></li></ul><blockquote><p>The product is not the loop. It&#8217;s the maintenance around the loop: keeping the stop condition honest as the work underneath it changes.</p></blockquote><div><hr></div><h2><strong>8. Loop Engineering Is Just the Latest Name</strong></h2><p>Loops will get renamed again. Prompt engineering became context engineering became loop engineering, and something will replace it by winter. But every one of those names the mechanism: the prompt, the context, the loop. </p><p>The part that doesn&#8217;t move is the decision underneath: </p><ul><li><p>what you want the agent to pursue, </p></li><li><p>how far it can act on its own, </p></li><li><p>and what counts as done. </p></li></ul><p>That&#8217;s a skill bigger than any loop, and it has a name: <a href="https://www.productcompass.pm/p/intent-engineering-framework-for-ai-agents">Intent Engineering</a>. The stop condition is the slice this post is about. Define the intent well and the agent runs a long way on its own. Define it badly and no loop saves you.</p><p>Pick one loop from the library. Run it once this week. Tweak it.</p><p>The people who get value from loops this year won&#8217;t be the ones with the best prompts. They&#8217;ll be the ones who can say, precisely, what they want, why that matters, and when the work is done.</p><div><hr></div><h2><strong>Thanks for Reading The Product Compass</strong></h2><p>It&#8217;s amazing to learn and grow together.</p><p>Have a great week ahead,<br>Pawe&#322;</p>]]></content:encoded></item><item><title><![CDATA[Claude Fable 5: The Ultimate Guide for PMs v3]]></title><description><![CDATA[Fable 5 is four days old. 7 experiments and 1,000+ timed runs later: the launch claims that flipped, what a real finding costs, and the first prompt you should run.]]></description><link>https://www.productcompass.pm/p/claude-fable-5-guide</link><guid isPermaLink="false">https://www.productcompass.pm/p/claude-fable-5-guide</guid><dc:creator><![CDATA[Paweł Huryn]]></dc:creator><pubDate>Thu, 11 Jun 2026 04:28:43 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!NdYB!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ed51fe7-ae34-45fd-a106-40fb581a6ac3_2400x1374.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em><strong>Updated</strong>: 7/3/2026</em></p><p>Fable 5 is the first model that&#8217;s made me feel audited.</p><p>On day two, mid-task, it read my CLAUDE.md and caught it teaching the exact pattern my own quality gate bans. I hadn&#8217;t asked for a review. It hit the contradiction and flagged it on its own.</p><p>That file is 320 lines. The knowledge layer behind it is 166 files, around 300k words of rules my agents follow every day. And every one of those rules was written by and for a weaker model.</p><p>This guide is what I did about that, plus everything else from <strong>7 experiments and 1,000+ timed runs</strong> in Fable 5&#8217;s first four days.</p><p>One honest note before we start. I published my launch-day numbers on day two, then retested everything at 20 rounds per cell on a single build. <strong>Two headline claims didn&#8217;t survive.</strong> They&#8217;re corrected below with the old numbers named, not quietly replaced.</p><p><strong>We&#8217;ll cover:</strong></p><ul><li><p>What changed, what it costs, and the migration gotchas that bite first</p></li><li><p>The effort dial and the &#8220;Fable is slow&#8221; complaint at 20 rounds per cell, including what flipped</p></li><li><p>What a real finding costs: Fable bills 2x per token and still wins the audit math</p></li><li><p>When your model silently swaps mid-conversation, and why the swap sticks</p></li><li><p>The audit prompt to run before giving Fable real work, and the migration workflow behind the paywall</p></li><li><p>Objectives, not tasks: <code>/goal</code> patterns (paid)</p></li><li><p>My depth-10 nesting experiments, the real cost multiplier, the decision rule (paid)</p></li></ul><p><strong>We won&#8217;t cover:</strong> API migration fine print, benchmark-by-benchmark analysis, or anything I haven&#8217;t run myself.</p><div><hr></div><h2><strong>1. What Actually Changed</strong></h2><p>According to Anthropic, Fable 5 is &#8220;<em>a Mythos-class model that we&#8217;ve made safe for general use. Its capabilities exceed those of any model we&#8217;ve ever made generally available</em>.&#8221;</p><p>They built a model they don&#8217;t fully release. <strong>Mythos 5 stays limited-access</strong>, available to trusted partners. <strong>Fable 5</strong> is the version of it you&#8217;re <strong>allowed to have</strong>.</p><p>That framing matters more than any spec row, and we&#8217;ll come back to it in Section 3.</p><p>Fable plugs in wherever Opus 4.7/4.8 did, with a few breaks that will bite you if you migrate blind:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!NdYB!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ed51fe7-ae34-45fd-a106-40fb581a6ac3_2400x1374.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!NdYB!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ed51fe7-ae34-45fd-a106-40fb581a6ac3_2400x1374.png 424w, https://substackcdn.com/image/fetch/$s_!NdYB!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ed51fe7-ae34-45fd-a106-40fb581a6ac3_2400x1374.png 848w, https://substackcdn.com/image/fetch/$s_!NdYB!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ed51fe7-ae34-45fd-a106-40fb581a6ac3_2400x1374.png 1272w, https://substackcdn.com/image/fetch/$s_!NdYB!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ed51fe7-ae34-45fd-a106-40fb581a6ac3_2400x1374.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!NdYB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ed51fe7-ae34-45fd-a106-40fb581a6ac3_2400x1374.png" width="1456" height="834" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5ed51fe7-ae34-45fd-a106-40fb581a6ac3_2400x1374.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:834,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:214108,&quot;alt&quot;:&quot;Claude Opus 4.8 vs. Fable 5: thinking, sampling, price, safeguards&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://www.productcompass.pm/i/201472436?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ed51fe7-ae34-45fd-a106-40fb581a6ac3_2400x1374.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Claude Opus 4.8 vs. Fable 5: thinking, sampling, price, safeguards" title="Claude Opus 4.8 vs. Fable 5: thinking, sampling, price, safeguards" srcset="https://substackcdn.com/image/fetch/$s_!NdYB!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ed51fe7-ae34-45fd-a106-40fb581a6ac3_2400x1374.png 424w, https://substackcdn.com/image/fetch/$s_!NdYB!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ed51fe7-ae34-45fd-a106-40fb581a6ac3_2400x1374.png 848w, https://substackcdn.com/image/fetch/$s_!NdYB!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ed51fe7-ae34-45fd-a106-40fb581a6ac3_2400x1374.png 1272w, https://substackcdn.com/image/fetch/$s_!NdYB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ed51fe7-ae34-45fd-a106-40fb581a6ac3_2400x1374.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">The row that matters isn't price. It's the thinking row: you lost the off switch</figcaption></figure></div><p>Three migration gotchas hiding in that table:</p><ol><li><p><strong>You can&#8217;t turn thinking off.</strong> Pipelines that set <code>thinking: disabled</code> for speed get a 400 error. The effort dial survives. Zero doesn&#8217;t.</p></li><li><p><strong>Temperature is gone.</strong> If your eval suite sweeps sampling settings, those configs fail on Fable.</p></li><li><p><strong>Until June 22, your API keys can&#8217;t reach it.</strong> Subscription surfaces only (Claude Code, Cowork, the apps). Plan your team&#8217;s testing window accordingly.</p></li></ol><h3>1.1 Fable 5 effort dial, measured</h3><p>Instead of taking the docs' word for it, I measured. First at 5 rounds on launch day, then at 20 rounds per cell on day four:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!o1Jv!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7caf9222-f7bc-44a9-97b7-ee772a0852b7_2400x2974.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!o1Jv!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7caf9222-f7bc-44a9-97b7-ee772a0852b7_2400x2974.png 424w, https://substackcdn.com/image/fetch/$s_!o1Jv!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7caf9222-f7bc-44a9-97b7-ee772a0852b7_2400x2974.png 848w, https://substackcdn.com/image/fetch/$s_!o1Jv!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7caf9222-f7bc-44a9-97b7-ee772a0852b7_2400x2974.png 1272w, https://substackcdn.com/image/fetch/$s_!o1Jv!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7caf9222-f7bc-44a9-97b7-ee772a0852b7_2400x2974.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!o1Jv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7caf9222-f7bc-44a9-97b7-ee772a0852b7_2400x2974.png" width="1456" height="1804" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7caf9222-f7bc-44a9-97b7-ee772a0852b7_2400x2974.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1804,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:628197,&quot;alt&quot;:&quot;Fable 5 effort dial, measured. Claude Fable 5 effort vs. speed.&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://www.productcompass.pm/i/201472436?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7caf9222-f7bc-44a9-97b7-ee772a0852b7_2400x2974.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Fable 5 effort dial, measured. Claude Fable 5 effort vs. speed." title="Fable 5 effort dial, measured. Claude Fable 5 effort vs. speed." srcset="https://substackcdn.com/image/fetch/$s_!o1Jv!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7caf9222-f7bc-44a9-97b7-ee772a0852b7_2400x2974.png 424w, https://substackcdn.com/image/fetch/$s_!o1Jv!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7caf9222-f7bc-44a9-97b7-ee772a0852b7_2400x2974.png 848w, https://substackcdn.com/image/fetch/$s_!o1Jv!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7caf9222-f7bc-44a9-97b7-ee772a0852b7_2400x2974.png 1272w, https://substackcdn.com/image/fetch/$s_!o1Jv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7caf9222-f7bc-44a9-97b7-ee772a0852b7_2400x2974.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>What held from launch day:</p><ul><li><p><strong>Below max, the dial barely moves.</strong> Thinking is adaptive. The model ignores budget it doesn&#8217;t need.</p></li><li><p><strong>Correctness never moved.</strong> On a hard math puzzle with a checkable answer, every effort level got it right, with the same method. The extra seconds bought re-verification and caveats, not better answers.</p></li></ul><p>What&#8217;s new at n=20: <strong>max is where Fable and Opus separate the most</strong>, 60.8 vs 49.0 seconds at the median. And that gap moved between builds. The top of the dial is the unstable part.</p><p>One gotcha worth this whole section. Pass a typo to <code>--effort</code> and the CLI <strong>silently falls back to your configured level</strong>, not the model default. I ran <code>--effort xyz</code> 20 times as a control: median 17.6 seconds, right on top of <code>xhigh</code> (18.5s), nowhere near <code>high</code> (13.6s).</p><p>So check your settings before you benchmark anything. My machine had <code>xhigh</code> persisted, which means every flag-less run I timed ran both models at <code>xhigh</code>. Matched, so the ratios stand. But the honest label on my charts is &#8220;matched effort,&#8221; not &#8220;out-of-box default.&#8221; <strong>The documented default is </strong><code>high</code><strong> on both Fable 5 and Opus 4.8.</strong></p><blockquote><p>The practical setting hasn&#8217;t changed: <strong>default to </strong><code>high</code>. Dialing down buys back a few seconds, not different answers. Max should stay a rare exception. It&#8217;s now the least stable level, too.</p></blockquote><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><h3>1.2 Fable 5 speed question, retested</h3><p>The loudest day-one complaint after the classifiers: <strong>&#8220;Fable is slow.&#8221;</strong> One widely shared review called it a crawl, &#8220;<em>even on simple tasks</em>.&#8221;</p><p>I couldn&#8217;t find numbers, so I made my own. 320 timed runs, both models at matched effort, stream-level timestamps, exact token counts, outliers kept:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!qjTg!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c72e58a-a203-47ee-b1a5-d47a8a19a76c_2400x3150.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!qjTg!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c72e58a-a203-47ee-b1a5-d47a8a19a76c_2400x3150.png 424w, https://substackcdn.com/image/fetch/$s_!qjTg!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c72e58a-a203-47ee-b1a5-d47a8a19a76c_2400x3150.png 848w, https://substackcdn.com/image/fetch/$s_!qjTg!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c72e58a-a203-47ee-b1a5-d47a8a19a76c_2400x3150.png 1272w, https://substackcdn.com/image/fetch/$s_!qjTg!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c72e58a-a203-47ee-b1a5-d47a8a19a76c_2400x3150.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!qjTg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c72e58a-a203-47ee-b1a5-d47a8a19a76c_2400x3150.png" width="1456" height="1911" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7c72e58a-a203-47ee-b1a5-d47a8a19a76c_2400x3150.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1911,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:689333,&quot;alt&quot;:&quot;Is Claude Fable 5 slow? Opus 4.8 vs Fable 5 speed, Fable tokens&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://www.productcompass.pm/i/201472436?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c72e58a-a203-47ee-b1a5-d47a8a19a76c_2400x3150.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Is Claude Fable 5 slow? Opus 4.8 vs Fable 5 speed, Fable tokens" title="Is Claude Fable 5 slow? Opus 4.8 vs Fable 5 speed, Fable tokens" srcset="https://substackcdn.com/image/fetch/$s_!qjTg!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c72e58a-a203-47ee-b1a5-d47a8a19a76c_2400x3150.png 424w, https://substackcdn.com/image/fetch/$s_!qjTg!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c72e58a-a203-47ee-b1a5-d47a8a19a76c_2400x3150.png 848w, https://substackcdn.com/image/fetch/$s_!qjTg!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c72e58a-a203-47ee-b1a5-d47a8a19a76c_2400x3150.png 1272w, https://substackcdn.com/image/fetch/$s_!qjTg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c72e58a-a203-47ee-b1a5-d47a8a19a76c_2400x3150.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>What held:</p><ul><li><p><strong>The starting pause is real.</strong> First visible activity at a median 6.7 seconds vs 4.3 for Opus. That 2.4-second blank screen is my bet for where the &#8220;it crawls&#8221; feeling comes from.</p></li><li><p><strong>The trivial tax is modest.</strong> On one-shot questions, Fable averaged 1.48x Opus wall-clock. Every answer correct from both models.</p></li></ul><p>What flipped on the retest:</p><ul><li><p><strong>&#8220;Denser, not slower&#8221; didn&#8217;t survive.</strong> On launch day, Fable used about 40% fewer output tokens on the same math problem and finished sooner. At n=20 the token gap shrank to 8%, and Fable finishes 1.5x behind.</p></li><li><p><strong>Neither did &#8220;the gap vanishes on real work.&#8221;</strong> Across 20 heavy multi-file audits, the median tax is 1.29x (best pair 0.92x, worst 1.70x). Two of twenty beat Opus outright. The tax flattens with task size. It doesn&#8217;t vanish.</p></li></ul><p>What didn&#8217;t move: correctness. <strong>All 240 graded answers correct</strong>, from both models.</p><blockquote><p>So the verdict is narrower than the discourse: budget a short pause at the start of every exchange, accept a 1.3 to 1.5x time tax, and ask what the extra time buys. Section 2 prices exactly that.</p></blockquote><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><h3>1.3 The benchmarks</h3><p>Anthropic&#8217;s official chart covers these better than any table I&#8217;d retype:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!70q8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd189ec9b-7cfb-420d-9f04-088eeed137f5_1200x1200.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!70q8!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd189ec9b-7cfb-420d-9f04-088eeed137f5_1200x1200.png 424w, https://substackcdn.com/image/fetch/$s_!70q8!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd189ec9b-7cfb-420d-9f04-088eeed137f5_1200x1200.png 848w, https://substackcdn.com/image/fetch/$s_!70q8!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd189ec9b-7cfb-420d-9f04-088eeed137f5_1200x1200.png 1272w, https://substackcdn.com/image/fetch/$s_!70q8!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd189ec9b-7cfb-420d-9f04-088eeed137f5_1200x1200.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!70q8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd189ec9b-7cfb-420d-9f04-088eeed137f5_1200x1200.png" width="1200" height="1200" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d189ec9b-7cfb-420d-9f04-088eeed137f5_1200x1200.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1200,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Mythos 5 &amp; Fable 5, comparing Claude Mythos 5 and Fable 5 against Claude Mythos Preview, Claude Opus 4.8, GPT 5.5, and Gemini 3.1 Pro. &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="Mythos 5 &amp; Fable 5, comparing Claude Mythos 5 and Fable 5 against Claude Mythos Preview, Claude Opus 4.8, GPT 5.5, and Gemini 3.1 Pro. " title="Mythos 5 &amp; Fable 5, comparing Claude Mythos 5 and Fable 5 against Claude Mythos Preview, Claude Opus 4.8, GPT 5.5, and Gemini 3.1 Pro. " srcset="https://substackcdn.com/image/fetch/$s_!70q8!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd189ec9b-7cfb-420d-9f04-088eeed137f5_1200x1200.png 424w, https://substackcdn.com/image/fetch/$s_!70q8!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd189ec9b-7cfb-420d-9f04-088eeed137f5_1200x1200.png 848w, https://substackcdn.com/image/fetch/$s_!70q8!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd189ec9b-7cfb-420d-9f04-088eeed137f5_1200x1200.png 1272w, https://substackcdn.com/image/fetch/$s_!70q8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd189ec9b-7cfb-420d-9f04-088eeed137f5_1200x1200.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Source: <a href="https://x.com/claudeai/status/2064394151441863006">@claudeai on X</a></figcaption></figure></div><p>Two things the official chart won&#8217;t tell you:</p><ul><li><p>The row that tells you what tier this is: <strong>FrontierCode Diamond</strong>, the hardest unseen problems in the set, where Fable more than doubles Opus 4.8 (29.3 vs 13.4) and runs 5x GPT-5.5:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!L6Ao!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b5c4378-ab1e-4b46-a78a-2989534abe0d_1200x702.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!L6Ao!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b5c4378-ab1e-4b46-a78a-2989534abe0d_1200x702.jpeg 424w, https://substackcdn.com/image/fetch/$s_!L6Ao!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b5c4378-ab1e-4b46-a78a-2989534abe0d_1200x702.jpeg 848w, https://substackcdn.com/image/fetch/$s_!L6Ao!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b5c4378-ab1e-4b46-a78a-2989534abe0d_1200x702.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!L6Ao!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b5c4378-ab1e-4b46-a78a-2989534abe0d_1200x702.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!L6Ao!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b5c4378-ab1e-4b46-a78a-2989534abe0d_1200x702.jpeg" width="1200" height="702" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3b5c4378-ab1e-4b46-a78a-2989534abe0d_1200x702.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:702,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;FrontierCode Diamond chart: Claude 5 Fable is already 30% of the way to saturating it&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="FrontierCode Diamond chart: Claude 5 Fable is already 30% of the way to saturating it" title="FrontierCode Diamond chart: Claude 5 Fable is already 30% of the way to saturating it" srcset="https://substackcdn.com/image/fetch/$s_!L6Ao!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b5c4378-ab1e-4b46-a78a-2989534abe0d_1200x702.jpeg 424w, https://substackcdn.com/image/fetch/$s_!L6Ao!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b5c4378-ab1e-4b46-a78a-2989534abe0d_1200x702.jpeg 848w, https://substackcdn.com/image/fetch/$s_!L6Ao!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b5c4378-ab1e-4b46-a78a-2989534abe0d_1200x702.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!L6Ao!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b5c4378-ab1e-4b46-a78a-2989534abe0d_1200x702.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Source: <a href="https://x.com/ChrissGPT/status/2064404270607134792">@ChrissGPT on X</a></figcaption></figure></div></li></ul><ul><li><p>And one honest footnote from the <a href="https://www-cdn.anthropic.com/d00db56fa754a1b115b6dd7cb2e3c342ee809620.pdf">system card</a>: Fable&#8217;s published scores already include its production safeguards, which is why some rows run slightly below Mythos.</p></li></ul><div><hr></div><h2><strong>2. What a Real Finding Costs</strong></h2><p>Fable bills <strong>2x per token</strong>. Here&#8217;s what that turns into when the task is finding problems, not answering questions.</p><p>I ran 60 audits of the same three style-guide files, 30 per model. Every run was metered from session traces and validated to the cent against the CLI&#8217;s own billing:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!tfG8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F690b8b08-5d92-4a85-9227-bada897c824e_2400x3164.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!tfG8!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F690b8b08-5d92-4a85-9227-bada897c824e_2400x3164.png 424w, https://substackcdn.com/image/fetch/$s_!tfG8!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F690b8b08-5d92-4a85-9227-bada897c824e_2400x3164.png 848w, https://substackcdn.com/image/fetch/$s_!tfG8!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F690b8b08-5d92-4a85-9227-bada897c824e_2400x3164.png 1272w, https://substackcdn.com/image/fetch/$s_!tfG8!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F690b8b08-5d92-4a85-9227-bada897c824e_2400x3164.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!tfG8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F690b8b08-5d92-4a85-9227-bada897c824e_2400x3164.png" width="1456" height="1919" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/690b8b08-5d92-4a85-9227-bada897c824e_2400x3164.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1919,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:762003,&quot;alt&quot;:&quot;Claude Fable bills 2x per token, ROI, cost per finding&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://www.productcompass.pm/i/201472436?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F690b8b08-5d92-4a85-9227-bada897c824e_2400x3164.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Claude Fable bills 2x per token, ROI, cost per finding" title="Claude Fable bills 2x per token, ROI, cost per finding" srcset="https://substackcdn.com/image/fetch/$s_!tfG8!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F690b8b08-5d92-4a85-9227-bada897c824e_2400x3164.png 424w, https://substackcdn.com/image/fetch/$s_!tfG8!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F690b8b08-5d92-4a85-9227-bada897c824e_2400x3164.png 848w, https://substackcdn.com/image/fetch/$s_!tfG8!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F690b8b08-5d92-4a85-9227-bada897c824e_2400x3164.png 1272w, https://substackcdn.com/image/fetch/$s_!tfG8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F690b8b08-5d92-4a85-9227-bada897c824e_2400x3164.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Three prices for the same work:</p><ul><li><p><strong>Per audit: 2.5x.</strong> $2.93 vs $1.17 at the median. Wider than the price sheet, because Fable also writes more.</p></li><li><p><strong>Per finding: 1.25x.</strong> Fable surfaces a median 14 distinct findings per report vs Opus&#8217;s 7. So $0.21 vs $0.17 each.</p></li><li><p><strong>Per the bug that matters: 0.25x.</strong> One planted issue required reading two files against each other. Fable caught it in 20 of 30 audits. Opus caught it in 2.</p></li></ul><p>That last row is the one your invoice feels. Expected spend per deep catch: $4.40 with Fable, $17.55 with Opus. <strong>The expensive model is 4x cheaper!</strong></p><p>It&#8217;s not &#8220;<em>Fable finds everything</em>,&#8221; though. A same-file style clash got caught more often by Opus, 16/30 vs 12/30. Depth and breadth are different axes.</p><blockquote><p><strong>For PMs:</strong> price the outcome, not the tokens. Per token, Fable costs 2x. Per deep finding, a quarter. <strong>Whoever frames the unit wins the budget conversation</strong>, and that&#8217;s as true for your product&#8217;s pricing page as it is for your AI bill.</p></blockquote><div><hr></div><h2><strong>3. The Safeguard Layer Most Coverage Missed</strong></h2><h3>3.1 The visible layer: routing</h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!E1a9!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf458355-cabf-4c34-a451-acc41a14bb4d_2400x2092.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!E1a9!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf458355-cabf-4c34-a451-acc41a14bb4d_2400x2092.png 424w, https://substackcdn.com/image/fetch/$s_!E1a9!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf458355-cabf-4c34-a451-acc41a14bb4d_2400x2092.png 848w, https://substackcdn.com/image/fetch/$s_!E1a9!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf458355-cabf-4c34-a451-acc41a14bb4d_2400x2092.png 1272w, https://substackcdn.com/image/fetch/$s_!E1a9!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf458355-cabf-4c34-a451-acc41a14bb4d_2400x2092.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!E1a9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf458355-cabf-4c34-a451-acc41a14bb4d_2400x2092.png" width="1456" height="1269" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/bf458355-cabf-4c34-a451-acc41a14bb4d_2400x2092.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1269,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1960457,&quot;alt&quot;:&quot;Claude Fable 5 routing. Fable 5 ships with classifiers that screen for high-risk domains: cyber offense, biological and chemical synthesis, and model distillation.&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://www.productcompass.pm/i/201472436?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf458355-cabf-4c34-a451-acc41a14bb4d_2400x2092.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Claude Fable 5 routing. Fable 5 ships with classifiers that screen for high-risk domains: cyber offense, biological and chemical synthesis, and model distillation." title="Claude Fable 5 routing. Fable 5 ships with classifiers that screen for high-risk domains: cyber offense, biological and chemical synthesis, and model distillation." srcset="https://substackcdn.com/image/fetch/$s_!E1a9!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf458355-cabf-4c34-a451-acc41a14bb4d_2400x2092.png 424w, https://substackcdn.com/image/fetch/$s_!E1a9!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf458355-cabf-4c34-a451-acc41a14bb4d_2400x2092.png 848w, https://substackcdn.com/image/fetch/$s_!E1a9!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf458355-cabf-4c34-a451-acc41a14bb4d_2400x2092.png 1272w, https://substackcdn.com/image/fetch/$s_!E1a9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbf458355-cabf-4c34-a451-acc41a14bb4d_2400x2092.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Fable 5 ships with classifiers that screen for high-risk domains. When a query trips one, the session is routed to Opus 4.8 instead, and you get a notification. Anthropic puts it at ~5% of sessions.</p><p>My own experiments with subagents got capped, 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_!2B6P!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe597344a-7a82-4687-bfe8-60082fe41a42_1275x320.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!2B6P!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe597344a-7a82-4687-bfe8-60082fe41a42_1275x320.png 424w, https://substackcdn.com/image/fetch/$s_!2B6P!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe597344a-7a82-4687-bfe8-60082fe41a42_1275x320.png 848w, https://substackcdn.com/image/fetch/$s_!2B6P!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe597344a-7a82-4687-bfe8-60082fe41a42_1275x320.png 1272w, https://substackcdn.com/image/fetch/$s_!2B6P!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe597344a-7a82-4687-bfe8-60082fe41a42_1275x320.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!2B6P!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe597344a-7a82-4687-bfe8-60082fe41a42_1275x320.png" width="1275" height="320" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e597344a-7a82-4687-bfe8-60082fe41a42_1275x320.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:320,&quot;width&quot;:1275,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:69114,&quot;alt&quot;:&quot;Claude Fable's safety measures flagged this message&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://www.productcompass.pm/i/201472436?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe597344a-7a82-4687-bfe8-60082fe41a42_1275x320.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Claude Fable's safety measures flagged this message" title="Claude Fable's safety measures flagged this message" srcset="https://substackcdn.com/image/fetch/$s_!2B6P!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe597344a-7a82-4687-bfe8-60082fe41a42_1275x320.png 424w, https://substackcdn.com/image/fetch/$s_!2B6P!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe597344a-7a82-4687-bfe8-60082fe41a42_1275x320.png 848w, https://substackcdn.com/image/fetch/$s_!2B6P!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe597344a-7a82-4687-bfe8-60082fe41a42_1275x320.png 1272w, https://substackcdn.com/image/fetch/$s_!2B6P!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe597344a-7a82-4687-bfe8-60082fe41a42_1275x320.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>It doesn&#8217;t fail the query. It hands it to a different model, on purpose, and tells you. The capability ceiling and the safeguard layer are different things, and knowing which one you hit changes what you do next.</p><p><strong>And the reroute sticks.</strong> Per the Claude Code docs, the session continues on Opus after a flag. <code>/model fable</code> takes you back, but if the trigger is still in your context, the next request just bounces you again. I learned that one live. My first read was &#8220;you can&#8217;t switch back.&#8221; The docs&#8217; version is more precise: <strong>you can switch back, you just can&#8217;t stay.</strong></p><p><strong>The classifier reads your workspace, too.</strong> CLAUDE.md content and git status ride along on the first request. So a repo full of security or biology material can reroute a session before you&#8217;ve typed anything unusual.</p><p>Why does the screen exist at all? According to Anthropic, &#8220;<em>Mythos-class models have</em> <em><strong>reached a threshold where they present significant risks</strong>.</em>&#8220; The example they give: these models &#8220;<em>excel at discovering and exploiting software vulnerabilities</em>,&#8221; enough to make cyberattacks &#8220;<em>substantially easier and cheaper to commit</em>.&#8221;</p><p>There&#8217;s also a second, invisible layer. Per the system card&#8217;s Section 1.5, requests targeting frontier LLM development itself don&#8217;t reroute. They get quietly degraded, with no notification, on ~0.03% of traffic. Unless your team pretrains models, you&#8217;ll never hit it. Researchers are furious anyway (Elie Bakouch&#8217;s &#8220;<em><a href="https://x.com/eliebakouch/status/2064399902684139852">very very sad for the research community</a></em>&#8220;), and the precedent stands: <strong>the model you bought can be tuned down by topic, silently.</strong></p><h3>3.2 What this means for your team</h3><p>Four practical notes from the first four days:</p><ul><li><p><strong>Expect occasional routing,</strong> especially if your work touches security, healthcare, or biotech. Anthropic admits it (Claude Code&#8217;s Boris Cherny: &#8220;<em>We know the classifiers are trigger-happy, and are working on improving it</em>&#8220;). The notification is your signal: you did nothing wrong, and the floor is &#8220;merely Opus 4.8.&#8221; For security audits, the supported path is the built-in <code>/security-review</code> command. Also see my <a href="https://github.com/phuryn/pm-skills">/security-review-static</a>, which inspects the full solution, not just the diff.</p></li><li><p><strong>Two diagnostics worth knowing.</strong> For example, <code>claude --safe-mode</code> starts a session without your customizations, so you can check whether your own files are the trigger. And <code>/config</code> has a toggle that <strong>asks before switching</strong> instead of switching silently.</p></li><li><p><strong>Once flagged, decide fast.</strong> Treat the session as an Opus session or start clean. Don&#8217;t fight the classifier mid-context.</p></li><li><p><strong>The API behaves differently.</strong> When per-token access opens June 22, a tripped classifier <strong>blocks the request</strong> and returns a structured refusal category. There&#8217;s no automatic fallback by default. Server-side <strong>fallback to Opus is opt-in</strong>. The same applies to <code>claude -p</code> scripts today: non-interactive runs get a refusal, not a reroute.</p></li></ul><p>The safeguard is worth copying: it swaps your model mid-session for safety. <strong>We can swap on purpose, for cost.</strong> Keep a cheaper model as your default and bring in Fable 5 only for the one call that needs it. Section 8 has what that costs.</p><div><hr></div><p><em><strong>Side Note:</strong> On September 1 we&#8217;re launching the 3rd edition of Claudathon. It&#8217;s a hands-on program to learn by building and shipping production-ready apps with embedded agents.</em></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Kquw!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f93f3e0-96ac-43e0-97ec-b76fed50ff1c_1877x1207.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Kquw!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f93f3e0-96ac-43e0-97ec-b76fed50ff1c_1877x1207.png 424w, https://substackcdn.com/image/fetch/$s_!Kquw!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f93f3e0-96ac-43e0-97ec-b76fed50ff1c_1877x1207.png 848w, https://substackcdn.com/image/fetch/$s_!Kquw!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f93f3e0-96ac-43e0-97ec-b76fed50ff1c_1877x1207.png 1272w, https://substackcdn.com/image/fetch/$s_!Kquw!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f93f3e0-96ac-43e0-97ec-b76fed50ff1c_1877x1207.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Kquw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f93f3e0-96ac-43e0-97ec-b76fed50ff1c_1877x1207.png" width="1456" height="936" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2f93f3e0-96ac-43e0-97ec-b76fed50ff1c_1877x1207.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:936,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:384441,&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://www.productcompass.pm/i/201472436?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f93f3e0-96ac-43e0-97ec-b76fed50ff1c_1877x1207.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_!Kquw!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f93f3e0-96ac-43e0-97ec-b76fed50ff1c_1877x1207.png 424w, https://substackcdn.com/image/fetch/$s_!Kquw!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f93f3e0-96ac-43e0-97ec-b76fed50ff1c_1877x1207.png 848w, https://substackcdn.com/image/fetch/$s_!Kquw!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f93f3e0-96ac-43e0-97ec-b76fed50ff1c_1877x1207.png 1272w, https://substackcdn.com/image/fetch/$s_!Kquw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f93f3e0-96ac-43e0-97ec-b76fed50ff1c_1877x1207.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><a href="https://go.productcompass.pm/claudathon">Claudathon</a>, Start: September 1, 2026</figcaption></figure></div><p><em>Before the cohort you should get familiar with the basics: VS Code, CLAUDE.md, skills (we provide the materials).</em></p><p><em>Early bid discount: <a href="https://go.productcompass.pm/claudathon">https://go.productcompass.pm/claudathon</a><br>Paid annual subscribers who enroll get a refund for the current billing period.</em></p><div><hr></div><h2><strong>4. Judgment Is the Feature</strong></h2><p>The benchmarks got their chart in Section 1. The interesting part of this launch is a behavior change.</p><p>One disclosure before the quotes: every voice quoted in praise here works at Anthropic. Read them as insider testimony, not independent validation, then check them against my receipts.</p><p>Karpathy called it &#8220;<em>a major-version-bump-deserving step change forward</em>,&#8221; strongest &#8220;<em>for long problem-solving sessions on very difficult problems</em>:&#8221;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!gHgE!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6cea8a15-e554-4d9f-869c-0b3951f71b3d_1494x662.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!gHgE!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6cea8a15-e554-4d9f-869c-0b3951f71b3d_1494x662.png 424w, https://substackcdn.com/image/fetch/$s_!gHgE!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6cea8a15-e554-4d9f-869c-0b3951f71b3d_1494x662.png 848w, https://substackcdn.com/image/fetch/$s_!gHgE!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6cea8a15-e554-4d9f-869c-0b3951f71b3d_1494x662.png 1272w, https://substackcdn.com/image/fetch/$s_!gHgE!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6cea8a15-e554-4d9f-869c-0b3951f71b3d_1494x662.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!gHgE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6cea8a15-e554-4d9f-869c-0b3951f71b3d_1494x662.png" width="1456" height="645" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6cea8a15-e554-4d9f-869c-0b3951f71b3d_1494x662.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:645,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:273818,&quot;alt&quot;:&quot;Andrej Karpathy on Claude Fable 5: a major-version-bump-deserving step change forward&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://www.productcompass.pm/i/201472436?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6cea8a15-e554-4d9f-869c-0b3951f71b3d_1494x662.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Andrej Karpathy on Claude Fable 5: a major-version-bump-deserving step change forward" title="Andrej Karpathy on Claude Fable 5: a major-version-bump-deserving step change forward" srcset="https://substackcdn.com/image/fetch/$s_!gHgE!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6cea8a15-e554-4d9f-869c-0b3951f71b3d_1494x662.png 424w, https://substackcdn.com/image/fetch/$s_!gHgE!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6cea8a15-e554-4d9f-869c-0b3951f71b3d_1494x662.png 848w, https://substackcdn.com/image/fetch/$s_!gHgE!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6cea8a15-e554-4d9f-869c-0b3951f71b3d_1494x662.png 1272w, https://substackcdn.com/image/fetch/$s_!gHgE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6cea8a15-e554-4d9f-869c-0b3951f71b3d_1494x662.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>The people building Claude Code describe the same thing. Cherny, from his launch post: Fable "<em>has judgement, taste, and dimensionality in a way that previous models didn't</em>:"</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jBOD!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F034add2b-a628-4b63-b27f-ce3b3ed24604_1496x458.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jBOD!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F034add2b-a628-4b63-b27f-ce3b3ed24604_1496x458.png 424w, https://substackcdn.com/image/fetch/$s_!jBOD!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F034add2b-a628-4b63-b27f-ce3b3ed24604_1496x458.png 848w, https://substackcdn.com/image/fetch/$s_!jBOD!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F034add2b-a628-4b63-b27f-ce3b3ed24604_1496x458.png 1272w, https://substackcdn.com/image/fetch/$s_!jBOD!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F034add2b-a628-4b63-b27f-ce3b3ed24604_1496x458.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jBOD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F034add2b-a628-4b63-b27f-ce3b3ed24604_1496x458.png" width="1456" height="446" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/034add2b-a628-4b63-b27f-ce3b3ed24604_1496x458.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:446,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:180662,&quot;alt&quot;:&quot;Boris Cherny on Claude Fable 5: has judgement, taste, and dimensionality in a way that previous models didn&#8217;t&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://www.productcompass.pm/i/201472436?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F034add2b-a628-4b63-b27f-ce3b3ed24604_1496x458.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Boris Cherny on Claude Fable 5: has judgement, taste, and dimensionality in a way that previous models didn&#8217;t" title="Boris Cherny on Claude Fable 5: has judgement, taste, and dimensionality in a way that previous models didn&#8217;t" srcset="https://substackcdn.com/image/fetch/$s_!jBOD!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F034add2b-a628-4b63-b27f-ce3b3ed24604_1496x458.png 424w, https://substackcdn.com/image/fetch/$s_!jBOD!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F034add2b-a628-4b63-b27f-ce3b3ed24604_1496x458.png 848w, https://substackcdn.com/image/fetch/$s_!jBOD!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F034add2b-a628-4b63-b27f-ce3b3ed24604_1496x458.png 1272w, https://substackcdn.com/image/fetch/$s_!jBOD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F034add2b-a628-4b63-b27f-ce3b3ed24604_1496x458.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>He asked it to debug something, and it took measurements, added logs, and verified the fix before declaring victory. Then the line that stuck with me: "<em>There's nothing in claude code's prompting telling the model to do that, it's just part of its personality.</em>"</p><p>Thariq Shihipar compressed it to six words: "<em>it's time to be more ambitious:</em>"</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!LeAO!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0823cc9-4733-49df-8835-a5150ef48eab_1493x373.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!LeAO!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0823cc9-4733-49df-8835-a5150ef48eab_1493x373.png 424w, https://substackcdn.com/image/fetch/$s_!LeAO!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0823cc9-4733-49df-8835-a5150ef48eab_1493x373.png 848w, https://substackcdn.com/image/fetch/$s_!LeAO!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0823cc9-4733-49df-8835-a5150ef48eab_1493x373.png 1272w, https://substackcdn.com/image/fetch/$s_!LeAO!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0823cc9-4733-49df-8835-a5150ef48eab_1493x373.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!LeAO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0823cc9-4733-49df-8835-a5150ef48eab_1493x373.png" width="1456" height="364" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d0823cc9-4733-49df-8835-a5150ef48eab_1493x373.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:364,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:94116,&quot;alt&quot;:&quot;Thariq Shihipar on CLaude Fable 5: it's time to be more ambitious&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://www.productcompass.pm/i/201472436?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0823cc9-4733-49df-8835-a5150ef48eab_1493x373.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Thariq Shihipar on CLaude Fable 5: it's time to be more ambitious" title="Thariq Shihipar on CLaude Fable 5: it's time to be more ambitious" srcset="https://substackcdn.com/image/fetch/$s_!LeAO!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0823cc9-4733-49df-8835-a5150ef48eab_1493x373.png 424w, https://substackcdn.com/image/fetch/$s_!LeAO!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0823cc9-4733-49df-8835-a5150ef48eab_1493x373.png 848w, https://substackcdn.com/image/fetch/$s_!LeAO!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0823cc9-4733-49df-8835-a5150ef48eab_1493x373.png 1272w, https://substackcdn.com/image/fetch/$s_!LeAO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0823cc9-4733-49df-8835-a5150ef48eab_1493x373.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>The closest thing to an outside read, four days in, is the shape of the criticism. Researchers are <strong>angry about the invisible safeguards</strong> (Section 3). Dylan Patel of SemiAnalysis reports power users defecting to Codex after &#8220;<em><a href="https://x.com/dylan522p/status/2064727949274955953">refusals for nonsensical reasons</a></em>.&#8221; Both complaints are about <strong>access to the capability</strong>. Neither questions the capability.</p><blockquote><p>My version of that moment is the one this guide opened with. Fable read my instruction files and <strong>started surfacing contradictions instead of executing them</strong>. Previous models followed my rules. This one evaluated them.</p></blockquote><p>That shift is part of a larger question: <a href="https://www.productcompass.pm/p/will-we-lose-our-jobs-to-ai-the-lies">Will We Lose Our Jobs to AI? Cutting Through the Hype</a>.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h2><strong>5. Your Knowledge Layer Was Built for a Weaker Model</strong></h2><p>Fable flagged the first contradiction on its own, mid-task, before I&#8217;d read anyone&#8217;s tips. So I gave it the full job: read everything my agents follow and report what&#8217;s wrong.</p><p>That conclusion is consistent with voices inside Anthropic. Alex Albert&#8217;s launch tips name the same mechanism: <strong>instructions written for old models keep Fable behaving like those old models.</strong> Rework your skills and CLAUDE.md files. Let the model use its own judgment first.</p><h3>5.1 What Fable found in my repo</h3><p>My agents maintain those files, not me. I trusted Opus to keep them clean enough. Still, five finds:</p><ul><li><p><strong>A hardcoded date telling the model what day it is.</strong> One strategy file contains &#8220;<em>(today is 2026-05-24)</em>&#8220;, written during a May session and never noticed again. Every session since has been told the wrong date by its own instructions.</p></li><li><p><strong>A rule documented with the pattern it bans.</strong> My writing system bans em dashes in published content. The file that documents the ban is written with em dashes. Instructions teach by example as much as by rule.</p></li><li><p><strong>Calibration constants that drifted.</strong> An X voice rule still gates on an audience under 50K followers. That number was true when the rule was written. It isn&#8217;t two months later (75K).</p></li><li><p><strong>Guardrails for failure modes the new model doesn&#8217;t have.</strong> Rules like &#8220;<em>never delegate judgment-heavy work to cheaper models</em>&#8220; and complex self-check procedures exist because earlier models needed them. Each one now eats context and pulls the model toward old habits.</p></li><li><p><strong>The same rule stated in three files.</strong> Three maintenance surfaces, three chances to drift apart.</p></li></ul><p>Some were plain mistakes. The rest were right for the model they were written for. That&#8217;s exactly the problem. <strong>The better your system was for the last model, the more it holds back this one.</strong></p><h3>5.2 Written by a weaker model</h3><p>The pushback I got within hours of <a href="https://x.com/PawelHuryn/status/2064447192212127937">posting my first thoughts on X</a>: if your files contradict each other, isn&#8217;t that just sloppy housekeeping?</p><p>Fair question, wrong model of the system.</p><p>This knowledge layer isn&#8217;t a config file a human writes once. It&#8217;s self-improving: agents file evidence as they work, turn evidence into working rules, and edit their own CLAUDE.md (the system from <a href="https://www.productcompass.pm/p/claude-md-snippets">Three CLAUDE.md Blocks</a>). 166 files, maintained partly by the things that read them.</p><p>In a system like that, contradictions aren&#8217;t carelessness. They&#8217;re drift, the same drift every wiki and every org&#8217;s process docs accumulate, except here it accumulates as fast as the agents write.</p><p>That creates the real trap: a knowledge layer written by a weaker model has a flaw no amount of review can fix. Every line an agent added passed review by the model that added it, by definition. <strong>A system maintained by model N tends to preserve the errors model N can&#8217;t see.</strong></p><p>I review these files every day and didn&#8217;t catch it. Neither did Codex, which <a href="https://www.productcompass.pm/p/codex-setup-for-pms">reviews my knowledge files as a second pair of eyes</a>.</p><h3>5.3 The audit prompt</h3><p>So the first prompt I ran with Fable 5 wasn&#8217;t a task. It&#8217;s the prompt I&#8217;d now run before giving any new model real work, and it&#8217;s yours:</p><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;markdown&quot;,&quot;nodeId&quot;:&quot;f12436d2-93c2-4fe8-b10d-28fc66233ed6&quot;}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-markdown">Read your own instruction files (CLAUDE.md, skills, rules, memory files) end to end.

1. Where do they contradict each other? Quote both sides.
2. Which rules exist to manage a weaker model: guardrails for failure
   modes you don't have, recipes for things you no longer need spelled
   out, hardcoded facts that have drifted? List them with file:line.
3. Which rules teach by bad example: documents that violate the
   patterns they prescribe?
4. What would you delete? What would you keep exactly as is, and why?

Don't fix anything yet. Report first. I decide what gets cut.</code></pre></div><p>The audit is the model's judgment; the deletions are yours. What you do with the report, and how I turned mine into a repeatable migration workflow, is where we go next.</p><div><hr></div><p><strong>Behind the paywall:</strong></p><ul><li><p><strong>The migration workflow</strong> &#8594; the three-bucket rule classification (constraint, calibration, scaffolding) so you cut anchors without cutting your actual taste</p></li><li><p><strong>Objectives, not tasks</strong> &#8594; the <code>/goal</code> patterns that let Fable run long PM work unattended + 2 prompt templates</p></li><li><p><strong>How deep agents and workflows stack now</strong> &#8594; my depth-10 experiments, the 2.54x cost multiplier</p></li><li><p><strong>Delegating and escalating work with Fable </strong>&#8594; my CLAUDE.md snippet</p></li><li><p><strong>What doesn&#8217;t work (yet)</strong> &#8594; the honest list, so you spend your first week on the parts that do</p></li><li><p><strong>The week-one plan</strong> &#8594; day by day, copy-paste ready</p></li></ul>
      <p>
          <a href="https://www.productcompass.pm/p/claude-fable-5-guide">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[Claude Dynamic Workflows for PMs: The Ultimate Guide]]></title><description><![CDATA[Anthropic just shipped them. Set a PM goal tonight; check the results tomorrow.]]></description><link>https://www.productcompass.pm/p/claude-code-dynamic-workflows</link><guid isPermaLink="false">https://www.productcompass.pm/p/claude-code-dynamic-workflows</guid><dc:creator><![CDATA[Paweł Huryn]]></dc:creator><pubDate>Sun, 07 Jun 2026 09:43:53 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/45fc4d94-9eb3-47b8-8b12-bea27a729b28_1280x720.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>Hey, Pawe&#322; here. Welcome to the premium edition of The Product Compass Newsletter. Every week, I share actionable tips, templates, resources, and experiments for AI-native PMs.</em></p><p><em>Here&#8217;s what you might have missed:</em></p><ul><li><p><em><a href="https://www.productcompass.pm/p/introduction-to-ai-product-management">Introduction to AI PM: Neural Networks, Transformers, and LLMs</a></em></p></li><li><p><em><a href="https://www.productcompass.pm/p/claude-design-product-discovery">From Weeks to Hours: How Claude Design Compresses Product Discovery</a></em></p></li><li><p><em><a href="https://www.productcompass.pm/p/claude-code-beginners-guide">Claude Code for PMs: The Beginner&#8217;s Guide</a></em></p></li><li><p><em><a href="https://www.productcompass.pm/p/stop-hitting-claude-code-limits">Claude Code&#8217;s Limits Are Generous. The Problem Is Your Setup.</a></em></p></li><li><p><em><a href="https://www.productcompass.pm/p/claude-md-snippets">Three CLAUDE.md Blocks That Make Claude Get Smarter Every Session</a></em></p></li></ul><p><em>Consider subscribing or upgrading for the full experience.</em></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><p>Last week, inside Claude Code, I gave Claude a product-discovery job and added one short keyword: <mark data-color="#fce5cd" style="background-color: rgb(252, 229, 205); color: rgb(0, 0, 0);">ultracode</mark>. I expected a better answer. Instead, it wrote a short program, spun up a fleet of agents, and ran the work through that program. </p><p>113 agents spent 1.95M tokens. The JavaScript that coordinated them spent zero model tokens. That distinction matters: the model did the judgment, the code did the coordination.</p><p>What surprised me wasn&#8217;t that Claude wrote code. It was that the most important coordination moved outside the model&#8217;s context window.</p><p>That changes how much one PM can run.</p><p><strong>We&#8217;ll cover:</strong></p><ul><li><p>What a dynamic workflow is, and the token number that proves it</p></li><li><p>How it compares to n8n</p></li><li><p>Why it works: four reasons, and the three failure modes a harness fixes</p></li><li><p>The six patterns worth knowing</p></li><li><p>A worked product-discovery loop on 100 interviews, end to end</p></li><li><p>How to build, run, and contain one, and when not to</p></li></ul><p><strong>We won&#8217;t cover:</strong></p><ul><li><p>The Agent SDK internals</p></li><li><p>Fancy terms to memorize</p></li></ul><p>This is the operating model, not the API docs.</p><div><hr></div><h2><strong>1. What a Dynamic Workflow Is</strong></h2><h3>1.1 The mechanism: the orchestrator is code, not a model turn</h3><p>A dynamic workflow is a short JavaScript program Claude writes on the fly to coordinate subagents. You trigger it with the <mark data-color="#fce5cd" style="background-color: rgb(252, 229, 205); color: rgb(0, 0, 0);">ultracode</mark> keyword, or by asking Claude to use a workflow. It reads the job, writes a script, spawns the agents, and merges what they return.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!6P3j!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F394ecf50-1971-4ac8-9f38-cdeba7378603_1672x990.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!6P3j!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F394ecf50-1971-4ac8-9f38-cdeba7378603_1672x990.png 424w, https://substackcdn.com/image/fetch/$s_!6P3j!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F394ecf50-1971-4ac8-9f38-cdeba7378603_1672x990.png 848w, https://substackcdn.com/image/fetch/$s_!6P3j!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F394ecf50-1971-4ac8-9f38-cdeba7378603_1672x990.png 1272w, https://substackcdn.com/image/fetch/$s_!6P3j!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F394ecf50-1971-4ac8-9f38-cdeba7378603_1672x990.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!6P3j!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F394ecf50-1971-4ac8-9f38-cdeba7378603_1672x990.png" width="1456" height="862" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/394ecf50-1971-4ac8-9f38-cdeba7378603_1672x990.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:862,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2692918,&quot;alt&quot;:&quot;Claude dynamic workflows: The agents do the work; the code that coordinates them spends zero model tokens.&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://www.productcompass.pm/i/200944612?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F394ecf50-1971-4ac8-9f38-cdeba7378603_1672x990.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Claude dynamic workflows: The agents do the work; the code that coordinates them spends zero model tokens." title="Claude dynamic workflows: The agents do the work; the code that coordinates them spends zero model tokens." srcset="https://substackcdn.com/image/fetch/$s_!6P3j!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F394ecf50-1971-4ac8-9f38-cdeba7378603_1672x990.png 424w, https://substackcdn.com/image/fetch/$s_!6P3j!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F394ecf50-1971-4ac8-9f38-cdeba7378603_1672x990.png 848w, https://substackcdn.com/image/fetch/$s_!6P3j!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F394ecf50-1971-4ac8-9f38-cdeba7378603_1672x990.png 1272w, https://substackcdn.com/image/fetch/$s_!6P3j!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F394ecf50-1971-4ac8-9f38-cdeba7378603_1672x990.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">The agents do the work; the code that coordinates them spends zero model tokens.</figcaption></figure></div><p>When you fan out 20 agents, something decides what each does, collects results, and drops duplicates. The old way, that something was the model, and every decision was a paid turn. Now it's ordinary code: loops, filters, sorting. None of it calls a model, so the routing is free. The agents still cost tokens; the glue between them doesn't.</p><h3>1.2 How it compares to n8n</h3><p>If you run n8n, you've made half this move. n8n took the glue between your tools and put it in a graph. A dynamic workflow takes the glue between agents and puts it in code. Same instinct, one level up.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!V0Pe!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23612cc8-e7bc-4117-8b18-6423f22eaeda_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!V0Pe!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23612cc8-e7bc-4117-8b18-6423f22eaeda_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!V0Pe!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23612cc8-e7bc-4117-8b18-6423f22eaeda_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!V0Pe!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23612cc8-e7bc-4117-8b18-6423f22eaeda_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!V0Pe!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23612cc8-e7bc-4117-8b18-6423f22eaeda_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!V0Pe!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23612cc8-e7bc-4117-8b18-6423f22eaeda_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/23612cc8-e7bc-4117-8b18-6423f22eaeda_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2371806,&quot;alt&quot;:&quot;Claude dynamic workflows vs. n8n&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://www.productcompass.pm/i/200944612?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23612cc8-e7bc-4117-8b18-6423f22eaeda_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Claude dynamic workflows vs. n8n" title="Claude dynamic workflows vs. n8n" srcset="https://substackcdn.com/image/fetch/$s_!V0Pe!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23612cc8-e7bc-4117-8b18-6423f22eaeda_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!V0Pe!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23612cc8-e7bc-4117-8b18-6423f22eaeda_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!V0Pe!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23612cc8-e7bc-4117-8b18-6423f22eaeda_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!V0Pe!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23612cc8-e7bc-4117-8b18-6423f22eaeda_1536x1024.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">n8n glues your tools; a dynamic workflow glues your agents.</figcaption></figure></div><p>This isn't an n8n replacement. <a href="https://www.productcompass.pm/p/the-ultimate-guide-to-n8n-for-pms">n8n asks</a>: how do I connect tools I already know? A dynamic workflow asks: how do I let the agent build the procedure for this run?</p><p>You could already ask Claude to write code that coordinates agents with the <a href="https://www.productcompass.pm/p/claude-agent-sdk-production-agent">Agent SDK</a>, but those are <strong>embedded agents</strong>: the ones you build into your own app or product. A dynamic workflow coordinates <strong>workspace agents</strong>: the ones doing your actual work (coding, research, knowledge work) inside Claude Code. The SDK is for the agents you ship; dynamic workflows are for the agent you work with.</p><h3>1.3 When a workflow beats a subagent</h3><p>How do you know it&#8217;s time to stop prompting and start orchestrating?</p><p>Subagents already fan out and synthesize: Opus delegating to a fleet, one round, then a merge. So a single fan-out is not the reason to reach for a workflow. The reason is what happens <strong>after the fan-out</strong>, when the output of one stage decides the next.</p><p>A mental model:</p><ul><li><p><strong>Use subagents</strong> when the job is one round of parallel judgment.</p></li><li><p><strong>Use a dynamic workflow</strong> when stage N&#8217;s output determines stage N+1: route, score, filter, loop, retry, generate, verify, build.</p></li></ul><blockquote><p><strong>For PMs:</strong> subagents are the workers; the workflow is the operating procedure. The expensive resource (a model's reasoning) goes to each stage; the cheap resource (code) decides the order, which model tier runs each stage, and what carries forward.</p></blockquote><div><hr></div><h2><strong>2. Why Move the Orchestrator Off the Model</strong></h2><p>The reason to reach for a workflow isn't that it's more "advanced" than an agent. It's that it moves the fragile part out of the model's context. Order, routing, stopping, and model choice become code. The model still does the thinking; it no longer has to remember the plan, police its own laziness, grade its own work, or decide when the job is done.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!aaY4!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7fd9014-4c83-4695-8d7a-a0236250b2e2_1672x941.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!aaY4!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7fd9014-4c83-4695-8d7a-a0236250b2e2_1672x941.png 424w, https://substackcdn.com/image/fetch/$s_!aaY4!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7fd9014-4c83-4695-8d7a-a0236250b2e2_1672x941.png 848w, https://substackcdn.com/image/fetch/$s_!aaY4!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7fd9014-4c83-4695-8d7a-a0236250b2e2_1672x941.png 1272w, https://substackcdn.com/image/fetch/$s_!aaY4!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7fd9014-4c83-4695-8d7a-a0236250b2e2_1672x941.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!aaY4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7fd9014-4c83-4695-8d7a-a0236250b2e2_1672x941.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f7fd9014-4c83-4695-8d7a-a0236250b2e2_1672x941.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2351457,&quot;alt&quot;:&quot;Claude dynamic workflows: Why Move the Orchestrator Off 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://www.productcompass.pm/i/200944612?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7fd9014-4c83-4695-8d7a-a0236250b2e2_1672x941.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Claude dynamic workflows: Why Move the Orchestrator Off the Model" title="Claude dynamic workflows: Why Move the Orchestrator Off the Model" srcset="https://substackcdn.com/image/fetch/$s_!aaY4!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7fd9014-4c83-4695-8d7a-a0236250b2e2_1672x941.png 424w, https://substackcdn.com/image/fetch/$s_!aaY4!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7fd9014-4c83-4695-8d7a-a0236250b2e2_1672x941.png 848w, https://substackcdn.com/image/fetch/$s_!aaY4!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7fd9014-4c83-4695-8d7a-a0236250b2e2_1672x941.png 1272w, https://substackcdn.com/image/fetch/$s_!aaY4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7fd9014-4c83-4695-8d7a-a0236250b2e2_1672x941.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Same model. The plan moves somewhere it can't tire, grade itself, or forget.</figcaption></figure></div><p>The structure that does this got a name that caught on in 2026: a <a href="https://mitchellh.com/writing/my-ai-adoption-journey">harness</a>. I'd been making the same case since 2025, under a different one: <a href="https://www.productcompass.pm/p/building-ai-agents-best-practices">orchestration over autonomy</a>. The model gets the judgment; the structure around it gets everything else.</p><p>Four things follow:</p><ul><li><p><strong>Determinism.</strong> Code owns the order, the routing, and the stop condition. They run the same way every time, instead of depending on whether the model feels done.</p></li><li><p><strong>Context isolation.</strong> Each agent gets a fresh, bounded job. The goal lives in the script, not in a window that compacts and drifts.</p></li><li><p><strong>No orchestration-token tax.</strong> The coordination layer isn&#8217;t another model conversation, so routing the fleet is free (&#167;1.1).</p></li><li><p><strong>Model tiering.</strong> Bounded, repetitive stages run on a cheaper model. (Subagents can do this too; it&#8217;s a pro tip, not the differentiator.)</p></li></ul><p>The first two are the point; the last two are why it&#8217;s cheap. You feel their absence as three specific failures, and I&#8217;ve hit all three.</p><h3>2.1 Agentic laziness</h3><p>Ask Claude to review all 50 items; it reviews 35, writes a confident summary, and declares it done. A workflow holds the 50 in a <code>for</code> loop and runs until the array is empty. Humans get tired and models drift; a loop just checks the same condition again.</p><h3>2.2 Self-preferential bias</h3><p>Ask Claude to grade its own work and it grades generously, especially in judge-or-verify tasks. A workflow makes the judge a separate agent, with separate context, sometimes a different model. Spawn several skeptics, require a majority. The bias doesn&#8217;t survive being split.</p><h3>2.3 Goal drift</h3><p>Over a long session the objective loses resolution; every compaction is lossy, and the &#8220;don&#8217;t touch auth&#8221; constraint can evaporate by turn 80. A workflow holds the goal in the script, outside the model&#8217;s drifting memory. Agents come and go with fresh context; the goal doesn&#8217;t drift because it was never in a context that compacts.</p><blockquote><p><strong>For PMs:</strong> you've seen all three: 70% delivered as 100%, a self-review an outsider would shred, a Friday build that forgot Monday's requirement. Name the step your agent keeps redoing. That's your first workflow.</p></blockquote><div><hr></div><h2><strong>3. The Six Patterns Worth Knowing</strong></h2><p>Once the orchestrator is code, six shapes recur. Learn the names; they're how you recognize what a task wants.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Ap5R!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbdf4d38d-c4cd-409c-ab8d-e83930be55c0_1672x990.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Ap5R!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbdf4d38d-c4cd-409c-ab8d-e83930be55c0_1672x990.png 424w, https://substackcdn.com/image/fetch/$s_!Ap5R!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbdf4d38d-c4cd-409c-ab8d-e83930be55c0_1672x990.png 848w, https://substackcdn.com/image/fetch/$s_!Ap5R!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbdf4d38d-c4cd-409c-ab8d-e83930be55c0_1672x990.png 1272w, https://substackcdn.com/image/fetch/$s_!Ap5R!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbdf4d38d-c4cd-409c-ab8d-e83930be55c0_1672x990.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Ap5R!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbdf4d38d-c4cd-409c-ab8d-e83930be55c0_1672x990.png" width="1456" height="862" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/bdf4d38d-c4cd-409c-ab8d-e83930be55c0_1672x990.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:862,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1865073,&quot;alt&quot;:&quot;Claude dynamic workflows: The Six Patterns Worth Knowing&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://www.productcompass.pm/i/200944612?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbdf4d38d-c4cd-409c-ab8d-e83930be55c0_1672x990.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Claude dynamic workflows: The Six Patterns Worth Knowing" title="Claude dynamic workflows: The Six Patterns Worth Knowing" srcset="https://substackcdn.com/image/fetch/$s_!Ap5R!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbdf4d38d-c4cd-409c-ab8d-e83930be55c0_1672x990.png 424w, https://substackcdn.com/image/fetch/$s_!Ap5R!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbdf4d38d-c4cd-409c-ab8d-e83930be55c0_1672x990.png 848w, https://substackcdn.com/image/fetch/$s_!Ap5R!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbdf4d38d-c4cd-409c-ab8d-e83930be55c0_1672x990.png 1272w, https://substackcdn.com/image/fetch/$s_!Ap5R!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbdf4d38d-c4cd-409c-ab8d-e83930be55c0_1672x990.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">You don't invent these per task. You learn to recognize which one the task already is.</figcaption></figure></div><ul><li><p><strong>Classify-and-act</strong>: one agent decides the task type; the script routes accordingly. <em>Reach for it when: triaging inbound (bug vs feature vs noise), routing support tickets.</em></p></li><li><p><strong>Fan-out-and-synthesize</strong>: one agent per piece in parallel, then merge in code. <em>Reach for it when: competitor teardown, customer-call synthesis, a market map.</em></p></li><li><p><strong>Adversarial verification</strong>: separate agents check the output against a rubric. <em>Reach for it when: fact-checking a PRD against its sources, a second reviewer on a risky call.</em></p></li><li><p><strong>Generate-and-filter</strong>: many candidates, filtered and deduped, survivors kept. <em>Reach for it when: naming, positioning lines, experiment ideas.</em></p></li><li><p><strong>Tournament</strong>: N agents attempt the task different ways; judges compare until one wins. <em>Reach for it when: a strategy memo or a hard design with no single right approach.</em></p></li><li><p><strong>Loop-until-done</strong>: keep spawning until a stop condition (no findings, no errors, empty queue). <em>Reach for it when: a backlog triage or an audit where you don&#8217;t know how much work there is.</em></p></li></ul><blockquote><p><strong>For PMs, on your actual work:</strong></p><ul><li><p><strong>Synthesize customer interviews</strong> &#8594; one agent per transcript, merged into a themes-and-JTBD table. Every interview read, not the first 20 (the worked example below runs this on 100).</p></li><li><p><strong>Check 80 user stories against INVEST</strong> &#8594; a loop that runs until every story is checked, not until the model tires at 50.</p></li><li><p><strong>Pressure-test a PRD before the review</strong> &#8594; a separate agent red-teams it against your goal and surfaces the assumption you&#8217;d otherwise defend at launch.</p></li></ul><p>You're not learning to code. You're learning which weekly PM jobs can become standing workflows: set the goal once, save the procedure as a skill, and let it run end to end.</p></blockquote><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h2><strong>4. A Worked Example: A Product Discovery Loop on 100 Interviews</strong></h2><p>This is where a workflow earns its keep.</p><p>Here&#8217;s the pipeline I ran on 100 synthetic customer interviews (1-2 pages each).</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!BVeV!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc69a3bb4-6975-4329-9ee4-91bf9a031813_1920x819.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!BVeV!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc69a3bb4-6975-4329-9ee4-91bf9a031813_1920x819.png 424w, https://substackcdn.com/image/fetch/$s_!BVeV!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc69a3bb4-6975-4329-9ee4-91bf9a031813_1920x819.png 848w, https://substackcdn.com/image/fetch/$s_!BVeV!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc69a3bb4-6975-4329-9ee4-91bf9a031813_1920x819.png 1272w, https://substackcdn.com/image/fetch/$s_!BVeV!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc69a3bb4-6975-4329-9ee4-91bf9a031813_1920x819.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!BVeV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc69a3bb4-6975-4329-9ee4-91bf9a031813_1920x819.png" width="1456" height="621" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c69a3bb4-6975-4329-9ee4-91bf9a031813_1920x819.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:621,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2104312,&quot;alt&quot;:&quot;Claude dynamic workflows: A Worked Example: A Product Discovery Loop on 100 Interviews&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://www.productcompass.pm/i/200944612?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc69a3bb4-6975-4329-9ee4-91bf9a031813_1920x819.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Claude dynamic workflows: A Worked Example: A Product Discovery Loop on 100 Interviews" title="Claude dynamic workflows: A Worked Example: A Product Discovery Loop on 100 Interviews" srcset="https://substackcdn.com/image/fetch/$s_!BVeV!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc69a3bb4-6975-4329-9ee4-91bf9a031813_1920x819.png 424w, https://substackcdn.com/image/fetch/$s_!BVeV!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc69a3bb4-6975-4329-9ee4-91bf9a031813_1920x819.png 848w, https://substackcdn.com/image/fetch/$s_!BVeV!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc69a3bb4-6975-4329-9ee4-91bf9a031813_1920x819.png 1272w, https://substackcdn.com/image/fetch/$s_!BVeV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc69a3bb4-6975-4329-9ee4-91bf9a031813_1920x819.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">100 interviews in, three prototypes out. The agents reason; the code routes, scores, and loops for free.</figcaption></figure></div><p>Six stages, each feeding the next:</p><ul><li><p><strong>Step 1: Extract</strong> &#8594; fan out one cheap-model <strong>agent per interview</strong>; each returns structured opportunities, personas, and verbatims. <em>Bounded, repetitive work: Haiku or Sonnet, not Opus.</em></p></li><li><p><strong>Step 2: Canonicalize</strong> &#8594; one agent <strong>clusters the raw opportunities</strong> into a canonical set. The extractors invent a fresh label per interview, so the same need arrives under a dozen names; merging synonyms is judgment, so it&#8217;s a model, not code.</p></li><li><p><strong>Step 3: Opportunity score</strong> &#8594; code ranks each canonical opportunity by frequency &#215; importance &#215; (5 - satisfaction). No model runs the math.</p></li><li><p><strong>Step 4: Generate and triage</strong> &#8594; for the top-scoring opportunities, an agent generates several <strong>solution ideas</strong>; a separate judge then <strong>ranks each by ROI (impact vs build effort)</strong> and keeps the top 3 to build. ROI re-orders the list, so a cheap, high-impact need can take a build slot from one that scored higher.</p></li><li><p><strong>Step 5: Build</strong> &#8594; for the top 3 ideas by ROI, an agent uses the frontend-design skill to write a distinctive, <strong>clickable HTML prototype</strong> I can open.</p></li><li><p><strong>Step 6: Inspect and rerun</strong> &#8594; a smoke check flags any prototype that fails to render, or any extraction that came back low-confidence, and the workflow reruns just that stage. <em>This is the real loop: the output of one stage decides whether an earlier stage runs again.</em></p></li></ul><p>That second stage wasn't in my first prompt. I'd written "merge and dedupe" and assumed code could do it; the counts came back fragmented. So I added one line to the prompt, cluster synonyms to a canonical set before counting, and Claude rewrote the harness with a clustering agent in front of the scorer. Even the fix lived off the model.</p><p>This is how it runs:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Zw5X!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae725eec-465a-4c7e-bbe7-092b14c076bc_1616x1076.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Zw5X!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae725eec-465a-4c7e-bbe7-092b14c076bc_1616x1076.png 424w, https://substackcdn.com/image/fetch/$s_!Zw5X!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae725eec-465a-4c7e-bbe7-092b14c076bc_1616x1076.png 848w, https://substackcdn.com/image/fetch/$s_!Zw5X!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae725eec-465a-4c7e-bbe7-092b14c076bc_1616x1076.png 1272w, https://substackcdn.com/image/fetch/$s_!Zw5X!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae725eec-465a-4c7e-bbe7-092b14c076bc_1616x1076.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Zw5X!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae725eec-465a-4c7e-bbe7-092b14c076bc_1616x1076.png" width="1456" height="969" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ae725eec-465a-4c7e-bbe7-092b14c076bc_1616x1076.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;:1056503,&quot;alt&quot;:&quot;Claude dynamic workflows: Step 1: Extract &#8594; fan out one cheap-model agent per interview; each returns structured opportunities, personas, and verbatims&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://www.productcompass.pm/i/200944612?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae725eec-465a-4c7e-bbe7-092b14c076bc_1616x1076.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Claude dynamic workflows: Step 1: Extract &#8594; fan out one cheap-model agent per interview; each returns structured opportunities, personas, and verbatims" title="Claude dynamic workflows: Step 1: Extract &#8594; fan out one cheap-model agent per interview; each returns structured opportunities, personas, and verbatims" srcset="https://substackcdn.com/image/fetch/$s_!Zw5X!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae725eec-465a-4c7e-bbe7-092b14c076bc_1616x1076.png 424w, https://substackcdn.com/image/fetch/$s_!Zw5X!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae725eec-465a-4c7e-bbe7-092b14c076bc_1616x1076.png 848w, https://substackcdn.com/image/fetch/$s_!Zw5X!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae725eec-465a-4c7e-bbe7-092b14c076bc_1616x1076.png 1272w, https://substackcdn.com/image/fetch/$s_!Zw5X!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fae725eec-465a-4c7e-bbe7-092b14c076bc_1616x1076.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><strong>Step 1: Extract</strong> &#8594; fan out one cheap-model <strong>agent per interview</strong>; each returns structured opportunities, personas, and verbatims</figcaption></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!tfVc!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fffdadfd3-a42b-4e64-ac22-13eaed93da9c_2196x1741.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!tfVc!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fffdadfd3-a42b-4e64-ac22-13eaed93da9c_2196x1741.png 424w, https://substackcdn.com/image/fetch/$s_!tfVc!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fffdadfd3-a42b-4e64-ac22-13eaed93da9c_2196x1741.png 848w, https://substackcdn.com/image/fetch/$s_!tfVc!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fffdadfd3-a42b-4e64-ac22-13eaed93da9c_2196x1741.png 1272w, https://substackcdn.com/image/fetch/$s_!tfVc!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fffdadfd3-a42b-4e64-ac22-13eaed93da9c_2196x1741.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!tfVc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fffdadfd3-a42b-4e64-ac22-13eaed93da9c_2196x1741.png" width="1456" height="1154" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ffdadfd3-a42b-4e64-ac22-13eaed93da9c_2196x1741.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1154,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:302987,&quot;alt&quot;:&quot;Claude dynamic workflows: Step 3: Opportunity score&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://www.productcompass.pm/i/200944612?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fffdadfd3-a42b-4e64-ac22-13eaed93da9c_2196x1741.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Claude dynamic workflows: Step 3: Opportunity score" title="Claude dynamic workflows: Step 3: Opportunity score" srcset="https://substackcdn.com/image/fetch/$s_!tfVc!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fffdadfd3-a42b-4e64-ac22-13eaed93da9c_2196x1741.png 424w, https://substackcdn.com/image/fetch/$s_!tfVc!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fffdadfd3-a42b-4e64-ac22-13eaed93da9c_2196x1741.png 848w, https://substackcdn.com/image/fetch/$s_!tfVc!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fffdadfd3-a42b-4e64-ac22-13eaed93da9c_2196x1741.png 1272w, https://substackcdn.com/image/fetch/$s_!tfVc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fffdadfd3-a42b-4e64-ac22-13eaed93da9c_2196x1741.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><strong>Step 3: Opportunity score &#8594; </strong>What the code ranked, no model in the loop: <strong>622 raw opportunities clustered to 11 needs</strong>, scored frequency &#215; importance &#215; (5 - satisfaction).</figcaption></figure></div><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jazr!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f24a350-511a-43bd-971f-ca0156c95b4c_2212x553.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jazr!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f24a350-511a-43bd-971f-ca0156c95b4c_2212x553.png 424w, https://substackcdn.com/image/fetch/$s_!jazr!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f24a350-511a-43bd-971f-ca0156c95b4c_2212x553.png 848w, https://substackcdn.com/image/fetch/$s_!jazr!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f24a350-511a-43bd-971f-ca0156c95b4c_2212x553.png 1272w, https://substackcdn.com/image/fetch/$s_!jazr!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f24a350-511a-43bd-971f-ca0156c95b4c_2212x553.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jazr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f24a350-511a-43bd-971f-ca0156c95b4c_2212x553.png" width="1456" height="364" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5f24a350-511a-43bd-971f-ca0156c95b4c_2212x553.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:364,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:136596,&quot;alt&quot;:&quot;Claude dynamic workflows: Step 5: Build &#8594; The model picked 3 candidates by ROI, then built 3 HTML prototypes.&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://www.productcompass.pm/i/200944612?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f24a350-511a-43bd-971f-ca0156c95b4c_2212x553.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Claude dynamic workflows: Step 5: Build &#8594; The model picked 3 candidates by ROI, then built 3 HTML prototypes." title="Claude dynamic workflows: Step 5: Build &#8594; The model picked 3 candidates by ROI, then built 3 HTML prototypes." srcset="https://substackcdn.com/image/fetch/$s_!jazr!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f24a350-511a-43bd-971f-ca0156c95b4c_2212x553.png 424w, https://substackcdn.com/image/fetch/$s_!jazr!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f24a350-511a-43bd-971f-ca0156c95b4c_2212x553.png 848w, https://substackcdn.com/image/fetch/$s_!jazr!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f24a350-511a-43bd-971f-ca0156c95b4c_2212x553.png 1272w, https://substackcdn.com/image/fetch/$s_!jazr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f24a350-511a-43bd-971f-ca0156c95b4c_2212x553.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a><figcaption class="image-caption"><strong>Step 5: Build</strong> &#8594; The model picked <strong>3 candidates by ROI</strong>, then built 3 HTML prototypes.</figcaption></figure></div><p>I measured the run: <strong>113 agents spent 1.95M tokens in 12.5 min. 3/3 prototypes</strong> <strong>built and verified</strong>. The JavaScript that routed, scored, gated, and looped spent zero model tokens.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!UanW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F739d5129-e1b1-4542-a9ec-78bc19359fb0_1616x1076.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!UanW!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F739d5129-e1b1-4542-a9ec-78bc19359fb0_1616x1076.png 424w, https://substackcdn.com/image/fetch/$s_!UanW!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F739d5129-e1b1-4542-a9ec-78bc19359fb0_1616x1076.png 848w, https://substackcdn.com/image/fetch/$s_!UanW!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F739d5129-e1b1-4542-a9ec-78bc19359fb0_1616x1076.png 1272w, https://substackcdn.com/image/fetch/$s_!UanW!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F739d5129-e1b1-4542-a9ec-78bc19359fb0_1616x1076.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!UanW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F739d5129-e1b1-4542-a9ec-78bc19359fb0_1616x1076.png" width="1456" height="969" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/739d5129-e1b1-4542-a9ec-78bc19359fb0_1616x1076.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;:595070,&quot;alt&quot;:&quot;Claude dynamic workflows: tep 5: Build &#8594; for the top 3 ideas by ROI, an agent uses the frontend-design skill to write a distinctive, clickable HTML prototype I can open.&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://www.productcompass.pm/i/200944612?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F739d5129-e1b1-4542-a9ec-78bc19359fb0_1616x1076.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Claude dynamic workflows: tep 5: Build &#8594; for the top 3 ideas by ROI, an agent uses the frontend-design skill to write a distinctive, clickable HTML prototype I can open." title="Claude dynamic workflows: tep 5: Build &#8594; for the top 3 ideas by ROI, an agent uses the frontend-design skill to write a distinctive, clickable HTML prototype I can open." srcset="https://substackcdn.com/image/fetch/$s_!UanW!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F739d5129-e1b1-4542-a9ec-78bc19359fb0_1616x1076.png 424w, https://substackcdn.com/image/fetch/$s_!UanW!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F739d5129-e1b1-4542-a9ec-78bc19359fb0_1616x1076.png 848w, https://substackcdn.com/image/fetch/$s_!UanW!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F739d5129-e1b1-4542-a9ec-78bc19359fb0_1616x1076.png 1272w, https://substackcdn.com/image/fetch/$s_!UanW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F739d5129-e1b1-4542-a9ec-78bc19359fb0_1616x1076.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><strong>Done </strong>&#8594; One of the three winners as an interactive prototype</figcaption></figure></div><p>That's the payoff. The rest is how you build it &#128071;</p><div class="callout-block" data-callout="true"><p><em>The free preview ends here. Below: </em></p><ul><li><p><em>5. How to Build and Run a Dynamic Workflow: the six-stage harness, the full run on video, shipping it as a skill, scheduling it with /goal + a budget, and containing it; </em></p></li><li><p><em>6. When a Dynamic Workflow Is Overkill (and when a subagent is enough); </em></p></li><li><p><em>The dynamic-workflows experiment repo (the synthetic interviews, the harness, and the prompts) if you want to run it yourself.</em></p></li></ul></div>
      <p>
          <a href="https://www.productcompass.pm/p/claude-code-dynamic-workflows">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[I Don't Review the Code. I Review the Artifacts.]]></title><description><![CDATA[You don't have to code. What you review instead, why it's the PM job now, and the prompt pack for agentic engineering.]]></description><link>https://www.productcompass.pm/p/agentic-engineering-for-pms</link><guid isPermaLink="false">https://www.productcompass.pm/p/agentic-engineering-for-pms</guid><dc:creator><![CDATA[Paweł Huryn]]></dc:creator><pubDate>Sun, 31 May 2026 22:50:22 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/da3e8fce-72c8-4b50-8d3c-59425fd08696_1280x720.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>In the last two weeks I shipped three things to <a href="https://github.com/phuryn">my GitHub</a>: <strong><a href="https://www.productcompass.pm/p/pm-brain-os">PM Brain</a></strong>, a second brain for product managers; <strong><a href="https://marketplace.visualstudio.com/items?itemName=PawelHuryn.claude-usage-phuryn">Claude Usage for VS Code</a></strong>; and <strong><a href="https://www.productcompass.pm/p/grok-build-vscode">Grok Build</a></strong>, another VS Code extension. In the same two weeks I updated accredia.io (B2B2C), wrote articles, ran experiments on agents, and taught a cohort of students building with Claude.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!U0Cy!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc4d9ff22-ec61-4fa0-be9e-fe3c8ece125a_3103x1765.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!U0Cy!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc4d9ff22-ec61-4fa0-be9e-fe3c8ece125a_3103x1765.png 424w, https://substackcdn.com/image/fetch/$s_!U0Cy!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc4d9ff22-ec61-4fa0-be9e-fe3c8ece125a_3103x1765.png 848w, https://substackcdn.com/image/fetch/$s_!U0Cy!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc4d9ff22-ec61-4fa0-be9e-fe3c8ece125a_3103x1765.png 1272w, https://substackcdn.com/image/fetch/$s_!U0Cy!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc4d9ff22-ec61-4fa0-be9e-fe3c8ece125a_3103x1765.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!U0Cy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc4d9ff22-ec61-4fa0-be9e-fe3c8ece125a_3103x1765.png" width="1456" height="828" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c4d9ff22-ec61-4fa0-be9e-fe3c8ece125a_3103x1765.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:828,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:738547,&quot;alt&quot;:&quot;Pawel Huryn GitHub: Grok Build, Claude Code Usage, PM Brain OS, Accredia.io&quot;,&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://www.productcompass.pm/i/199988562?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc4d9ff22-ec61-4fa0-be9e-fe3c8ece125a_3103x1765.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Pawel Huryn GitHub: Grok Build, Claude Code Usage, PM Brain OS, Accredia.io" title="Pawel Huryn GitHub: Grok Build, Claude Code Usage, PM Brain OS, Accredia.io" srcset="https://substackcdn.com/image/fetch/$s_!U0Cy!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc4d9ff22-ec61-4fa0-be9e-fe3c8ece125a_3103x1765.png 424w, https://substackcdn.com/image/fetch/$s_!U0Cy!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc4d9ff22-ec61-4fa0-be9e-fe3c8ece125a_3103x1765.png 848w, https://substackcdn.com/image/fetch/$s_!U0Cy!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc4d9ff22-ec61-4fa0-be9e-fe3c8ece125a_3103x1765.png 1272w, https://substackcdn.com/image/fetch/$s_!U0Cy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc4d9ff22-ec61-4fa0-be9e-fe3c8ece125a_3103x1765.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>More than 800 tests and eval checks across the three repos, from unit tests to <a href="https://github.com/phuryn/pm-brain/blob/main/tests/RESULTS.md">LLM judges</a>, nearly all green. I&#8217;m a PM, not an engineer, and I barely read the code.</p><div class="callout-block" data-callout="true"><p>&#128161; The uncomfortable part for PMs is that this isn&#8217;t a future workflow. <strong>It&#8217;s the job now,</strong> once the agent builds faster than the team can align.</p></div><p>And this isn&#8217;t just me, or just indie builders shipping side projects. A Google PM described the shift from writing-first to building-first:</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/i/status/1950336434126336154&quot;,&quot;full_text&quot;:&quot;At <span class=\&quot;tweet-fake-link\&quot;>@Google</span>, we are moving from a writing&#8209;first culture to a building&#8209;first one.\n\nWriting was a proxy for clear thinking, optimized for scarce eng resources and long dev cycles - you had to get it right before you built.\n\nNow, when time to vibe-code prototype &#8776; time to write PRD,&quot;,&quot;username&quot;:&quot;realmadhuguru&quot;,&quot;name&quot;:&quot;Madhu Guru&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1487465096242737157/AL-7r3o0_normal.jpg&quot;,&quot;date&quot;:&quot;2025-07-29T23:23:36.000Z&quot;,&quot;photos&quot;:[],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:205,&quot;retweet_count&quot;:419,&quot;like_count&quot;:4824,&quot;impression_count&quot;:641577,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:false}" data-component-name="Twitter2ToDOM"></div><p>It&#8217;s not only Google. </p><p><a href="https://www.businessinsider.com/meta-vibe-coding-build-prototype-apps-mark-zuckerberg-2025-11">Meta PMs now vibe-code prototypes</a> and demo them straight to Zuckerberg, and the company added a prototyping round to its PM interview; LinkedIn replaced its APM program with an <a href="https://www.mindtheproduct.com/be-a-product-builder-period/">&#8220;Associate Product Builder&#8221;</a> role gated on a live AI build. The prototype is becoming the PM&#8217;s first deliverable inside large companies, not a side-project trick.</p><p>So what did I review? The artifacts:</p><ul><li><p>the plan before it ran</p></li><li><p>the decisions it encoded</p></li><li><p>the strategy the agent reads every turn</p></li><li><p>the docs that say what the thing does and why</p></li></ul><div class="callout-block" data-callout="true"><p>&#128161; A large part of the PM job is moving from writing spec to maintaining the context that steers agents and reviewing the artifacts that tell you what changed. The conversations with users, stakeholders, and teams stay; the build loop changes.</p></div><p>It&#8217;s the same shift whether your surface is a repo, Claude Code, Cowork, or a chat window. Experimenting got cheaper than building agreement, and that reorders the work.</p><p>None of them started with a spec. Each started with a conversation, and what I kept was the artifacts.</p><p><strong>What this post covers:</strong></p><ul><li><p>What the artifact layer is, and why a PM reviews it instead of the code</p></li><li><p>Why building now comes before agreement, not after</p></li><li><p>Where your strategy has to live to actually steer the agent</p></li><li><p>The boundaries that let you hand an agent real autonomy and walk away</p></li><li><p>The AI Shipping Artifact Prompt Pack to download at the end</p></li></ul><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h2><strong>What I Actually Ship Now</strong></h2><p>The product is the obvious artifact: the extension on the Marketplace, the tool people install. The one that decides whether the next change goes well is less obvious. It&#8217;s the <strong>knowledge layer</strong>. </p><p>Not the README or the changelog, every repo has those. The docs that hold the decisions: why this architecture, who it&#8217;s for, what we ruled out: </p><ul><li><p>In PM Brain that&#8217;s files like <code>architecture.md</code> and <code>why-this-matters.md</code></p></li><li><p>For accredia.io it was more than twenty docs, from <code>database.md</code> and <code>security.md</code> to a <code>fuckups.md</code></p></li><li><p>For a multi-agent app I built with my cohort, it was the agent contracts: what each agent takes in, what it returns, which tools it can touch, and how they hand off.</p></li></ul><div class="callout-block" data-callout="true"><p><strong>&#128161;</strong> Same layer whether I&#8217;m shipping an extension, a knowledge system, or a system of agents.</p></div><p>Keeping that layer true is a question of what to automate, and when:</p><ul><li><p>In claude-usage, git tags are <a href="https://github.com/phuryn/claude-usage/blob/main/.github/workflows/tag-on-merge.yml">generated from the CHANGELOG automatically</a>: the changelog is the source of truth, the tag is a deterministic projection. </p></li><li><p>In Grok I keep version bumps manual on purpose, because automating them there hasn&#8217;t earned its keep yet. </p></li></ul><div class="callout-block" data-callout="true"><p><strong>&#128204;</strong> <strong>For PMs:</strong> Automate the friction that&#8217;s real and recurring, not the friction you imagine you&#8217;ll have.</p></div><p>Seven things shipping this way taught me.</p><div><hr></div><h2><strong>Lesson 1: Review Artifacts, Not Code</strong></h2><p>The question I get from PMs is &#8220;do I have to learn to code?&#8221; I don&#8217;t, and I don&#8217;t review the code, beyond the odd snippet. </p><div class="callout-block" data-callout="true"><p><strong>&#128161;</strong> The code is the agent&#8217;s, the way code in any company is the engineers&#8217;, not the CEO&#8217;s. The CEO is still accountable for what ships, but doesn&#8217;t earn that accountability by sitting in the editor. What I review is the artifact layer above it.</p></div><p>That layer isn&#8217;t a side effect of the build. It&#8217;s a deliberate, human-and-agent-readable summary of the solution, so neither of us has to reverse-engineer the product from the source. It often duplicates what the code already says, and that&#8217;s the point: it&#8217;s far easier to consume. </p><p>It&#8217;s also what I check the code against. When I care whether the implementation matches the intent, whether the security model holds, whether performance is where it should be, I read the artifact, not the diff.</p><p>So when work comes back, I <strong>don&#8217;t read changes in the code</strong>. I read changes in the artifacts. I review across three modes, escalating only as far as the decision needs:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Frz6!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d5042bd-42f8-4f8b-8f30-1e10e5264572_1000x667.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Frz6!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d5042bd-42f8-4f8b-8f30-1e10e5264572_1000x667.png 424w, https://substackcdn.com/image/fetch/$s_!Frz6!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d5042bd-42f8-4f8b-8f30-1e10e5264572_1000x667.png 848w, https://substackcdn.com/image/fetch/$s_!Frz6!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d5042bd-42f8-4f8b-8f30-1e10e5264572_1000x667.png 1272w, https://substackcdn.com/image/fetch/$s_!Frz6!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d5042bd-42f8-4f8b-8f30-1e10e5264572_1000x667.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Frz6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d5042bd-42f8-4f8b-8f30-1e10e5264572_1000x667.png" width="1000" height="667" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2d5042bd-42f8-4f8b-8f30-1e10e5264572_1000x667.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:667,&quot;width&quot;:1000,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:766479,&quot;alt&quot;:&quot;Review Artifacts, Not Code; Agentic Engineering&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://www.productcompass.pm/i/199988562?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d5042bd-42f8-4f8b-8f30-1e10e5264572_1000x667.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Review Artifacts, Not Code; Agentic Engineering" title="Review Artifacts, Not Code; Agentic Engineering" srcset="https://substackcdn.com/image/fetch/$s_!Frz6!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d5042bd-42f8-4f8b-8f30-1e10e5264572_1000x667.png 424w, https://substackcdn.com/image/fetch/$s_!Frz6!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d5042bd-42f8-4f8b-8f30-1e10e5264572_1000x667.png 848w, https://substackcdn.com/image/fetch/$s_!Frz6!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d5042bd-42f8-4f8b-8f30-1e10e5264572_1000x667.png 1272w, https://substackcdn.com/image/fetch/$s_!Frz6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d5042bd-42f8-4f8b-8f30-1e10e5264572_1000x667.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Cheapest mode first. A durable artifact is the receipt: it survives the context window, and it survives me. Only commit one when the alternative is losing the thread.</p><p>Here&#8217;s one from a build. I opened the session with a document, not a ticket: <em>&#8220;See the research in plan-mode.md. Can we really implement that logic reliably on our side?&#8221;</em> </p><p>The agent didn&#8217;t start writing code. It read the doc, ran a quick probe to test the doc&#8217;s core assumption against the real tool, and reported what it found. I signed off on the approach from that exchange, not from a single line of the implementation.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!hX4e!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6e6769d-e5e6-4db5-a934-861e1770aaa9_851x1132.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!hX4e!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6e6769d-e5e6-4db5-a934-861e1770aaa9_851x1132.png 424w, https://substackcdn.com/image/fetch/$s_!hX4e!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6e6769d-e5e6-4db5-a934-861e1770aaa9_851x1132.png 848w, https://substackcdn.com/image/fetch/$s_!hX4e!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6e6769d-e5e6-4db5-a934-861e1770aaa9_851x1132.png 1272w, https://substackcdn.com/image/fetch/$s_!hX4e!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6e6769d-e5e6-4db5-a934-861e1770aaa9_851x1132.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!hX4e!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6e6769d-e5e6-4db5-a934-861e1770aaa9_851x1132.png" width="851" height="1132" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c6e6769d-e5e6-4db5-a934-861e1770aaa9_851x1132.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1132,&quot;width&quot;:851,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1630385,&quot;alt&quot;:&quot;AI Coding Agents: Work from the artifact&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://www.productcompass.pm/i/199988562?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6e6769d-e5e6-4db5-a934-861e1770aaa9_851x1132.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="AI Coding Agents: Work from the artifact" title="AI Coding Agents: Work from the artifact" srcset="https://substackcdn.com/image/fetch/$s_!hX4e!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6e6769d-e5e6-4db5-a934-861e1770aaa9_851x1132.png 424w, https://substackcdn.com/image/fetch/$s_!hX4e!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6e6769d-e5e6-4db5-a934-861e1770aaa9_851x1132.png 848w, https://substackcdn.com/image/fetch/$s_!hX4e!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6e6769d-e5e6-4db5-a934-861e1770aaa9_851x1132.png 1272w, https://substackcdn.com/image/fetch/$s_!hX4e!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6e6769d-e5e6-4db5-a934-861e1770aaa9_851x1132.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="callout-block" data-callout="true"><p><strong>&#128204; For PMs:</strong> the unit of review changed. You're not approving lines of code. You're approving a description of what changed, why, and whether it should ship. If your artifacts can't answer that, no amount of code-reading will.</p></div><p>And this matters more on a team, not less: your teammates don&#8217;t carry your context in their heads, so the artifact layer is how a decision or a hard-won finding survives past the person who made it.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h2><strong>Lesson 2: Build Before Building Agreement</strong></h2><p>The old motion was: write the PRD, get everyone to agree, then build. That order made sense when building was the expensive part. You spent weeks of engineering, so you spent days up front making sure it was the right thing.</p><div class="callout-block" data-callout="true"><p><strong>&#128161; Building isn&#8217;t the bottleneck </strong>anymore. The first working version is often cheaper than the meeting about it, an afternoon instead of a sprint. So the order flips: you build the thing, then align around what you can see instead of arguing about what you imagine. Experimenting got <strong>cheaper than building agreement.</strong></p></div><p>That&#8217;s why I shipped two major releases in a day, and why none of these projects started with a spec. Two-week iterations start to feel dead in this mode. Not because planning is useless, but because the unit of learning changed: when a working version costs an afternoon, a sprint is too slow to be the main loop. You ship, watch, revise, and ship again before the old process would have turned the debate into tickets.</p><div class="callout-block" data-callout="true"><p>&#128161; A <strong>document can&#8217;t compete</strong> <strong>with that</strong>, because it forces everyone in the room to build a different <strong>product in their head</strong>. One imagines the happy path, one the edge cases, one the UI, one the roadmap impact. Then the <strong>meeting pretends</strong> those are the same thing. They aren&#8217;t. </p></div><p>A prototype, even a rough one, collapses the ambiguity: the team sees what the customer clicks, where they hesitate, what they ignore, what they ask for next. Highly regulated industries aside, agreement around an untested doc is low-value at best: the idea changes the moment it touches reality. At worst it's harmful, because the team gets attached to a product that only existed in language.</p><div class="callout-block" data-callout="true"><p><strong>&#128204; For PMs:</strong> stop spending your most expensive currency, alignment, on ideas nobody has seen. <strong>Build first</strong>, then bring to the meeting:</p><ul><li><p>the screen recording</p></li><li><p>the failed path</p></li><li><p>the confusing label</p></li><li><p>what people actually did</p></li></ul><p>Alignment gets easier when the room is <strong>looking at</strong> <strong>evidence or something you can inspect</strong> instead of trying to imagine the same future.</p></div><div><hr></div><h2><strong>Lesson 3: Put Strategy Where the Agent Works</strong></h2><p>I still write the strategy down:</p><ul><li><p>who it&#8217;s for</p></li><li><p>what changes for them</p></li><li><p>what I won&#8217;t build</p></li><li><p>the trade-offs I&#8217;ll accept</p></li><li><p>what would make the work a failure</p></li></ul><p>What changed is where it lives and what it&#8217;s for. It doesn&#8217;t sit in a folder someone might open before a kickoff. It lives in the repo, a <code>strategy.md</code> the agent reads every time it acts.</p><div class="callout-block" data-callout="true"><p>&#128161; Leading with strategy matters because the <strong>agent isn&#8217;t a tool</strong> waiting for instructions. It&#8217;s a <strong>partner</strong> making hundreds of small product decisions while it builds. </p></div><p>If the strategy isn&#8217;t in its context, those decisions get made from whatever&#8217;s nearby: the last prompt, the surrounding code, a guessed convention, the model&#8217;s own confidence.</p><p>The repo becomes the product&#8217;s memory, too:</p><ul><li><p>experiments</p></li><li><p>decisions</p></li><li><p>evals</p></li><li><p>screenshots</p></li><li><p>release notes</p></li><li><p>the constraints I hit</p></li></ul><p>They accumulate there anyway. My job is to keep that context clear enough that the agent can use it. (The one thing I stopped writing is the spec, the user stories and acceptance criteria that told engineering exactly what to build. That part is cheap now; it falls out of the conversation.)</p><p>Your strategy is only doing work if it changes what the agent does next.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/p/agentic-engineering-for-pms?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;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/p/agentic-engineering-for-pms?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p><div><hr></div><h2><strong>Lesson 4: Cross-Examine Confident Answers</strong></h2><p>I asked Claude to bump the version and publish. It was confident: <em>&#8220;Just run the publish command. CLAUDE.md says the publisher&#8217;s already authenticated.&#8221;</em> I almost did it. Then I asked: <em>&#8220;Are you sure? I&#8217;ve been publishing by hand through the Marketplace website.&#8221;</em></p><p>The confidence collapsed. That claim was from a past session I&#8217;d never verified, and the setup it promised had never happened. The command would have failed at the first step.</p><p>That one was harmless. A command fails in front of you, you fix it in a minute. The claims that bite are the confident ones you act on instead of run, where the failure is silent and lands downstream. Pushback is how you catch those before they cost you. The moment you ask <em>&#8220;are you sure?&#8221;</em> carries more weight than the next instruction you give.</p><p>But you can&#8217;t interrogate everything, or you become the bottleneck you were trying to remove. So I triage. I cross-examine the confident answers that are expensive to be wrong about:</p><ul><li><p>irreversible changes</p></li><li><p>anything touching auth, billing, security, or the data model</p></li><li><p>anything that becomes context future work depends on</p></li><li><p>any claim that sounds too clean</p></li></ul><div class="callout-block" data-callout="true"><p><strong>&#128161; </strong>The rest I let ride. Skepticism is a budget. Spend it where being wrong costs the most.</p></div><p>The strongest version of pushback isn&#8217;t you, though. Your <strong>attention doesn&#8217;t scale</strong>. A <strong>second model</strong> gives you more review surface without funneling every hard question back through your head.</p><p>When I had the extension audited for bugs, the agent built a confident, elaborate theory and walked straight past a one-line bug in the same function: a failure was being reported as a success. Trust that, and it keeps building on a false "it worked": wrong analysis, maybe a destructive next step. Codex caught the one-liner Claude had talked itself past.</p><p>A second copy of the same model shares its blind spots. A <strong>different model, trained differently, fails differently</strong>. Self-review feels like diligence. Cross-review is. (I wrote up <a href="https://www.productcompass.pm/p/codex-setup-for-pms">how I wire Codex alongside Claude</a> separately. You can <a href="https://github.com/phuryn/grok-build-vscode/pull/4">watch one play out in public</a>: the cross-check narrowed a contributor&#8217;s over-broad fix to a single bad value, and he confirmed it.)</p><div class="callout-block" data-callout="true"><p><strong>&#128204; For PMs:</strong> the cheapest quality gain in agentic engineering is pushing back where it counts, then routing the answer past a second, different model.</p></div><div><hr></div><h2><strong>Lesson 5: Make Failures Teach the System</strong></h2><p>The best artifacts in my projects usually began as failures I didn&#8217;t want to debug twice.</p><p>The loop is the same every time: a failure surfaces, I find the smallest thing that would have caught it, a test, an eval, or a line of policy, and I make it permanent so the system can&#8217;t forget it.</p><p>The most load-bearing line in my CLAUDE.md is four words: <em>&#8220;Don&#8217;t introduce abstractions speculatively.&#8221;</em> It earned its place after an earlier project drowned in structure it didn&#8217;t need. A line copied off social media is a guess about a problem you might have; a line written after the third time something went wrong is policy. accredia.io keeps a <code>fuckups.md</code> in its docs; that&#8217;s where its rules come from.</p><p>Tests are the same idea in a different file. Early on, the model offered a 27-test suite and I took it, but the next bug I hit wasn&#8217;t in any of the 27, it was a sequencing problem they tested around. So now, when a real bug shows up, I ask: <em>&#8220;What&#8217;s the smallest test that would have caught this?&#8221;</em> and add that one. </p><p>The claude-usage <a href="https://github.com/phuryn/claude-usage/blob/main/.claude/commands/triage.md">triage routine</a> mechanizes it: on every fix it adds the test, then reverts the fix to confirm the test fails without it. A green suite proves the past; manual smoke probes the future.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!qdy1!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b5ac837-b535-48d6-852b-d49a079a29f3_1024x1280.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!qdy1!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b5ac837-b535-48d6-852b-d49a079a29f3_1024x1280.png 424w, https://substackcdn.com/image/fetch/$s_!qdy1!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b5ac837-b535-48d6-852b-d49a079a29f3_1024x1280.png 848w, https://substackcdn.com/image/fetch/$s_!qdy1!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b5ac837-b535-48d6-852b-d49a079a29f3_1024x1280.png 1272w, https://substackcdn.com/image/fetch/$s_!qdy1!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b5ac837-b535-48d6-852b-d49a079a29f3_1024x1280.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!qdy1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b5ac837-b535-48d6-852b-d49a079a29f3_1024x1280.png" width="1024" height="1280" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2b5ac837-b535-48d6-852b-d49a079a29f3_1024x1280.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1280,&quot;width&quot;:1024,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1867317,&quot;alt&quot;:&quot;Agentic Engineering: Make Failures Teach the System&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://www.productcompass.pm/i/199988562?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b5ac837-b535-48d6-852b-d49a079a29f3_1024x1280.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Agentic Engineering: Make Failures Teach the System" title="Agentic Engineering: Make Failures Teach the System" srcset="https://substackcdn.com/image/fetch/$s_!qdy1!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b5ac837-b535-48d6-852b-d49a079a29f3_1024x1280.png 424w, https://substackcdn.com/image/fetch/$s_!qdy1!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b5ac837-b535-48d6-852b-d49a079a29f3_1024x1280.png 848w, https://substackcdn.com/image/fetch/$s_!qdy1!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b5ac837-b535-48d6-852b-d49a079a29f3_1024x1280.png 1272w, https://substackcdn.com/image/fetch/$s_!qdy1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b5ac837-b535-48d6-852b-d49a079a29f3_1024x1280.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Evals are the same instinct for AI that&#8217;s in the product: read the traces, name what&#8217;s failing, then turn each failure into a test, an LLM judge, or a new line in CLAUDE.md. PM Brain&#8217;s <a href="https://github.com/phuryn/pm-brain/tree/main/tests/harness/judges">judges</a> are each named after a real failure (<code>decision_quality</code>, <code>evidence_hierarchy_respected</code>), never from a spec up front. (I go deeper in <a href="https://www.productcompass.pm/p/evaluating-ai-products-error-analysis">evaluating AI products through error analysis</a>.)</p><div class="callout-block" data-callout="true"><p><strong>&#128204; For PMs:</strong> the AI writes the code, the tests, the eval harness. You decide which failure is worth learning from, and you make the lesson stick. That judgment is the part you can&#8217;t delegate.</p></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h2><strong>Lesson 6: Point Every Agent at One Source of Truth</strong></h2><p>I had three coding agents open during this build: Claude Code in the terminal, a Grok tab in VS Code, and Codex through a separate skill. Same repo, same files, three independent conversations. Without a shared source of truth, they&#8217;d have proposed three different architectures, and I&#8217;d have spent the build arbitrating instead of building.</p><p>So I keep one master doc: CLAUDE.md, with the project, the conventions, and the decisions already made. The other agents don&#8217;t read it by default, so each gets a tiny <code>AGENTS.md</code> whose only job is to point them at it. It duplicates nothing; it just redirects. </p><p>In claude-usage I flipped the direction: there <code>AGENTS.md</code> holds the guidance and <code>CLAUDE.md</code> is one line, <code>@AGENTS.md</code>, that imports it. Either way works. One source, everything points at 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_!3HG4!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda0f7e07-5268-404c-9149-6497e65d85cf_1687x703.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!3HG4!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda0f7e07-5268-404c-9149-6497e65d85cf_1687x703.png 424w, https://substackcdn.com/image/fetch/$s_!3HG4!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda0f7e07-5268-404c-9149-6497e65d85cf_1687x703.png 848w, https://substackcdn.com/image/fetch/$s_!3HG4!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda0f7e07-5268-404c-9149-6497e65d85cf_1687x703.png 1272w, https://substackcdn.com/image/fetch/$s_!3HG4!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda0f7e07-5268-404c-9149-6497e65d85cf_1687x703.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!3HG4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda0f7e07-5268-404c-9149-6497e65d85cf_1687x703.png" width="1456" height="607" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/da0f7e07-5268-404c-9149-6497e65d85cf_1687x703.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:607,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:111222,&quot;alt&quot;:&quot;Agentic Engineering: Point Every Agent at One Source of Truth&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://www.productcompass.pm/i/199988562?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda0f7e07-5268-404c-9149-6497e65d85cf_1687x703.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Agentic Engineering: Point Every Agent at One Source of Truth" title="Agentic Engineering: Point Every Agent at One Source of Truth" srcset="https://substackcdn.com/image/fetch/$s_!3HG4!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda0f7e07-5268-404c-9149-6497e65d85cf_1687x703.png 424w, https://substackcdn.com/image/fetch/$s_!3HG4!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda0f7e07-5268-404c-9149-6497e65d85cf_1687x703.png 848w, https://substackcdn.com/image/fetch/$s_!3HG4!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda0f7e07-5268-404c-9149-6497e65d85cf_1687x703.png 1272w, https://substackcdn.com/image/fetch/$s_!3HG4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda0f7e07-5268-404c-9149-6497e65d85cf_1687x703.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>It isn&#8217;t only CLAUDE.md, either. The source of truth is the whole working-context layer, the docs, rules, skills, and hooks each agent can reach, and I keep that synced too. Each agent can have its own entrypoint; it shouldn&#8217;t have its own reality. (Full setup in <a href="https://www.productcompass.pm/p/codex-setup-for-pms">Codex Setup for PMs</a>.)</p><div class="callout-block" data-callout="true"><p><strong>&#128204; For PMs:</strong> this is closer to running a small engineering team than &#8220;AI pair programming.&#8221; Each agent has a different bias, and you don&#8217;t manage that with three sets of instructions. You manage it with one source of truth and a pointer at it. The skill is integration, not prompting.</p></div><div><hr></div><h2><strong>Lesson 7: Grant Autonomy, Enforce Boundaries</strong></h2><p>Early on, I babysat every run. I watched the model think, approved each step, sat at the screen the whole time. That doesn&#8217;t scale across the number of things I&#8217;m trying to ship.</p><p>The shift was setting a goal, giving the agent room to pursue it, and walking away. The clearest example runs every week without me. The goal: go through every open pull request and feature request on claude-usage, merge the clear bug-fixes, mark the duplicates, push out-of-scope features to a Discussion, and report back only what couldn&#8217;t be resolved. It runs <a href="https://github.com/phuryn/claude-usage/blob/main/scripts/setup-weekly-triage.ps1">headless, on a schedule</a>. I read the summary later, often from my phone.</p><p>Autonomy that wide only works with two kinds of limit, and the difference is the whole game: </p><p><strong>Steering prompts</strong> are soft: a one-line reminder, or a repeatable procedure like the gate rules in my content system. Either way, under pressure the model can talk itself out of one. </p><p><strong>Hard boundaries</strong> are enforced where the model gets no vote. In the triage routine:</p><ul><li><p>nothing closes unless the second model writes a sign-off file with an exact approval phrase</p></li><li><p>it won&#8217;t auto-merge anything touching auth, secrets, or more than 200 lines</p></li><li><p>it never pushes to main</p></li></ul><p>Those aren&#8217;t requests. They&#8217;re mechanical gates.</p><p>The strongest version of a hard boundary is the tool surface itself. In the Grok extension, plan mode isn&#8217;t a polite <em>&#8220;please don&#8217;t edit files yet.&#8221;</em> The extension gates the actual file-write and terminal calls, so while a plan is pending the model physically cannot touch the disk. </p><p>Same idea as a Claude Code hook or a tool allowlist: if a limit has to hold, it lives in code, not in a sentence the model can reinterpret. PM Brain enforces a different limit the same way: a <a href="https://github.com/phuryn/pm-brain/blob/main/example-brain/.claude/hooks/validate_brain_file.py">hook</a> fires after every file write and blocks the agent from saving a brain file with an untagged claim. No clean save, no write.</p><p>The same logic runs at the shipping boundary. On claude-usage, no pull request merges to main on a red test suite. I didn&#8217;t know how to wire that up, so I asked Claude to set the branch protection for me. The agent can be confident and a contributor can be in a hurry; the merge button stays disabled until the tests pass.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!QhqO!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa6aec38-b4da-410a-b40d-c41b096d1452_2246x1296.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!QhqO!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa6aec38-b4da-410a-b40d-c41b096d1452_2246x1296.png 424w, https://substackcdn.com/image/fetch/$s_!QhqO!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa6aec38-b4da-410a-b40d-c41b096d1452_2246x1296.png 848w, https://substackcdn.com/image/fetch/$s_!QhqO!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa6aec38-b4da-410a-b40d-c41b096d1452_2246x1296.png 1272w, https://substackcdn.com/image/fetch/$s_!QhqO!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa6aec38-b4da-410a-b40d-c41b096d1452_2246x1296.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!QhqO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa6aec38-b4da-410a-b40d-c41b096d1452_2246x1296.png" width="1456" height="840" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/fa6aec38-b4da-410a-b40d-c41b096d1452_2246x1296.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:840,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:377595,&quot;alt&quot;:&quot;Agentic Engineering: Grant Autonomy, Enforce Boundaries&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://www.productcompass.pm/i/199988562?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa6aec38-b4da-410a-b40d-c41b096d1452_2246x1296.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Agentic Engineering: Grant Autonomy, Enforce Boundaries" title="Agentic Engineering: Grant Autonomy, Enforce Boundaries" srcset="https://substackcdn.com/image/fetch/$s_!QhqO!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa6aec38-b4da-410a-b40d-c41b096d1452_2246x1296.png 424w, https://substackcdn.com/image/fetch/$s_!QhqO!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa6aec38-b4da-410a-b40d-c41b096d1452_2246x1296.png 848w, https://substackcdn.com/image/fetch/$s_!QhqO!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa6aec38-b4da-410a-b40d-c41b096d1452_2246x1296.png 1272w, https://substackcdn.com/image/fetch/$s_!QhqO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffa6aec38-b4da-410a-b40d-c41b096d1452_2246x1296.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>PM Brain&#8217;s <code>/review</code> edits knowledge files on its own, but it&#8217;s hard-stopped from changing a decision&#8217;s status; that judgment is mine. Wide lane, real walls.</p><div class="callout-block" data-callout="true"><p><strong>&#128204; For PMs:</strong> this is the steering-versus-guardrails split from <a href="https://www.productcompass.pm/p/intent-engineering-framework-for-ai-agents">intent engineering</a>, made concrete. Sort your limits into preferences and non-negotiables. Preferences go in the prompt. Non-negotiables go in hooks, tool permissions, and mechanical gates. Then go do something else.</p></div><div><hr></div><h2><strong>What Still Needs Human Judgment</strong></h2><p>Here&#8217;s what the system still can&#8217;t decide for me.</p><ul><li><p><strong>Models over-rate their own findings.</strong> In that audit, the agent tagged three findings &#8220;high severity.&#8221; Checked against the actual code, all three were medium or low. The model is good at producing candidates. Deciding what&#8217;s actually serious is still mine.</p></li><li><p><strong>A second model helps; it isn&#8217;t magic.</strong> Two models from the same family share blind spots. Claude and GPT diverge enough to be worth pairing, but neither makes the load-bearing check stop being yours.</p></li><li><p><strong>Taste regressions still need eyes.</strong> No agent caught the copy button overlapping the header buttons. I did, on a manual pass. Design judgment isn&#8217;t in the test suite.</p></li><li><p><strong>The workaround becomes part of what you ship.</strong> Grok&#8217;s CLI returned unreliable tool results, so every session in the extension opens with a hidden primer: <em>&#8220;Do not trust the tool result.&#8221;</em> That scar tissue is product judgment too.</p></li></ul><div><hr></div><h2><strong>So What Do PMs Ship Now?</strong></h2><p>Across all of it, the extension, the knowledge system, the premium section behind this newsletter, the pattern held. </p><p>None of it shipped because I wrote a better spec, and none of it shipped because I read the code. It shipped because the conversation was good, and because I kept the <strong>few artifacts that turned out to be load-bearing</strong>: the strategy, the decisions, the constraints, the CLAUDE.md the agent actually reads.</p><p>PM Brain made it obvious. The brain it scaffolds is 44 markdown files around a single CLAUDE.md, and that structure emerged from use, not from a document I wrote first.</p><div class="callout-block" data-callout="true"><p><strong>&#128204; For PMs:</strong> If you&#8217;re about to ship something with AI, stop asking whether you need to read the code. Ask instead: which artifacts would let you, and the agent, understand what changed, why, and whether it should ship? Build those. Keep them true. That&#8217;s the job now, and that&#8217;s the artifact you actually shipped.</p></div><div><hr></div><h2><strong>The AI Shipping Artifact Checklist</strong></h2><p>If the artifact layer is what you actually ship, here&#8217;s the starting set. Organized by purpose, not by stack, because the project changes but the knowledge-layer needs don&#8217;t. Steal the list; name the files whatever fits your repo.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!XMFa!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68dcd76a-5c48-4ee1-b06f-7ecf53cc1be1_1086x1448.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!XMFa!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68dcd76a-5c48-4ee1-b06f-7ecf53cc1be1_1086x1448.png 424w, https://substackcdn.com/image/fetch/$s_!XMFa!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68dcd76a-5c48-4ee1-b06f-7ecf53cc1be1_1086x1448.png 848w, https://substackcdn.com/image/fetch/$s_!XMFa!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68dcd76a-5c48-4ee1-b06f-7ecf53cc1be1_1086x1448.png 1272w, https://substackcdn.com/image/fetch/$s_!XMFa!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68dcd76a-5c48-4ee1-b06f-7ecf53cc1be1_1086x1448.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!XMFa!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68dcd76a-5c48-4ee1-b06f-7ecf53cc1be1_1086x1448.png" width="1086" height="1448" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/68dcd76a-5c48-4ee1-b06f-7ecf53cc1be1_1086x1448.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1448,&quot;width&quot;:1086,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1344411,&quot;alt&quot;:&quot;The AI Shipping Artifact Checklist, Agentic Engineering&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://www.productcompass.pm/i/199988562?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68dcd76a-5c48-4ee1-b06f-7ecf53cc1be1_1086x1448.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="The AI Shipping Artifact Checklist, Agentic Engineering" title="The AI Shipping Artifact Checklist, Agentic Engineering" srcset="https://substackcdn.com/image/fetch/$s_!XMFa!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68dcd76a-5c48-4ee1-b06f-7ecf53cc1be1_1086x1448.png 424w, https://substackcdn.com/image/fetch/$s_!XMFa!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68dcd76a-5c48-4ee1-b06f-7ecf53cc1be1_1086x1448.png 848w, https://substackcdn.com/image/fetch/$s_!XMFa!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68dcd76a-5c48-4ee1-b06f-7ecf53cc1be1_1086x1448.png 1272w, https://substackcdn.com/image/fetch/$s_!XMFa!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68dcd76a-5c48-4ee1-b06f-7ecf53cc1be1_1086x1448.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>None of these is a spec. Each is a place the decisions live, so you and the agents can read them instead of reverse-engineering the code. You don't have to hand-write them, either.</p><div><hr></div><h2><strong>The AI Shipping Artifact Prompt Pack</strong></h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!1tIf!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad22f91e-7cb6-47be-9d27-9ee90feedfbf_1122x1402.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!1tIf!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad22f91e-7cb6-47be-9d27-9ee90feedfbf_1122x1402.png 424w, https://substackcdn.com/image/fetch/$s_!1tIf!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad22f91e-7cb6-47be-9d27-9ee90feedfbf_1122x1402.png 848w, https://substackcdn.com/image/fetch/$s_!1tIf!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad22f91e-7cb6-47be-9d27-9ee90feedfbf_1122x1402.png 1272w, https://substackcdn.com/image/fetch/$s_!1tIf!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad22f91e-7cb6-47be-9d27-9ee90feedfbf_1122x1402.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!1tIf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad22f91e-7cb6-47be-9d27-9ee90feedfbf_1122x1402.png" width="1122" height="1402" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ad22f91e-7cb6-47be-9d27-9ee90feedfbf_1122x1402.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1402,&quot;width&quot;:1122,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1963180,&quot;alt&quot;:&quot;The AI Shipping Artifact Prompt Pack; Agentic Angineering&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://www.productcompass.pm/i/199988562?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad22f91e-7cb6-47be-9d27-9ee90feedfbf_1122x1402.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="The AI Shipping Artifact Prompt Pack; Agentic Angineering" title="The AI Shipping Artifact Prompt Pack; Agentic Angineering" srcset="https://substackcdn.com/image/fetch/$s_!1tIf!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad22f91e-7cb6-47be-9d27-9ee90feedfbf_1122x1402.png 424w, https://substackcdn.com/image/fetch/$s_!1tIf!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad22f91e-7cb6-47be-9d27-9ee90feedfbf_1122x1402.png 848w, https://substackcdn.com/image/fetch/$s_!1tIf!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad22f91e-7cb6-47be-9d27-9ee90feedfbf_1122x1402.png 1272w, https://substackcdn.com/image/fetch/$s_!1tIf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad22f91e-7cb6-47be-9d27-9ee90feedfbf_1122x1402.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>One download, two kinds of thing, both built around the artifact layer above:</p><ul><li><p><strong>The artifact prompts:</strong> seventeen of them, one per kind of file and risk, from strategy to workflow maps to cross-model review. Point an agent at your repo, run a prompt, review the doc it writes. They generate the layer; they aren&#8217;t the layer.</p></li><li><p><strong>The audit commands:</strong> a static security audit and a performance twin, for code you didn&#8217;t write. The security one, <code>/security-audit-static</code>, traces untrusted input to the places it could do real damage, then refutes its own findings before reporting. I pointed it at <a href="https://github.com/langfuse/langfuse/pull/13797">Langfuse</a>, a leading LLM engineering platform, and it surfaced a real weakness in how provider connections were fetched. The hardening fix merged, 964 lines added, 334 removed.</p></li></ul><p>Some of the 20+ issues I&#8217;ve since responsibly disclosed to public-repo security teams (Langfuse at the top):</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!NGRB!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1244ab55-c94d-4bca-91d7-b9ac5688f954_2069x1111.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!NGRB!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1244ab55-c94d-4bca-91d7-b9ac5688f954_2069x1111.png 424w, https://substackcdn.com/image/fetch/$s_!NGRB!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1244ab55-c94d-4bca-91d7-b9ac5688f954_2069x1111.png 848w, https://substackcdn.com/image/fetch/$s_!NGRB!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1244ab55-c94d-4bca-91d7-b9ac5688f954_2069x1111.png 1272w, https://substackcdn.com/image/fetch/$s_!NGRB!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1244ab55-c94d-4bca-91d7-b9ac5688f954_2069x1111.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!NGRB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1244ab55-c94d-4bca-91d7-b9ac5688f954_2069x1111.png" width="1456" height="782" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1244ab55-c94d-4bca-91d7-b9ac5688f954_2069x1111.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:782,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:289801,&quot;alt&quot;:&quot;/security-audit-static, responsible disclosure, agentic engineering&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://www.productcompass.pm/i/199988562?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1244ab55-c94d-4bca-91d7-b9ac5688f954_2069x1111.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="/security-audit-static, responsible disclosure, agentic engineering" title="/security-audit-static, responsible disclosure, agentic engineering" srcset="https://substackcdn.com/image/fetch/$s_!NGRB!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1244ab55-c94d-4bca-91d7-b9ac5688f954_2069x1111.png 424w, https://substackcdn.com/image/fetch/$s_!NGRB!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1244ab55-c94d-4bca-91d7-b9ac5688f954_2069x1111.png 848w, https://substackcdn.com/image/fetch/$s_!NGRB!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1244ab55-c94d-4bca-91d7-b9ac5688f954_2069x1111.png 1272w, https://substackcdn.com/image/fetch/$s_!NGRB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1244ab55-c94d-4bca-91d7-b9ac5688f954_2069x1111.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="callout-block" data-callout="true"><p>Treat the pack as a menu. Reach for the prompt that matches the risk in front of you. It complements engineering review; it doesn't replace security, infra, or code-owner sign-off where those are required.</p></div><p>Get the pack below: &#128071;</p>
      <p>
          <a href="https://www.productcompass.pm/p/agentic-engineering-for-pms">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[How to Set Up Codex as a PM and Run It Next to Claude]]></title><description><![CDATA[A way into your repo without the IDE. Runs next to Claude Code, shares skills and MCPs, doubles as a peer reviewer.]]></description><link>https://www.productcompass.pm/p/codex-setup-for-pms</link><guid isPermaLink="false">https://www.productcompass.pm/p/codex-setup-for-pms</guid><dc:creator><![CDATA[Paweł Huryn]]></dc:creator><pubDate>Tue, 26 May 2026 12:56:58 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!q4pm!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d734719-d42f-4a70-969c-0387595a63ab_1672x941.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Hey, <a href="https://www.linkedin.com/in/pawel-huryn/">Pawe&#322;</a> here. Most PMs I talk to are heads-down on Claude (Cowork or Claude Code) and haven't tried Codex properly. The numbers say they probably should.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!EHOd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d582f4c-8044-4f86-ad80-2972aad1ccf5_1200x775.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!EHOd!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d582f4c-8044-4f86-ad80-2972aad1ccf5_1200x775.jpeg 424w, https://substackcdn.com/image/fetch/$s_!EHOd!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d582f4c-8044-4f86-ad80-2972aad1ccf5_1200x775.jpeg 848w, https://substackcdn.com/image/fetch/$s_!EHOd!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d582f4c-8044-4f86-ad80-2972aad1ccf5_1200x775.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!EHOd!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d582f4c-8044-4f86-ad80-2972aad1ccf5_1200x775.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!EHOd!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d582f4c-8044-4f86-ad80-2972aad1ccf5_1200x775.jpeg" width="1200" height="775" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9d582f4c-8044-4f86-ad80-2972aad1ccf5_1200x775.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:775,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;ARK Invest chart, \&quot;Codex User Growth\&quot; (0.2M to 4.0M weekly active users, Jan to Apr 2026)&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="ARK Invest chart, &quot;Codex User Growth&quot; (0.2M to 4.0M weekly active users, Jan to Apr 2026)" title="ARK Invest chart, &quot;Codex User Growth&quot; (0.2M to 4.0M weekly active users, Jan to Apr 2026)" srcset="https://substackcdn.com/image/fetch/$s_!EHOd!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d582f4c-8044-4f86-ad80-2972aad1ccf5_1200x775.jpeg 424w, https://substackcdn.com/image/fetch/$s_!EHOd!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d582f4c-8044-4f86-ad80-2972aad1ccf5_1200x775.jpeg 848w, https://substackcdn.com/image/fetch/$s_!EHOd!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d582f4c-8044-4f86-ad80-2972aad1ccf5_1200x775.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!EHOd!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d582f4c-8044-4f86-ad80-2972aad1ccf5_1200x775.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Source: <a href="https://x.com/downingARK/status/2046625363690684885">ARK Invest, via @downingARK on X</a></figcaption></figure></div><p>Codex grew from about 200K to roughly <strong>4M weekly active users</strong> in four months. Claude Code crossed 2M in early March. If you opened this post, you're probably one of those 2M. The other 4M are on a tool you haven't tried.</p><p>And it's <strong>not just a developer tool anymore</strong>. If VS Code has felt like a wall, the Codex app is a chat window with a file tree, visual diffs, and long-running sessions. PMs who've avoided code repos no longer have to.</p><p>ChatGPT Plus is $20/month and includes Codex. The setup takes about five minutes. This guide is the walkthrough.</p><p><strong>Updated August 1, 2026.</strong> Three things changed since this guide shipped:</p><ul><li><p>The Codex desktop app is now the ChatGPT app, with three modes: Chat, Work (documents, decks, research), and Codex (coding). Where this guide says "Codex app," use the ChatGPT app in Codex mode.</p></li><li><p>OpenAI cut GPT-5.6 Luna's price by 80%. On my 105-bug benchmark, Luna at max reasoning effort beat every Claude model. Set reasoning effort to max. It's off by default.</p></li><li><p>The $20 ChatGPT Plus plan now covers serious agent work.</p></li></ul><p>By the end of this guide, you&#8217;ll have:</p><ul><li><p>Codex app installed and pointed at your repo</p></li><li><p><em>AGENTS.md</em> bridged to <em>CLAUDE.md</em> so both runtimes share one source of truth</p></li><li><p>Plugins installed for the apps you use, with project skills mirrored if you build with AI</p></li><li><p>MCPs running in both runtimes, with a one-shot prompt to do the import</p></li><li><p>Claude Code able to call Codex as a peer for review</p></li><li><p>A plan for working from your phone (cloud tasks vs. remote control)</p></li></ul><p>Full Cowork / Claude Code / Codex comparison is at the bottom. First, the setup.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h2><strong>1. Why Add Codex as a PM</strong></h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!q4pm!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d734719-d42f-4a70-969c-0387595a63ab_1672x941.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!q4pm!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d734719-d42f-4a70-969c-0387595a63ab_1672x941.png 424w, https://substackcdn.com/image/fetch/$s_!q4pm!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d734719-d42f-4a70-969c-0387595a63ab_1672x941.png 848w, https://substackcdn.com/image/fetch/$s_!q4pm!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d734719-d42f-4a70-969c-0387595a63ab_1672x941.png 1272w, https://substackcdn.com/image/fetch/$s_!q4pm!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d734719-d42f-4a70-969c-0387595a63ab_1672x941.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!q4pm!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d734719-d42f-4a70-969c-0387595a63ab_1672x941.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6d734719-d42f-4a70-969c-0387595a63ab_1672x941.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1507811,&quot;alt&quot;:&quot;How to Set Up Codex as a PM and Run It Next to Claude&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://www.productcompass.pm/i/199195672?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d734719-d42f-4a70-969c-0387595a63ab_1672x941.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="How to Set Up Codex as a PM and Run It Next to Claude" title="How to Set Up Codex as a PM and Run It Next to Claude" srcset="https://substackcdn.com/image/fetch/$s_!q4pm!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d734719-d42f-4a70-969c-0387595a63ab_1672x941.png 424w, https://substackcdn.com/image/fetch/$s_!q4pm!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d734719-d42f-4a70-969c-0387595a63ab_1672x941.png 848w, https://substackcdn.com/image/fetch/$s_!q4pm!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d734719-d42f-4a70-969c-0387595a63ab_1672x941.png 1272w, https://substackcdn.com/image/fetch/$s_!q4pm!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d734719-d42f-4a70-969c-0387595a63ab_1672x941.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Five reasons I added Codex, in order of how often they show up in my work:</p><ul><li><p><strong>A way into a repo without VS Code.</strong> If the IDE has felt like a wall, the Codex app (desktop) is a chat window with a file tree, visual diffs, and long-running chat sessions. No commands to learn, no extensions to wire. You can even edit files by leaving comments for Codex. Cowork is chat-first; no tree, no diffs.</p></li><li><p><strong>Manual Compact.</strong> You decide when to compress the session instead of waiting for the model to hit the wall. In Codex, type <em>c</em>, then <em>/com</em>, and choose <em>Compact</em> when it appears. Claude Code has <em>/compact</em> in the CLI. Cowork does not have an equivalent manual reset. This matters for your budget: <a href="https://www.productcompass.pm/p/stop-hitting-claude-code-limits">Claude Code&#8217;s Limits Are Generous. The Problem Is Your Setup.</a></p></li><li><p><strong>An extra perspective.</strong> When I want a second pair of eyes on a prompt, or a piece of code, I hand it to the runtime that didn&#8217;t write it. Different model, different misses.</p></li><li><p><strong>Image generation in the bundle.</strong> The ChatGPT subscription that Codex ships with includes image generation. Claude doesn&#8217;t cover that workflow.</p></li><li><p><strong>Runs next to Claude Code on the same repo.</strong> Same files, same skills, same MCPs. Switch runtimes without rebuilding your setup.</p></li></ul><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h2><strong>2. Install Codex (Desktop App and VS Code Extension)</strong></h2><p>You'll install two things. <strong>Codex app (desktop)</strong> is the chat workspace where long sessions and Compact live. <strong>Codex for VS Code</strong> is the editor extension that lets you call Codex in the same window as Claude Code.</p><p>Both share one OpenAI login, both work on the same repo, and you'll use both for different jobs.</p><h3>Codex app (desktop)</h3><p>Download <a href="https://developers.openai.com/codex/app">Codex app from OpenAI</a> (now named ChatGPT). Sign in with the ChatGPT account that has Plus, Pro, or Business. Codex is bundled with all three.</p><p>The first prompt asks you to migrate your VS Code settings. I skip it. Not because it&#8217;s hard. Because you should know what&#8217;s being imported before you click yes. You can always migrate later from Settings or by asking Codex for help.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!o8Bg!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F859ee88b-24d7-4e17-ac39-edc73e04dc0c_2214x1575.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!o8Bg!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F859ee88b-24d7-4e17-ac39-edc73e04dc0c_2214x1575.png 424w, https://substackcdn.com/image/fetch/$s_!o8Bg!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F859ee88b-24d7-4e17-ac39-edc73e04dc0c_2214x1575.png 848w, https://substackcdn.com/image/fetch/$s_!o8Bg!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F859ee88b-24d7-4e17-ac39-edc73e04dc0c_2214x1575.png 1272w, https://substackcdn.com/image/fetch/$s_!o8Bg!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F859ee88b-24d7-4e17-ac39-edc73e04dc0c_2214x1575.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!o8Bg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F859ee88b-24d7-4e17-ac39-edc73e04dc0c_2214x1575.png" width="1456" height="1036" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/859ee88b-24d7-4e17-ac39-edc73e04dc0c_2214x1575.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1036,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:330771,&quot;alt&quot;:&quot;Codex app (desktop) - import settings from Claude&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://www.productcompass.pm/i/199195672?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F859ee88b-24d7-4e17-ac39-edc73e04dc0c_2214x1575.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Codex app (desktop) - import settings from Claude" title="Codex app (desktop) - import settings from Claude" srcset="https://substackcdn.com/image/fetch/$s_!o8Bg!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F859ee88b-24d7-4e17-ac39-edc73e04dc0c_2214x1575.png 424w, https://substackcdn.com/image/fetch/$s_!o8Bg!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F859ee88b-24d7-4e17-ac39-edc73e04dc0c_2214x1575.png 848w, https://substackcdn.com/image/fetch/$s_!o8Bg!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F859ee88b-24d7-4e17-ac39-edc73e04dc0c_2214x1575.png 1272w, https://substackcdn.com/image/fetch/$s_!o8Bg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F859ee88b-24d7-4e17-ac39-edc73e04dc0c_2214x1575.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Open the same project folder you already use with Claude. The file tree loads on the right. Visual diffs appear in the same panel.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!W8qE!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8de4fb28-5fcb-4bd0-a451-a203caef62a3_3840x2280.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!W8qE!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8de4fb28-5fcb-4bd0-a451-a203caef62a3_3840x2280.png 424w, https://substackcdn.com/image/fetch/$s_!W8qE!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8de4fb28-5fcb-4bd0-a451-a203caef62a3_3840x2280.png 848w, https://substackcdn.com/image/fetch/$s_!W8qE!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8de4fb28-5fcb-4bd0-a451-a203caef62a3_3840x2280.png 1272w, https://substackcdn.com/image/fetch/$s_!W8qE!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8de4fb28-5fcb-4bd0-a451-a203caef62a3_3840x2280.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!W8qE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8de4fb28-5fcb-4bd0-a451-a203caef62a3_3840x2280.png" width="1456" height="865" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8de4fb28-5fcb-4bd0-a451-a203caef62a3_3840x2280.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:865,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1013744,&quot;alt&quot;:&quot;Codex app file preview, file edits, diffs&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://www.productcompass.pm/i/199195672?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8de4fb28-5fcb-4bd0-a451-a203caef62a3_3840x2280.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Codex app file preview, file edits, diffs" title="Codex app file preview, file edits, diffs" srcset="https://substackcdn.com/image/fetch/$s_!W8qE!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8de4fb28-5fcb-4bd0-a451-a203caef62a3_3840x2280.png 424w, https://substackcdn.com/image/fetch/$s_!W8qE!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8de4fb28-5fcb-4bd0-a451-a203caef62a3_3840x2280.png 848w, https://substackcdn.com/image/fetch/$s_!W8qE!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8de4fb28-5fcb-4bd0-a451-a203caef62a3_3840x2280.png 1272w, https://substackcdn.com/image/fetch/$s_!W8qE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8de4fb28-5fcb-4bd0-a451-a203caef62a3_3840x2280.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h3>Codex for VS Code</h3><p>Install the <strong><a href="https://marketplace.visualstudio.com/items?itemName=openai.chatgpt">Codex extension</a></strong> from the VS Code marketplace and sign in with the same OpenAI account.</p><p>If you already use the <strong>Claude Code</strong> extension in VS Code, both extensions will show up in the activity bar. You can switch between them by tab.</p><p>Why both surfaces? The Codex app is for long chat sessions and Compact. Codex for VS Code is for editing the repo, including dot folders (<em>.agents, .codex</em>) that the app&#8217;s file picker hides - full dev experience.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Frnr!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3f1bcb4-c50e-4e79-a007-ea8ba92e9ab4_2713x1620.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Frnr!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3f1bcb4-c50e-4e79-a007-ea8ba92e9ab4_2713x1620.png 424w, https://substackcdn.com/image/fetch/$s_!Frnr!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3f1bcb4-c50e-4e79-a007-ea8ba92e9ab4_2713x1620.png 848w, https://substackcdn.com/image/fetch/$s_!Frnr!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3f1bcb4-c50e-4e79-a007-ea8ba92e9ab4_2713x1620.png 1272w, https://substackcdn.com/image/fetch/$s_!Frnr!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3f1bcb4-c50e-4e79-a007-ea8ba92e9ab4_2713x1620.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Frnr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3f1bcb4-c50e-4e79-a007-ea8ba92e9ab4_2713x1620.png" width="1456" height="869" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f3f1bcb4-c50e-4e79-a007-ea8ba92e9ab4_2713x1620.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:869,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:605473,&quot;alt&quot;:&quot;Codex for VS Code, Install the Codex extension from the VS Code marketplace&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://www.productcompass.pm/i/199195672?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3f1bcb4-c50e-4e79-a007-ea8ba92e9ab4_2713x1620.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Codex for VS Code, Install the Codex extension from the VS Code marketplace" title="Codex for VS Code, Install the Codex extension from the VS Code marketplace" srcset="https://substackcdn.com/image/fetch/$s_!Frnr!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3f1bcb4-c50e-4e79-a007-ea8ba92e9ab4_2713x1620.png 424w, https://substackcdn.com/image/fetch/$s_!Frnr!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3f1bcb4-c50e-4e79-a007-ea8ba92e9ab4_2713x1620.png 848w, https://substackcdn.com/image/fetch/$s_!Frnr!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3f1bcb4-c50e-4e79-a007-ea8ba92e9ab4_2713x1620.png 1272w, https://substackcdn.com/image/fetch/$s_!Frnr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3f1bcb4-c50e-4e79-a007-ea8ba92e9ab4_2713x1620.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h2><strong>3. Teach Codex Your Repo: </strong><em><strong>AGENTS.md</strong></em><strong> to </strong><em><strong>CLAUDE.md</strong></em></h2><p>Codex looks for <em>AGENTS.md</em> at the repo root. Claude Code looks for <em>CLAUDE.md</em>. If you maintain both as separate sources of truth, they drift.</p><p>The fix is a one-file bridge. <em>AGENTS.md</em> is a short pointer. <em>CLAUDE.md</em> stays the canonical document. Codex reads <em>AGENTS.md</em>, sees the pointer, follows it.</p><p>Drop this at the repo root as <em>AGENTS.md</em>:</p><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;markdown&quot;,&quot;nodeId&quot;:&quot;57c48dd2-00fd-45fb-8acb-b221c7c713a9&quot;}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-markdown"># AGENTS.md

This repository keeps its canonical agent instructions in [CLAUDE.md](./CLAUDE.md).

When operating in this repo:

1. Read and follow `CLAUDE.md` as the source of truth.
2. Treat references to "Claude Code" as applying to Codex when you are the acting agent.
3. Do not duplicate `CLAUDE.md` content here. Update `CLAUDE.md` instead.</code></pre></div><p>One file. One source of truth. Both runtimes follow 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_!WbUE!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8590ba5-e76f-4706-afcd-3e69271a6446_2498x1785.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!WbUE!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8590ba5-e76f-4706-afcd-3e69271a6446_2498x1785.png 424w, https://substackcdn.com/image/fetch/$s_!WbUE!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8590ba5-e76f-4706-afcd-3e69271a6446_2498x1785.png 848w, https://substackcdn.com/image/fetch/$s_!WbUE!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8590ba5-e76f-4706-afcd-3e69271a6446_2498x1785.png 1272w, https://substackcdn.com/image/fetch/$s_!WbUE!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8590ba5-e76f-4706-afcd-3e69271a6446_2498x1785.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!WbUE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8590ba5-e76f-4706-afcd-3e69271a6446_2498x1785.png" width="1456" height="1040" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a8590ba5-e76f-4706-afcd-3e69271a6446_2498x1785.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1040,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:382981,&quot;alt&quot;:&quot;Teach Codex Your Repo: AGENTS.md to CLAUDE.md&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://www.productcompass.pm/i/199195672?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8590ba5-e76f-4706-afcd-3e69271a6446_2498x1785.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Teach Codex Your Repo: AGENTS.md to CLAUDE.md" title="Teach Codex Your Repo: AGENTS.md to CLAUDE.md" srcset="https://substackcdn.com/image/fetch/$s_!WbUE!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8590ba5-e76f-4706-afcd-3e69271a6446_2498x1785.png 424w, https://substackcdn.com/image/fetch/$s_!WbUE!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8590ba5-e76f-4706-afcd-3e69271a6446_2498x1785.png 848w, https://substackcdn.com/image/fetch/$s_!WbUE!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8590ba5-e76f-4706-afcd-3e69271a6446_2498x1785.png 1272w, https://substackcdn.com/image/fetch/$s_!WbUE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8590ba5-e76f-4706-afcd-3e69271a6446_2498x1785.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><em>AGENTS.md</em> is the bridge. <em>CLAUDE.md</em> is the long part. The structure I use:</p><ol><li><p><strong>Communication:</strong> How the agent should talk, what content it should produce.</p></li><li><p><strong>[For personal work] About me:</strong> Role, audience, social media handles</p></li><li><p><strong>[For product work] Strategy:</strong> Market segments, value propositions, tradeoffs. </p></li><li><p><strong>Project structure:</strong> Where things live, architecture, conventions.</p></li><li><p><strong>Workflow: </strong>How we do things (reviewing, shipping). Not a procedure manual. The rules of engagement.</p></li><li><p><strong>Progressive disclosure: </strong>Links to deeper files (<em>strategy.md</em>, <em>knowledge/INDEX.md</em>, whatever you&#8217;ve built) that load on-demand, not on every session.</p></li></ol><p>Each section earns its place when something would otherwise have to be re-explained per session. <em>CLAUDE.md</em> isn&#8217;t documentation. It&#8217;s the agent&#8217;s memory of how you work.</p><p>Progressive disclosure matters because context isn&#8217;t free. Don&#8217;t dump 500 lines of text into <em>CLAUDE.md</em> if 100 of it only matters for one workflow. Keep the core file lean. Link out to the rest.</p><div><hr></div><h2><strong>4. Configure and Share Skills</strong></h2><p>If you haven&#8217;t used skills before, think of them as reusable instruction bundles. A <em>SKILL.md</em> file tells the runtime when to fire and what to do.</p><p>Two ways to configure them in Codex.</p><p>Start with user skills. The Codex app ships with a <strong>Plugins</strong> panel. One click installs Gmail, Linear, Jira, Slack, and others. You get the <strong>app&#8217;s connection and its skills</strong> together.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!eGF2!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F250bedd1-cd3a-48ad-9833-9664d2237241_2490x1605.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!eGF2!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F250bedd1-cd3a-48ad-9833-9664d2237241_2490x1605.png 424w, https://substackcdn.com/image/fetch/$s_!eGF2!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F250bedd1-cd3a-48ad-9833-9664d2237241_2490x1605.png 848w, https://substackcdn.com/image/fetch/$s_!eGF2!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F250bedd1-cd3a-48ad-9833-9664d2237241_2490x1605.png 1272w, https://substackcdn.com/image/fetch/$s_!eGF2!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F250bedd1-cd3a-48ad-9833-9664d2237241_2490x1605.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!eGF2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F250bedd1-cd3a-48ad-9833-9664d2237241_2490x1605.png" width="1456" height="939" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/250bedd1-cd3a-48ad-9833-9664d2237241_2490x1605.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:939,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:398482,&quot;alt&quot;:&quot;The Codex app ships with a Plugins panel. One click installs Gmail, Linear, Jira, Slack, and others. You get the app&#8217;s connection and its skills together.&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://www.productcompass.pm/i/199195672?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F250bedd1-cd3a-48ad-9833-9664d2237241_2490x1605.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="The Codex app ships with a Plugins panel. One click installs Gmail, Linear, Jira, Slack, and others. You get the app&#8217;s connection and its skills together." title="The Codex app ships with a Plugins panel. One click installs Gmail, Linear, Jira, Slack, and others. You get the app&#8217;s connection and its skills together." srcset="https://substackcdn.com/image/fetch/$s_!eGF2!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F250bedd1-cd3a-48ad-9833-9664d2237241_2490x1605.png 424w, https://substackcdn.com/image/fetch/$s_!eGF2!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F250bedd1-cd3a-48ad-9833-9664d2237241_2490x1605.png 848w, https://substackcdn.com/image/fetch/$s_!eGF2!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F250bedd1-cd3a-48ad-9833-9664d2237241_2490x1605.png 1272w, https://substackcdn.com/image/fetch/$s_!eGF2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F250bedd1-cd3a-48ad-9833-9664d2237241_2490x1605.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>With Plugins installed, Codex reads your <em>CLAUDE.md</em> and talks to the apps you use daily.</p><p>That&#8217;s the minimum viable Codex setup for a PM.</p><p>The next step is making Codex and Claude Code behave like one operating system: curated skills, project skills synced between runtimes, mirrored MCPs, and a repeatable review loop.</p>
      <p>
          <a href="https://www.productcompass.pm/p/codex-setup-for-pms">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[Claude Code for PMs: The Beginner's Guide]]></title><description><![CDATA[No Cowork experience needed. Install Claude Code, configure MCP servers, build skills, and run free frontier models. Ready-to-use template included.]]></description><link>https://www.productcompass.pm/p/claude-code-beginners-guide</link><guid isPermaLink="false">https://www.productcompass.pm/p/claude-code-beginners-guide</guid><dc:creator><![CDATA[Paweł Huryn]]></dc:creator><pubDate>Tue, 12 May 2026 21:39:56 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/a0492e79-138f-4848-affb-e05b7b38f778_1730x909.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>In 2026, top PMs (especially at Meta/Google and AI-native companies) treat <strong>Claude Code as a daily tool. </strong>Here&#8217;s the zero-to-one path I&#8217;d give a PM today. </p><p>When looking for a job, expect:</p><ul><li><p>&#8220;How do you use AI/Claude in your day-to-day?&#8221;</p></li><li><p>Vibe coding / prototype rounds: from PRD to evals</p></li><li><p>Portfolio/case studies: Show agents/prototypes built with AI</p></li><li><p>Questions focused on AI product sense + execution with agents</p></li></ul><p>Even people like Garry Tan (Y Combinator) went back to "coding" and ships a custom <a href="https://github.com/garrytan/gbrain">brain for agents</a> after work hours:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!hn9M!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e427bdd-52e8-4008-9b2a-bb78811242e9_1868x747.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!hn9M!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e427bdd-52e8-4008-9b2a-bb78811242e9_1868x747.png 424w, https://substackcdn.com/image/fetch/$s_!hn9M!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e427bdd-52e8-4008-9b2a-bb78811242e9_1868x747.png 848w, https://substackcdn.com/image/fetch/$s_!hn9M!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e427bdd-52e8-4008-9b2a-bb78811242e9_1868x747.png 1272w, https://substackcdn.com/image/fetch/$s_!hn9M!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e427bdd-52e8-4008-9b2a-bb78811242e9_1868x747.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!hn9M!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e427bdd-52e8-4008-9b2a-bb78811242e9_1868x747.png" width="1456" height="582" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4e427bdd-52e8-4008-9b2a-bb78811242e9_1868x747.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:582,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:178271,&quot;alt&quot;:&quot;Garry Tan (Y Combinator) - GBrain&quot;,&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://www.productcompass.pm/i/197350322?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e427bdd-52e8-4008-9b2a-bb78811242e9_1868x747.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Garry Tan (Y Combinator) - GBrain" title="Garry Tan (Y Combinator) - GBrain" srcset="https://substackcdn.com/image/fetch/$s_!hn9M!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e427bdd-52e8-4008-9b2a-bb78811242e9_1868x747.png 424w, https://substackcdn.com/image/fetch/$s_!hn9M!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e427bdd-52e8-4008-9b2a-bb78811242e9_1868x747.png 848w, https://substackcdn.com/image/fetch/$s_!hn9M!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e427bdd-52e8-4008-9b2a-bb78811242e9_1868x747.png 1272w, https://substackcdn.com/image/fetch/$s_!hn9M!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e427bdd-52e8-4008-9b2a-bb78811242e9_1868x747.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Source: <a href="https://x.com/garrytan/status/2054055071017538028?s=20">X (Twitter)</a></figcaption></figure></div><p>In the past, we&#8217;ve discussed many aspects:</p><ul><li><p><a href="https://www.productcompass.pm/p/claude-code-guide">The Guide to Claude Code for PMs</a></p></li><li><p><a href="https://www.productcompass.pm/p/self-improving-claude-system">What I Learned Building a Self-Improving Agentic System with Claude</a></p></li><li><p><a href="https://www.productcompass.pm/p/claude-md-snippets">Three CLAUDE.md Blocks That Make Claude Get Smarter Every Session</a></p></li><li><p><a href="https://www.productcompass.pm/p/claude-agent-sdk-production-agent">Your .claude/ Folder Is a Production Agent</a></p></li><li><p><a href="https://www.productcompass.pm/p/claude-opus-4-7-guide">The Ultimate Guide to Claude Opus 4.7</a></p></li><li><p><a href="https://www.productcompass.pm/p/stop-hitting-claude-code-limits">Claude Code's Limits Are Generous. The Problem Is Your Setup.</a></p></li></ul><blockquote><p>The first Guide above assumes you&#8217;ve used Cowork. Talking to the community, I realized many PMs haven&#8217;t, and they need a zero-to-one path.</p></blockquote><p>This article has everything you need to start:</p><ol><li><p>How to install Claude Code step-by-step</p></li><li><p>A ready-to-use Claude Code solution template</p></li><li><p>How to configure MCP servers in Claude Code step-by-step</p></li><li><p>How to use and create skills in Claude Code step-by-step</p></li><li><p>How to use Claude Code with free frontier models</p></li></ol><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h2>1. How to Install Claude Code Step-By-Step</h2><p>This combines Claude Code with the recommended interface, Claude Code extension in VS Code.</p><p><strong>Step 1:</strong> Install <a href="https://code.visualstudio.com/">Visual Studio Code</a> for MacOS or Windows</p><p><strong>Step 2:</strong> Launch VS Code, click &#8220;Extensions,&#8221; and install &#8220;Claude Code for VS Code&#8221;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!MCea!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F34287944-3c6c-4d23-987d-7ee2f6bb2abc_1638x1020.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!MCea!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F34287944-3c6c-4d23-987d-7ee2f6bb2abc_1638x1020.png 424w, https://substackcdn.com/image/fetch/$s_!MCea!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F34287944-3c6c-4d23-987d-7ee2f6bb2abc_1638x1020.png 848w, https://substackcdn.com/image/fetch/$s_!MCea!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F34287944-3c6c-4d23-987d-7ee2f6bb2abc_1638x1020.png 1272w, https://substackcdn.com/image/fetch/$s_!MCea!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F34287944-3c6c-4d23-987d-7ee2f6bb2abc_1638x1020.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!MCea!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F34287944-3c6c-4d23-987d-7ee2f6bb2abc_1638x1020.png" width="1456" height="907" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/34287944-3c6c-4d23-987d-7ee2f6bb2abc_1638x1020.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:907,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:238230,&quot;alt&quot;:&quot;How to Install Claude Code Extension&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://www.productcompass.pm/i/197350322?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F34287944-3c6c-4d23-987d-7ee2f6bb2abc_1638x1020.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="How to Install Claude Code Extension" title="How to Install Claude Code Extension" srcset="https://substackcdn.com/image/fetch/$s_!MCea!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F34287944-3c6c-4d23-987d-7ee2f6bb2abc_1638x1020.png 424w, https://substackcdn.com/image/fetch/$s_!MCea!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F34287944-3c6c-4d23-987d-7ee2f6bb2abc_1638x1020.png 848w, https://substackcdn.com/image/fetch/$s_!MCea!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F34287944-3c6c-4d23-987d-7ee2f6bb2abc_1638x1020.png 1272w, https://substackcdn.com/image/fetch/$s_!MCea!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F34287944-3c6c-4d23-987d-7ee2f6bb2abc_1638x1020.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><strong>Step 3: </strong>Log in with Claude.ai Subscription after typing &#8220;/login&#8221; in the Claude window. There are two interfaces, it&#8217;s easy to get confused:</p><ul><li><p><strong>Skip this one:</strong> Claude Code in Terminal - opens at the center</p></li><li><p><strong>Use by default:</strong> Claude Code Extension for VS Code - opens in the secondary side bar on the right</p></li></ul><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;724c599e-ecc2-40e1-9d04-79efa02df554&quot;,&quot;duration&quot;:null}"></div><p><strong>Note:</strong> On the right side in the video you can see two tabs:</p><ul><li><p><strong>[Codex]</strong> - OpenAI extension I installed earlier</p></li><li><p><strong>[Claude Code]</strong> - that&#8217;s our Claude Code extension</p></li></ul><p>Sometimes you may also see &#8220;Chat&#8221; - it&#8217;s a Microsoft solution. Ignore it.</p><div><hr></div><h2>2. A Ready-To-Use Claude Code Solution Template</h2><p>This knowledge work template contains everything you need to start:</p><ul><li><p>Preconfigured plugins, skills, and permissions</p></li><li><p>My minimal CLAUDE.md that makes your agent more autonomous </p></li><li><p>Setup that reduces costs by at least 50% by managing models, subagents, and context windows better</p></li><li><p>Ready-to-use configuration so you can work with free frontier LLM models </p></li></ul><p>You can watch our Claude Code video session download the template below (click File &gt; Download):</p><div class="callout-block" data-callout="true"><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!H_Z2!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F276c7cce-ce00-4bfb-bd2d-b9f2f7ac4b7a_1539x890.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!H_Z2!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F276c7cce-ce00-4bfb-bd2d-b9f2f7ac4b7a_1539x890.png 424w, https://substackcdn.com/image/fetch/$s_!H_Z2!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F276c7cce-ce00-4bfb-bd2d-b9f2f7ac4b7a_1539x890.png 848w, https://substackcdn.com/image/fetch/$s_!H_Z2!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F276c7cce-ce00-4bfb-bd2d-b9f2f7ac4b7a_1539x890.png 1272w, https://substackcdn.com/image/fetch/$s_!H_Z2!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F276c7cce-ce00-4bfb-bd2d-b9f2f7ac4b7a_1539x890.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!H_Z2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F276c7cce-ce00-4bfb-bd2d-b9f2f7ac4b7a_1539x890.png" width="1456" height="842" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/276c7cce-ce00-4bfb-bd2d-b9f2f7ac4b7a_1539x890.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:842,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1470434,&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://www.productcompass.pm/i/197350322?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F276c7cce-ce00-4bfb-bd2d-b9f2f7ac4b7a_1539x890.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_!H_Z2!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F276c7cce-ce00-4bfb-bd2d-b9f2f7ac4b7a_1539x890.png 424w, https://substackcdn.com/image/fetch/$s_!H_Z2!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F276c7cce-ce00-4bfb-bd2d-b9f2f7ac4b7a_1539x890.png 848w, https://substackcdn.com/image/fetch/$s_!H_Z2!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F276c7cce-ce00-4bfb-bd2d-b9f2f7ac4b7a_1539x890.png 1272w, https://substackcdn.com/image/fetch/$s_!H_Z2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F276c7cce-ce00-4bfb-bd2d-b9f2f7ac4b7a_1539x890.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>&#128274;This content is free for all subscribers. Sign up and get full access (don&#8217;t pay anything).</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p></div><p>Extract the archive and open it with VS 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_!bCTz!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c37e369-23e2-4dc0-ab57-a114b46e8767_1868x1152.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!bCTz!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c37e369-23e2-4dc0-ab57-a114b46e8767_1868x1152.png 424w, https://substackcdn.com/image/fetch/$s_!bCTz!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c37e369-23e2-4dc0-ab57-a114b46e8767_1868x1152.png 848w, https://substackcdn.com/image/fetch/$s_!bCTz!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c37e369-23e2-4dc0-ab57-a114b46e8767_1868x1152.png 1272w, https://substackcdn.com/image/fetch/$s_!bCTz!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c37e369-23e2-4dc0-ab57-a114b46e8767_1868x1152.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!bCTz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c37e369-23e2-4dc0-ab57-a114b46e8767_1868x1152.png" width="1456" height="898" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4c37e369-23e2-4dc0-ab57-a114b46e8767_1868x1152.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:898,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:176824,&quot;alt&quot;:&quot;A Ready-To-Use Claude Code Solution Template&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://www.productcompass.pm/i/197350322?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c37e369-23e2-4dc0-ab57-a114b46e8767_1868x1152.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="A Ready-To-Use Claude Code Solution Template" title="A Ready-To-Use Claude Code Solution Template" srcset="https://substackcdn.com/image/fetch/$s_!bCTz!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c37e369-23e2-4dc0-ab57-a114b46e8767_1868x1152.png 424w, https://substackcdn.com/image/fetch/$s_!bCTz!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c37e369-23e2-4dc0-ab57-a114b46e8767_1868x1152.png 848w, https://substackcdn.com/image/fetch/$s_!bCTz!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c37e369-23e2-4dc0-ab57-a114b46e8767_1868x1152.png 1272w, https://substackcdn.com/image/fetch/$s_!bCTz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c37e369-23e2-4dc0-ab57-a114b46e8767_1868x1152.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>You will see:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ndu2!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Febef5d2e-42da-4d1d-9f0b-2e775456da60_2143x1060.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ndu2!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Febef5d2e-42da-4d1d-9f0b-2e775456da60_2143x1060.png 424w, https://substackcdn.com/image/fetch/$s_!ndu2!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Febef5d2e-42da-4d1d-9f0b-2e775456da60_2143x1060.png 848w, https://substackcdn.com/image/fetch/$s_!ndu2!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Febef5d2e-42da-4d1d-9f0b-2e775456da60_2143x1060.png 1272w, https://substackcdn.com/image/fetch/$s_!ndu2!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Febef5d2e-42da-4d1d-9f0b-2e775456da60_2143x1060.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ndu2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Febef5d2e-42da-4d1d-9f0b-2e775456da60_2143x1060.png" width="1456" height="720" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ebef5d2e-42da-4d1d-9f0b-2e775456da60_2143x1060.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:720,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:295435,&quot;alt&quot;:&quot;A Ready-To-Use Claude Code Solution Template&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://www.productcompass.pm/i/197350322?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Febef5d2e-42da-4d1d-9f0b-2e775456da60_2143x1060.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="A Ready-To-Use Claude Code Solution Template" title="A Ready-To-Use Claude Code Solution Template" srcset="https://substackcdn.com/image/fetch/$s_!ndu2!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Febef5d2e-42da-4d1d-9f0b-2e775456da60_2143x1060.png 424w, https://substackcdn.com/image/fetch/$s_!ndu2!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Febef5d2e-42da-4d1d-9f0b-2e775456da60_2143x1060.png 848w, https://substackcdn.com/image/fetch/$s_!ndu2!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Febef5d2e-42da-4d1d-9f0b-2e775456da60_2143x1060.png 1272w, https://substackcdn.com/image/fetch/$s_!ndu2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Febef5d2e-42da-4d1d-9f0b-2e775456da60_2143x1060.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Inside:</p><ul><li><p><strong>Predefined configuration:</strong></p><ul><li><p>CLAUDE.md / AGENTS.md - agent&#8217;s constitution</p></li><li><p>settings.json - cross-team project settings, predefined permissions and plugins</p></li><li><p>settings.local.json - your local project settings with 200K context window and 80% autocompact</p></li></ul></li><li><p><strong>Examples:</strong></p><ul><li><p>SKILL.md - an example custom skill, you can remove it.</p></li><li><p>tools/reddit_api_example.py - an example custom tool generated by Claude. You can remove it, in that case remove line 53 from AGENTS.md too.</p></li><li><p>.env - here, you configure your API keys. Not committed to GitHub. You can remove two lines: REDDIT_CLIENT_ID and REDDIT_CLIENT_SECRET.</p></li><li><p>.mcp.json - an example custom MCP server. You can remove Linear (lines 3-6), if you don&#8217;t need it.</p></li></ul></li></ul><blockquote><p><strong>Tasks for you:</strong> </p><ul><li><p>Review and remove or adapt examples listed above.</p></li><li><p>Update <strong>## Strategic context, about me</strong> in AGENTS.md with a brief summary of your strategy or/and about you (for an individual)</p></li><li><p>Update <strong>## Communication and style </strong>in AGENTS.md so it follows your writing style and preferences</p></li><li><p>Update docs/strategy.md with a information about your product</p></li></ul></blockquote><div><hr></div><h2>3. How to Configure MCP Servers in Claude Code Step-By-Step</h2><p>MCP is a common protocol to connect apps such as Stripe, Gmail, Notion, Jira, or Slack. The easiest way is to go to <a href="https://claude.ai/customize/connectors">https://claude.ai/customize/connectors</a> and configure them there:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!wwAY!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96e5d411-f55d-4ede-821c-ca9989044fa1_2165x1073.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!wwAY!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96e5d411-f55d-4ede-821c-ca9989044fa1_2165x1073.png 424w, https://substackcdn.com/image/fetch/$s_!wwAY!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96e5d411-f55d-4ede-821c-ca9989044fa1_2165x1073.png 848w, https://substackcdn.com/image/fetch/$s_!wwAY!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96e5d411-f55d-4ede-821c-ca9989044fa1_2165x1073.png 1272w, https://substackcdn.com/image/fetch/$s_!wwAY!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96e5d411-f55d-4ede-821c-ca9989044fa1_2165x1073.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!wwAY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96e5d411-f55d-4ede-821c-ca9989044fa1_2165x1073.png" width="1456" height="722" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/96e5d411-f55d-4ede-821c-ca9989044fa1_2165x1073.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:722,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:320224,&quot;alt&quot;:&quot;How to Configure MCP Servers in Claude Code via claude.ai&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://www.productcompass.pm/i/197350322?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96e5d411-f55d-4ede-821c-ca9989044fa1_2165x1073.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="How to Configure MCP Servers in Claude Code via claude.ai" title="How to Configure MCP Servers in Claude Code via claude.ai" srcset="https://substackcdn.com/image/fetch/$s_!wwAY!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96e5d411-f55d-4ede-821c-ca9989044fa1_2165x1073.png 424w, https://substackcdn.com/image/fetch/$s_!wwAY!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96e5d411-f55d-4ede-821c-ca9989044fa1_2165x1073.png 848w, https://substackcdn.com/image/fetch/$s_!wwAY!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96e5d411-f55d-4ede-821c-ca9989044fa1_2165x1073.png 1272w, https://substackcdn.com/image/fetch/$s_!wwAY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96e5d411-f55d-4ede-821c-ca9989044fa1_2165x1073.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Those connectors are automatically available in Claude Code, too, as long you use a Claude subscription. Here&#8217;s how Claude works with my Gmail Connector:</p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;2cf3986e-7105-4967-bbf0-2aa9d687463c&quot;,&quot;duration&quot;:null}"></div><blockquote><p><strong>Task for you:</strong> Connect the apps you use the most, such as Gmail, Notion, or Google Calendar. Configure actions that require your approval, such as sending an email, in claude.ai (presented in the screenshot above).</p></blockquote><p>For apps not available in the Claude catalogue or when using a free LLM, use Google to find a dedicated MCP server and ask Claude to configure it in a chat based on the documentation:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!QlqI!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05db63e8-f003-4ab9-97c4-811ab4c604eb_1586x849.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!QlqI!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05db63e8-f003-4ab9-97c4-811ab4c604eb_1586x849.png 424w, https://substackcdn.com/image/fetch/$s_!QlqI!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05db63e8-f003-4ab9-97c4-811ab4c604eb_1586x849.png 848w, https://substackcdn.com/image/fetch/$s_!QlqI!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05db63e8-f003-4ab9-97c4-811ab4c604eb_1586x849.png 1272w, https://substackcdn.com/image/fetch/$s_!QlqI!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05db63e8-f003-4ab9-97c4-811ab4c604eb_1586x849.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!QlqI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05db63e8-f003-4ab9-97c4-811ab4c604eb_1586x849.png" width="1456" height="779" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/05db63e8-f003-4ab9-97c4-811ab4c604eb_1586x849.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:779,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:99495,&quot;alt&quot;:&quot;Configure MCP via Claude Code interface&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://www.productcompass.pm/i/197350322?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05db63e8-f003-4ab9-97c4-811ab4c604eb_1586x849.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Configure MCP via Claude Code interface" title="Configure MCP via Claude Code interface" srcset="https://substackcdn.com/image/fetch/$s_!QlqI!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05db63e8-f003-4ab9-97c4-811ab4c604eb_1586x849.png 424w, https://substackcdn.com/image/fetch/$s_!QlqI!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05db63e8-f003-4ab9-97c4-811ab4c604eb_1586x849.png 848w, https://substackcdn.com/image/fetch/$s_!QlqI!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05db63e8-f003-4ab9-97c4-811ab4c604eb_1586x849.png 1272w, https://substackcdn.com/image/fetch/$s_!QlqI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F05db63e8-f003-4ab9-97c4-811ab4c604eb_1586x849.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>MCP servers can be available: </p><ul><li><p>Only for you when using this project</p></li><li><p>For any user using this project</p></li><li><p>For any project on your local machine</p></li></ul><p>Include your preference in the prompt.</p><div><hr></div><h2>4. How to Work with Skills in Claude Code Step-By-Step</h2><p>Each skill gives Claude domain knowledge, analytical frameworks, or a guided workflow for a specific task. </p><p>They always contain SKILL.md file and can also include additional resources, for example:</p><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;markdown&quot;,&quot;nodeId&quot;:&quot;078b90a6-3d46-4bde-b46a-0b60e0a8fc77&quot;}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-markdown">---
name: substack-to-pdf
description: Export Substack posts to self-contained PDFs
  with embedded images.
---

# When to use
When asked to create PDFs from Substack posts.

# Steps
1. Fetch post HTML
2. Download images, embed as base64
3. Render with Playwright

# Files
- script.py
- styles.css</code></pre></div><p>By default Claude can see only the frontmatter ("description"). The full skill is loaded automatically when relevant to the conversation.</p><h3>4.1 Skills and plugins available publicly</h3><p>Top recommended public repos. Each contains installation instructions. You can also give your agent an URL and ask to import specific skills:</p><ol><li><p><strong><a href="https://github.com/phuryn/pm-skills">github.com/phuryn/pm-skills:</a></strong> PM Skills Marketplace &#8212; 100+ agentic skills, commands, and plugins &#8212; from discovery to strategy, execution, launch, and growth</p></li><li><p><strong><a href="https://claudemarketplaces.com/">claudemarketplaces.com</a></strong>: Browse and discover plugin marketplaces you can add to Cowork or Code</p></li><li><p><strong><a href="https://github.com/travisvn/awesome-claude-skills">github.com/travisvn/awesome-claude-skills</a></strong>: Community-curated collection with battle-tested skills for TDD, debugging, collaboration</p></li><li><p><strong><a href="https://github.com/sickn33/antigravity-awesome-skills">github.com/sickn33/antigravity-awesome-skills</a></strong>: 868+ universal agentic skills &#8212; covers security, DevOps, full-stack, AI/ML, and more. Role-based bundles (Startup Founder, Marketing &amp; Growth, etc.) let you pick what&#8217;s relevant. Works with Claude Desktop, Claude Code, Cursor, Gemini CLI, Codex, OpenCode, and Antigravity</p></li><li><p><strong><a href="https://skills.sh/">skills.sh</a></strong>: Vercel&#8217;s open skills ecosystem &#8212; directory and leaderboard, CLI installer (npx skills add). PM-relevant skills include product strategy frameworks, pricing strategy, launch playbooks, discovery interview guides, PRD generator, analytics tracking setup, resume optimizer, and more. Full repo also covers marketing, SEO, copywriting, and web design. </p></li></ol><p><strong>The bottom line:</strong> don't install skills you don't need. Start with none and add one when a real task forces it. Even unloaded skills cost context - the frontmatter description always loads.</p><h3>4.2 How to create your own Claude Code skills</h3><p>When you perform a specific task multiple times, ask Claude to turn it into a skill. It's way easier than editing markdown files manually.</p><p>Here, I continue the example from point 3:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!DTUz!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd665d280-97b8-4872-a966-cb3997e8fd2b_2404x1438.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!DTUz!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd665d280-97b8-4872-a966-cb3997e8fd2b_2404x1438.png 424w, https://substackcdn.com/image/fetch/$s_!DTUz!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd665d280-97b8-4872-a966-cb3997e8fd2b_2404x1438.png 848w, https://substackcdn.com/image/fetch/$s_!DTUz!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd665d280-97b8-4872-a966-cb3997e8fd2b_2404x1438.png 1272w, https://substackcdn.com/image/fetch/$s_!DTUz!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd665d280-97b8-4872-a966-cb3997e8fd2b_2404x1438.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!DTUz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd665d280-97b8-4872-a966-cb3997e8fd2b_2404x1438.png" width="1456" height="871" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d665d280-97b8-4872-a966-cb3997e8fd2b_2404x1438.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:871,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:428312,&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://www.productcompass.pm/i/197350322?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd665d280-97b8-4872-a966-cb3997e8fd2b_2404x1438.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_!DTUz!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd665d280-97b8-4872-a966-cb3997e8fd2b_2404x1438.png 424w, https://substackcdn.com/image/fetch/$s_!DTUz!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd665d280-97b8-4872-a966-cb3997e8fd2b_2404x1438.png 848w, https://substackcdn.com/image/fetch/$s_!DTUz!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd665d280-97b8-4872-a966-cb3997e8fd2b_2404x1438.png 1272w, https://substackcdn.com/image/fetch/$s_!DTUz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd665d280-97b8-4872-a966-cb3997e8fd2b_2404x1438.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Next time you ask Claude to summarize emails, it will reuse that logic while saving tokens.</p><p>Tip: Skills can be available for any user using this project or for any project on your local machine. It can also be called as subagent - use this option when the skill doesn't need your entire conversation history. Include your preferences in the prompt.</p><blockquote><p><strong>Task for you:</strong> When you notice a recurring pattern, ask Claude to turn it into a skill.</p></blockquote><div><hr></div><h2>5. How to Use Claude Code with Free Frontier Models</h2><blockquote><p><strong>Before you start:</strong> There is an open Anthropic bug, <a href="https://github.com/anthropics/claude-code/issues/36179">36179</a>. Using alternative models works <strong>only with</strong> Claude Code in terminal, not with the Claude Code extension for VS Code. Start by using your Claude subscription, especially if you're not comfortable with Claude Code yet.</p></blockquote><p><strong>Step 1: </strong>Go to OpenRouter, sign up: https://openrouter.ai/</p><p><strong>Step 2: </strong>Verify your email address by clicking a link in an email message</p><p><strong>Step 3: </strong>Add $5 credits to your account (to verify the account): <a href="https://openrouter.ai/settings/credits">https://openrouter.ai/settings/credits</a></p><p><strong>Step 4: </strong>Create a free API key: <a href="https://openrouter.ai/workspaces/default/keys">https://openrouter.ai/workspaces/default/keys</a></p><p><strong>Step 5: Open a folder with your project. </strong>Create <strong>settings.local.json</strong> in the .claude folder. Inside:</p><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;json&quot;,&quot;nodeId&quot;:&quot;b3b2f7ff-3cc3-4f05-abc3-e227745cf6f4&quot;}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-json">{
  "env": {
    "ANTHROPIC_BASE_URL": "https://openrouter.ai/api",
    "ANTHROPIC_AUTH_TOKEN": "{your-API-key}",
    "ANTHROPIC_API_KEY": ""
  },
  "model": "inclusionai/ring-2.6-1t:free"
}</code></pre></div><p>You can also rename this file, already in your template. Create a backup of the original settings.local.json:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!1DIc!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F740913b4-ae4b-43ac-afe8-e16e3dba9f39_2023x846.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!1DIc!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F740913b4-ae4b-43ac-afe8-e16e3dba9f39_2023x846.png 424w, https://substackcdn.com/image/fetch/$s_!1DIc!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F740913b4-ae4b-43ac-afe8-e16e3dba9f39_2023x846.png 848w, https://substackcdn.com/image/fetch/$s_!1DIc!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F740913b4-ae4b-43ac-afe8-e16e3dba9f39_2023x846.png 1272w, https://substackcdn.com/image/fetch/$s_!1DIc!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F740913b4-ae4b-43ac-afe8-e16e3dba9f39_2023x846.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!1DIc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F740913b4-ae4b-43ac-afe8-e16e3dba9f39_2023x846.png" width="1456" height="609" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/740913b4-ae4b-43ac-afe8-e16e3dba9f39_2023x846.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:609,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:180267,&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://www.productcompass.pm/i/197350322?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F740913b4-ae4b-43ac-afe8-e16e3dba9f39_2023x846.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_!1DIc!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F740913b4-ae4b-43ac-afe8-e16e3dba9f39_2023x846.png 424w, https://substackcdn.com/image/fetch/$s_!1DIc!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F740913b4-ae4b-43ac-afe8-e16e3dba9f39_2023x846.png 848w, https://substackcdn.com/image/fetch/$s_!1DIc!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F740913b4-ae4b-43ac-afe8-e16e3dba9f39_2023x846.png 1272w, https://substackcdn.com/image/fetch/$s_!1DIc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F740913b4-ae4b-43ac-afe8-e16e3dba9f39_2023x846.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>I suggested <strong>inclusionai/ring-2.6-1t:free</strong>. It&#8217;s a 63B model with a 262K context window. Note: <a href="https://openrouter.ai/models?order=pricing-low-to-high">free models on OpenRouter</a> change regularly.</p><p>Here&#8217;s how it works with Claude Code in terminal, completely free:</p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;2aef4258-6704-4507-ad74-123363d2e14d&quot;,&quot;duration&quot;:null}"></div><blockquote><p><strong>Task for you:</strong> Get comfortable with Claude Code and Anthropic models before switching to alternative models. You don&#8217;t want to learn Claude Code and solve OpenRouter issues simultaneously.</p></blockquote><div><hr></div><h2>Closing</h2><p>You have everything you need to start.</p><p>Install it this week. Connect apps (MCP servers) you&#8217;ll actually use. Build one skill from a task you already do twice.</p><p>The more you use Claude Code, the easier it becomes. Later, review other posts listed in the intro:</p><ul><li><p><a href="https://www.productcompass.pm/p/claude-code-guide">The Guide to Claude Code for PMs</a></p></li><li><p><a href="https://www.productcompass.pm/p/self-improving-claude-system">What I Learned Building a Self-Improving Agentic System with Claude</a></p></li><li><p><a href="https://www.productcompass.pm/p/claude-md-snippets">Three CLAUDE.md Blocks That Make Claude Get Smarter Every Session</a></p></li><li><p><a href="https://www.productcompass.pm/p/claude-agent-sdk-production-agent">Your .claude/ Folder Is a Production Agent</a></p></li><li><p><a href="https://www.productcompass.pm/p/claude-opus-4-7-guide">The Ultimate Guide to Claude Opus 4.7</a></p></li><li><p><a href="https://www.productcompass.pm/p/stop-hitting-claude-code-limits">Claude Code&#8217;s Limits Are Generous. The Problem Is Your Setup.</a></p></li><li><p><a href="https://www.productcompass.pm/p/claude-fable-5-guide">The Ultimate Guide to Claude Fable 5</a></p></li><li><p><a href="https://www.productcompass.pm/p/ai-product-management-learning-roadmap">the AI PM learning roadmap</a>.</p></li></ul><div><hr></div><h2>Thanks for Reading The Product Compass</h2><p>It&#8217;s amazing to learn and grow together.</p><p>Have an amazing rest of the week, Pawe&#322;</p>]]></content:encoded></item><item><title><![CDATA[Claude Code's Limits Are Generous. The Problem Is Your Setup.]]></title><description><![CDATA[$1,389/mo &#8594; $200/mo on the same Claude Code workflow. 4 root causes you control &#8212; with copy-paste templates.]]></description><link>https://www.productcompass.pm/p/stop-hitting-claude-code-limits</link><guid isPermaLink="false">https://www.productcompass.pm/p/stop-hitting-claude-code-limits</guid><dc:creator><![CDATA[Paweł Huryn]]></dc:creator><pubDate>Mon, 27 Apr 2026 20:22:06 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/d60e9347-99c8-4a74-aa68-e897dfeb1d51_1280x720.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>I&#8217;m on Claude Code <strong>Max 20x (&#8364;180/mo)</strong>. 5 days in. Only 34% used working with Claude for 8 hours/day and running 10+ scheduled workflows:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Ajto!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe0c2aade-7a3d-4950-b35f-46d558aabb18_1725x734.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Ajto!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe0c2aade-7a3d-4950-b35f-46d558aabb18_1725x734.png 424w, https://substackcdn.com/image/fetch/$s_!Ajto!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe0c2aade-7a3d-4950-b35f-46d558aabb18_1725x734.png 848w, https://substackcdn.com/image/fetch/$s_!Ajto!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe0c2aade-7a3d-4950-b35f-46d558aabb18_1725x734.png 1272w, https://substackcdn.com/image/fetch/$s_!Ajto!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe0c2aade-7a3d-4950-b35f-46d558aabb18_1725x734.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Ajto!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe0c2aade-7a3d-4950-b35f-46d558aabb18_1725x734.png" width="1456" height="620" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e0c2aade-7a3d-4950-b35f-46d558aabb18_1725x734.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:620,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:94710,&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://www.productcompass.pm/i/195650302?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe0c2aade-7a3d-4950-b35f-46d558aabb18_1725x734.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_!Ajto!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe0c2aade-7a3d-4950-b35f-46d558aabb18_1725x734.png 424w, https://substackcdn.com/image/fetch/$s_!Ajto!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe0c2aade-7a3d-4950-b35f-46d558aabb18_1725x734.png 848w, https://substackcdn.com/image/fetch/$s_!Ajto!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe0c2aade-7a3d-4950-b35f-46d558aabb18_1725x734.png 1272w, https://substackcdn.com/image/fetch/$s_!Ajto!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe0c2aade-7a3d-4950-b35f-46d558aabb18_1725x734.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>The same workflow cost me <strong>&#8364;1,184.95</strong> (~$1,389) a month ago:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ugRI!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e1c8caf-264c-4afd-b320-6a9950c2d50d_1433x814.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ugRI!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e1c8caf-264c-4afd-b320-6a9950c2d50d_1433x814.png 424w, https://substackcdn.com/image/fetch/$s_!ugRI!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e1c8caf-264c-4afd-b320-6a9950c2d50d_1433x814.png 848w, https://substackcdn.com/image/fetch/$s_!ugRI!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e1c8caf-264c-4afd-b320-6a9950c2d50d_1433x814.png 1272w, https://substackcdn.com/image/fetch/$s_!ugRI!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e1c8caf-264c-4afd-b320-6a9950c2d50d_1433x814.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ugRI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e1c8caf-264c-4afd-b320-6a9950c2d50d_1433x814.png" width="1433" height="814" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2e1c8caf-264c-4afd-b320-6a9950c2d50d_1433x814.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:814,&quot;width&quot;:1433,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:133119,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.productcompass.pm/i/195650302?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e1c8caf-264c-4afd-b320-6a9950c2d50d_1433x814.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_!ugRI!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e1c8caf-264c-4afd-b320-6a9950c2d50d_1433x814.png 424w, https://substackcdn.com/image/fetch/$s_!ugRI!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e1c8caf-264c-4afd-b320-6a9950c2d50d_1433x814.png 848w, https://substackcdn.com/image/fetch/$s_!ugRI!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e1c8caf-264c-4afd-b320-6a9950c2d50d_1433x814.png 1272w, https://substackcdn.com/image/fetch/$s_!ugRI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e1c8caf-264c-4afd-b320-6a9950c2d50d_1433x814.png 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>No model swap, no skipped sessions.</p><p>Between March 23 and April 23, some users on Max burned weekly quotas in 1-2 days. Anthropic shipped 3 bug fixes (v2.1.116+) and reset all subscriber limits. Full writeup in their <a href="https://x.com/ClaudeDevs/status/2047371123185287223">April 23 postmortem</a>.</p><p><strong>Four root causes are still on your side</strong> (I&#8217;ve been researching and testing that for the last 2 weeks):</p><ol><li><p><strong>Cache misses</strong></p></li><li><p><strong>Context bloat</strong></p></li><li><p><strong>Wrong model or effort</strong></p></li><li><p><strong>Wrong input format</strong></p></li></ol><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!5vbl!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a988b5c-6060-433b-aa37-9cdd0b070518_2400x3000.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!5vbl!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a988b5c-6060-433b-aa37-9cdd0b070518_2400x3000.jpeg 424w, https://substackcdn.com/image/fetch/$s_!5vbl!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a988b5c-6060-433b-aa37-9cdd0b070518_2400x3000.jpeg 848w, https://substackcdn.com/image/fetch/$s_!5vbl!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a988b5c-6060-433b-aa37-9cdd0b070518_2400x3000.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!5vbl!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a988b5c-6060-433b-aa37-9cdd0b070518_2400x3000.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!5vbl!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a988b5c-6060-433b-aa37-9cdd0b070518_2400x3000.jpeg" width="1456" height="1820" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5a988b5c-6060-433b-aa37-9cdd0b070518_2400x3000.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1820,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;How to reduce and optimize Claude Code tokens, Claude Code limits&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="How to reduce and optimize Claude Code tokens, Claude Code limits" title="How to reduce and optimize Claude Code tokens, Claude Code limits" srcset="https://substackcdn.com/image/fetch/$s_!5vbl!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a988b5c-6060-433b-aa37-9cdd0b070518_2400x3000.jpeg 424w, https://substackcdn.com/image/fetch/$s_!5vbl!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a988b5c-6060-433b-aa37-9cdd0b070518_2400x3000.jpeg 848w, https://substackcdn.com/image/fetch/$s_!5vbl!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a988b5c-6060-433b-aa37-9cdd0b070518_2400x3000.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!5vbl!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a988b5c-6060-433b-aa37-9cdd0b070518_2400x3000.jpeg 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div><hr></div><h2><em>Our Sponsor: Nimbalyst</em></h2><p><em>This is a paid placement, but I only run sponsors I've actually tested. I&#8217;ve been working with <strong><a href="https://nimbalyst.com/?utm_source=productcompass&amp;utm_medium=newsletter&amp;utm_campaign=pawel-huryn-newsletter&amp;utm_content=nimbalyst-article">Nimbalyst</a></strong> for 10+ hours.</em></p><p><em>It&#8217;s a visual workspace for Claude Code and Codex. If the VS Code interface has intimidated you, you should try it.</em></p><p><em>I loved the markdown files that actually render without plugins, and navigating between linked documents. VS Code is missing this.</em></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!IK63!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2969f077-0fc9-4ad8-a26b-c8a2f66716e1_3077x1910.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!IK63!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2969f077-0fc9-4ad8-a26b-c8a2f66716e1_3077x1910.png 424w, https://substackcdn.com/image/fetch/$s_!IK63!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2969f077-0fc9-4ad8-a26b-c8a2f66716e1_3077x1910.png 848w, https://substackcdn.com/image/fetch/$s_!IK63!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2969f077-0fc9-4ad8-a26b-c8a2f66716e1_3077x1910.png 1272w, https://substackcdn.com/image/fetch/$s_!IK63!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2969f077-0fc9-4ad8-a26b-c8a2f66716e1_3077x1910.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!IK63!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2969f077-0fc9-4ad8-a26b-c8a2f66716e1_3077x1910.png" width="1456" height="904" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2969f077-0fc9-4ad8-a26b-c8a2f66716e1_3077x1910.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:904,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:705060,&quot;alt&quot;:&quot;Nimbalyst - a visual workspace for Claude Code and Codex&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://www.productcompass.pm/i/195650302?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2969f077-0fc9-4ad8-a26b-c8a2f66716e1_3077x1910.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Nimbalyst - a visual workspace for Claude Code and Codex" title="Nimbalyst - a visual workspace for Claude Code and Codex" srcset="https://substackcdn.com/image/fetch/$s_!IK63!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2969f077-0fc9-4ad8-a26b-c8a2f66716e1_3077x1910.png 424w, https://substackcdn.com/image/fetch/$s_!IK63!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2969f077-0fc9-4ad8-a26b-c8a2f66716e1_3077x1910.png 848w, https://substackcdn.com/image/fetch/$s_!IK63!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2969f077-0fc9-4ad8-a26b-c8a2f66716e1_3077x1910.png 1272w, https://substackcdn.com/image/fetch/$s_!IK63!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2969f077-0fc9-4ad8-a26b-c8a2f66716e1_3077x1910.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Working with accredia.io documents in <a href="https://nimbalyst.com/?utm_source=productcompass&amp;utm_medium=newsletter&amp;utm_campaign=pawel-huryn-newsletter&amp;utm_content=nimbalyst-article">Nimbalyst</a></figcaption></figure></div><p><em>Big surprise: sessions as cards on a Kanban board. Backlog, planning, implementing, done. Claude doesn&#8217;t have this.</em></p><p><em>Plus session tracking, all the context window techniques we&#8217;ve been discussing, and a native iOS app (their custom remote control). Works with your Claude Pro/Max/Team subscription, not just API keys.</em></p><p><em>Free for individual use. Worth twenty minutes if you&#8217;ve been Claude-Code-curious:</em></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://nimbalyst.com/?utm_source=productcompass&amp;utm_medium=newsletter&amp;utm_campaign=pawel-huryn-newsletter&amp;utm_content=nimbalyst-article&quot;,&quot;text&quot;:&quot;Download Free&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://nimbalyst.com/?utm_source=productcompass&amp;utm_medium=newsletter&amp;utm_campaign=pawel-huryn-newsletter&amp;utm_content=nimbalyst-article"><span>Download Free</span></a></p><div><hr></div><h2>1. Cache Misses</h2><p>The prompt cache is the single biggest lever in Claude Code. Most people never look at it.</p><p>The math:</p><ul><li><p>Cache <strong>read</strong>: 0.1&#215; the input price</p></li><li><p>Cache <strong>write</strong> (5-min TTL): 1.25&#215;</p></li><li><p>Cache <strong>write</strong> (1-hour TTL): 2&#215;</p></li><li><p>Cache <strong>refresh on hit</strong>: free (charged at the read price)</p></li></ul><p>Every hit on a cached prefix resets its TTL at no extra cost. So a long session with steady tool use stays warm indefinitely as long as the prefix doesn&#8217;t change.</p><p>Thariq spelled out the rules in <a href="https://x.com/trq212/status/2024574133011673516">&#8220;Lessons from Building Claude Code.&#8221;</a> The two that move the needle:</p><ul><li><p><strong>Lock your tools at session start.</strong> Adding or removing a tool mid-session invalidates the cached prefix and forces a full re-read. Never add or remove tools mid-session.</p></li><li><p><strong>Lock your model at session start.</strong> Switching models mid-session blows the cache for the same reason.</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!YBip!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d1e0f09-cff9-4694-9cef-365f2f2c2a23_1199x661.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!YBip!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d1e0f09-cff9-4694-9cef-365f2f2c2a23_1199x661.jpeg 424w, https://substackcdn.com/image/fetch/$s_!YBip!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d1e0f09-cff9-4694-9cef-365f2f2c2a23_1199x661.jpeg 848w, https://substackcdn.com/image/fetch/$s_!YBip!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d1e0f09-cff9-4694-9cef-365f2f2c2a23_1199x661.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!YBip!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d1e0f09-cff9-4694-9cef-365f2f2c2a23_1199x661.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!YBip!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d1e0f09-cff9-4694-9cef-365f2f2c2a23_1199x661.jpeg" width="1199" height="661" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4d1e0f09-cff9-4694-9cef-365f2f2c2a23_1199x661.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:661,&quot;width&quot;:1199,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Claude Code Prompt Caching&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="Claude Code Prompt Caching" title="Claude Code Prompt Caching" srcset="https://substackcdn.com/image/fetch/$s_!YBip!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d1e0f09-cff9-4694-9cef-365f2f2c2a23_1199x661.jpeg 424w, https://substackcdn.com/image/fetch/$s_!YBip!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d1e0f09-cff9-4694-9cef-365f2f2c2a23_1199x661.jpeg 848w, https://substackcdn.com/image/fetch/$s_!YBip!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d1e0f09-cff9-4694-9cef-365f2f2c2a23_1199x661.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!YBip!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4d1e0f09-cff9-4694-9cef-365f2f2c2a23_1199x661.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Source: Lessons from <a href="https://x.com/trq212/status/2024574133011673516">Building Claude Code: Prompt Caching Is Everything</a> by Thariq</figcaption></figure></div><p><strong>~90% is healthy on the 5-min default.</strong> On the 1-hour TTL it climbs to ~97-99%, but that one is API-only and isn&#8217;t priced into Pro / Max / Team subscriptions.</p><p><strong>What to Do:</strong></p><ul><li><p><strong>Protect the prefix.</strong> Don&#8217;t add MCP servers mid-session, don&#8217;t <em><strong>/model </strong></em>mid-session.</p></li><li><p><strong>Watch the hit rate.</strong> See &#167; Watch the Number below.</p></li><li><p><strong>Consider the 1h cache</strong> for long sessions on the API. Write costs more (2&#215; vs 1.25&#215;), but the higher hit rate pays it back.</p></li></ul><div><hr></div><h2>2. Context Bloat</h2><p>For Opus 4.7, 1M context is the default. That&#8217;s expensive. Long sessions sprawl, and auto-compact fires later than it should. Disable it and fall back to 200K. 200K is enough for almost any task.</p><p>On 200K, auto-compact fires at ~155K (~80%), the behavior Boris Cherny <a href="https://x.com/bcherny/status/1977163445205450783">described</a> for the previous Opus. The trick is to compact <em>before</em> you hit the auto-trigger. Once it fires, it pushes you over and warms a fresh prefix. Compact early instead.</p><p>The settings I run:</p><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;json&quot;,&quot;nodeId&quot;:&quot;9abfa5fd-968e-4bdd-8535-8ab07423f8f1&quot;}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-json">{
  "env": {
    "CLAUDE_CODE_DISABLE_1M_CONTEXT": "1",
    "CLAUDE_AUTOCOMPACT_PCT_OVERRIDE": "80"
  }
}</code></pre></div><p>That disables 1M context and pins the auto-compact threshold at 80%.</p><h3>2.1 Five Session Moves</h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!4U5G!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe517a714-2063-4a6d-898b-6e5a789cd86a_1200x455.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!4U5G!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe517a714-2063-4a6d-898b-6e5a789cd86a_1200x455.jpeg 424w, https://substackcdn.com/image/fetch/$s_!4U5G!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe517a714-2063-4a6d-898b-6e5a789cd86a_1200x455.jpeg 848w, https://substackcdn.com/image/fetch/$s_!4U5G!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe517a714-2063-4a6d-898b-6e5a789cd86a_1200x455.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!4U5G!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe517a714-2063-4a6d-898b-6e5a789cd86a_1200x455.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!4U5G!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe517a714-2063-4a6d-898b-6e5a789cd86a_1200x455.jpeg" width="1200" height="455" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e517a714-2063-4a6d-898b-6e5a789cd86a_1200x455.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:455,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Claude Code session management&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="Claude Code session management" title="Claude Code session management" srcset="https://substackcdn.com/image/fetch/$s_!4U5G!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe517a714-2063-4a6d-898b-6e5a789cd86a_1200x455.jpeg 424w, https://substackcdn.com/image/fetch/$s_!4U5G!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe517a714-2063-4a6d-898b-6e5a789cd86a_1200x455.jpeg 848w, https://substackcdn.com/image/fetch/$s_!4U5G!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe517a714-2063-4a6d-898b-6e5a789cd86a_1200x455.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!4U5G!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe517a714-2063-4a6d-898b-6e5a789cd86a_1200x455.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Source: <a href="https://x.com/trq212/status/2044548257058328723">Using Claude Code: Session Management &amp; 1M Context</a> by Thariq</figcaption></figure></div><ul><li><p><strong>/compact</strong> at 50% or after every task. Don&#8217;t wait for auto.</p></li><li><p><strong>/clear</strong> between unrelated work. New session = fresh prefix.</p></li><li><p><strong>/rewind</strong> when a turn went sideways. Cheaper than re-prompting around the bad context.</p></li><li><p><strong>Subagents</strong> for anything that doesn&#8217;t need the parent&#8217;s reasoning.</p></li></ul><h3>2.2 Subagents Are the Underused Move</h3><p>Anything that&#8217;s bulk-mechanical, scoped research, or parallelizable should run in a subagent. The parent context stays clean and you parallelize across cheaper models.</p><p>A CLAUDE.md task-delegation block I keep in every project:</p><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;markdown&quot;,&quot;nodeId&quot;:&quot;d8faf798-b5a4-4276-a773-08a9bf30f8b7&quot;}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-markdown">## Subagents v1.0

Spawn subagents to isolate context, parallelize independent work, or offload bulk mechanical tasks. Don't spawn when the parent needs the reasoning, when synthesis requires holding things together, or when spawn overhead dominates.

Pick the cheapest model that can do the subtask well:
- Haiku: bulk mechanical work, no judgment
- Sonnet: scoped research, code exploration, in-scope synthesis
- Opus: subtasks needing real planning or tradeoffs

If a subagent realizes it needs a higher tier than itself, return to the parent.

Parent owns final output and cross-spawn synthesis. User instructions override.</code></pre></div><h3>2.3 Skills Can Also Be Invoked as Agents</h3><p>Add <em><strong>agent: true</strong></em> and <em><strong>model:</strong></em><strong> </strong>to the frontmatter and the skill runs in its own subagent context with its own model. For example:</p><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;markdown&quot;,&quot;nodeId&quot;:&quot;de4b2f24-92c8-47fb-84b0-a72f7dc11485&quot;}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-markdown">---
name: tldr-pdf
description: Extract a 200-word TL;DR from a PDF without loading the full text into the parent context
agent: true
model: sonnet
---

You receive a path to a PDF.

1. Run `pdftotext "$1" -` to extract the text.
2. Read the output.
3. Return only:
   - 5-bullet TL;DR
   - 3 quotes worth keeping
   - Any URLs cited

Never return the full text. Never expand beyond the structure above.</code></pre></div><p>The parent gets back 200 words. The full PDF never touches its context.</p><h3>2.4 A Few More Techniques that Pay for Themselves on Long Sessions</h3><ul><li><p><strong>Load lean.</strong> Disable unused MCP servers, tools, skills, and plugins. Move rules out of CLAUDE.md and into skills, custom tools, or referenced .MD files (progressive disclosure).</p></li><li><p><strong>Spec prompts.</strong> Write requests like a spec: file paths, components, expected I/O, constraints. Vague requests burn turns and tokens.</p></li><li><p><strong>Skip the search.</strong> When you know the file, tag it @ docs/design.md or @ research.md. Claude doesn&#8217;t need to grep for what you can hand it directly.</p></li><li><p><strong><a href="https://github.com/rtk-ai/rtk">rtk-ai/rtk</a>.</strong> CLI proxy that strips redundant whitespace and compresses tool output. 60-90% according to the authors. ~20-30% token reduction in my workflow.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!vVPv!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfda5154-ef70-4d90-93b9-9ba85ffdc5cd_1199x763.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!vVPv!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfda5154-ef70-4d90-93b9-9ba85ffdc5cd_1199x763.jpeg 424w, https://substackcdn.com/image/fetch/$s_!vVPv!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfda5154-ef70-4d90-93b9-9ba85ffdc5cd_1199x763.jpeg 848w, https://substackcdn.com/image/fetch/$s_!vVPv!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfda5154-ef70-4d90-93b9-9ba85ffdc5cd_1199x763.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!vVPv!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfda5154-ef70-4d90-93b9-9ba85ffdc5cd_1199x763.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!vVPv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfda5154-ef70-4d90-93b9-9ba85ffdc5cd_1199x763.jpeg" width="1199" height="763" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/bfda5154-ef70-4d90-93b9-9ba85ffdc5cd_1199x763.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:763,&quot;width&quot;:1199,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;rtk-ai/rtk. CLI proxy that strips redundant whitespace and compresses tool output&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="rtk-ai/rtk. CLI proxy that strips redundant whitespace and compresses tool output" title="rtk-ai/rtk. CLI proxy that strips redundant whitespace and compresses tool output" srcset="https://substackcdn.com/image/fetch/$s_!vVPv!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfda5154-ef70-4d90-93b9-9ba85ffdc5cd_1199x763.jpeg 424w, https://substackcdn.com/image/fetch/$s_!vVPv!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfda5154-ef70-4d90-93b9-9ba85ffdc5cd_1199x763.jpeg 848w, https://substackcdn.com/image/fetch/$s_!vVPv!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfda5154-ef70-4d90-93b9-9ba85ffdc5cd_1199x763.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!vVPv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfda5154-ef70-4d90-93b9-9ba85ffdc5cd_1199x763.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div></li><li><p><strong><a href="https://github.com/juliusbrussee/caveman">juliusbrussee/caveman</a>.</strong> Drops conversational filler from responses without affecting the model&#8217;s actual reasoning. Highest savings on chats.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!nbaf!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2031c49-7890-4f0e-ba13-d4f14eb6c0e4_1200x438.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!nbaf!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2031c49-7890-4f0e-ba13-d4f14eb6c0e4_1200x438.jpeg 424w, https://substackcdn.com/image/fetch/$s_!nbaf!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2031c49-7890-4f0e-ba13-d4f14eb6c0e4_1200x438.jpeg 848w, https://substackcdn.com/image/fetch/$s_!nbaf!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2031c49-7890-4f0e-ba13-d4f14eb6c0e4_1200x438.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!nbaf!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2031c49-7890-4f0e-ba13-d4f14eb6c0e4_1200x438.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!nbaf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2031c49-7890-4f0e-ba13-d4f14eb6c0e4_1200x438.jpeg" width="1200" height="438" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d2031c49-7890-4f0e-ba13-d4f14eb6c0e4_1200x438.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:438,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;caveman. Drops conversational filler from responses without affecting the model&#8217;s actual reasoning&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="caveman. Drops conversational filler from responses without affecting the model&#8217;s actual reasoning" title="caveman. Drops conversational filler from responses without affecting the model&#8217;s actual reasoning" srcset="https://substackcdn.com/image/fetch/$s_!nbaf!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2031c49-7890-4f0e-ba13-d4f14eb6c0e4_1200x438.jpeg 424w, https://substackcdn.com/image/fetch/$s_!nbaf!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2031c49-7890-4f0e-ba13-d4f14eb6c0e4_1200x438.jpeg 848w, https://substackcdn.com/image/fetch/$s_!nbaf!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2031c49-7890-4f0e-ba13-d4f14eb6c0e4_1200x438.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!nbaf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2031c49-7890-4f0e-ba13-d4f14eb6c0e4_1200x438.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div></li></ul><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h2>3. Wrong Model or Effort</h2><p>Three separate dials. All burn tokens fast if you leave them on the wrong setting.</p><h3>3.1 Effort</h3><p>Default reasoning burns ~2&#215; the tokens of medium for most tasks. Set it on the prompt that needs the headroom, not the whole session.</p><p>markdown</p><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;toml&quot;,&quot;nodeId&quot;:&quot;0c8253bb-7604-4c42-9d50-c6c726b09b90&quot;}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-toml">/effort low       # quick fixes, mechanical tasks
/effort medium    # most prompts (huge savings vs default)
/effort high      # demanding reasoning 
/effort xhigh     # default for agentic coding (4.7)
/effort max       # diminishing returns; rarely worth the ~2&#215; xhigh cost</code></pre></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!0FBz!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9a4559e7-c3db-48c9-ad17-1116b8ac2658_1200x675.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!0FBz!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9a4559e7-c3db-48c9-ad17-1116b8ac2658_1200x675.jpeg 424w, https://substackcdn.com/image/fetch/$s_!0FBz!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9a4559e7-c3db-48c9-ad17-1116b8ac2658_1200x675.jpeg 848w, https://substackcdn.com/image/fetch/$s_!0FBz!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9a4559e7-c3db-48c9-ad17-1116b8ac2658_1200x675.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!0FBz!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9a4559e7-c3db-48c9-ad17-1116b8ac2658_1200x675.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!0FBz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9a4559e7-c3db-48c9-ad17-1116b8ac2658_1200x675.jpeg" width="1200" height="675" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9a4559e7-c3db-48c9-ad17-1116b8ac2658_1200x675.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:675,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Claude Code performance and cost by effort&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="Claude Code performance and cost by effort" title="Claude Code performance and cost by effort" srcset="https://substackcdn.com/image/fetch/$s_!0FBz!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9a4559e7-c3db-48c9-ad17-1116b8ac2658_1200x675.jpeg 424w, https://substackcdn.com/image/fetch/$s_!0FBz!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9a4559e7-c3db-48c9-ad17-1116b8ac2658_1200x675.jpeg 848w, https://substackcdn.com/image/fetch/$s_!0FBz!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9a4559e7-c3db-48c9-ad17-1116b8ac2658_1200x675.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!0FBz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9a4559e7-c3db-48c9-ad17-1116b8ac2658_1200x675.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Source: <a href="https://www.anthropic.com/news/claude-opus-4-7">Introducing Claude Opus 4.7</a></figcaption></figure></div><p>Per prompt, not per task or session. Since then, <a href="https://www.productcompass.pm/p/claude-fable-5-guide">the effort dial got re-measured under Fable 5</a>.</p><h3>3.2 Route in (CLAUDE.md)</h3><p>Pick the session model at start. You can&#8217;t switch mid-session without nuking the cache (&#167;1). Two options:</p><ul><li><p><strong>Sonnet session.</strong> Cheaper, but no Opus available. Good when you know the work is in-scope for Sonnet.</p></li><li><p><strong>Opus session + delegate.</strong> Pay for Opus on the parent (planning, tradeoffs), delegate the rest. My default for mixed work.</p></li></ul><p>Then spell out delegation in CLAUDE.md: Haiku for mechanical work, Sonnet for scoped research, Opus for tradeoffs. Opus 4.7 delegates less than 4.6, so you have to ask. See &#167; 2 (Task Delegation) for the full block.</p><h3>3.3 Route Out</h3><p>If you&#8217;re hitting Pro / Max / Team limits but want to keep the Claude Code interface, route to OpenRouter or another provider. GLM-5.1 &#8776; Opus at ~1/12&#215; the cost.</p><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;json&quot;,&quot;nodeId&quot;:&quot;715588e3-ffa7-476c-ae42-910a47744a48&quot;}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-json">{
  "env": {
    "ANTHROPIC_BASE_URL": "https://openrouter.ai/api",
    "ANTHROPIC_AUTH_TOKEN": "{YOUR-API-KEY}",
    "ANTHROPIC_API_KEY": ""
    },
  "model": "z-ai/glm-5.1"
}</code></pre></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h2>4. Wrong Input Format</h2><p>Some inputs are token-expensive by default. Three swaps cover most of it.</p><h3>4.1 Screenshots and Chrome Scraping &#8594; agent-browser</h3><p><strong><a href="https://github.com/vercel-labs/agent-browser">vercel-labs/agent-browser</a> </strong>browses pages via the accessibility tree instead of rendering and screenshotting. ~90% fewer tokens than &#8220;Claude in Chrome&#8221; when you&#8217;re scraping or doing research from web pages.</p><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;bash&quot;,&quot;nodeId&quot;:&quot;b0549860-9247-425b-9311-77949416f314&quot;}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-bash">npm install -g agent-browser
agent-browser install  # Download Chrome from Chrome for Testing (first time only)</code></pre></div><h3>4.2 PDFs &#8594; pdftotext, Not Claude&#8217;s PDF Reader</h3><p>The Read tool loads PDFs as images, which is expensive. Tell Claude to use &#8216;pdftotext&#8217; instead of &#8216;Read&#8217; (works for PDFs on local drive, but not attached to the chat - the latter works in Claude Desktop only).</p><p>The CLAUDE.md fragment that codifies defaults from 4.1 and 4.2:</p><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;markdown&quot;,&quot;nodeId&quot;:&quot;d0c0a1cd-57fd-4d21-9bdd-d049fcddcd71&quot;}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-markdown">## Preferred Tools

### Data Fetching

1. **WebFetch**: free, text-only, works on public pages that don't block bots.
2. **agent-browser CLI**: free, local Rust CLI + Chrome via CDP. For dynamic pages or auth walls that WebFetch can't handle. Returns the accessibility tree with element refs (@e1, @e2). ~82% fewer tokens than screenshot-based tools. Install: `npm i -g agent-browser &amp;&amp; agent-browser install`. Use `snapshot` for AI-friendly DOM state, element refs for interaction.
3. **Notice recurring fetch patterns and propose wrapping them as dedicated tools.** When the same fetch/parse logic comes up more than once, suggest wrapping it as a named tool (e.g. a skill file or a .py script that calls `agent-browser` with the snapshot and extraction steps baked in for that source). Add the entry to `## Dedicated Tools` below and reference it by name on future calls.

### PDF Files

Use 'pdftotext', not the 'Read' tool. Use 'Read' only when the user directly asks to analyze images or charts inside the document. Read loads PDFs as images.

## Dedicated Tools

&lt;!-- List project-specific tools here. For each, link to its skill or script file (e.g. `tools/reddit_fetch.py`). The orchestration logic lives in those files, not here. --&gt;</code></pre></div><h3>4.3 Large Repos &#8594; Code Graph, Not Raw File Reads</h3><p><strong><a href="https://github.com/tirth8205/code-review-graph">tirth8205/code-review-graph</a></strong> builds a persistent map of your codebase (a knowledge graph). Claude reads only what matters. Claimed 6.8&#215; fewer tokens on reviews, up to 49&#215; on daily coding tasks. I implemented it in accredia.io. Worth noting: it does reduce tokens on specific tasks, not all tokens.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!oIfv!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F94b3d917-c2fc-4a9d-ba21-e31c4ad6216b_3150x2599.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!oIfv!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F94b3d917-c2fc-4a9d-ba21-e31c4ad6216b_3150x2599.jpeg 424w, https://substackcdn.com/image/fetch/$s_!oIfv!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F94b3d917-c2fc-4a9d-ba21-e31c4ad6216b_3150x2599.jpeg 848w, https://substackcdn.com/image/fetch/$s_!oIfv!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F94b3d917-c2fc-4a9d-ba21-e31c4ad6216b_3150x2599.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!oIfv!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F94b3d917-c2fc-4a9d-ba21-e31c4ad6216b_3150x2599.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!oIfv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F94b3d917-c2fc-4a9d-ba21-e31c4ad6216b_3150x2599.jpeg" width="1456" height="1201" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/94b3d917-c2fc-4a9d-ba21-e31c4ad6216b_3150x2599.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1201,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;code-review-graph builds a persistent map of your codebase (a knowledge graph)&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="code-review-graph builds a persistent map of your codebase (a knowledge graph)" title="code-review-graph builds a persistent map of your codebase (a knowledge graph)" srcset="https://substackcdn.com/image/fetch/$s_!oIfv!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F94b3d917-c2fc-4a9d-ba21-e31c4ad6216b_3150x2599.jpeg 424w, https://substackcdn.com/image/fetch/$s_!oIfv!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F94b3d917-c2fc-4a9d-ba21-e31c4ad6216b_3150x2599.jpeg 848w, https://substackcdn.com/image/fetch/$s_!oIfv!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F94b3d917-c2fc-4a9d-ba21-e31c4ad6216b_3150x2599.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!oIfv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F94b3d917-c2fc-4a9d-ba21-e31c4ad6216b_3150x2599.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">AI coding tools re-read your entire codebase on every task. code-review-graph fixes that. It builds a structural map of your code with Tree-sitter, tracks changes incrementally, and gives your AI assistant precise context via MCP so it reads only what matters.</figcaption></figure></div><p>AI coding tools re-read your entire codebase on every task. code-review-graph fixes that. It builds a structural map of your code, tracks changes incrementally, and gives your AI assistant precise context via MCP so it reads only what matters.</p><div><hr></div><h2>5. Watch the Number</h2><p>Three dashboards, depending on your tier:</p><h3>5.1 Historical (Pro / Max / Team)</h3><p><strong><a href="https://github.com/phuryn/claude-usage">phuryn/claude-usage</a>:</strong> Long-term breakdown by session, day, week, and all-time. Use it to find where the spend went.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ezVk!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4eecb8fe-322c-45f4-9df5-1e035f97e627_1200x891.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ezVk!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4eecb8fe-322c-45f4-9df5-1e035f97e627_1200x891.jpeg 424w, https://substackcdn.com/image/fetch/$s_!ezVk!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4eecb8fe-322c-45f4-9df5-1e035f97e627_1200x891.jpeg 848w, https://substackcdn.com/image/fetch/$s_!ezVk!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4eecb8fe-322c-45f4-9df5-1e035f97e627_1200x891.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!ezVk!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4eecb8fe-322c-45f4-9df5-1e035f97e627_1200x891.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ezVk!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4eecb8fe-322c-45f4-9df5-1e035f97e627_1200x891.jpeg" width="1200" height="891" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4eecb8fe-322c-45f4-9df5-1e035f97e627_1200x891.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:891,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Claude Code Usage Dashboard: claude-usage: Long-term breakdown by session, day, week, and all-time. Use it to find where the spend went.&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="Claude Code Usage Dashboard: claude-usage: Long-term breakdown by session, day, week, and all-time. Use it to find where the spend went." title="Claude Code Usage Dashboard: claude-usage: Long-term breakdown by session, day, week, and all-time. Use it to find where the spend went." srcset="https://substackcdn.com/image/fetch/$s_!ezVk!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4eecb8fe-322c-45f4-9df5-1e035f97e627_1200x891.jpeg 424w, https://substackcdn.com/image/fetch/$s_!ezVk!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4eecb8fe-322c-45f4-9df5-1e035f97e627_1200x891.jpeg 848w, https://substackcdn.com/image/fetch/$s_!ezVk!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4eecb8fe-322c-45f4-9df5-1e035f97e627_1200x891.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!ezVk!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4eecb8fe-322c-45f4-9df5-1e035f97e627_1200x891.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><a href="https://github.com/phuryn/claude-usage">https://github.com/phuryn/claude-usage</a></figcaption></figure></div><h3>5.2 Real-Time</h3><p><strong><a href="https://github.com/Gronsten/claude-usage-monitor">Gronsten/claude-usage-monitor</a>: </strong>Current 5-hour window + active session tokens, with color thresholds. Use it to know how close you are to your cap right now.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Vixa!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b6ca324-ad37-4529-a28b-1a977ac69bf6_1159x552.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Vixa!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b6ca324-ad37-4529-a28b-1a977ac69bf6_1159x552.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Vixa!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b6ca324-ad37-4529-a28b-1a977ac69bf6_1159x552.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Vixa!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b6ca324-ad37-4529-a28b-1a977ac69bf6_1159x552.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Vixa!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b6ca324-ad37-4529-a28b-1a977ac69bf6_1159x552.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Vixa!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b6ca324-ad37-4529-a28b-1a977ac69bf6_1159x552.jpeg" width="1159" height="552" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6b6ca324-ad37-4529-a28b-1a977ac69bf6_1159x552.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:552,&quot;width&quot;:1159,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Claude Code usage monitor VS Code: current 5-hour window + active session tokens&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="Claude Code usage monitor VS Code: current 5-hour window + active session tokens" title="Claude Code usage monitor VS Code: current 5-hour window + active session tokens" srcset="https://substackcdn.com/image/fetch/$s_!Vixa!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b6ca324-ad37-4529-a28b-1a977ac69bf6_1159x552.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Vixa!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b6ca324-ad37-4529-a28b-1a977ac69bf6_1159x552.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Vixa!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b6ca324-ad37-4529-a28b-1a977ac69bf6_1159x552.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Vixa!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b6ca324-ad37-4529-a28b-1a977ac69bf6_1159x552.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><a href="https://github.com/Gronsten/claude-usage-monitor">https://github.com/Gronsten/claude-usage-monitor</a></figcaption></figure></div><h3>5.3 API: Anthropic&#8217;s Own Cache Dashboard (API users)</h3><p>At <strong><a href="https://platform.claude.com/usage/cache">platform.claude.com/usage/cache</a></strong>, API only, separate from Pro / Max / Team subscriptions monitoring.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!sSzW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbab58ab2-0d40-4304-9149-1d96fe110f02_1200x700.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!sSzW!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbab58ab2-0d40-4304-9149-1d96fe110f02_1200x700.jpeg 424w, https://substackcdn.com/image/fetch/$s_!sSzW!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbab58ab2-0d40-4304-9149-1d96fe110f02_1200x700.jpeg 848w, https://substackcdn.com/image/fetch/$s_!sSzW!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbab58ab2-0d40-4304-9149-1d96fe110f02_1200x700.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!sSzW!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbab58ab2-0d40-4304-9149-1d96fe110f02_1200x700.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!sSzW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbab58ab2-0d40-4304-9149-1d96fe110f02_1200x700.jpeg" width="1200" height="700" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/bab58ab2-0d40-4304-9149-1d96fe110f02_1200x700.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:700,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Anthropic&#8217;s Cache Dashboard&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="Anthropic&#8217;s Cache Dashboard" title="Anthropic&#8217;s Cache Dashboard" srcset="https://substackcdn.com/image/fetch/$s_!sSzW!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbab58ab2-0d40-4304-9149-1d96fe110f02_1200x700.jpeg 424w, https://substackcdn.com/image/fetch/$s_!sSzW!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbab58ab2-0d40-4304-9149-1d96fe110f02_1200x700.jpeg 848w, https://substackcdn.com/image/fetch/$s_!sSzW!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbab58ab2-0d40-4304-9149-1d96fe110f02_1200x700.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!sSzW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbab58ab2-0d40-4304-9149-1d96fe110f02_1200x700.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Anthropic&#8217;s Own Cache Dashboard (API users)</figcaption></figure></div><p>If you can&#8217;t see the cache hit rate, you can&#8217;t fix it.</p><div><hr></div><h2>&#128274; 6. An Upgraded Sub-Agents Instructions for Cowork and Claude Code</h2><p>In &#167;2.2, I shared a Subagents v1.0 block that significantly reduced my tokens in Claude Code, especially with Opus 4.7.</p><p>After running it across dozens of sessions, two failure modes kept showing up:</p><ul><li><p>Subagents with no strategic context returned compliant-but-useless data, forcing the parent to re-spawn with a better brief and pay for the work twice.</p></li><li><p>Unverified data silently propagated into the parent agent.</p></li></ul><p>Those two issues were common in Claude, unrelated to tokens.</p><p>The block below fixes them by adding the strategic-context layer. Works across Cowork and Claude Code &#128071;</p>
      <p>
          <a href="https://www.productcompass.pm/p/stop-hitting-claude-code-limits">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[The Ultimate Guide to Claude Opus 4.7]]></title><description><![CDATA[What changed, the 10 migration moves, and 10 highest-ROI levers to keep costs down.]]></description><link>https://www.productcompass.pm/p/claude-opus-4-7-guide</link><guid isPermaLink="false">https://www.productcompass.pm/p/claude-opus-4-7-guide</guid><dc:creator><![CDATA[Paweł Huryn]]></dc:creator><pubDate>Sat, 18 Apr 2026 20:50:37 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/4200dda8-676e-436c-ae24-335b12d3a2da_1280x720.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>4.6 guessed. 4.7 stopped guessing. Your old prompts still work, mostly. The ones that break need one of the ten moves below.</p><p>Anthropic shipped Claude Opus 4.7 on April 16. The <a href="https://platform.claude.com/docs/en/about-claude/models/migration-guide#migrating-to-claude-opus-4-7">official migration guide</a> puts it plainly: 4.7 <em>&#8220;takes the instructions literally&#8221;</em> and <em>&#8220;will not silently generalize.&#8221;</em></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!JB8k!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F25390d40-1522-4be0-a369-10e143b9e093_1080x1080.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!JB8k!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F25390d40-1522-4be0-a369-10e143b9e093_1080x1080.jpeg 424w, https://substackcdn.com/image/fetch/$s_!JB8k!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F25390d40-1522-4be0-a369-10e143b9e093_1080x1080.jpeg 848w, https://substackcdn.com/image/fetch/$s_!JB8k!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F25390d40-1522-4be0-a369-10e143b9e093_1080x1080.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!JB8k!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F25390d40-1522-4be0-a369-10e143b9e093_1080x1080.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!JB8k!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F25390d40-1522-4be0-a369-10e143b9e093_1080x1080.jpeg" width="1080" height="1080" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/25390d40-1522-4be0-a369-10e143b9e093_1080x1080.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1080,&quot;width&quot;:1080,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Claude Opus 4.7 Benchmarks&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="Claude Opus 4.7 Benchmarks" title="Claude Opus 4.7 Benchmarks" srcset="https://substackcdn.com/image/fetch/$s_!JB8k!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F25390d40-1522-4be0-a369-10e143b9e093_1080x1080.jpeg 424w, https://substackcdn.com/image/fetch/$s_!JB8k!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F25390d40-1522-4be0-a369-10e143b9e093_1080x1080.jpeg 848w, https://substackcdn.com/image/fetch/$s_!JB8k!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F25390d40-1522-4be0-a369-10e143b9e093_1080x1080.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!JB8k!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F25390d40-1522-4be0-a369-10e143b9e093_1080x1080.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!XOYQ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8972a291-c9bc-421d-aedc-8cead69cdb3f_1614x1608.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!XOYQ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8972a291-c9bc-421d-aedc-8cead69cdb3f_1614x1608.jpeg 424w, https://substackcdn.com/image/fetch/$s_!XOYQ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8972a291-c9bc-421d-aedc-8cead69cdb3f_1614x1608.jpeg 848w, https://substackcdn.com/image/fetch/$s_!XOYQ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8972a291-c9bc-421d-aedc-8cead69cdb3f_1614x1608.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!XOYQ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8972a291-c9bc-421d-aedc-8cead69cdb3f_1614x1608.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!XOYQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8972a291-c9bc-421d-aedc-8cead69cdb3f_1614x1608.jpeg" width="1456" height="1451" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8972a291-c9bc-421d-aedc-8cead69cdb3f_1614x1608.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1451,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Claude Opus 4.7 vs. Opus 4.6 Arena Benchmarks&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Claude Opus 4.7 vs. Opus 4.6 Arena Benchmarks" title="Claude Opus 4.7 vs. Opus 4.6 Arena Benchmarks" srcset="https://substackcdn.com/image/fetch/$s_!XOYQ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8972a291-c9bc-421d-aedc-8cead69cdb3f_1614x1608.jpeg 424w, https://substackcdn.com/image/fetch/$s_!XOYQ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8972a291-c9bc-421d-aedc-8cead69cdb3f_1614x1608.jpeg 848w, https://substackcdn.com/image/fetch/$s_!XOYQ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8972a291-c9bc-421d-aedc-8cead69cdb3f_1614x1608.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!XOYQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8972a291-c9bc-421d-aedc-8cead69cdb3f_1614x1608.jpeg 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>It's not a uniform upgrade. Wins on coding, creative writing, and structured work. Losses on instruction following in vague prompts, multi-turn, and long-context retrieval. The benchmarks show a trade, not a regression. I sort real regressions from preference artifacts and cost mechanics in &#167; 6.</p><blockquote><p>Boris Cherny, Claude Code lead at Anthropic, <a href="https://x.com/bcherny/status/2044822408826380440">posted on release day</a>: <em>"It took a few days for me to learn how to work with it effectively."</em></p></blockquote><div><hr></div><h2>Why Read This, and Why Now</h2><p>Reddit calls 4.7 a regression. Arena shows 4.6 winning on instruction following. Anthropic's migration guide says it's working as designed. Boris confirms it's more agentic and precise.</p><p>The takes don&#8217;t agree because they&#8217;re measuring different workflows.</p><p>By the end you&#8217;ll know:</p><ul><li><p>The ten moves to make your 4.6 prompts work on 4.7</p></li><li><p>Where 4.7&#8217;s cost really goes, and the ten highest-ROI levers</p></li><li><p>What Cowork and Dispatch users lose vs the Code, and what I use on mobile instead</p></li><li><p>How to decide between 4.6 and 4.7 for your own workflow</p></li><li><p>You don&#8217;t need more instructions. You need better intent.</p></li></ul><p>I&#8217;ve had 16+ hours with 4.7 so far. What follows is what changed, what to do about it, and resources section at the end.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h2>1. What&#8217;s New in Opus 4.7</h2><p>4.6 filled the gaps when your instruction was unclear. 4.7 takes you at your word.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!VrpT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b393884-e560-4750-8248-36b391e8a8ec_1200x803.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!VrpT!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b393884-e560-4750-8248-36b391e8a8ec_1200x803.png 424w, https://substackcdn.com/image/fetch/$s_!VrpT!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b393884-e560-4750-8248-36b391e8a8ec_1200x803.png 848w, https://substackcdn.com/image/fetch/$s_!VrpT!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b393884-e560-4750-8248-36b391e8a8ec_1200x803.png 1272w, https://substackcdn.com/image/fetch/$s_!VrpT!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b393884-e560-4750-8248-36b391e8a8ec_1200x803.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!VrpT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b393884-e560-4750-8248-36b391e8a8ec_1200x803.png" width="1200" height="803" data-attrs="{&quot;src&quot;:&quot;https://substackcdn.com/image/fetch/$s_!VrpT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b393884-e560-4750-8248-36b391e8a8ec_1200x803.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:803,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:86007,&quot;alt&quot;:&quot;Opus 4.6 vs. Opus 4.7&quot;,&quot;title&quot;:&quot;Opus 4.6 vs. Opus 4.7&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://www.productcompass.pm/i/194625190?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b393884-e560-4750-8248-36b391e8a8ec_1200x803.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Opus 4.6 vs. Opus 4.7" title="Opus 4.6 vs. Opus 4.7" srcset="https://substackcdn.com/image/fetch/$s_!VrpT!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b393884-e560-4750-8248-36b391e8a8ec_1200x803.png 424w, https://substackcdn.com/image/fetch/$s_!VrpT!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b393884-e560-4750-8248-36b391e8a8ec_1200x803.png 848w, https://substackcdn.com/image/fetch/$s_!VrpT!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b393884-e560-4750-8248-36b391e8a8ec_1200x803.png 1272w, https://substackcdn.com/image/fetch/$s_!VrpT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b393884-e560-4750-8248-36b391e8a8ec_1200x803.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><strong>For PMs:</strong> if your 4.6 workflow relied on the model <em>&#8220;figuring out what you meant,&#8221;</em> expect 4.7 to ask more questions, or to do less, or to do exactly what you asked for (which is not what you wanted).</p><div><hr></div><h2>2. Intent: The Universal Unlock</h2><p>This is the principle: <strong>4.7 rewards clear intent. </strong>Everything else in this post is a tactic. </p><p>Not longer prompts, not more rules, not a bigger CLAUDE.md. Intent splits into two layers:</p><ul><li><p><strong>Strategic context</strong> is durable: what you&#8217;re building, who it&#8217;s for, what&#8217;s off-limits, what good looks like. Write it once. Put it in CLAUDE.md. It loads every session, progressive-disclosure style, so you&#8217;re not paying to reintroduce the project on turn one.</p></li><li><p><strong>Per-task intent</strong> is variable: what specifically do I want Claude to do right now. You still write this every turn. The gain from CLAUDE.md is that you stop retyping the strategic context on top of it.</p></li></ul><p>The full version (seven components, how they compose) is in <a href="https://www.productcompass.pm/p/intent-engineering-framework-for-ai-agents">The Intent Engineering Framework for AI Agents</a>, published three months before 4.7 shipped:</p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;3987a0c4-9d91-4b31-a711-31e8e5eb6aa6&quot;,&quot;caption&quot;:&quot;Everyone talks about &#8220;intent&#8221; in AI. Few explain what it actually means or how to define it without watching your agent optimize the wrong thing.&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;The Intent Engineering Framework for AI Agents&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:86533280,&quot;name&quot;:&quot;Pawe&#322; Huryn&quot;,&quot;bio&quot;:&quot;AI &amp; PM. Author, The Product Compass. Deep research. I build, test, then teach. 5 years as a CPO, 10+ years as a PM, 15+ years in tech.&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ba18ea7b-0b42-4881-96ff-8e7a8d555f86_1024x1024.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:1000}],&quot;post_date&quot;:&quot;2026-01-13T10:37:40.309Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2fab894e-ea9f-4680-8f36-fcb1aebf9f5d_1280x720.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.productcompass.pm/p/intent-engineering-framework-for-ai-agents&quot;,&quot;section_name&quot;:&quot;AI Product Management&quot;,&quot;video_upload_id&quot;:null,&quot;id&quot;:184343366,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:102,&quot;comment_count&quot;:2,&quot;publication_id&quot;:943157,&quot;publication_name&quot;:&quot;The Product Compass&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!Isz9!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F761d3970-dad7-483b-8fcf-9fada16e0d33_1080x1080.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><p>This is perfectly aligned with Karpathy&#8217;s <a href="https://x.com/karpathy/status/2015883857489522876">Claude coding post</a>, too:</p><blockquote><p><em>&#8220;Leverage. LLMs are exceptionally good at looping until they meet specific goals and this is where most of the &#8220;feel the AGI&#8221; magic is to be found. Don&#8217;t tell it what to do, give it success criteria and watch it go (...) Change your approach from imperative to declarative to get the agents looping longer and gain leverage.&#8221;</em></p></blockquote><h4>Anthropic and OpenAI convergence</h4><p>Anthropic moved Opus 4.7 toward more literal instruction following. OpenAI updated their December 2025 Model Spec to say <em>&#8220;consider not just the literal wording but the underlying intent.&#8221;</em> </p><p>They&#8217;re converging from opposite directions. Anthropic is adding precision to its intent-first model. OpenAI is adding intent inference to its precision-first model. The same skill (<a href="https://www.productcompass.pm/p/intent-engineering-framework-for-ai-agents">engineering intent</a> clearly) is becoming the unlock on both sides.</p><h4>And Anthropic is already encoding it</h4><p>Managed Agents (research preview) bakes success criteria and outcomes into the framework itself. I recently covered it here:</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/PawelHuryn/status/2042008828334764162?s=20&quot;,&quot;full_text&quot;:&quot;This is Anthropic's AWS moment. I spent 2 hours studying the architecture of Managed Agents. Here's everything you need to know.\n\nThe default way to build an agent is a single process. The model reasons, calls tools, runs code, and holds your credentials &#8212; all in the same box. If&quot;,&quot;username&quot;:&quot;PawelHuryn&quot;,&quot;name&quot;:&quot;Pawe&#322; Huryn&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/2031703870615715840/aq6W0Caw_normal.jpg&quot;,&quot;date&quot;:&quot;2026-04-08T22:36:58.000Z&quot;,&quot;photos&quot;:[],&quot;quoted_tweet&quot;:{&quot;full_text&quot;:&quot;Managed Agents is the first 'agent in the cloud' API that has the right mix of simplicity and complexity.\n\nImplementation details like how you manage a sandbox are abstracted, but you have a lot of control over the actual execution of the model.&quot;,&quot;username&quot;:&quot;trq212&quot;,&quot;name&quot;:&quot;Thariq&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1976939058741039104/r3GgzqRh_normal.jpg&quot;},&quot;reply_count&quot;:43,&quot;retweet_count&quot;:100,&quot;like_count&quot;:1057,&quot;impression_count&quot;:197586,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p>The skill of <a href="https://www.productcompass.pm/p/intent-engineering-framework-for-ai-agents">engineering clear intent</a> is what transfers across vendors and models. That&#8217;s why it has the longest shelf life right now.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><p><em><strong>Side Note:</strong> On May 9, we&#8217;re launching <a href="https://go.productcompass.pm/claudathon">Hands-On Claude Code Certification</a>. In 4 weeks you will learn everything to ship full agentic products &#8212; UI, agentic harness, evals, guardrails, and ops &#8212; with Claude Code. Real apps, not demos.</em></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!zVxV!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e25e834-052b-4110-a89e-5f9df8b99451_2229x1347.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!zVxV!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e25e834-052b-4110-a89e-5f9df8b99451_2229x1347.png 424w, https://substackcdn.com/image/fetch/$s_!zVxV!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e25e834-052b-4110-a89e-5f9df8b99451_2229x1347.png 848w, https://substackcdn.com/image/fetch/$s_!zVxV!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e25e834-052b-4110-a89e-5f9df8b99451_2229x1347.png 1272w, https://substackcdn.com/image/fetch/$s_!zVxV!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e25e834-052b-4110-a89e-5f9df8b99451_2229x1347.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!zVxV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e25e834-052b-4110-a89e-5f9df8b99451_2229x1347.png" width="1456" height="880" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2e25e834-052b-4110-a89e-5f9df8b99451_2229x1347.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:880,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:457818,&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://www.productcompass.pm/i/194625190?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e25e834-052b-4110-a89e-5f9df8b99451_2229x1347.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_!zVxV!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e25e834-052b-4110-a89e-5f9df8b99451_2229x1347.png 424w, https://substackcdn.com/image/fetch/$s_!zVxV!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e25e834-052b-4110-a89e-5f9df8b99451_2229x1347.png 848w, https://substackcdn.com/image/fetch/$s_!zVxV!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e25e834-052b-4110-a89e-5f9df8b99451_2229x1347.png 1272w, https://substackcdn.com/image/fetch/$s_!zVxV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e25e834-052b-4110-a89e-5f9df8b99451_2229x1347.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://go.productcompass.pm/claudathon&quot;,&quot;text&quot;:&quot;Secure your spot (40% off)&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://go.productcompass.pm/claudathon"><span>Secure your spot (40% off)</span></a></p><p><em>Most students expense this through their companies.</em></p><div><hr></div><h2>3. The 10 Claude Opus 4.7 Migration Moves</h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!KtDJ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23c6c1bf-2aa5-448d-87bc-b584ca5c8e11_2400x2908.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!KtDJ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23c6c1bf-2aa5-448d-87bc-b584ca5c8e11_2400x2908.jpeg 424w, https://substackcdn.com/image/fetch/$s_!KtDJ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23c6c1bf-2aa5-448d-87bc-b584ca5c8e11_2400x2908.jpeg 848w, https://substackcdn.com/image/fetch/$s_!KtDJ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23c6c1bf-2aa5-448d-87bc-b584ca5c8e11_2400x2908.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!KtDJ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23c6c1bf-2aa5-448d-87bc-b584ca5c8e11_2400x2908.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!KtDJ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23c6c1bf-2aa5-448d-87bc-b584ca5c8e11_2400x2908.jpeg" width="1456" height="1764" data-attrs="{&quot;src&quot;:&quot;https://substackcdn.com/image/fetch/$s_!KtDJ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23c6c1bf-2aa5-448d-87bc-b584ca5c8e11_2400x2908.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1764,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;The 10 Claude Opus 4.7 Migration Moves&quot;,&quot;title&quot;:&quot;The 10 Claude Opus 4.7 Migration Moves&quot;,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="The 10 Claude Opus 4.7 Migration Moves" title="The 10 Claude Opus 4.7 Migration Moves" srcset="https://substackcdn.com/image/fetch/$s_!KtDJ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23c6c1bf-2aa5-448d-87bc-b584ca5c8e11_2400x2908.jpeg 424w, https://substackcdn.com/image/fetch/$s_!KtDJ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23c6c1bf-2aa5-448d-87bc-b584ca5c8e11_2400x2908.jpeg 848w, https://substackcdn.com/image/fetch/$s_!KtDJ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23c6c1bf-2aa5-448d-87bc-b584ca5c8e11_2400x2908.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!KtDJ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23c6c1bf-2aa5-448d-87bc-b584ca5c8e11_2400x2908.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h3>3.1 Front-load intent in CLAUDE.md</h3><p>You don&#8217;t have to retype the strategic context every session. Put it in CLAUDE.md once. Every future session starts with the context already loaded. You still write per-task intent each turn, but you stop paying the &#8220;remember what we&#8217;re building&#8221; tax.</p><p>Delegate information the agent doesn&#8217;t have to read every session to other files, like strategy.md below:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Aka6!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70352de5-2082-4dab-bd72-a9481231681e_1830x1166.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Aka6!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70352de5-2082-4dab-bd72-a9481231681e_1830x1166.png 424w, https://substackcdn.com/image/fetch/$s_!Aka6!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70352de5-2082-4dab-bd72-a9481231681e_1830x1166.png 848w, https://substackcdn.com/image/fetch/$s_!Aka6!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70352de5-2082-4dab-bd72-a9481231681e_1830x1166.png 1272w, https://substackcdn.com/image/fetch/$s_!Aka6!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70352de5-2082-4dab-bd72-a9481231681e_1830x1166.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Aka6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70352de5-2082-4dab-bd72-a9481231681e_1830x1166.png" width="1456" height="928" data-attrs="{&quot;src&quot;:&quot;https://substackcdn.com/image/fetch/$s_!Aka6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70352de5-2082-4dab-bd72-a9481231681e_1830x1166.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:928,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:264208,&quot;alt&quot;:&quot;Front-load intent in CLAUDE.md&quot;,&quot;title&quot;:&quot;Front-load intent in CLAUDE.mdFront-load intent in CLAUDE.md&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://www.productcompass.pm/i/194625190?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70352de5-2082-4dab-bd72-a9481231681e_1830x1166.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Front-load intent in CLAUDE.md" title="Front-load intent in CLAUDE.mdFront-load intent in CLAUDE.md" srcset="https://substackcdn.com/image/fetch/$s_!Aka6!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70352de5-2082-4dab-bd72-a9481231681e_1830x1166.png 424w, https://substackcdn.com/image/fetch/$s_!Aka6!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70352de5-2082-4dab-bd72-a9481231681e_1830x1166.png 848w, https://substackcdn.com/image/fetch/$s_!Aka6!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70352de5-2082-4dab-bd72-a9481231681e_1830x1166.png 1272w, https://substackcdn.com/image/fetch/$s_!Aka6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70352de5-2082-4dab-bd72-a9481231681e_1830x1166.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Example: My context from CLAUDE.md</figcaption></figure></div><h3>3.2 Default to Extra high (xhigh)</h3><p>New effort level between high and max. Anthropic&#8217;s own recommendation for coding and agentic work. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!aySO!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e81cc3c-7818-4558-abfe-89804fb84d8e_1413x694.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!aySO!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e81cc3c-7818-4558-abfe-89804fb84d8e_1413x694.png 424w, https://substackcdn.com/image/fetch/$s_!aySO!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e81cc3c-7818-4558-abfe-89804fb84d8e_1413x694.png 848w, https://substackcdn.com/image/fetch/$s_!aySO!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e81cc3c-7818-4558-abfe-89804fb84d8e_1413x694.png 1272w, https://substackcdn.com/image/fetch/$s_!aySO!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e81cc3c-7818-4558-abfe-89804fb84d8e_1413x694.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!aySO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e81cc3c-7818-4558-abfe-89804fb84d8e_1413x694.png" width="1413" height="694" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0e81cc3c-7818-4558-abfe-89804fb84d8e_1413x694.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:694,&quot;width&quot;:1413,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:95681,&quot;alt&quot;:&quot;Setting \&quot;Extra high\&quot; effort in VS Code Claude extension&quot;,&quot;title&quot;:&quot;Extra high (xhigh) in VS Code Claude extension&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://www.productcompass.pm/i/194625190?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e81cc3c-7818-4558-abfe-89804fb84d8e_1413x694.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Setting &quot;Extra high&quot; effort in VS Code Claude extension" title="Extra high (xhigh) in VS Code Claude extension" srcset="https://substackcdn.com/image/fetch/$s_!aySO!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e81cc3c-7818-4558-abfe-89804fb84d8e_1413x694.png 424w, https://substackcdn.com/image/fetch/$s_!aySO!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e81cc3c-7818-4558-abfe-89804fb84d8e_1413x694.png 848w, https://substackcdn.com/image/fetch/$s_!aySO!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e81cc3c-7818-4558-abfe-89804fb84d8e_1413x694.png 1272w, https://substackcdn.com/image/fetch/$s_!aySO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e81cc3c-7818-4558-abfe-89804fb84d8e_1413x694.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Setting "Extra high" effort in VS Code Claude extension</figcaption></figure></div><p>max is prone to overthinking. Most <em>&#8220;4.7 feels slow&#8221;</em> reports trace back to people running max by reflex. Use max only when the problem actually needs deep reasoning.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!097y!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe99319fd-0746-44e8-be69-e8410d81fd71_1920x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!097y!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe99319fd-0746-44e8-be69-e8410d81fd71_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!097y!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe99319fd-0746-44e8-be69-e8410d81fd71_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!097y!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe99319fd-0746-44e8-be69-e8410d81fd71_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!097y!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe99319fd-0746-44e8-be69-e8410d81fd71_1920x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!097y!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe99319fd-0746-44e8-be69-e8410d81fd71_1920x1080.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substackcdn.com/image/fetch/$s_!097y!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe99319fd-0746-44e8-be69-e8410d81fd71_1920x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Claude Opus 4.7 Extra high (xhigh)&quot;,&quot;title&quot;:&quot;Claude Opus 4.7 Extra high (xhigh)&quot;,&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="Claude Opus 4.7 Extra high (xhigh)" title="Claude Opus 4.7 Extra high (xhigh)" srcset="https://substackcdn.com/image/fetch/$s_!097y!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe99319fd-0746-44e8-be69-e8410d81fd71_1920x1080.png 424w, https://substackcdn.com/image/fetch/$s_!097y!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe99319fd-0746-44e8-be69-e8410d81fd71_1920x1080.png 848w, https://substackcdn.com/image/fetch/$s_!097y!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe99319fd-0746-44e8-be69-e8410d81fd71_1920x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!097y!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe99319fd-0746-44e8-be69-e8410d81fd71_1920x1080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Source: <a href="https://claude.com/blog/best-practices-for-using-claude-opus-4-7-with-claude-code">Anthropic</a></figcaption></figure></div><h3>3.3 Toggle effort mid-task</h3><p>Effort is per-call, not per-session. max for the hard subproblem. Drop back to high for the rest. </p><h3>3.4 Regression-test old prompts</h3><p>New tokenizer. 1.0 to 1.35&#215; more tokens per input. Your 4.6 workflows cost more on 4.7 before you&#8217;ve changed a line.</p><p>The offset to know about: Anthropic raised rate limits alongside the 4.7 launch:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!rhVh!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7593830e-2894-41db-a730-386d5f6e59c7_1350x537.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!rhVh!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7593830e-2894-41db-a730-386d5f6e59c7_1350x537.png 424w, https://substackcdn.com/image/fetch/$s_!rhVh!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7593830e-2894-41db-a730-386d5f6e59c7_1350x537.png 848w, https://substackcdn.com/image/fetch/$s_!rhVh!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7593830e-2894-41db-a730-386d5f6e59c7_1350x537.png 1272w, https://substackcdn.com/image/fetch/$s_!rhVh!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7593830e-2894-41db-a730-386d5f6e59c7_1350x537.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!rhVh!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7593830e-2894-41db-a730-386d5f6e59c7_1350x537.png" width="1350" height="537" data-attrs="{&quot;src&quot;:&quot;https://substackcdn.com/image/fetch/$s_!rhVh!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7593830e-2894-41db-a730-386d5f6e59c7_1350x537.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:537,&quot;width&quot;:1350,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:142130,&quot;alt&quot;:&quot;Regression-test old prompts before cutting over&quot;,&quot;title&quot;:&quot;Regression-test old prompts before cutting over&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://www.productcompass.pm/i/194625190?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7593830e-2894-41db-a730-386d5f6e59c7_1350x537.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Regression-test old prompts before cutting over" title="Regression-test old prompts before cutting over" srcset="https://substackcdn.com/image/fetch/$s_!rhVh!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7593830e-2894-41db-a730-386d5f6e59c7_1350x537.png 424w, https://substackcdn.com/image/fetch/$s_!rhVh!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7593830e-2894-41db-a730-386d5f6e59c7_1350x537.png 848w, https://substackcdn.com/image/fetch/$s_!rhVh!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7593830e-2894-41db-a730-386d5f6e59c7_1350x537.png 1272w, https://substackcdn.com/image/fetch/$s_!rhVh!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7593830e-2894-41db-a730-386d5f6e59c7_1350x537.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>My perspective: what matters most is cost per correct output token. Test it for your specific product before switching the model.</p><h3>3.5 Batch questions. Stop drip-feeding.</h3><p>If you have three questions, ask all three in one message. </p><p>On 4.6, clarifying across 3-4 turns worked. On 4.7, each turn adds reasoning overhead on top of literal interpretations from earlier turns. </p><p>Treat clarification as an exception, not a workflow.</p><h3>3.6 Show what you want</h3><p>Positive examples beat negative rules. According to Anthropic:</p><ul><li><p>&#8220;Like this: &#8221; followed by short examples works.</p></li><li><p>&#8220;Don&#8217;t do this: &#8221; rarely lands and burns tokens trying.</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!cWMc!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e3a8700-88a1-4458-bb35-19e2f0b9e028_1525x617.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!cWMc!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e3a8700-88a1-4458-bb35-19e2f0b9e028_1525x617.png 424w, https://substackcdn.com/image/fetch/$s_!cWMc!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e3a8700-88a1-4458-bb35-19e2f0b9e028_1525x617.png 848w, https://substackcdn.com/image/fetch/$s_!cWMc!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e3a8700-88a1-4458-bb35-19e2f0b9e028_1525x617.png 1272w, https://substackcdn.com/image/fetch/$s_!cWMc!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e3a8700-88a1-4458-bb35-19e2f0b9e028_1525x617.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!cWMc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e3a8700-88a1-4458-bb35-19e2f0b9e028_1525x617.png" width="1525" height="617" data-attrs="{&quot;src&quot;:&quot;https://substackcdn.com/image/fetch/$s_!cWMc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e3a8700-88a1-4458-bb35-19e2f0b9e028_1525x617.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:617,&quot;width&quot;:1525,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:107785,&quot;alt&quot;:&quot;Positive examples: Claude Code, Opus 4.7&quot;,&quot;title&quot;:&quot;Positive examples: Claude Code, Opus 4.7&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://www.productcompass.pm/i/194625190?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3622e9eb-f414-4d95-b459-a0f42ac3d1eb_1525x699.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Positive examples: Claude Code, Opus 4.7" title="Positive examples: Claude Code, Opus 4.7" srcset="https://substackcdn.com/image/fetch/$s_!cWMc!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e3a8700-88a1-4458-bb35-19e2f0b9e028_1525x617.png 424w, https://substackcdn.com/image/fetch/$s_!cWMc!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e3a8700-88a1-4458-bb35-19e2f0b9e028_1525x617.png 848w, https://substackcdn.com/image/fetch/$s_!cWMc!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e3a8700-88a1-4458-bb35-19e2f0b9e028_1525x617.png 1272w, https://substackcdn.com/image/fetch/$s_!cWMc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e3a8700-88a1-4458-bb35-19e2f0b9e028_1525x617.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Example: Positive examples from my personal agent</figcaption></figure></div><p>If your prompt has more than three &#8220;don&#8217;t&#8221; or &#8220;never&#8221; lines, flip them. What does the ideal output look like? Show two examples and cut the rules.</p><h3>3.7 Delete old progress scaffolding</h3><p><em>&#8220;Summarize every 3 tool calls.&#8221; &#8220;Give me a status update before moving on.&#8221; &#8220;Explain your plan, then execute.&#8221;</em> Delete these. </p><p>4.7 emits high-quality progress updates natively in long agentic traces:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!l2FF!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F938367a1-d0a2-48fc-9cff-3e4a735d3cf2_1380x535.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!l2FF!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F938367a1-d0a2-48fc-9cff-3e4a735d3cf2_1380x535.png 424w, https://substackcdn.com/image/fetch/$s_!l2FF!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F938367a1-d0a2-48fc-9cff-3e4a735d3cf2_1380x535.png 848w, https://substackcdn.com/image/fetch/$s_!l2FF!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F938367a1-d0a2-48fc-9cff-3e4a735d3cf2_1380x535.png 1272w, https://substackcdn.com/image/fetch/$s_!l2FF!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F938367a1-d0a2-48fc-9cff-3e4a735d3cf2_1380x535.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!l2FF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F938367a1-d0a2-48fc-9cff-3e4a735d3cf2_1380x535.png" width="1380" height="535" data-attrs="{&quot;src&quot;:&quot;https://substackcdn.com/image/fetch/$s_!l2FF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F938367a1-d0a2-48fc-9cff-3e4a735d3cf2_1380x535.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:535,&quot;width&quot;:1380,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:115663,&quot;alt&quot;:&quot;Delete old progress scaffolding&quot;,&quot;title&quot;:&quot;Delete old progress scaffolding&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://www.productcompass.pm/i/194625190?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F938367a1-d0a2-48fc-9cff-3e4a735d3cf2_1380x535.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Delete old progress scaffolding" title="Delete old progress scaffolding" srcset="https://substackcdn.com/image/fetch/$s_!l2FF!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F938367a1-d0a2-48fc-9cff-3e4a735d3cf2_1380x535.png 424w, https://substackcdn.com/image/fetch/$s_!l2FF!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F938367a1-d0a2-48fc-9cff-3e4a735d3cf2_1380x535.png 848w, https://substackcdn.com/image/fetch/$s_!l2FF!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F938367a1-d0a2-48fc-9cff-3e4a735d3cf2_1380x535.png 1272w, https://substackcdn.com/image/fetch/$s_!l2FF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F938367a1-d0a2-48fc-9cff-3e4a735d3cf2_1380x535.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Example: Progress updates generated by my personal agent</figcaption></figure></div><h3>3.8 Tell it to fan out explicitly</h3><p>4.7 spawns fewer subagents by default and makes fewer tool calls per task. For parallel exploration, you now have to ask. </p><p>Phrasings that work: <em>&#8220;spawn subagents in the same turn to investigate X, Y, Z.&#8221;</em> Autonomy went up. Default delegation went down.</p><p>I also added separate instructions for Dispatch in DISPATCH.md. This file is referenced from CLAUDE.md:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!NsMY!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d819408-403f-4228-9a18-c1a1951c3bac_1632x845.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!NsMY!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d819408-403f-4228-9a18-c1a1951c3bac_1632x845.png 424w, https://substackcdn.com/image/fetch/$s_!NsMY!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d819408-403f-4228-9a18-c1a1951c3bac_1632x845.png 848w, https://substackcdn.com/image/fetch/$s_!NsMY!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d819408-403f-4228-9a18-c1a1951c3bac_1632x845.png 1272w, https://substackcdn.com/image/fetch/$s_!NsMY!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d819408-403f-4228-9a18-c1a1951c3bac_1632x845.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!NsMY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d819408-403f-4228-9a18-c1a1951c3bac_1632x845.png" width="1456" height="754" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5d819408-403f-4228-9a18-c1a1951c3bac_1632x845.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:754,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:199598,&quot;alt&quot;:&quot;4.7 spawns fewer subagents by default&quot;,&quot;title&quot;:&quot;4.7 spawns fewer subagents by default&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://www.productcompass.pm/i/194625190?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d819408-403f-4228-9a18-c1a1951c3bac_1632x845.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="4.7 spawns fewer subagents by default" title="4.7 spawns fewer subagents by default" srcset="https://substackcdn.com/image/fetch/$s_!NsMY!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d819408-403f-4228-9a18-c1a1951c3bac_1632x845.png 424w, https://substackcdn.com/image/fetch/$s_!NsMY!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d819408-403f-4228-9a18-c1a1951c3bac_1632x845.png 848w, https://substackcdn.com/image/fetch/$s_!NsMY!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d819408-403f-4228-9a18-c1a1951c3bac_1632x845.png 1272w, https://substackcdn.com/image/fetch/$s_!NsMY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d819408-403f-4228-9a18-c1a1951c3bac_1632x845.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Example: My instructions on how to spawn subagents</figcaption></figure></div><p>Later, I explain why I started using Dispatch less often.</p><h3>3.9 Review plans, not diffs</h3><p>Two different primitives. Don&#8217;t confuse them.</p><ul><li><p><strong>Plan mode</strong> (Shift+Tab twice in the Claude Code CLI): inline, surfaces the plan before any code exists in the current session. Use for any change that touches more than one file:</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!KX0F!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff32f7ec3-b1fa-4512-9843-a02434dc61eb_1405x936.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!KX0F!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff32f7ec3-b1fa-4512-9843-a02434dc61eb_1405x936.png 424w, https://substackcdn.com/image/fetch/$s_!KX0F!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff32f7ec3-b1fa-4512-9843-a02434dc61eb_1405x936.png 848w, https://substackcdn.com/image/fetch/$s_!KX0F!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff32f7ec3-b1fa-4512-9843-a02434dc61eb_1405x936.png 1272w, https://substackcdn.com/image/fetch/$s_!KX0F!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff32f7ec3-b1fa-4512-9843-a02434dc61eb_1405x936.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!KX0F!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff32f7ec3-b1fa-4512-9843-a02434dc61eb_1405x936.png" width="1405" height="936" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f32f7ec3-b1fa-4512-9843-a02434dc61eb_1405x936.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:936,&quot;width&quot;:1405,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:204436,&quot;alt&quot;:&quot;Plan Mode in VS Code Claude extension&quot;,&quot;title&quot;:&quot;Plan Mode in VS Code Claude extension&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://www.productcompass.pm/i/194625190?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff32f7ec3-b1fa-4512-9843-a02434dc61eb_1405x936.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Plan Mode in VS Code Claude extension" title="Plan Mode in VS Code Claude extension" srcset="https://substackcdn.com/image/fetch/$s_!KX0F!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff32f7ec3-b1fa-4512-9843-a02434dc61eb_1405x936.png 424w, https://substackcdn.com/image/fetch/$s_!KX0F!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff32f7ec3-b1fa-4512-9843-a02434dc61eb_1405x936.png 848w, https://substackcdn.com/image/fetch/$s_!KX0F!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff32f7ec3-b1fa-4512-9843-a02434dc61eb_1405x936.png 1272w, https://substackcdn.com/image/fetch/$s_!KX0F!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff32f7ec3-b1fa-4512-9843-a02434dc61eb_1405x936.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Plan Mode in VS Code Claude extension</figcaption></figure></div><ul><li><p><strong>/ultraplan </strong>(CLI only, doesn&#8217;t work in VS Code extension)<strong>:</strong> cloud-based plan drafting from the CLI, review in the browser. Plan runs in a remote session while your terminal stays free:</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!BXX4!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F726073b2-ab05-4ac7-b202-603ca2510a4e_1319x847.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!BXX4!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F726073b2-ab05-4ac7-b202-603ca2510a4e_1319x847.png 424w, https://substackcdn.com/image/fetch/$s_!BXX4!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F726073b2-ab05-4ac7-b202-603ca2510a4e_1319x847.png 848w, https://substackcdn.com/image/fetch/$s_!BXX4!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F726073b2-ab05-4ac7-b202-603ca2510a4e_1319x847.png 1272w, https://substackcdn.com/image/fetch/$s_!BXX4!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F726073b2-ab05-4ac7-b202-603ca2510a4e_1319x847.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!BXX4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F726073b2-ab05-4ac7-b202-603ca2510a4e_1319x847.png" width="1319" height="847" data-attrs="{&quot;src&quot;:&quot;https://substackcdn.com/image/fetch/$s_!BXX4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F726073b2-ab05-4ac7-b202-603ca2510a4e_1319x847.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:847,&quot;width&quot;:1319,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:114775,&quot;alt&quot;:&quot;/ultraplan in Claude Code terminal in VS Code&quot;,&quot;title&quot;:&quot;/ultraplan in Claude Code terminal in VS Code&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://www.productcompass.pm/i/194625190?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F726073b2-ab05-4ac7-b202-603ca2510a4e_1319x847.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="/ultraplan in Claude Code terminal in VS Code" title="/ultraplan in Claude Code terminal in VS Code" srcset="https://substackcdn.com/image/fetch/$s_!BXX4!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F726073b2-ab05-4ac7-b202-603ca2510a4e_1319x847.png 424w, https://substackcdn.com/image/fetch/$s_!BXX4!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F726073b2-ab05-4ac7-b202-603ca2510a4e_1319x847.png 848w, https://substackcdn.com/image/fetch/$s_!BXX4!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F726073b2-ab05-4ac7-b202-603ca2510a4e_1319x847.png 1272w, https://substackcdn.com/image/fetch/$s_!BXX4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F726073b2-ab05-4ac7-b202-603ca2510a4e_1319x847.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">/ultraplan in Claude Code terminal in VS Code</figcaption></figure></div><p><strong>Why this matters more on 4.7:</strong> because 4.7 takes intent literally, a small misread in the plan becomes a large misread in the diff. Reviewing a 10-line plan for intent drift takes 30 seconds. Reviewing a 200-line diff for the same drift takes 15 minutes. </p><p>My take:</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/PawelHuryn/status/2039622041960140878?s=20&quot;,&quot;full_text&quot;:&quot;Plan mode isn't a planning tool. It's a feedback guarantee.\n\nYou share your intent. The agent shows what it understood. You confirm before it executes. No ambiguity about whether it's listening or already coding.\n\nThe military has a name for this: Commander's Intent. Give the end&quot;,&quot;username&quot;:&quot;PawelHuryn&quot;,&quot;name&quot;:&quot;Pawe&#322; Huryn&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/2031703870615715840/aq6W0Caw_normal.jpg&quot;,&quot;date&quot;:&quot;2026-04-02T08:32:43.000Z&quot;,&quot;photos&quot;:[],&quot;quoted_tweet&quot;:{&quot;full_text&quot;:&quot;I never use plan mode. \n\nThe main reason this was added to codex is for claude-pilled people who struggle with changing their habits.\n\njust talk with your agent.&quot;,&quot;username&quot;:&quot;steipete&quot;,&quot;name&quot;:&quot;Peter Steinberger &#129438;&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1131851609774985216/OcsssQ9J_normal.png&quot;},&quot;reply_count&quot;:29,&quot;retweet_count&quot;:8,&quot;like_count&quot;:189,&quot;impression_count&quot;:29306,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p>Intent drift compounds. Catch it in the plan.</p><h3>3.10 Adaptive thinking only</h3><p>Fixed thinking budgets are gone. Use <code>thinking: {type: 'adaptive'}</code> plus the <code>effort</code> parameter. Old API calls with <code>budget_tokens</code> return HTTP 400. Find and replace before flipping the model flag:</p><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;python&quot;,&quot;nodeId&quot;:&quot;d0e92c7f-88a9-49df-8f72-c63cb2e1cbe4&quot;}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-python">client = anthropic.Anthropic()

response = client.messages.create(
    model="claude-opus-4-7",
    max_tokens=16000,
    thinking={"type": "adaptive"},
    messages=[
        {
            "role": "user",
            "content": "Explain why the sum of two even numbers is always even.",
        }
    ],
)</code></pre></div><p>If you&#8217;re not an engineer, you don&#8217;t need to memorize the syntax. Just give your agent this documentation: <a href="https://platform.claude.com/docs/en/build-with-claude/adaptive-thinking.md">https://platform.claude.com/docs/en/build-with-claude/adaptive-thinking.md</a> (remove &#8220;.md&#8221; for a human-friendly view).</p><div><hr></div><p><em>Everything above is the mental model. Below, the execution: 10 highest-ROI moves for 4.7 that actually move the bill, my remote setup, and Cowork/Dispatch gotchas &#128071;</em></p><div><hr></div><h2>4. Cost Control on Opus 4.7</h2><p>$20/month is enough to poke at Claude. It&#8217;s not enough to run agents. And 4.7 is more expensive than 4.6 by default. New tokenizer (1.0&#8211;1.35&#215; tokens per input), adaptive thinking with generous budgets, high-res vision at 3&#215; tokens.</p><p>Ten highest-ROI moves (can cut tokens significantly; in my setup, 60&#8211;80%):</p>
      <p>
          <a href="https://www.productcompass.pm/p/claude-opus-4-7-guide">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[Your .claude/ Folder Is a Production Agent]]></title><description><![CDATA[You already know how to build production AI agents. You just didn't know it counted.]]></description><link>https://www.productcompass.pm/p/claude-agent-sdk-production-agent</link><guid isPermaLink="false">https://www.productcompass.pm/p/claude-agent-sdk-production-agent</guid><dc:creator><![CDATA[Paweł Huryn]]></dc:creator><pubDate>Tue, 14 Apr 2026 22:29:41 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/548f2335-189e-439e-8135-4cb3aa0bd232_1280x720.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Last week I ran a spike. Same <code>CLAUDE.md</code>, same skills, same MCPs, same hooks I write regularly in Claude Code. Shipped a working Knowledge Chatbot in an afternoon. No new framework. Zero files I hadn&#8217;t written a dozen times before.</p><blockquote><p>Everyone's covering agents helping you build or do knowledge work. The pattern nobody's explaining: <strong>the same primitives are the production runtime. </strong></p></blockquote><p>What you&#8217;ll learn:</p><ul><li><p>The Claude Code primitives that double as a production runtime</p></li><li><p>When to pick the Anthropic Agent SDK</p></li><li><p>The architecture &#8212; one function call replaces an n8n-style workflow</p></li><li><p>A full working demo: source code, build prompt, hosting notes</p></li><li><p>The gotchas that silently break things</p></li><li><p>How to host your Claude Code agents in production</p></li></ul><div><hr></div><h2>1. The Missing Pattern &#8212; Agent as A Callable Component</h2><p>Two narratives dominate right now:</p><ul><li><p><strong>Agents as products.</strong> Claude Code, Lovable, Cursor. You use them to code or to do your work.</p></li><li><p><strong>Agents as infrastructure.</strong> Claude Managed Agents, CrewAI, LangGraph.</p></li></ul><blockquote><p>The pattern sitting between those two is <strong>agent as a callable component</strong> inside your app.</p></blockquote><p>How does it work?</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!vO1-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f08f59d-5186-474c-a3fa-5968a9617dde_1040x484.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!vO1-!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f08f59d-5186-474c-a3fa-5968a9617dde_1040x484.png 424w, https://substackcdn.com/image/fetch/$s_!vO1-!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f08f59d-5186-474c-a3fa-5968a9617dde_1040x484.png 848w, https://substackcdn.com/image/fetch/$s_!vO1-!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f08f59d-5186-474c-a3fa-5968a9617dde_1040x484.png 1272w, https://substackcdn.com/image/fetch/$s_!vO1-!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f08f59d-5186-474c-a3fa-5968a9617dde_1040x484.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!vO1-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f08f59d-5186-474c-a3fa-5968a9617dde_1040x484.png" width="1040" height="484" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3f08f59d-5186-474c-a3fa-5968a9617dde_1040x484.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:484,&quot;width&quot;:1040,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:59638,&quot;alt&quot;:&quot;Anthropic Agent SDK + CLAUDE.md&quot;,&quot;title&quot;:&quot;Anthropic Agent SDK + CLAUDE.md&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://www.productcompass.pm/i/194211947?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f08f59d-5186-474c-a3fa-5968a9617dde_1040x484.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Anthropic Agent SDK + CLAUDE.md" title="Anthropic Agent SDK + CLAUDE.md" srcset="https://substackcdn.com/image/fetch/$s_!vO1-!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f08f59d-5186-474c-a3fa-5968a9617dde_1040x484.png 424w, https://substackcdn.com/image/fetch/$s_!vO1-!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f08f59d-5186-474c-a3fa-5968a9617dde_1040x484.png 848w, https://substackcdn.com/image/fetch/$s_!vO1-!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f08f59d-5186-474c-a3fa-5968a9617dde_1040x484.png 1272w, https://substackcdn.com/image/fetch/$s_!vO1-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f08f59d-5186-474c-a3fa-5968a9617dde_1040x484.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">App calling an agent and its CLAUDE.md</figcaption></figure></div><p>Your web app handles routing, auth, CRUD, form validation. When a request needs reasoning, you call the agent &#8212; which runs in a sandbox with its own CLAUDE.md, skills, and MCP servers.</p><p>The part that surprised me: the same <code>.claude/</code> folder I've been editing every day for months <em>is</em> the deployable unit. There is no translation layer between dev and prod. The CLAUDE.md that guides Claude Code in your terminal is the exact same CLAUDE.md format that runs in production.</p><div><hr></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h2>2. The Primitives You Already Use</h2><p>Five key things. We've discussed most of them in <a href="https://go.productcompass.pm/?search=claude">the previous posts about Claude Code and Cowork</a>:</p><ul><li><p><strong>CLAUDE.md</strong> &#8212; the agent&#8217;s identity in markdown. Tone, rules, constraints. In dev it shapes how Claude Code behaves in your terminal. In prod it loads as the system prompt of your production agent. Edit the file, ship the behavior.</p></li><li><p><strong>Skills</strong> (<code>.claude/skills/</code>) &#8212; reusable behaviors, also markdown. Same file format in dev and prod. Same loader.</p></li><li><p><strong>MCPs</strong> (<code>.claude/mcp.json</code>) &#8212; servers that extend the agent&#8217;s tool surface. Your dev config probably talks to Chrome and your filesystem. Your production agent&#8217;s config talks to your search API and your database. Different servers, identical contract.</p></li><li><p><strong>Hooks</strong> &#8212; functions that fire on tool events. <code>PreToolUse</code> can block dangerous operations (reading <code>.env</code>, path traversal). <code>PostToolUse</code> can log everything the agent read so you can show it in the UI.</p></li><li><p><strong>Sub-agents</strong> (<code>.claude/agents/&lt;name&gt;/</code>) &#8212; each directory is a self-contained agent: its own CLAUDE.md, its own skills, its own MCP config, its own docs. Adding a second agent to your product is a new folder.</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!fYUq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8f0a2da-6deb-496f-b7c2-99440c638f6b_1040x655.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!fYUq!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8f0a2da-6deb-496f-b7c2-99440c638f6b_1040x655.png 424w, https://substackcdn.com/image/fetch/$s_!fYUq!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8f0a2da-6deb-496f-b7c2-99440c638f6b_1040x655.png 848w, https://substackcdn.com/image/fetch/$s_!fYUq!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8f0a2da-6deb-496f-b7c2-99440c638f6b_1040x655.png 1272w, https://substackcdn.com/image/fetch/$s_!fYUq!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8f0a2da-6deb-496f-b7c2-99440c638f6b_1040x655.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!fYUq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8f0a2da-6deb-496f-b7c2-99440c638f6b_1040x655.png" width="1040" height="655" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c8f0a2da-6deb-496f-b7c2-99440c638f6b_1040x655.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:655,&quot;width&quot;:1040,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:48569,&quot;alt&quot;:&quot;Claude Code subagents&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://www.productcompass.pm/i/194211947?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8f0a2da-6deb-496f-b7c2-99440c638f6b_1040x655.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Claude Code subagents" title="Claude Code subagents" srcset="https://substackcdn.com/image/fetch/$s_!fYUq!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8f0a2da-6deb-496f-b7c2-99440c638f6b_1040x655.png 424w, https://substackcdn.com/image/fetch/$s_!fYUq!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8f0a2da-6deb-496f-b7c2-99440c638f6b_1040x655.png 848w, https://substackcdn.com/image/fetch/$s_!fYUq!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8f0a2da-6deb-496f-b7c2-99440c638f6b_1040x655.png 1272w, https://substackcdn.com/image/fetch/$s_!fYUq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc8f0a2da-6deb-496f-b7c2-99440c638f6b_1040x655.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Subagents in Claude Code</figcaption></figure></div><p>Everything is files. Everything is version-controlled. Everything diffs cleanly in a PR. If you've onboarded to Claude Code, you've already onboarded to the production stack.</p><p>In case you wondered, here&#8217;s a bigger picture:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!9rIK!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8171d1c-ec6c-46f7-b581-0ca46f3f8911_1200x1500.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!9rIK!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8171d1c-ec6c-46f7-b581-0ca46f3f8911_1200x1500.png 424w, https://substackcdn.com/image/fetch/$s_!9rIK!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8171d1c-ec6c-46f7-b581-0ca46f3f8911_1200x1500.png 848w, https://substackcdn.com/image/fetch/$s_!9rIK!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8171d1c-ec6c-46f7-b581-0ca46f3f8911_1200x1500.png 1272w, https://substackcdn.com/image/fetch/$s_!9rIK!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8171d1c-ec6c-46f7-b581-0ca46f3f8911_1200x1500.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!9rIK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8171d1c-ec6c-46f7-b581-0ca46f3f8911_1200x1500.png" width="1200" height="1500" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a8171d1c-ec6c-46f7-b581-0ca46f3f8911_1200x1500.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1500,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:287232,&quot;alt&quot;:&quot;How Claude Projects Actually Work, CLAUDE.md&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://www.productcompass.pm/i/194211947?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8171d1c-ec6c-46f7-b581-0ca46f3f8911_1200x1500.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="How Claude Projects Actually Work, CLAUDE.md" title="How Claude Projects Actually Work, CLAUDE.md" srcset="https://substackcdn.com/image/fetch/$s_!9rIK!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8171d1c-ec6c-46f7-b581-0ca46f3f8911_1200x1500.png 424w, https://substackcdn.com/image/fetch/$s_!9rIK!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8171d1c-ec6c-46f7-b581-0ca46f3f8911_1200x1500.png 848w, https://substackcdn.com/image/fetch/$s_!9rIK!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8171d1c-ec6c-46f7-b581-0ca46f3f8911_1200x1500.png 1272w, https://substackcdn.com/image/fetch/$s_!9rIK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8171d1c-ec6c-46f7-b581-0ca46f3f8911_1200x1500.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Claude Code projects</figcaption></figure></div><div><hr></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h2>3. Why This Matters in Production</h2><p>Here&#8217;s how it stacks up against the alternatives:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!NdPI!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8bf4d62-06aa-4e49-98f3-69a81dc8da3e_1040x493.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!NdPI!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8bf4d62-06aa-4e49-98f3-69a81dc8da3e_1040x493.png 424w, https://substackcdn.com/image/fetch/$s_!NdPI!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8bf4d62-06aa-4e49-98f3-69a81dc8da3e_1040x493.png 848w, https://substackcdn.com/image/fetch/$s_!NdPI!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8bf4d62-06aa-4e49-98f3-69a81dc8da3e_1040x493.png 1272w, https://substackcdn.com/image/fetch/$s_!NdPI!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8bf4d62-06aa-4e49-98f3-69a81dc8da3e_1040x493.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!NdPI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8bf4d62-06aa-4e49-98f3-69a81dc8da3e_1040x493.png" width="1040" height="493" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a8bf4d62-06aa-4e49-98f3-69a81dc8da3e_1040x493.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:493,&quot;width&quot;:1040,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:60978,&quot;alt&quot;:&quot;Agent SDK vs. Managed Agents vs. LangGraph vs. n8n&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://www.productcompass.pm/i/194211947?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8bf4d62-06aa-4e49-98f3-69a81dc8da3e_1040x493.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Agent SDK vs. Managed Agents vs. LangGraph vs. n8n" title="Agent SDK vs. Managed Agents vs. LangGraph vs. n8n" srcset="https://substackcdn.com/image/fetch/$s_!NdPI!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8bf4d62-06aa-4e49-98f3-69a81dc8da3e_1040x493.png 424w, https://substackcdn.com/image/fetch/$s_!NdPI!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8bf4d62-06aa-4e49-98f3-69a81dc8da3e_1040x493.png 848w, https://substackcdn.com/image/fetch/$s_!NdPI!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8bf4d62-06aa-4e49-98f3-69a81dc8da3e_1040x493.png 1272w, https://substackcdn.com/image/fetch/$s_!NdPI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8bf4d62-06aa-4e49-98f3-69a81dc8da3e_1040x493.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Agent SDK vs. Managed Agents vs. LangGraph vs. n8n</figcaption></figure></div><p>Four things fall out of this that I didn't expect going into the spike:</p><ul><li><p><strong>Nothing new to learn.</strong> The CLAUDE.md you wrote in dev is the CLAUDE.md that ships. Your muscle memory is already the production runtime.</p></li><li><p><strong>You can skip Claude Managed Agents unless you actively need a hosted runtime.</strong> For request-response agents inside an app you already host, the SDK is a smaller dependency than a whole platform.</p></li><li><p><strong>Full observability.</strong> Hooks give you live per-response metadata &#8212; cost, duration, files read &#8212; for your UI. OTEL exports full traces to Langfuse or any OTLP backend when you need it.</p></li><li><p><strong>Same loop, dev &#8594; prod.</strong> The config you tested in Claude Code is the config running in production. If it worked in your terminal, it works in your app. No mental translation.</p></li></ul><p><strong>For PMs:</strong> this is what lets you prototype and ship agent features without becoming a bottleneck. Changing the agent's behavior is editing a markdown file &#8212; not a sprint, not a code review, not a redeploy cycle. You iterate on AI behavior at the speed you iterate on a Notion doc.</p><p>Now the part most people skip &#8212; how you actually wire it up.</p><div><hr></div><h2>4. The Architecture &#8212; One Function Call Replaces a Workflow</h2><p>In n8n you wire it up node by node. A single agent has system prompt, LLM, model, tools, and memory.</p><p>A single Claude agent isn&#8217;t a workflow. Inside an app, you don&#8217;t need a node-by-node graph around it &#8212; <strong>simple orchestration and guardrails live in your hooks or your business logic</strong>.</p><p>In the SDK it's this:</p><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;typescript&quot;,&quot;nodeId&quot;:&quot;e95743a2-0d3a-4cea-9f4e-8838099f28aa&quot;}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-typescript">for await (const msg of query({
  prompt: question,
  options: {
    cwd: './.claude/agents/knowledge-agent',
    settingSources: ['project'],
    allowedTools: ['Read', 'Glob', 'Grep'],
    maxTurns: 5,
    maxBudgetUsd: 0.15,
    model: 'claude-sonnet-4-6',
    hooks: { /* guardrails */ },
  },
})) {
  // stream text to the user, collect metadata
}</code></pre></div><p><code>settingSources: ['project']</code> is the auto-loader. It reads the agent's CLAUDE.md, skills, and MCP config from agent&#8217;s working directory (<code>cwd)</code>. Same behavior Claude Code has when it opens a session. You don't manually load anything.</p><p>The boundary is clean. Your app owns the request lifecycle, auth, storage. The agent owns reasoning, tool selection, iteration. One function sits on the seam. That's the entire orchestration layer.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/p/claude-agent-sdk-production-agent?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;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/p/claude-agent-sdk-production-agent?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p><div><hr></div><h2>5. The Demo &#8212; Knowledge Chatbot</h2><p>I built the smallest thing that shows the pattern: a web app with markdown files and a chatbot that answers questions using those files, with memory across turns.</p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;58aa12e9-21ce-4294-952e-e5e9a4b1efae&quot;,&quot;duration&quot;:null}"></div><p>The agent lives in its own directory:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Gnro!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e3fc5ab-f7b9-4787-b93d-ea3c29862598_1266x1218.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Gnro!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e3fc5ab-f7b9-4787-b93d-ea3c29862598_1266x1218.png 424w, https://substackcdn.com/image/fetch/$s_!Gnro!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e3fc5ab-f7b9-4787-b93d-ea3c29862598_1266x1218.png 848w, https://substackcdn.com/image/fetch/$s_!Gnro!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e3fc5ab-f7b9-4787-b93d-ea3c29862598_1266x1218.png 1272w, https://substackcdn.com/image/fetch/$s_!Gnro!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e3fc5ab-f7b9-4787-b93d-ea3c29862598_1266x1218.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Gnro!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e3fc5ab-f7b9-4787-b93d-ea3c29862598_1266x1218.png" width="543" height="522.4123222748815" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4e3fc5ab-f7b9-4787-b93d-ea3c29862598_1266x1218.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1218,&quot;width&quot;:1266,&quot;resizeWidth&quot;:543,&quot;bytes&quot;:138141,&quot;alt&quot;:&quot;Agent SDK, Knowledge Chatbot Agent&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://www.productcompass.pm/i/194211947?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e3fc5ab-f7b9-4787-b93d-ea3c29862598_1266x1218.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Agent SDK, Knowledge Chatbot Agent" title="Agent SDK, Knowledge Chatbot Agent" srcset="https://substackcdn.com/image/fetch/$s_!Gnro!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e3fc5ab-f7b9-4787-b93d-ea3c29862598_1266x1218.png 424w, https://substackcdn.com/image/fetch/$s_!Gnro!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e3fc5ab-f7b9-4787-b93d-ea3c29862598_1266x1218.png 848w, https://substackcdn.com/image/fetch/$s_!Gnro!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e3fc5ab-f7b9-4787-b93d-ea3c29862598_1266x1218.png 1272w, https://substackcdn.com/image/fetch/$s_!Gnro!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4e3fc5ab-f7b9-4787-b93d-ea3c29862598_1266x1218.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Stack: </p><ul><li><p><strong>Next.js 15 standalone</strong> (not serverless &#8212; the SDK spawns a full Claude Code runtime, not a lightweight API client). </p></li><li><p><strong>SQLite</strong> for conversation memory because this is a prototype. Postgres, Redis, a JSON file on disk &#8212; all fine.</p></li></ul><p>Adding a second agent? New folder in <code>.claude/agents/</code>. Give it a CLAUDE.md. Point <code>cwd</code> at the new directory. Same structure every time.</p><div><hr></div><p><em>Keep reading for:</em></p><ul><li><p><em>The prompt that scaffolds the app &#8212; paste into an empty repo, Claude Code builds the rest.</em></p></li><li><p><em>Full source code &#8212; Knowledge Chatbot, streaming responses, per-message cost metadata.</em></p></li><li><p><em>The lib/agent.ts wrapper with the TypeScript pitfalls the SDK docs skip</em></p></li><li><p><em>The postbuild trick that stops production from inheriting your repo&#8217;s CLAUDE.md.</em></p></li><li><p><em>The limitations I hit in the spike and the workarounds for each.</em></p></li><li><p><em>How to easily host this in production.</em></p></li></ul>
      <p>
          <a href="https://www.productcompass.pm/p/claude-agent-sdk-production-agent">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[Claude Code Pricing: Subscriptions vs API, Token Visibility, and the Models That Actually Work ]]></title><description><![CDATA[Claude subscriptions are 15-30x cheaper than the API. Full cost breakdown of Claude Code plans, OpenRouter setup, best API models for agentic coding, and an open-source token visibility dashboard.]]></description><link>https://www.productcompass.pm/p/claude-code-pricing</link><guid isPermaLink="false">https://www.productcompass.pm/p/claude-code-pricing</guid><dc:creator><![CDATA[Paweł Huryn]]></dc:creator><pubDate>Wed, 08 Apr 2026 14:42:52 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!pNtG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffdde69dc-6979-4fee-8e4c-23a614088d73_1544x1179.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Claude subscriptions are 15-30x cheaper than the API. But Anthropic just killed every third-party tool that used them &#8212; and you still can&#8217;t see where your tokens go.</p><p>I run Claude Code on a Max plan. 440 sessions last month, 18,000 turns. I built a dashboard to track what that actually costs: <strong>$1,588 in API-equivalent tokens</strong>. Covered by a <strong>$200 subscription</strong>.</p><p>Here&#8217;s the full breakdown &#8212; what April 4 killed, which API models actually work for agentic coding, and how to see exactly where your budget goes.</p><div><hr></div><h2>What You&#8217;ll Learn</h2><ul><li><p><strong>What April 4 actually killed</strong> &#8212; which tools lost subscription access and why Anthropic pulled the plug</p></li><li><p><strong>The full cost landscape</strong> &#8212; subscriptions and API models in one table, ranked by the metric that actually predicts agentic performance</p></li><li><p><strong>Why SWE-bench is misleading</strong> &#8212; it didn&#8217;t match my experience. Agentic Index did.</p></li><li><p><strong>OpenRouter setup</strong>: two environment variables, 400+ models, done</p></li><li><p><strong>Token visibility</strong>: an open-source dashboard that shows exactly where your Claude Code tokens go</p></li></ul><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h2>1. The April 4 Policy Change: What Died, What Lives</h2><p><strong>April 4, 2026:</strong> Anthropic announced Claude subscriptions no longer work with third-party tools. If you were using Cline, Cursor, Windsurf, OpenClaw, or any non-Anthropic harness through your subscription &#8212; it stopped working.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/bcherny/status/2040206441756471399&quot;,&quot;full_text&quot;:&quot;We&#8217;ve been working hard to meet the increase in demand for Claude, and our subscriptions weren't built for the usage patterns of these third-party tools. Capacity is a resource we manage thoughtfully and we are prioritizing our customers using our products and API.&quot;,&quot;username&quot;:&quot;bcherny&quot;,&quot;name&quot;:&quot;Boris Cherny&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1902044548936953856/J2jeik0t_normal.jpg&quot;,&quot;date&quot;:&quot;2026-04-03T23:14:55.000Z&quot;,&quot;photos&quot;:[],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:101,&quot;retweet_count&quot;:40,&quot;like_count&quot;:1858,&quot;impression_count&quot;:420393,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>What Still Works with Subscriptions</strong></p><ul><li><p><strong><a href="https://www.productcompass.pm/p/claude-code-guide">Claude Code CLI</a></strong> &#8212; Anthropic&#8217;s official agentic coding tool</p></li><li><p><strong><a href="https://www.productcompass.pm/p/claude-code-guide">Claude Code extension for VS Code</a> </strong>&#8212; same mechanism</p></li><li><p><strong>Claude.ai</strong> &#8212; web and mobile interface, including agentic Code sessions</p></li><li><p><strong><a href="https://www.productcompass.pm/p/claude-cowork-guide">Cowork </a></strong>&#8212; user-friendly agent inside Claude Desktop</p></li><li><p><strong><a href="https://www.productcompass.pm/p/claude-dispatch-guide">Dispatch</a></strong> &#8212; the orchestration layer for Cowork and code</p></li></ul><p><strong>What Died</strong></p><ul><li><p><strong>Cline</strong> &#8212; popular VS Code agent, relied on subscription auth</p></li><li><p><strong>Cursor</strong> &#8212; AI-native editor, subscription routing cut off</p></li><li><p><strong>Windsurf</strong> &#8212; Codeium&#8217;s editor, same story</p></li><li><p><strong><a href="https://www.productcompass.pm/p/how-to-install-openclaw-safely">OpenClaw</a></strong> &#8212; open-source Claude Code alternative with 135,000+ instances</p></li><li><p><strong>Custom agents and automation</strong> &#8212; anything routing through subscription billing</p></li></ul><p><strong>For automation workflows (<a href="https://www.productcompass.pm/p/the-ultimate-guide-to-n8n-for-pms">n8n</a>, OpenClaw, custom agents):</strong> You&#8217;re on API billing now. The next section shows you exactly what that costs &#8212; and why it might actually be cheaper than you think.</p><p>&#8212;</p><p><em>OpenClaw footnote: A community workaround briefly routed OpenClaw through Claude Code&#8217;s MCP bridge. Anthropic closed it &#8212; one exact substring match to <a href="https://x.com/steipete/status/2040811558427648357?s=20">block OpenClaw&#8217;s system prompt</a>. </em></p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/steipete/status/2040811558427648357?s=20&quot;,&quot;full_text&quot;:&quot;Anthropic now blocks first-party harness use too &#128064;\n\nclaude -p --append-system-prompt 'A personal assistant running inside OpenClaw.' 'is clawd here?'\n\n&#8594; 400 Third-party apps now draw from your extra usage, not your plan limits.\n\nSo yeah: bring your own coin &#129689;&#129438;&quot;,&quot;username&quot;:&quot;steipete&quot;,&quot;name&quot;:&quot;Peter Steinberger &#129438;&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1131851609774985216/OcsssQ9J_normal.png&quot;,&quot;date&quot;:&quot;2026-04-05T15:19:26.000Z&quot;,&quot;photos&quot;:[],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:491,&quot;retweet_count&quot;:278,&quot;like_count&quot;:5453,&quot;impression_count&quot;:1596964,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><div><hr></div><h2>2. The Full Cost Landscape</h2><p>Many builders and PMs either overpay for a subscription they don&#8217;t fully use, or overpay for API models because they default to Sonnet. Here&#8217;s everything in one place.</p><h3>Claude Subscriptions: Flat Cost, Predictable</h3><p>Every tier requires discipline. Opus burns credits ~5x faster than Sonnet, so use Opus for hard problems and switch to Sonnet for straightforward tasks. Run <code>/compact</code> regularly. Without this, you&#8217;ll hit limits on any plan &#8212; including Max 20x.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!OuJD!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c0f25eb-58e5-40a5-98b5-21f16e235b0a_2610x2303.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!OuJD!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c0f25eb-58e5-40a5-98b5-21f16e235b0a_2610x2303.png 424w, https://substackcdn.com/image/fetch/$s_!OuJD!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c0f25eb-58e5-40a5-98b5-21f16e235b0a_2610x2303.png 848w, https://substackcdn.com/image/fetch/$s_!OuJD!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c0f25eb-58e5-40a5-98b5-21f16e235b0a_2610x2303.png 1272w, https://substackcdn.com/image/fetch/$s_!OuJD!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c0f25eb-58e5-40a5-98b5-21f16e235b0a_2610x2303.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!OuJD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c0f25eb-58e5-40a5-98b5-21f16e235b0a_2610x2303.png" width="1456" height="1285" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1c0f25eb-58e5-40a5-98b5-21f16e235b0a_2610x2303.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1285,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:446760,&quot;alt&quot;:&quot;Claude Subscriptions: Pro, Teams, Max 5x, Max 20x, Enterprise&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://www.productcompass.pm/i/193559427?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c0f25eb-58e5-40a5-98b5-21f16e235b0a_2610x2303.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Claude Subscriptions: Pro, Teams, Max 5x, Max 20x, Enterprise" title="Claude Subscriptions: Pro, Teams, Max 5x, Max 20x, Enterprise" srcset="https://substackcdn.com/image/fetch/$s_!OuJD!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c0f25eb-58e5-40a5-98b5-21f16e235b0a_2610x2303.png 424w, https://substackcdn.com/image/fetch/$s_!OuJD!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c0f25eb-58e5-40a5-98b5-21f16e235b0a_2610x2303.png 848w, https://substackcdn.com/image/fetch/$s_!OuJD!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c0f25eb-58e5-40a5-98b5-21f16e235b0a_2610x2303.png 1272w, https://substackcdn.com/image/fetch/$s_!OuJD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c0f25eb-58e5-40a5-98b5-21f16e235b0a_2610x2303.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Claude Subscriptions: Pro, Teams, Max 5x, Max 20x, Enterprise</figcaption></figure></div><p><strong>How cheap is this compared to API?</strong> My Max 20x costs $200/month. The dashboard I built (Section 4) shows $1,588 in API-equivalent costs for Claude Code alone &#8212; and I use Code and Cowork roughly 50:50, so the real API bill would be far higher. The Claude subscription runs roughly <strong>15-30x cheaper</strong> than paying per token for the same work.</p><p><strong>Teams and Enterprise subscribers:</strong> If your company already provides Claude Teams or Enterprise, you have Claude Code access included. Check with your admin &#8212; you may not need a personal subscription at all.</p><h3>API: Pay Per Token, Choose Your Model</h3><p>OpenRouter gives you access to 400+ models. Most aren't worth your time for agentic coding. I tested dozens &#8212; the table below is what survived real multi-step Claude Code sessions, ranked by Agentic Index:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!K7tK!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F116551e8-483e-4c1d-af1e-8f518f40fa81_1200x1457.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!K7tK!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F116551e8-483e-4c1d-af1e-8f518f40fa81_1200x1457.png 424w, https://substackcdn.com/image/fetch/$s_!K7tK!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F116551e8-483e-4c1d-af1e-8f518f40fa81_1200x1457.png 848w, https://substackcdn.com/image/fetch/$s_!K7tK!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F116551e8-483e-4c1d-af1e-8f518f40fa81_1200x1457.png 1272w, https://substackcdn.com/image/fetch/$s_!K7tK!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F116551e8-483e-4c1d-af1e-8f518f40fa81_1200x1457.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!K7tK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F116551e8-483e-4c1d-af1e-8f518f40fa81_1200x1457.png" width="1200" height="1457" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/116551e8-483e-4c1d-af1e-8f518f40fa81_1200x1457.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1457,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:243464,&quot;alt&quot;:&quot;Best LLM Models for Claude Code and OpenClaw available via API&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://www.productcompass.pm/i/193559427?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F116551e8-483e-4c1d-af1e-8f518f40fa81_1200x1457.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Best LLM Models for Claude Code and OpenClaw available via API" title="Best LLM Models for Claude Code and OpenClaw available via API" srcset="https://substackcdn.com/image/fetch/$s_!K7tK!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F116551e8-483e-4c1d-af1e-8f518f40fa81_1200x1457.png 424w, https://substackcdn.com/image/fetch/$s_!K7tK!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F116551e8-483e-4c1d-af1e-8f518f40fa81_1200x1457.png 848w, https://substackcdn.com/image/fetch/$s_!K7tK!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F116551e8-483e-4c1d-af1e-8f518f40fa81_1200x1457.png 1272w, https://substackcdn.com/image/fetch/$s_!K7tK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F116551e8-483e-4c1d-af1e-8f518f40fa81_1200x1457.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><strong>Why Agentic Index?</strong></p><ul><li><p>SWE-Bench (Verified and Pro) tests isolated bug fixes &#8212; one issue, one patch, no iteration. It didn't match my experience.</p></li><li><p>Agentic Index (from Aider's polyglot benchmark) measures what Claude Code actually does: read files, plan changes, apply diffs, run tools, recover from errors, iterate. It matched what I saw in practice.</p></li></ul><h3>Claude Subscription vs API</h3><p><strong>Subscription wins if</strong> you code with Claude Code daily. Opus is the best agentic model &#8212; and cost per token isn&#8217;t <strong>cost per correct token</strong>. For the current model, see <a href="https://www.productcompass.pm/p/claude-fable-5-guide">how that calculus shifted under Fable 5</a>. A cheaper model that needs many iterations to fix its own errors costs more than Opus getting it right the first time. <strong>Cowork, Dispatch, and web-based Claude Code</strong> sessions also require a subscription.</p><p><strong>API wins if</strong> your usage is moderate, spiky, or you&#8217;re running automation workflows. Opus and Sonnet via API are hard to justify when the subscription gives you flat-rate access &#8212; and budget models match or beat Sonnet&#8217;s agentic performance:</p><ul><li><p><strong>GLM-5.1</strong> &#8212; matches Opus 4.6 on agentic performance (67.0 vs 67.6) at 1/12x the input cost. Default for automation.</p></li><li><p><strong>GLM-5</strong> &#8212; same family, cheaper. Matches Sonnet&#8217;s 4.6 agentic score at 1/4x the cost.</p></li><li><p><strong>MiniMax M2.7</strong> &#8212; when cost matters most. 1/10x Sonnet&#8217;s 4.6 score. Still solid.</p></li></ul><h3>One Thing Missing: Token Visibility</h3><p>The subscription model has one real frustration: you can't see where your tokens go. <code>/usage</code> exists but doesn't break down by model, project, or session &#8212; so when you hit limits unexpectedly, it's not obvious why. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!pNtG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffdde69dc-6979-4fee-8e4c-23a614088d73_1544x1179.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!pNtG!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffdde69dc-6979-4fee-8e4c-23a614088d73_1544x1179.png 424w, https://substackcdn.com/image/fetch/$s_!pNtG!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffdde69dc-6979-4fee-8e4c-23a614088d73_1544x1179.png 848w, https://substackcdn.com/image/fetch/$s_!pNtG!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffdde69dc-6979-4fee-8e4c-23a614088d73_1544x1179.png 1272w, https://substackcdn.com/image/fetch/$s_!pNtG!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffdde69dc-6979-4fee-8e4c-23a614088d73_1544x1179.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!pNtG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffdde69dc-6979-4fee-8e4c-23a614088d73_1544x1179.png" width="1456" height="1112" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/fdde69dc-6979-4fee-8e4c-23a614088d73_1544x1179.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1112,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:138378,&quot;alt&quot;:&quot;Token visibility in Claude subscriptions&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://www.productcompass.pm/i/193559427?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffdde69dc-6979-4fee-8e4c-23a614088d73_1544x1179.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Token visibility in Claude subscriptions" title="Token visibility in Claude subscriptions" srcset="https://substackcdn.com/image/fetch/$s_!pNtG!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffdde69dc-6979-4fee-8e4c-23a614088d73_1544x1179.png 424w, https://substackcdn.com/image/fetch/$s_!pNtG!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffdde69dc-6979-4fee-8e4c-23a614088d73_1544x1179.png 848w, https://substackcdn.com/image/fetch/$s_!pNtG!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffdde69dc-6979-4fee-8e4c-23a614088d73_1544x1179.png 1272w, https://substackcdn.com/image/fetch/$s_!pNtG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffdde69dc-6979-4fee-8e4c-23a614088d73_1544x1179.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Token visibility in Claude subscriptions</figcaption></figure></div><p>Anthropic knows: there are open feature requests for <a href="https://github.com/anthropics/claude-code/issues/30814">per-prompt token breakdown</a> and a <a href="https://github.com/anthropics/claude-code/issues/10593">real-time usage indicator</a>. I built an open source solution &#8212; Section 4 covers it.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h2>3. OpenRouter Setup for Claude Code</h2><p>Claude Code isn&#8217;t locked to Anthropic&#8217;s models. Switch <code>ANTHROPIC_BASE_URL</code> and it routes to any compatible API. Add a <code>.claude/settings.local.json</code> to your project root, for example:</p><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;json&quot;,&quot;nodeId&quot;:&quot;f520ebd9-311b-435b-80bb-12d88604c4ea&quot;}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-json">{
  "env": {
    "ANTHROPIC_BASE_URL": "https://openrouter.ai/api",
    "ANTHROPIC_AUTH_TOKEN": "sk-or-v1-{your-OpenRouter-API-key}",
    "ANTHROPIC_API_KEY": ""
    },
  "model": "z-ai/glm-5.1"
}</code></pre></div><p><strong>Why OpenRouter over direct provider APIs?</strong> </p><p>One key, one endpoint, 400+ models. Switch between GLM-5, Qwen, Gemini, and GPT-5 by changing one variable&#8212;no juggling multiple API keys or base URLs.</p><p>Switching the API works for Claude Code CLI, but not for Claude Code Extension. In practice, this doesn&#8217;t make a huge difference, as you can still work with VS Code interface. </p><p>Step-by-step demo:</p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;f4f07e39-5254-43d8-bde3-1f004aac02f5&quot;,&quot;duration&quot;:null}"></div><div><hr></div><p><em><strong>Side Note:</strong> Want to build with Claude? Join our <a href="https://go.productcompass.pm/claudathon">AI Agents Claudathon</a> &#8212; in 4 weeks you will learn everything to ship real agentic products with Claude Code. No experience required:</em></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!PaEG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31445faf-1e9d-4588-8bcd-88cb259cfc9d_2342x1150.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!PaEG!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31445faf-1e9d-4588-8bcd-88cb259cfc9d_2342x1150.png 424w, https://substackcdn.com/image/fetch/$s_!PaEG!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31445faf-1e9d-4588-8bcd-88cb259cfc9d_2342x1150.png 848w, https://substackcdn.com/image/fetch/$s_!PaEG!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31445faf-1e9d-4588-8bcd-88cb259cfc9d_2342x1150.png 1272w, https://substackcdn.com/image/fetch/$s_!PaEG!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31445faf-1e9d-4588-8bcd-88cb259cfc9d_2342x1150.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!PaEG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31445faf-1e9d-4588-8bcd-88cb259cfc9d_2342x1150.png" width="1456" height="715" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/31445faf-1e9d-4588-8bcd-88cb259cfc9d_2342x1150.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:715,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:323982,&quot;alt&quot;:&quot;AI Agents Claudathon for PMs&quot;,&quot;title&quot;:&quot;AI Agents Claudathon for PMs&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://www.productcompass.pm/i/192729856?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31445faf-1e9d-4588-8bcd-88cb259cfc9d_2342x1150.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="AI Agents Claudathon for PMs" title="AI Agents Claudathon for PMs" srcset="https://substackcdn.com/image/fetch/$s_!PaEG!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31445faf-1e9d-4588-8bcd-88cb259cfc9d_2342x1150.png 424w, https://substackcdn.com/image/fetch/$s_!PaEG!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31445faf-1e9d-4588-8bcd-88cb259cfc9d_2342x1150.png 848w, https://substackcdn.com/image/fetch/$s_!PaEG!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31445faf-1e9d-4588-8bcd-88cb259cfc9d_2342x1150.png 1272w, https://substackcdn.com/image/fetch/$s_!PaEG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31445faf-1e9d-4588-8bcd-88cb259cfc9d_2342x1150.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://go.productcompass.pm/claudathon&quot;,&quot;text&quot;:&quot;Learn more&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://go.productcompass.pm/claudathon"><span>Learn more</span></a></p><p><em>P.S. This is not an external cohort. Just me and <span class="mention-wrap" data-attrs="{&quot;name&quot;:&quot;Olia Herbelin&quot;,&quot;id&quot;:400036942,&quot;type&quot;:&quot;user&quot;,&quot;url&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7a0b60f9-cbbc-4b18-a9ef-bea0f4054290_1646x1646.jpeg&quot;,&quot;uuid&quot;:&quot;2d8cc268-0c7e-487d-b99e-415867b733ed&quot;}" data-component-name="MentionToDOM"></span>.</em></p><div><hr></div><h2>4. Claude Code Usage Dashboard: See Where Your Tokens Go for Free</h2><p>I mentioned the visibility gap in Section 2 &#8212; <code>/usage</code> doesn&#8217;t break down by model, project, or session. You hit limits and have no idea why. </p><p>That frustrated me enough to build something.</p><p>I open-sourced a local dashboard that reads your Claude Code transcripts and shows you exactly where tokens go. No cloud, no telemetry &#8212; everything stays on your machine:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!tnLB!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa1fda32d-2b68-4841-a39e-d4c7d4f1ccc8_3840x4620.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!tnLB!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa1fda32d-2b68-4841-a39e-d4c7d4f1ccc8_3840x4620.png 424w, https://substackcdn.com/image/fetch/$s_!tnLB!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa1fda32d-2b68-4841-a39e-d4c7d4f1ccc8_3840x4620.png 848w, https://substackcdn.com/image/fetch/$s_!tnLB!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa1fda32d-2b68-4841-a39e-d4c7d4f1ccc8_3840x4620.png 1272w, https://substackcdn.com/image/fetch/$s_!tnLB!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa1fda32d-2b68-4841-a39e-d4c7d4f1ccc8_3840x4620.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!tnLB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa1fda32d-2b68-4841-a39e-d4c7d4f1ccc8_3840x4620.png" width="1456" height="1752" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a1fda32d-2b68-4841-a39e-d4c7d4f1ccc8_3840x4620.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1752,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:849985,&quot;alt&quot;:&quot;Claude Code Usage Dashboard on GitHub&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://www.productcompass.pm/i/193559427?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa1fda32d-2b68-4841-a39e-d4c7d4f1ccc8_3840x4620.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Claude Code Usage Dashboard on GitHub" title="Claude Code Usage Dashboard on GitHub" srcset="https://substackcdn.com/image/fetch/$s_!tnLB!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa1fda32d-2b68-4841-a39e-d4c7d4f1ccc8_3840x4620.png 424w, https://substackcdn.com/image/fetch/$s_!tnLB!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa1fda32d-2b68-4841-a39e-d4c7d4f1ccc8_3840x4620.png 848w, https://substackcdn.com/image/fetch/$s_!tnLB!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa1fda32d-2b68-4841-a39e-d4c7d4f1ccc8_3840x4620.png 1272w, https://substackcdn.com/image/fetch/$s_!tnLB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa1fda32d-2b68-4841-a39e-d4c7d4f1ccc8_3840x4620.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><a href="https://github.com/phuryn/claude-usage">Claude Code Usage Dashboard</a> on GitHub</figcaption></figure></div><p>You can star it, fork it, and make it your own. GitHub (open source, MIT): </p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://github.com/phuryn/claude-usage&quot;,&quot;text&quot;:&quot;Claude Code Usage Dashboard&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://github.com/phuryn/claude-usage"><span>Claude Code Usage Dashboard</span></a></p><h3>What It Shows</h3><ul><li><p><strong>Cost per day</strong>, broken down by model (Opus vs Sonnet vs Haiku)</p></li><li><p><strong>Sessions and turns</strong> over time</p></li><li><p><strong>Filter by model</strong>, filter by time range (7d / 30d / 90d)</p></li><li><p><strong>Top projects by tokens</strong> &#8212; see which codebase is eating your budget</p></li><li><p>Auto-refreshes every 30 seconds at localhost:8080</p></li></ul><h3>My 30-Day Numbers</h3><p>440 sessions. 18,000 turns. <strong>$1,588 in estimated API costs.</strong></p><p>All covered by the Max subscription. For a fraction of the price.</p><p>First thing the dashboard caught: one day spiked to <strong>700 million cached tokens</strong>. Not my usage &#8212; an Anthropic bug. Without the dashboard, I&#8217;d never have noticed. </p><h3>Setup &amp; Run on Windows</h3><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;bash&quot;,&quot;nodeId&quot;:&quot;b711e75c-a3dd-4984-a46b-81162fb35469&quot;}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-bash">git clone https://github.com/phuryn/claude-usage
cd claude-usage
python cli.py dashboard</code></pre></div><h3>Setup &amp; Run on MacOS, Linux</h3><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;bash&quot;,&quot;nodeId&quot;:&quot;0f07dd57-a970-42a0-a09b-6372ab152aee&quot;}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-bash">git clone https://github.com/phuryn/claude-usage
cd claude-usage
python3 cli.py dashboard</code></pre></div><h3>What It Measures</h3><p>Claude Code Usage Dashboard works with any Claude subscription (Pro, Max, Team, Enterprise) running Claude Code &#8212; CLI, VS Code extension, and dispatched code sessions.</p><p>At the same time, Cowork and web code sessions are not included. We need to wait for Anthropic for a better solution.</p><div><hr></div><h2>5. Token-Saving Techniques (Works Everywhere)</h2><p>Before switching models or tools, optimize what you&#8217;re already doing. These apply whether you&#8217;re on subscription or API.</p><h3>Use /compact Aggressively</h3><p>Context accumulates fast. Every file read, tool call, and response adds tokens. A 30-minute session easily hits 200K tokens, and you&#8217;re paying for all of it on every subsequent message.</p><p>Run <code>/compact</code> after major milestones. It preserves intent and drops noise.</p><h3>Don&#8217;t Use Opus for Everything</h3><p>Opus 4 costs 5x more than Sonnet ($15/$75 vs $3/$15 per M tokens). For most coding tasks, Sonnet is equivalent&#8212;and GLM-5.1 matches Opus on agentic tasks at 1/12th the cost.</p><p>If you struggle with available tokens, use Opus only for:</p><ul><li><p>Complex architectural reasoning when Sonnet keeps failing</p></li><li><p>Long-context analysis where every detail matters</p></li><li><p>Tasks with extreme ambiguity</p></li></ul><p>Default to Sonnet or GLM. Escalate to Opus when the model fails.</p><h3>Watch for MCP Tool Overhead</h3><p>MCP tools can easily add ~20K tokens to every session just from tool definitions.</p><p>While by default they are loaded on demand in Opus and Sonnet, this may not work with custom LLMs. Remove MCP servers you don&#8217;t need by typing /mcp in Claude Code CLI.</p><p><em>Hint: This is where you can adjust default settings for Opus and Sonnet:</em></p><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;json&quot;,&quot;nodeId&quot;:&quot;384d5891-23e1-491c-9af0-00b295702c20&quot;}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-json">  {
    &#8220;env&#8221;: {
      &#8220;ENABLE_TOOL_SEARCH&#8221;: &#8220;true&#8221;
    }
  }</code></pre></div><h3>Code Graph MCP: Feed Claude Only What It Needs</h3><p>Every time Claude Code reviews a change, it searches your codebase with grep and glob &#8212; smart, but not structural. It doesn&#8217;t know which functions call what.</p><p><a href="https://github.com/tirth8205/code-review-graph">code-review-graph</a> adds that structural layer. It parses your codebase into an AST, stores it in SQLite, and tracks changes via git hooks. At review time, it traces the blast radius of your change and feeds Claude only the affected files.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!HWYN!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26d3e297-3a60-4a66-8b0b-6cbd812a6663_3150x2599.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!HWYN!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26d3e297-3a60-4a66-8b0b-6cbd812a6663_3150x2599.png 424w, https://substackcdn.com/image/fetch/$s_!HWYN!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26d3e297-3a60-4a66-8b0b-6cbd812a6663_3150x2599.png 848w, https://substackcdn.com/image/fetch/$s_!HWYN!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26d3e297-3a60-4a66-8b0b-6cbd812a6663_3150x2599.png 1272w, https://substackcdn.com/image/fetch/$s_!HWYN!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26d3e297-3a60-4a66-8b0b-6cbd812a6663_3150x2599.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!HWYN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26d3e297-3a60-4a66-8b0b-6cbd812a6663_3150x2599.png" width="1456" height="1201" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/26d3e297-3a60-4a66-8b0b-6cbd812a6663_3150x2599.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1201,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Code Graph MCP, The Token Problem: 8.2x average token reduction across 6 real repositories&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="Code Graph MCP, The Token Problem: 8.2x average token reduction across 6 real repositories" title="Code Graph MCP, The Token Problem: 8.2x average token reduction across 6 real repositories" srcset="https://substackcdn.com/image/fetch/$s_!HWYN!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26d3e297-3a60-4a66-8b0b-6cbd812a6663_3150x2599.png 424w, https://substackcdn.com/image/fetch/$s_!HWYN!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26d3e297-3a60-4a66-8b0b-6cbd812a6663_3150x2599.png 848w, https://substackcdn.com/image/fetch/$s_!HWYN!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26d3e297-3a60-4a66-8b0b-6cbd812a6663_3150x2599.png 1272w, https://substackcdn.com/image/fetch/$s_!HWYN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26d3e297-3a60-4a66-8b0b-6cbd812a6663_3150x2599.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">code-review-graph (open source)</figcaption></figure></div><p>The author&#8217;s benchmarks: 6.8x fewer tokens on code reviews, up to 49x on daily coding. On a 27,700-file monorepo, only 15 files were read. </p><p><strong>I haven&#8217;t tested these numbers myself</strong>, I currently don&#8217;t work with such large codebases, but the architecture makes sense &#8212; especially for large codebases where the savings compound.</p><h3>Agent-Browser: Browse Without Screenshots</h3><p>If your agents need browser access, don&#8217;t use Chrome MCP with screenshots &#8212; each screenshot eats thousands of tokens for a single page view.</p><p><a href="https://github.com/vercel-labs/agent-browser">agent-browser</a> by Vercel Labs takes a different approach: instead of screenshots, it returns an accessibility tree snapshot with element references (@e1, @e2, etc.). Agents interact via those refs &#8212; compact text, not images. The result: 82% fewer tokens than Playwright MCP, up to 93% reduction overall.</p><p>It&#8217;s also much more reliable than the standard web fetch:</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/PawelHuryn/status/2041403136263233782?s=20&quot;,&quot;full_text&quot;:&quot;\&quot;A perfect score is unlikely for any current agent.\&quot; &#8212; MongoDB's Developer Education team, launching the Agent Reading Test.\n\nClaude Opus scored 19/20 with a simpe change.\n\n1. What the test measures\n\nThe Agent Reading Test isn't a vibe check. 10 tests, 20 points. Each test &quot;,&quot;username&quot;:&quot;PawelHuryn&quot;,&quot;name&quot;:&quot;Pawe&#322; Huryn&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/2031703870615715840/aq6W0Caw_normal.jpg&quot;,&quot;date&quot;:&quot;2026-04-07T06:30:09.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://pbs.substack.com/media/HFSFVDqb0AAuLYa.jpg&quot;,&quot;link_url&quot;:&quot;https://t.co/VCNBOwHtbE&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:1,&quot;retweet_count&quot;:0,&quot;like_count&quot;:7,&quot;impression_count&quot;:1207,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p>No configuration needed. Works with Claude Code (tell it to use it in CLAUDE.md) and any MCP-compatible agent. Installation:</p><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;bash&quot;,&quot;nodeId&quot;:&quot;52544179-ddb2-45f0-bbb6-c3813b7fb5b5&quot;}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-bash">npm install -g agent-browser</code></pre></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h2>8. Closing</h2><p>Subscribe for daily coding &#8212; stop watching the meter. Route automation to GLM-5.1 for Opus-level agentic performance at 1/12th the cost. Track every token with an open-source dashboard so you know exactly what you&#8217;re getting.</p><p>Anthropic&#8217;s April policy change forced automation users onto API billing. But it also clarified the landscape: subscriptions for Anthropic tools, APIs for everything else.</p><p>For the terminology behind the numbers, use <a href="https://www.productcompass.pm/p/ai-product-manager-glossary">the AI PM glossary</a>.</p><p>The one thing still missing: real token visibility from Anthropic. Until they ship it, the dashboard fills the gap. Clone it, see where your tokens go, and stop guessing: </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!fL-B!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46525ac3-14fc-4c7a-8a1c-0e60da0f0cdb_1200x600.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!fL-B!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46525ac3-14fc-4c7a-8a1c-0e60da0f0cdb_1200x600.jpeg 424w, https://substackcdn.com/image/fetch/$s_!fL-B!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46525ac3-14fc-4c7a-8a1c-0e60da0f0cdb_1200x600.jpeg 848w, https://substackcdn.com/image/fetch/$s_!fL-B!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46525ac3-14fc-4c7a-8a1c-0e60da0f0cdb_1200x600.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!fL-B!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46525ac3-14fc-4c7a-8a1c-0e60da0f0cdb_1200x600.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!fL-B!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46525ac3-14fc-4c7a-8a1c-0e60da0f0cdb_1200x600.jpeg" width="1200" height="600" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/46525ac3-14fc-4c7a-8a1c-0e60da0f0cdb_1200x600.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:600,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&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="" srcset="https://substackcdn.com/image/fetch/$s_!fL-B!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46525ac3-14fc-4c7a-8a1c-0e60da0f0cdb_1200x600.jpeg 424w, https://substackcdn.com/image/fetch/$s_!fL-B!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46525ac3-14fc-4c7a-8a1c-0e60da0f0cdb_1200x600.jpeg 848w, https://substackcdn.com/image/fetch/$s_!fL-B!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46525ac3-14fc-4c7a-8a1c-0e60da0f0cdb_1200x600.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!fL-B!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F46525ac3-14fc-4c7a-8a1c-0e60da0f0cdb_1200x600.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><a href="https://github.com/phuryn/claude-usage">https://github.com/phuryn/claude-usage</a></figcaption></figure></div><div><hr></div><h2>Thanks for Reading The Product Compass</h2><p>It&#8217;s amazing to learn and grow together.</p><p>Next: prototyping for PMs (3 tools &amp; templates). This will be a paid content.</p><p>Have a great week ahead,<br>Pawe&#322;</p>]]></content:encoded></item><item><title><![CDATA[Three CLAUDE.md Blocks That Make Claude Get Smarter Every Session]]></title><description><![CDATA[Paste them in. By week three, Claude was applying 24 rules it had written itself.]]></description><link>https://www.productcompass.pm/p/claude-md-snippets</link><guid isPermaLink="false">https://www.productcompass.pm/p/claude-md-snippets</guid><dc:creator><![CDATA[Paweł Huryn]]></dc:creator><pubDate>Tue, 31 Mar 2026 15:33:46 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!Lly_!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe48a3afe-cd62-4107-b7a7-070a97526ca6_1080x1350.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>I added three blocks to my CLAUDE.md a month ago. By week three, Claude was applying 24 project-specific rules it had written itself &#8212; rules I never prompted, extracted from patterns across dozens of sessions.</p><p><strong>What You&#8217;ll Learn:</strong></p><ul><li><p>A <strong>Knowledge Architecture</strong> block that turns Claude into a system that learns across sessions &#8212; not just a tool that forgets</p></li><li><p>A <strong>Decision Journal</strong> block that logs every meaningful choice with full reasoning, so Claude (and your team) never re-debates settled decisions</p></li><li><p>A <strong>Quality Gate</strong> block that gives Claude concrete evaluation criteria &#8212; because agents can&#8217;t objectively judge their own work</p></li><li><p>A <strong>schedule suggestion</strong> that keeps the whole system from going stale</p></li><li><p>The <strong>full integrated CLAUDE.md</strong> &#8212; all three blocks ready to paste</p></li></ul><div><hr></div><h2>0. Memory Without Reflection</h2><p>Claude remembers. It writes its own memories, reads your CLAUDE.md, follows your conventions. But it doesn&#8217;t reflect on what it knows.</p><p>It captured that your pricing test showed 40% churn. It captured that a competitor dropped their free tier. It captured that onboarding users churned less. Three separate observations in three separate sessions &#8212; and Claude never connected them.</p><p>Memory without reflection is just storage.</p><p>Claude now ships with built-in configuration &#8212; the <code>.claude</code> folder, settings files, rules. Boris Cherny, the creator of Claude Code, shared how his team uses CLAUDE.md internally &#8212; every correction becomes a rule, checked into git. </p><blockquote><p>That&#8217;s a good foundation. But it&#8217;s a correction log. The system doesn&#8217;t promote patterns on its own. It doesn&#8217;t test its own hypotheses. It doesn&#8217;t evaluate whether its work meets project-specific standards.</p></blockquote><p>The community has built impressive tooling on top of this. Some repositories catalog 135+ agents, 42 commands, and hundreds of plugins. Powerful systems for teams that want deep infrastructure.</p><p>Most builders need something they can paste in 90 seconds that makes Claude measurably better by next week.</p><p>Three blocks. Each one targets a different failure mode &#8212; learning, deciding, evaluating. Together, they turn memory into a system that reflects, connects, and compounds.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h2>1. Knowledge Architecture &#8212; The Learning Loop</h2><p><strong>The problem:</strong> Claude captures observations but never revisits them. Insights from last week's session don't inform this week's work. There's no mechanism to test whether a pattern holds, promote it when it does, or discard it when it doesn't.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Lly_!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe48a3afe-cd62-4107-b7a7-070a97526ca6_1080x1350.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Lly_!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe48a3afe-cd62-4107-b7a7-070a97526ca6_1080x1350.png 424w, https://substackcdn.com/image/fetch/$s_!Lly_!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe48a3afe-cd62-4107-b7a7-070a97526ca6_1080x1350.png 848w, https://substackcdn.com/image/fetch/$s_!Lly_!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe48a3afe-cd62-4107-b7a7-070a97526ca6_1080x1350.png 1272w, https://substackcdn.com/image/fetch/$s_!Lly_!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe48a3afe-cd62-4107-b7a7-070a97526ca6_1080x1350.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Lly_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe48a3afe-cd62-4107-b7a7-070a97526ca6_1080x1350.png" width="1080" height="1350" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e48a3afe-cd62-4107-b7a7-070a97526ca6_1080x1350.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1350,&quot;width&quot;:1080,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:174665,&quot;alt&quot;:&quot;Claude Knowledge Architecture &#8212; The Learning Loop&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://www.productcompass.pm/i/192729856?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe48a3afe-cd62-4107-b7a7-070a97526ca6_1080x1350.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Claude Knowledge Architecture &#8212; The Learning Loop" title="Claude Knowledge Architecture &#8212; The Learning Loop" srcset="https://substackcdn.com/image/fetch/$s_!Lly_!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe48a3afe-cd62-4107-b7a7-070a97526ca6_1080x1350.png 424w, https://substackcdn.com/image/fetch/$s_!Lly_!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe48a3afe-cd62-4107-b7a7-070a97526ca6_1080x1350.png 848w, https://substackcdn.com/image/fetch/$s_!Lly_!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe48a3afe-cd62-4107-b7a7-070a97526ca6_1080x1350.png 1272w, https://substackcdn.com/image/fetch/$s_!Lly_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe48a3afe-cd62-4107-b7a7-070a97526ca6_1080x1350.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><strong>The snippet:</strong></p><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;markdown&quot;,&quot;nodeId&quot;:&quot;4773617f-40b1-4278-92ea-c34f72063541&quot;}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-markdown">Before starting a new task, review existing rules and hypotheses for this domain.
Apply rules by default. Check if any hypothesis can be tested with today's work.

At the end of each task, extract insights. Store them in domain folders, e.g.:
  /knowledge/pricing/         (or /onboarding/, /competitors/)
    knowledge.md  (facts and patterns)
    hypotheses.md (need more data)
    rules.md      (confirmed &#8212; apply by default)

Maintain a /knowledge/INDEX.md that routes to each domain folder.
Create the structure if it doesn't exist yet.
When a hypothesis gets confirmed 3+ times, promote it to a rule.
When a rule gets contradicted by new data, demote it back to hypothesis.</code></pre></div><p><strong>How it works:</strong> Before every task, Claude reads the existing knowledge &#8212; active retrieval, not passive storage. The value isn't in the files. It's in Claude checking them mid-session before making a recommendation.</p><p>After a month, I had a folder with 24 rules Claude applied automatically. I didn&#8217;t write those rules. They emerged from dozens of sessions. Claude was measurably better than day 1 &#8212; not because of better prompts, but because the system had been learning the whole time.</p><div><hr></div><p><em>Want to build with Claude? Join our <a href="https://go.productcompass.pm/claudathon">AI Agents Claudathon</a> &#8212; ship real agentic products with Claude Code. No experience required. Limited to 60 students.</em></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!PaEG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31445faf-1e9d-4588-8bcd-88cb259cfc9d_2342x1150.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!PaEG!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31445faf-1e9d-4588-8bcd-88cb259cfc9d_2342x1150.png 424w, https://substackcdn.com/image/fetch/$s_!PaEG!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31445faf-1e9d-4588-8bcd-88cb259cfc9d_2342x1150.png 848w, https://substackcdn.com/image/fetch/$s_!PaEG!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31445faf-1e9d-4588-8bcd-88cb259cfc9d_2342x1150.png 1272w, https://substackcdn.com/image/fetch/$s_!PaEG!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31445faf-1e9d-4588-8bcd-88cb259cfc9d_2342x1150.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!PaEG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31445faf-1e9d-4588-8bcd-88cb259cfc9d_2342x1150.png" width="1456" height="715" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/31445faf-1e9d-4588-8bcd-88cb259cfc9d_2342x1150.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:715,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:323982,&quot;alt&quot;:&quot;AI Agents Claudathon for PMs&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://www.productcompass.pm/i/192729856?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31445faf-1e9d-4588-8bcd-88cb259cfc9d_2342x1150.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="AI Agents Claudathon for PMs" title="AI Agents Claudathon for PMs" srcset="https://substackcdn.com/image/fetch/$s_!PaEG!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31445faf-1e9d-4588-8bcd-88cb259cfc9d_2342x1150.png 424w, https://substackcdn.com/image/fetch/$s_!PaEG!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31445faf-1e9d-4588-8bcd-88cb259cfc9d_2342x1150.png 848w, https://substackcdn.com/image/fetch/$s_!PaEG!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31445faf-1e9d-4588-8bcd-88cb259cfc9d_2342x1150.png 1272w, https://substackcdn.com/image/fetch/$s_!PaEG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31445faf-1e9d-4588-8bcd-88cb259cfc9d_2342x1150.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://go.productcompass.pm/claudathon&quot;,&quot;text&quot;:&quot;Learn more&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://go.productcompass.pm/claudathon"><span>Learn more</span></a></p><div><hr></div><h2>2. Decision Journal &#8212; Reviewable Reasoning</h2><p><strong>The problem:</strong> Someone asks why you picked Postgres over DynamoDB. Or why you killed the freemium tier. Or why the onboarding flow skips the team invite step. Nobody remembers. So you spend 30 minutes re-debating a decision that was already made.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!BkMj!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67e67874-a028-48c9-944d-88678d597960_1200x1500.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!BkMj!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67e67874-a028-48c9-944d-88678d597960_1200x1500.png 424w, https://substackcdn.com/image/fetch/$s_!BkMj!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67e67874-a028-48c9-944d-88678d597960_1200x1500.png 848w, https://substackcdn.com/image/fetch/$s_!BkMj!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67e67874-a028-48c9-944d-88678d597960_1200x1500.png 1272w, https://substackcdn.com/image/fetch/$s_!BkMj!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67e67874-a028-48c9-944d-88678d597960_1200x1500.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!BkMj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67e67874-a028-48c9-944d-88678d597960_1200x1500.png" width="1200" height="1500" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/67e67874-a028-48c9-944d-88678d597960_1200x1500.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1500,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:191830,&quot;alt&quot;:&quot;Claude Decision Journal &#8212; Reviewable Reasoning&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://www.productcompass.pm/i/192729856?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67e67874-a028-48c9-944d-88678d597960_1200x1500.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Claude Decision Journal &#8212; Reviewable Reasoning" title="Claude Decision Journal &#8212; Reviewable Reasoning" srcset="https://substackcdn.com/image/fetch/$s_!BkMj!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67e67874-a028-48c9-944d-88678d597960_1200x1500.png 424w, https://substackcdn.com/image/fetch/$s_!BkMj!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67e67874-a028-48c9-944d-88678d597960_1200x1500.png 848w, https://substackcdn.com/image/fetch/$s_!BkMj!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67e67874-a028-48c9-944d-88678d597960_1200x1500.png 1272w, https://substackcdn.com/image/fetch/$s_!BkMj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67e67874-a028-48c9-944d-88678d597960_1200x1500.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><strong>The snippet:</strong></p><div class="highlighted_code_block" data-attrs="{&quot;language&quot;:&quot;markdown&quot;,&quot;nodeId&quot;:&quot;778b9685-ba68-47e2-bf65-84ecfa4fcc95&quot;}" data-component-name="HighlightedCodeBlockToDOM"><pre class="shiki"><code class="language-markdown">When about to make a decision that affects more than today's task,
first grep /decisions/ for prior decisions in that area. 
Follow them unless new information invalidates the reasoning.

If no prior decision exists &#8212; or you're replacing one &#8212; log it:

File: /decisions/YYYY-MM-DD-{topic}.md

Format:
  ## Decision: {what you decided}
  ## Context: {why this came up}
  ## Alternatives considered: {what else was on the table}
  ## Reasoning: {why this option won}
  ## Trade-offs accepted: {what you gave up}
  ## Supersedes: {link to prior decision, if replacing}</code></pre></div><p><strong>How it works:</strong> If you&#8217;ve worked with Architecture Decision Records, this will feel familiar &#8212; same principle, enforced by Claude instead of team discipline.</p><p>When decisions get replaced, the <code>Supersedes</code> field creates a traceable chain. <span class="mention-wrap" data-attrs="{&quot;name&quot;:&quot;Robert Ogilvy&quot;,&quot;id&quot;:96126725,&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/da9dbeed-0c54-409a-a6d0-45c4181a8941_144x144.png&quot;,&quot;uuid&quot;:&quot;6298b12c-d64c-4eca-8fa6-fe2b9b2efe80&quot;}" data-component-name="MentionToDOM"></span> suggested this addition and the retrieval-first ordering, and both made the journal sharper.</p><p>A month in, the patterns surprised me. The decisions I was most confident about had the worst hit rate. The ones where I forced myself to write out three alternatives before choosing were right 80% of the time.</p><div><hr></div><p><em>Keep reading with a 7-day free trial.</em></p><p><em>What&#8217;s inside the paid section:</em></p><ul><li><p><em>The third block &#8212; Quality Gate &#8212; and why Claude can&#8217;t evaluate its own work without it</em></p></li><li><p><em>A self-maintenance instruction that keeps the whole system from going stale</em></p></li><li><p><em>How the three blocks reinforce each other (the compounding thesis)</em></p></li><li><p><em>The full integrated CLAUDE.md &#8212; all three blocks + schedule suggestion, ready to paste</em></p></li></ul><div><hr></div><h2>3. Quality Gate &#8212; Evaluation Criteria That Compound</h2><p><strong>The problem:</strong> Claude finishes a task and tells you it&#8217;s done. You ask if the work is good. Claude says yes &#8212; confidently, every time.</p><p>Anthropic&#8217;s own engineering team documented this: when asked to evaluate work they&#8217;ve produced, agents confidently praise it &#8212; even when the quality is mediocre. The agent that built the thing can&#8217;t objectively evaluate the thing.</p>
      <p>
          <a href="https://www.productcompass.pm/p/claude-md-snippets">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[Claude Team is Shipping Like Crazy: 74 Releases in 52 Days]]></title><description><![CDATA[Every product release from Feb 3 to Mar 24, tracked to the engineer and their X profile.]]></description><link>https://www.productcompass.pm/p/claude-shipping-calendar</link><guid isPermaLink="false">https://www.productcompass.pm/p/claude-shipping-calendar</guid><dc:creator><![CDATA[Paweł Huryn]]></dc:creator><pubDate>Tue, 24 Mar 2026 16:02:53 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/5a7e7d08-7cf8-4ec6-b20b-2f2d0f0d463e_1280x720.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Anthropic shipped 74 Claude releases in 52 days. This is what a company pulling ahead looks like.</p><p>I mapped every release since February 1st to a shipping calendar &#8212; dates, features, team attribution. Not by reading changelogs. By going through the feeds of the people actually shipping.</p><p>What stands out isn't any single feature. It's the velocity across every surface at once:</p><p>&#8594; Developer tools (Claude Code) &#8212; 28 releases <br>&#8594; Desktop automation (Cowork) &#8212; 15 releases <br>&#8594; API and infrastructure &#8212; 18 releases <br>&#8594; Models and core platform &#8212; 13 releases</p><p>No team is waiting for the other. They're all shipping in parallel:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!MA29!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F76faddcd-a8b9-4f8f-b177-c0b073428bc2_1840x2126.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!MA29!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F76faddcd-a8b9-4f8f-b177-c0b073428bc2_1840x2126.png 424w, https://substackcdn.com/image/fetch/$s_!MA29!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F76faddcd-a8b9-4f8f-b177-c0b073428bc2_1840x2126.png 848w, https://substackcdn.com/image/fetch/$s_!MA29!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F76faddcd-a8b9-4f8f-b177-c0b073428bc2_1840x2126.png 1272w, https://substackcdn.com/image/fetch/$s_!MA29!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F76faddcd-a8b9-4f8f-b177-c0b073428bc2_1840x2126.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!MA29!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F76faddcd-a8b9-4f8f-b177-c0b073428bc2_1840x2126.png" width="1456" height="1682" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/76faddcd-a8b9-4f8f-b177-c0b073428bc2_1840x2126.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1682,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:484346,&quot;alt&quot;:&quot;Claude Shipping Calendar, Claude Release Notes&quot;,&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://www.productcompass.pm/i/191994006?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F76faddcd-a8b9-4f8f-b177-c0b073428bc2_1840x2126.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Claude Shipping Calendar, Claude Release Notes" title="Claude Shipping Calendar, Claude Release Notes" srcset="https://substackcdn.com/image/fetch/$s_!MA29!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F76faddcd-a8b9-4f8f-b177-c0b073428bc2_1840x2126.png 424w, https://substackcdn.com/image/fetch/$s_!MA29!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F76faddcd-a8b9-4f8f-b177-c0b073428bc2_1840x2126.png 848w, https://substackcdn.com/image/fetch/$s_!MA29!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F76faddcd-a8b9-4f8f-b177-c0b073428bc2_1840x2126.png 1272w, https://substackcdn.com/image/fetch/$s_!MA29!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F76faddcd-a8b9-4f8f-b177-c0b073428bc2_1840x2126.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><blockquote><p><strong>For PMs, this creates a compounding gap.</strong> Every week you don&#8217;t explore Dispatch, Scheduled Tasks, or Computer Use is a week someone else does. The PM who builds a self-improving CLAUDE.md system today has an automation layer that gets better with every release. The PM who waits builds from scratch each time.</p></blockquote><p>This isn't about picking the "best AI tool." It's about recognizing when one platform's shipping velocity makes the decision for you.</p><div><hr></div><h2>My Claude Guides</h2><p>If you want to go deeper on any of these surfaces, I&#8217;ve written complete guides for PMs:</p><ul><li><p><strong><a href="https://www.productcompass.pm/p/claude-cowork-guide">Claude Cowork Guide for PMs</a></strong> &#8212; the desktop agent that works with your files, apps, and connectors</p></li><li><p><strong><a href="https://www.productcompass.pm/p/claude-code-guide">Claude Code: The Complete PM Guide</a></strong> &#8212; the CLI/IDE agent for technical work</p></li><li><p><strong><a href="https://www.productcompass.pm/p/self-improving-claude-system">The Self-Improving Claude AI System</a></strong> &#8212; how to build a knowledge system that compounds across sessions</p></li><li><p><strong><a href="https://www.productcompass.pm/p/claude-dispatch-guide">The Claude Dispatch Guide for PMs</a></strong> &#8212; the always-on persistent agent that runs while you&#8217;re away</p></li></ul><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h2>Timeline &amp; Everything You Might Have Missed</h2><h3>Feb 3 &#8211; Feb 9</h3><p><strong>CC Session Sharing</strong>: Share Claude Code sessions with teammates for collaborative debugging and pair programming.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/lydiahallie/status/2018740156359229883&quot;,&quot;full_text&quot;:&quot;Claude Code now supports session sharing! \n\nYou can share your full conversation with team members, or anyone with the link\n\nAvailable on web, desktop, and the mobile app &quot;,&quot;username&quot;:&quot;lydiahallie&quot;,&quot;name&quot;:&quot;Lydia Hallie &#10024;&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1994238936345137154/exEBW2UI_normal.jpg&quot;,&quot;date&quot;:&quot;2026-02-03T17:35:34.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/upload/w_1028,c_limit,q_auto:best/l_twitter_play_button_rvaygk,w_88/jq7mnkejxradmzqcpcab&quot;,&quot;link_url&quot;:&quot;https://t.co/qW6hfEVQtm&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:100,&quot;retweet_count&quot;:157,&quot;like_count&quot;:2265,&quot;impression_count&quot;:286613,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2018739962842423296/vid/avc1/1396x720/jMPZlmxAtUn7popX.mp4&quot;,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>Cowork Slack MCP on Paid Plans</strong>: Access Slack messages, channels, and search directly from Cowork on all paid plans.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/lydiahallie/status/2019106724347801768&quot;,&quot;full_text&quot;:&quot;Claude Cowork now supports the Slack MCP on all paid plans!\n\nThe Slack connector is by far my favorite feature. I use it every morning to catch up on what I missed, highlight important messages, and draft replies for me to review before sending. Huge time saver. &quot;,&quot;username&quot;:&quot;lydiahallie&quot;,&quot;name&quot;:&quot;Lydia Hallie &#10024;&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1994238936345137154/exEBW2UI_normal.jpg&quot;,&quot;date&quot;:&quot;2026-02-04T17:52:10.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/upload/w_1028,c_limit,q_auto:best/l_twitter_play_button_rvaygk,w_88/k00setwkn8stosjnlage&quot;,&quot;link_url&quot;:&quot;https://t.co/nQsu9VLVAG&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:39,&quot;retweet_count&quot;:18,&quot;like_count&quot;:486,&quot;impression_count&quot;:198132,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2019106350639591424/vid/avc1/1170x720/48hivFLrX5Ay0QEG.mp4&quot;,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>Cowork GSuite Connectors</strong>: Connect Gmail, Google Calendar, and Google Drive to Cowork for cross-app workflows.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/felixrieseberg/status/2018845822591684739&quot;,&quot;full_text&quot;:&quot;New in Cowork: GSuite connectors, so you can have Claude work with your emails, calendar, and Google Drive.\n\nLet us know how Claude is helpful to you - and how it could be even better! &quot;,&quot;username&quot;:&quot;felixrieseberg&quot;,&quot;name&quot;:&quot;Felix Rieseberg&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1544558915819487233/qMrauBqx_normal.jpg&quot;,&quot;date&quot;:&quot;2026-02-04T00:35:27.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://pbs.substack.com/media/HARhjyDaAAAd-oN.jpg&quot;,&quot;link_url&quot;:&quot;https://t.co/JWv0W04Pvn&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:127,&quot;retweet_count&quot;:49,&quot;like_count&quot;:1234,&quot;impression_count&quot;:156037,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC /insights Command</strong>: Get AI-generated analysis of your codebase&#8217;s architecture, patterns, and dependencies.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/trq212/status/2019173731042750509&quot;,&quot;full_text&quot;:&quot;We've added a new command to Claude Code called /insights \n\nWhen you run it, Claude Code will read your message history from the past month. It'll summarize your projects, how you use Claude Code, and give suggestions on how to improve your workflow. &quot;,&quot;username&quot;:&quot;trq212&quot;,&quot;name&quot;:&quot;Thariq&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1976939058741039104/r3GgzqRh_normal.jpg&quot;,&quot;date&quot;:&quot;2026-02-04T22:18:26.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/upload/w_1028,c_limit,q_auto:best/l_twitter_play_button_rvaygk,w_88/rscbrddz43hvmsqrvc9h&quot;,&quot;link_url&quot;:&quot;https://t.co/xK7eN0qdB4&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:500,&quot;retweet_count&quot;:661,&quot;like_count&quot;:11602,&quot;impression_count&quot;:1214741,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2019173388062007297/vid/avc1/1280x720/NKHSOT4ysvH482Pf.mp4&quot;,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC Agent Teams</strong>: Spawn multiple Claude Code agents that work in parallel on different parts of a codebase.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/lydiahallie/status/2019469032844587505&quot;,&quot;full_text&quot;:&quot;Claude Code now supports agent teams (in research preview)\n\nInstead of a single agent working through a task sequentially, a lead agent can delegate to multiple teammates that work in parallel to research, debug, and build while coordinating with each other.\n\nTry it out today by &quot;,&quot;username&quot;:&quot;lydiahallie&quot;,&quot;name&quot;:&quot;Lydia Hallie &#10024;&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1994238936345137154/exEBW2UI_normal.jpg&quot;,&quot;date&quot;:&quot;2026-02-05T17:51:52.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/upload/w_1028,c_limit,q_auto:best/l_twitter_play_button_rvaygk,w_88/lq4phny4fliqx4pmw72w&quot;,&quot;link_url&quot;:&quot;https://t.co/vi7lUJDOTi&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:220,&quot;retweet_count&quot;:464,&quot;like_count&quot;:5038,&quot;impression_count&quot;:1415617,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2019467383505924096/vid/avc1/1378x720/6FUhtPRMwC8hEHrK.mp4&quot;,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC /debug Skill</strong>: Auto-diagnose failing tests and runtime errors with a dedicated debugging workflow.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/dickson_tsai/status/2019314348632555651&quot;,&quot;full_text&quot;:&quot;In Claude Code v2.1.30, we introduced /debug, a built-in skill for Claude to read your session's debug logs and troubleshoot your session. Great for chatting through issues like \&quot;/debug why didn't my hook trigger?\&quot; or \&quot;/debug why did my tool call fail?\&quot;\n\nHow did /debug come&quot;,&quot;username&quot;:&quot;dickson_tsai&quot;,&quot;name&quot;:&quot;Dickson Tsai&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1175648714427232256/f-UlO_6-_normal.jpg&quot;,&quot;date&quot;:&quot;2026-02-05T07:37:12.000Z&quot;,&quot;photos&quot;:[],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:28,&quot;retweet_count&quot;:25,&quot;like_count&quot;:342,&quot;impression_count&quot;:46268,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>Opus 4.6</strong>: New flagship model with improved reasoning, coding, and instruction-following across all Claude surfaces.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/claudeai/status/2019467372609040752&quot;,&quot;full_text&quot;:&quot;Introducing Claude Opus 4.6. Our smartest model got an upgrade. \n\nOpus 4.6 plans more carefully, sustains agentic tasks for longer, operates reliably in massive codebases, and catches its own mistakes.\n\nIt&#8217;s also our first Opus-class model with 1M token context in beta. &quot;,&quot;username&quot;:&quot;claudeai&quot;,&quot;name&quot;:&quot;Claude&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1950950107937185792/QOfEjFoJ_normal.jpg&quot;,&quot;date&quot;:&quot;2026-02-05T17:45:16.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/upload/w_1028,c_limit,q_auto:best/l_twitter_play_button_rvaygk,w_88/nali0yri1om2i4fkely1&quot;,&quot;link_url&quot;:&quot;https://t.co/L1iQyRgT9x&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:1709,&quot;retweet_count&quot;:4806,&quot;like_count&quot;:39569,&quot;impression_count&quot;:10507965,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2019461071061622784/vid/avc1/1280x720/ImG2Zz8hTcq8KhPk.mp4&quot;,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC /rewind</strong>: Press ESC twice to summarize and compress your conversation context instead of losing it.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/trq212/status/2019845028512952351&quot;,&quot;full_text&quot;:&quot;Now in Claude Code: when you rewind a conversation using /rewind or hitting ESC twice, Claude can summarize the part of the conversation that was rewound.\n \nUse this to explore different paths and take the learnings \&quot;back in time\&quot;. &quot;,&quot;username&quot;:&quot;trq212&quot;,&quot;name&quot;:&quot;Thariq&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1976939058741039104/r3GgzqRh_normal.jpg&quot;,&quot;date&quot;:&quot;2026-02-06T18:45:56.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/upload/w_1028,c_limit,q_auto:best/l_twitter_play_button_rvaygk,w_88/wq0opkfhg1qlxqyhu50o&quot;,&quot;link_url&quot;:&quot;https://t.co/yJgeEspjwU&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:98,&quot;retweet_count&quot;:86,&quot;like_count&quot;:1370,&quot;impression_count&quot;:298361,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2019844927220510720/vid/avc1/1280x720/6qszk0c_L3LrmuKw.mp4&quot;,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC Fast Mode</strong>: Optimized response mode that trades depth for speed on routine coding tasks.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/claudeai/status/2020207323525050797&quot;,&quot;full_text&quot;:&quot;Fast mode is more expensive to run. It&#8217;s for urgent, high-stakes projects, combining impressive speed with Opus-level intelligence.\n\nRead more: &quot;,&quot;username&quot;:&quot;claudeai&quot;,&quot;name&quot;:&quot;Claude&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1950950107937185792/QOfEjFoJ_normal.jpg&quot;,&quot;date&quot;:&quot;2026-02-07T18:45:34.000Z&quot;,&quot;photos&quot;:[],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:42,&quot;retweet_count&quot;:65,&quot;like_count&quot;:1631,&quot;impression_count&quot;:792371,&quot;expanded_url&quot;:{&quot;url&quot;:&quot;https://code.claude.com/docs/en/fast-mode&quot;,&quot;title&quot;:&quot;Speed up responses with fast mode - Claude Code Docs&quot;,&quot;description&quot;:&quot;Get faster Opus 4.6 responses in Claude Code by toggling fast mode.&quot;,&quot;domain&quot;:&quot;code.claude.com&quot;,&quot;image&quot;:&quot;https://pbs.substack.com/news_img/2032078984050040832/ESEeQnqD?format=jpg&amp;name=orig&quot;},&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>Fast Opus 4.6</strong>: Early preview of Opus 4.6 running 2.5x faster than the standard version.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/claudeai/status/2020207322124132504&quot;,&quot;full_text&quot;:&quot;Our teams have been building with a 2.5x-faster version of Claude Opus 4.6.\n\nWe&#8217;re now making it available as an early experiment via Claude Code and our API.&quot;,&quot;username&quot;:&quot;claudeai&quot;,&quot;name&quot;:&quot;Claude&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1950950107937185792/QOfEjFoJ_normal.jpg&quot;,&quot;date&quot;:&quot;2026-02-07T18:45:33.000Z&quot;,&quot;photos&quot;:[],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:814,&quot;retweet_count&quot;:760,&quot;like_count&quot;:14579,&quot;impression_count&quot;:6453339,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><div><hr></div><h3>Feb 10 &#8211; Feb 16</h3><p><strong>Cowork for Windows</strong>: Cowork desktop app now available on Windows alongside the existing Mac version.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/claudeai/status/2021336313979625910&quot;,&quot;full_text&quot;:&quot;Cowork is now available on Windows.\n\nWe&#8217;re bringing full feature parity with MacOS: file access, multi-step task execution, plugins, and MCP connectors. &quot;,&quot;username&quot;:&quot;claudeai&quot;,&quot;name&quot;:&quot;Claude&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1950950107937185792/QOfEjFoJ_normal.jpg&quot;,&quot;date&quot;:&quot;2026-02-10T21:31:46.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/upload/w_1028,c_limit,q_auto:best/l_twitter_play_button_rvaygk,w_88/dshzrhhbkrot4tp5cqox&quot;,&quot;link_url&quot;:&quot;https://t.co/329DqJz5q5&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:522,&quot;retweet_count&quot;:1061,&quot;like_count&quot;:10456,&quot;impression_count&quot;:2775527,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2021334987098947588/vid/avc1/1280x720/A5yqJGmwKYxNH5j4.mp4&quot;,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC --dangerously-skip-permissions</strong>: Run Claude Code with auto-approved tool use for fully autonomous, unattended workflows.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/lydiahallie/status/2021012074160324633&quot;,&quot;full_text&quot;:&quot;Claude Code Desktop now supports --dangerously-skip-permissions!\n\nThis skips all permission prompts so Claude can operate fully autonomously. Great for workflows in a trusted environment where you want no interruptions, no approval prompts, just uninterrupted work.\n\nBut as the &quot;,&quot;username&quot;:&quot;lydiahallie&quot;,&quot;name&quot;:&quot;Lydia Hallie &#10024;&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1994238936345137154/exEBW2UI_normal.jpg&quot;,&quot;date&quot;:&quot;2026-02-10T00:03:21.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/upload/w_1028,c_limit,q_auto:best/l_twitter_play_button_rvaygk,w_88/b6kt1f5inbyvaldb3bw9&quot;,&quot;link_url&quot;:&quot;https://t.co/VaBOqtyUTS&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:112,&quot;retweet_count&quot;:113,&quot;like_count&quot;:1384,&quot;impression_count&quot;:421842,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2021010974942298117/vid/avc1/1132x720/rsFhK3dWWu0kUjaj.mp4&quot;,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC Contribution Metrics</strong>: Track how much code Claude wrote versus you across your project&#8217;s history.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/trq212/status/2021278987541213331&quot;,&quot;full_text&quot;:&quot;We've launched Claude Code contribution metrics to help you track PRs and lines of code contributed with the help of Claude Code. &quot;,&quot;username&quot;:&quot;trq212&quot;,&quot;name&quot;:&quot;Thariq&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1976939058741039104/r3GgzqRh_normal.jpg&quot;,&quot;date&quot;:&quot;2026-02-10T17:43:58.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/upload/w_1028,c_limit,q_auto:best/l_twitter_play_button_rvaygk,w_88/grfopcmsrpilioiyqibu&quot;,&quot;link_url&quot;:&quot;https://t.co/5U57AbkYBm&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:68,&quot;retweet_count&quot;:49,&quot;like_count&quot;:911,&quot;impression_count&quot;:406595,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2021278751770988544/vid/avc1/1280x720/Q5M_xCWQhHdJOJoJ.mp4&quot;,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>Free Plan Expansion</strong>: Free users get file uploads, connectors, and skills in Cowork.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/claudeai/status/2021630343372259759&quot;,&quot;full_text&quot;:&quot;We're bringing some of Claude&#8217;s most-used features to the free plan.\n\nFile creation, connectors, and skills are all now available without a subscription. &quot;,&quot;username&quot;:&quot;claudeai&quot;,&quot;name&quot;:&quot;Claude&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1950950107937185792/QOfEjFoJ_normal.jpg&quot;,&quot;date&quot;:&quot;2026-02-11T17:00:08.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://pbs.substack.com/media/HA5FCvCbsAUbGgY.jpg&quot;,&quot;link_url&quot;:&quot;https://t.co/6EjrwLTWVQ&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:388,&quot;retweet_count&quot;:691,&quot;like_count&quot;:8555,&quot;impression_count&quot;:633320,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>Cowork Folder Instructions</strong>: Drop a CLAUDE.md file into any folder to give Cowork persistent, project-specific context.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/felixrieseberg/status/2021631360440635443&quot;,&quot;full_text&quot;:&quot;New in Cowork: Folder instructions! Claude Code users already know this as \&quot;<a class=\&quot;tweet-url\&quot; href=\&quot;http://Claude.md\&quot;>Claude.md</a>\&quot; files.\n\nUse instructions to guide Claude the same way you would a colleague. In plain language, write down what's important - and Claude will make sure to follow it. &quot;,&quot;username&quot;:&quot;felixrieseberg&quot;,&quot;name&quot;:&quot;Felix Rieseberg&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1544558915819487233/qMrauBqx_normal.jpg&quot;,&quot;date&quot;:&quot;2026-02-11T17:04:11.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/upload/w_1028,c_limit,q_auto:best/l_twitter_play_button_rvaygk,w_88/ckehaw35hi03t07wl0tz&quot;,&quot;link_url&quot;:&quot;https://t.co/BqjdDJQOou&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:39,&quot;retweet_count&quot;:42,&quot;like_count&quot;:727,&quot;impression_count&quot;:87744,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2021631203871535109/vid/avc1/996x720/Sk0YJInwxl85Sqxn.mp4&quot;,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC Slack App (Plan Mode)</strong>: Use Claude Code&#8217;s plan mode directly from Slack to scope technical work before executing.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/bcherny/status/2021718924430389424&quot;,&quot;full_text&quot;:&quot;Claude Code on desktop now supports local plugins\n\nInstall custom slash commands, skills, and MCP servers from the marketplace. They sync automatically across desktop and CLI! &quot;,&quot;username&quot;:&quot;lydiahallie&quot;,&quot;name&quot;:&quot;Lydia Hallie &#10024;&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1994238936345137154/exEBW2UI_normal.jpg&quot;,&quot;date&quot;:&quot;2026-02-11T22:52:07.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/upload/w_1028,c_limit,q_auto:best/l_twitter_play_button_rvaygk,w_88/zw7rkeaz3g34kmgj30jc&quot;,&quot;link_url&quot;:&quot;https://t.co/EErN7knKWC&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:61,&quot;retweet_count&quot;:70,&quot;like_count&quot;:1020,&quot;impression_count&quot;:116613,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2021718131740434432/vid/avc1/1124x720/CoNyK-RWpt-XRuGl.mp4&quot;,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC Desktop Local Plugins</strong>: Install and run local MCP-based plugins on the Claude Code desktop app.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/lydiahallie/status/2021718924430389424&quot;,&quot;full_text&quot;:&quot;Claude Code on desktop now supports local plugins\n\nInstall custom slash commands, skills, and MCP servers from the marketplace. They sync automatically across desktop and CLI! &quot;,&quot;username&quot;:&quot;lydiahallie&quot;,&quot;name&quot;:&quot;Lydia Hallie &#10024;&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1994238936345137154/exEBW2UI_normal.jpg&quot;,&quot;date&quot;:&quot;2026-02-11T22:52:07.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/upload/w_1028,c_limit,q_auto:best/l_twitter_play_button_rvaygk,w_88/b85e8byoyjmdu6ragwna&quot;,&quot;link_url&quot;:&quot;https://t.co/EErN7knKWC&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:61,&quot;retweet_count&quot;:70,&quot;like_count&quot;:1020,&quot;impression_count&quot;:116613,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2021718131740434432/vid/avc1/1124x720/CoNyK-RWpt-XRuGl.mp4&quot;,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC Multi-Repo</strong>: Work across multiple repositories in a single Claude Code web session.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/trq212/status/2022064852995649620&quot;,&quot;full_text&quot;:&quot;We've rolled out several updates to Claude Code on the web to make it a more powerful daily driver including multi-repo sessions, better diff &amp;amp; git status visualization and slash commands. &quot;,&quot;username&quot;:&quot;trq212&quot;,&quot;name&quot;:&quot;Thariq&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1976939058741039104/r3GgzqRh_normal.jpg&quot;,&quot;date&quot;:&quot;2026-02-12T21:46:43.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/upload/w_1028,c_limit,q_auto:best/l_twitter_play_button_rvaygk,w_88/nhwomfx02hblgr0kraey&quot;,&quot;link_url&quot;:&quot;https://t.co/gUbOZ36jzv&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:70,&quot;retweet_count&quot;:50,&quot;like_count&quot;:948,&quot;impression_count&quot;:196216,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2022064280737296385/vid/avc1/1280x720/vbCg3zUQWqEgCqF0.mp4&quot;,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC SSH Support</strong>: Connect the Claude Code desktop app to remote development machines over SSH.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/amorriscode/status/2022442179789300064&quot;,&quot;full_text&quot;:&quot;SSH support is now available for Claude Code on desktop\n\nConnect to your remote machines and let Claude cook, TMUX optional. &quot;,&quot;username&quot;:&quot;amorriscode&quot;,&quot;name&quot;:&quot;Anthony Morris &#12484;&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/2006926826405556224/q_n_igbS_normal.png&quot;,&quot;date&quot;:&quot;2026-02-13T22:46:05.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/upload/w_1028,c_limit,q_auto:best/l_twitter_play_button_rvaygk,w_88/aa2qjzclvatzqkdj1658&quot;,&quot;link_url&quot;:&quot;https://t.co/sVtMSROjRu&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:347,&quot;retweet_count&quot;:323,&quot;like_count&quot;:4441,&quot;impression_count&quot;:1636889,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2022441961194737664/vid/avc1/948x720/9KurqAvh1aFa1Qwt.mp4&quot;,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><div><hr></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h3>Feb 17 &#8211; Feb 23</h3><p><strong>Sonnet 4.6</strong>: New mid-tier model balancing speed and quality, available across all Claude surfaces.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/claudeai/status/2023817132581208353&quot;,&quot;full_text&quot;:&quot;This is Claude Sonnet 4.6: our most capable Sonnet model yet.\n\nIt&#8217;s a full upgrade across coding, computer use, long-context reasoning, agent planning, knowledge work, and design.\n\nIt also features a 1M token context window in beta. &quot;,&quot;username&quot;:&quot;claudeai&quot;,&quot;name&quot;:&quot;Claude&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1950950107937185792/QOfEjFoJ_normal.jpg&quot;,&quot;date&quot;:&quot;2026-02-17T17:49:39.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/upload/w_1028,c_limit,q_auto:best/l_twitter_play_button_rvaygk,w_88/vdmv1k59oytew6g8ezv9&quot;,&quot;link_url&quot;:&quot;https://t.co/TDId3XUSRs&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:1097,&quot;retweet_count&quot;:2539,&quot;like_count&quot;:22326,&quot;impression_count&quot;:7536692,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2023814057418219520/vid/avc1/1280x720/QCtQ-XsWjXbbumd3.mp4&quot;,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC Sonnet 4.6 Support</strong>: Sonnet 4.6 available as a selectable model option in Claude Code with early benchmark results.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/claudeai/status/2023817147303292948&quot;,&quot;full_text&quot;:&quot;Claude Sonnet 4.6 is available now on all plans, Cowork, Claude Code, our API, and all major cloud platforms.\n\nWe've also upgraded our free tier to Sonnet 4.6 by default&#8212;it now includes file creation, connectors, skills, and compaction.\n\nSee more: &quot;,&quot;username&quot;:&quot;claudeai&quot;,&quot;name&quot;:&quot;Claude&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1950950107937185792/QOfEjFoJ_normal.jpg&quot;,&quot;date&quot;:&quot;2026-02-17T17:49:43.000Z&quot;,&quot;photos&quot;:[],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:50,&quot;retweet_count&quot;:84,&quot;like_count&quot;:1353,&quot;impression_count&quot;:213903,&quot;expanded_url&quot;:{&quot;url&quot;:&quot;http://anthropic.com/news/claude-sonnet-4-6&quot;,&quot;title&quot;:&quot;Introducing Sonnet 4.6&quot;,&quot;description&quot;:&quot;Claude Sonnet 4.6 is a full upgrade of the model&#8217;s skills across coding, computer use, long-reasoning, agent planning, knowledge work, and design.&quot;,&quot;domain&quot;:&quot;anthropic.com&quot;,&quot;image&quot;:&quot;https://pbs.substack.com/news_img/2034813021697064960/xRyjiQsx?format=jpg&amp;name=orig&quot;},&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC Figma MCP</strong>: Push Claude Code outputs directly into Figma for design-development handoff.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/claudeai/status/2024148286844649887&quot;,&quot;full_text&quot;:&quot;You can now push what you&#8217;re building in Claude Code directly into Figma.\n\nWith the latest updates to the Figma MCP server, build a working prototype in code, then send it to a Figma canvas to explore multiple versions. &quot;,&quot;username&quot;:&quot;claudeai&quot;,&quot;name&quot;:&quot;Claude&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1950950107937185792/QOfEjFoJ_normal.jpg&quot;,&quot;date&quot;:&quot;2026-02-18T15:45:33.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/upload/w_1028,c_limit,q_auto:best/l_twitter_play_button_rvaygk,w_88/bojo1r5zqd2uxj0xb8am&quot;,&quot;link_url&quot;:&quot;https://t.co/yW9XllB7aJ&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:525,&quot;retweet_count&quot;:1464,&quot;like_count&quot;:16761,&quot;impression_count&quot;:4267713,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2024146563333758976/vid/avc1/1280x720/6kSJJ6EWGSWxjGpM.mp4&quot;,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>Claude in PowerPoint</strong>: Create and edit PowerPoint slides directly within the Claude interface on Pro plans.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/claudeai/status/2024550844998570324&quot;,&quot;full_text&quot;:&quot;Claude in PowerPoint is now available on the Pro plan. \n\nIt also now supports connectors, bringing context from your daily tools directly into your slides.\n\nTry it here: <a class=\&quot;tweet-url\&quot; href=\&quot;https://claude.com/claude-in-powerpoint\&quot;>claude.com/claude-in-powe&#8230;</a> &quot;,&quot;username&quot;:&quot;claudeai&quot;,&quot;name&quot;:&quot;Claude&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1950950107937185792/QOfEjFoJ_normal.jpg&quot;,&quot;date&quot;:&quot;2026-02-19T18:25:10.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://pbs.substack.com/media/HBig0yyaYAAXVeD.jpg&quot;,&quot;link_url&quot;:&quot;https://t.co/ZHXgdnbCNG&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:282,&quot;retweet_count&quot;:841,&quot;like_count&quot;:9659,&quot;impression_count&quot;:4205350,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC Security (Research Preview)</strong>: Automated security scanning that identifies vulnerabilities in your codebase before they ship.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/claudeai/status/2024907535145468326&quot;,&quot;full_text&quot;:&quot;Introducing Claude Code Security, now in limited research preview.\n\nIt scans codebases for vulnerabilities and suggests targeted software patches for human review, allowing teams to find and fix issues that traditional tools often miss.\n\nLearn more: <a class=\&quot;tweet-url\&quot; href=\&quot;https://www.anthropic.com/news/claude-code-security\&quot;>anthropic.com/news/claude-co&#8230;</a> &quot;,&quot;username&quot;:&quot;claudeai&quot;,&quot;name&quot;:&quot;Claude&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1950950107937185792/QOfEjFoJ_normal.jpg&quot;,&quot;date&quot;:&quot;2026-02-20T18:02:31.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/upload/w_1028,c_limit,q_auto:best/l_twitter_play_button_rvaygk,w_88/qhgoeo2czqs6r5jt0tjx&quot;,&quot;link_url&quot;:&quot;https://t.co/zw9NjpqFz9&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:1937,&quot;retweet_count&quot;:5781,&quot;like_count&quot;:49960,&quot;impression_count&quot;:26040125,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2024906267433861124/vid/avc1/1280x720/5DlQa2uvQUTQ2FzC.mp4&quot;,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC Desktop Preview Apps + CI/PRs</strong>: Preview running applications and handle CI/CD and pull request workflows from the desktop app.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/claudeai/status/2024937960572104707&quot;,&quot;full_text&quot;:&quot;Claude Code on desktop can now preview your running apps, review your code, and handle CI failures and PRs in the background.\n\nHere&#8217;s what's new: &quot;,&quot;username&quot;:&quot;claudeai&quot;,&quot;name&quot;:&quot;Claude&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1950950107937185792/QOfEjFoJ_normal.jpg&quot;,&quot;date&quot;:&quot;2026-02-20T20:03:25.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/upload/w_1028,c_limit,q_auto:best/l_twitter_play_button_rvaygk,w_88/zo1xsedii0bcgx4thfad&quot;,&quot;link_url&quot;:&quot;https://t.co/A2FdH045Tt&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:871,&quot;retweet_count&quot;:2485,&quot;like_count&quot;:27177,&quot;impression_count&quot;:9264716,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2024935522305765376/vid/avc1/1280x720/6Bu65epFmfkxwMRt.mp4&quot;,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC Worktrees</strong>: Built-in git worktree support so agents can work on parallel branches without switching context.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/noahzweben/status/2024676751188939056&quot;,&quot;full_text&quot;:&quot;claude --worktree --tmux: spin up an autonomous Claude on its own worktree, in its own terminal. Fire and forget. Come back to a PR. Or tmux attach to watch it cook (tmux optional if you just want trees). \n\nHuge kudos to Dalton who built this who doesn't have a twitter!\n&#127794;&#127795;&#127796;&quot;,&quot;username&quot;:&quot;noahzweben&quot;,&quot;name&quot;:&quot;Noah Zweben&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1983955803137814528/cbOrJWsw_normal.jpg&quot;,&quot;date&quot;:&quot;2026-02-20T02:45:28.000Z&quot;,&quot;photos&quot;:[],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:42,&quot;retweet_count&quot;:41,&quot;like_count&quot;:1110,&quot;impression_count&quot;:80642,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><div><hr></div><h3>Feb 24 &#8211; Mar 2</h3><p><strong>CC Remote Control</strong>: Control Claude Code sessions from your phone &#8212; review, approve, and guide agents on the go.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/noahzweben/status/2026371260805271615&quot;,&quot;full_text&quot;:&quot;Announcing a new Claude Code feature: Remote Control. It's rolling out now to Max users in research preview. Try it with /remote-control\n\nStart local sessions from the terminal, then continue them from your phone. Take a walk, see the sun, walk your dog without losing your flow. &quot;,&quot;username&quot;:&quot;noahzweben&quot;,&quot;name&quot;:&quot;Noah Zweben&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1983955803137814528/cbOrJWsw_normal.jpg&quot;,&quot;date&quot;:&quot;2026-02-24T18:58:51.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/upload/w_1028,c_limit,q_auto:best/l_twitter_play_button_rvaygk,w_88/yncsprlaafxsxbikivcc&quot;,&quot;link_url&quot;:&quot;https://t.co/43c4RJCiOS&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:1546,&quot;retweet_count&quot;:1287,&quot;like_count&quot;:16963,&quot;impression_count&quot;:4465839,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2026370115915362307/vid/avc1/1280x720/_zI4Wm7aeEDNbb4d.mp4&quot;,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>Enterprise Customize + Marketplaces</strong>: Enterprise admins can customize Claude behavior and create private plugin marketplaces for their org.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/claudeai/status/2026305186671608315&quot;,&quot;full_text&quot;:&quot;Introducing Cowork and plugin updates that help enterprises customize Claude for better collaboration with every team. &quot;,&quot;username&quot;:&quot;claudeai&quot;,&quot;name&quot;:&quot;Claude&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1950950107937185792/QOfEjFoJ_normal.jpg&quot;,&quot;date&quot;:&quot;2026-02-24T14:36:18.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/upload/w_1028,c_limit,q_auto:best/l_twitter_play_button_rvaygk,w_88/socjwpqoiwu8jobxbpyy&quot;,&quot;link_url&quot;:&quot;https://t.co/pRwJqPBRQj&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:936,&quot;retweet_count&quot;:2625,&quot;like_count&quot;:27394,&quot;impression_count&quot;:14499295,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2026299437111181313/vid/avc1/1280x720/Nm_H1HeuvSSToV9I.mp4&quot;,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>Cowork Scheduled Tasks</strong>: Schedule recurring Cowork tasks that execute automatically on a cadence you define.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/claudeai/status/2026720870631354429&quot;,&quot;full_text&quot;:&quot;New in Cowork: scheduled tasks.\n\nClaude can now complete recurring tasks at specific times automatically: a morning brief, weekly spreadsheet updates, Friday team presentations. &quot;,&quot;username&quot;:&quot;claudeai&quot;,&quot;name&quot;:&quot;Claude&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1950950107937185792/QOfEjFoJ_normal.jpg&quot;,&quot;date&quot;:&quot;2026-02-25T18:08:04.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/upload/w_1028,c_limit,q_auto:best/l_twitter_play_button_rvaygk,w_88/k9cuhqbeyhxrvzfmv0ev&quot;,&quot;link_url&quot;:&quot;https://t.co/7ucKZbAVip&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:991,&quot;retweet_count&quot;:1701,&quot;like_count&quot;:22382,&quot;impression_count&quot;:8191584,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2026717570380992512/vid/avc1/1280x720/j2mey8kGwr3_xrQe.mp4&quot;,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC Auto-Memory</strong>: Claude Code automatically remembers your preferences, codebase patterns, and project context across sessions.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/trq212/status/2027109375765356723&quot;,&quot;full_text&quot;:&quot;We've rolled out a new auto-memory feature.\n\nClaude now remembers what it learns across sessions &#8212; your project context, debugging patterns, preferred approaches &#8212; and recalls it later without you having to write anything down. &quot;,&quot;username&quot;:&quot;trq212&quot;,&quot;name&quot;:&quot;Thariq&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1976939058741039104/r3GgzqRh_normal.jpg&quot;,&quot;date&quot;:&quot;2026-02-26T19:51:51.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/upload/w_1028,c_limit,q_auto:best/l_twitter_play_button_rvaygk,w_88/ihncimayk3xytrw9kcox&quot;,&quot;link_url&quot;:&quot;https://t.co/c7PyGaukNQ&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:851,&quot;retweet_count&quot;:1073,&quot;like_count&quot;:15909,&quot;impression_count&quot;:3162655,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2027109158986870784/vid/avc1/1280x720/NX5ic94OijUys11S.mp4&quot;,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC Claude for Open Source</strong>: Free Claude Code access for qualifying open source project maintainers.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/lydiahallie/status/2027129030571634721&quot;,&quot;full_text&quot;:&quot;Excited to announce Claude for Open Source &#10084;&#65039;\n\nWe're giving 6 months of free Claude Max 20x to open source maintainers and core contributors.\n\nIf you maintain a popular project or contribute across open source, please apply!\n\n&quot;,&quot;username&quot;:&quot;lydiahallie&quot;,&quot;name&quot;:&quot;Lydia Hallie &#10024;&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1994238936345137154/exEBW2UI_normal.jpg&quot;,&quot;date&quot;:&quot;2026-02-26T21:09:57.000Z&quot;,&quot;photos&quot;:[],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:589,&quot;retweet_count&quot;:1409,&quot;like_count&quot;:12576,&quot;impression_count&quot;:1742481,&quot;expanded_url&quot;:{&quot;url&quot;:&quot;https://claude.com/contact-sales/claude-for-oss&quot;,&quot;title&quot;:&quot;Claude for Open Source | Claude by Anthropic&quot;,&quot;description&quot;:&quot;Apply to the Claude for Open Source program. Eligible OSS maintainers and contributors get Claude Max for 6 months on us.&quot;,&quot;domain&quot;:&quot;claude.com&quot;,&quot;image&quot;:&quot;https://pbs.substack.com/news_img/2035011561459486721/Cd5jnQb1?format=jpg&amp;name=orig&quot;},&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC /simplify + /batch</strong>: Refactor complex code into simpler patterns (/simplify) or run the same operation across many files at once (/batch).</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/bcherny/status/2027534984534544489&quot;,&quot;full_text&quot;:&quot;In the next version of Claude Code..\n\nWe're introducing two new Skills: /simplify and /batch. I have been using both daily, and am excited to share them with everyone.\n\nCombined, these kills automate much of the work it used to take to (1) shepherd a pull request to production &quot;,&quot;username&quot;:&quot;bcherny&quot;,&quot;name&quot;:&quot;Boris Cherny&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1902044548936953856/J2jeik0t_normal.jpg&quot;,&quot;date&quot;:&quot;2026-02-28T00:03:04.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://pbs.substack.com/media/HCMgWZ2bUAA2hq9.png&quot;,&quot;link_url&quot;:&quot;https://t.co/mztx6KbDh9&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:432,&quot;retweet_count&quot;:840,&quot;like_count&quot;:12917,&quot;impression_count&quot;:2511790,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC AskUserQuestion Snippets</strong>: Claude Code shows formatted markdown previews with code snippets when asking you clarifying questions.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/trq212/status/2027543858289250472&quot;,&quot;full_text&quot;:&quot;a few Friday afternoon ships to end the week:\n\nthe AskUserQuestion tool can now show markdown snippets to display diagrams, code examples, etc. &quot;,&quot;username&quot;:&quot;trq212&quot;,&quot;name&quot;:&quot;Thariq&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1976939058741039104/r3GgzqRh_normal.jpg&quot;,&quot;date&quot;:&quot;2026-02-28T00:38:20.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/upload/w_1028,c_limit,q_auto:best/l_twitter_play_button_rvaygk,w_88/q5qjllewn75qiqpeareu&quot;,&quot;link_url&quot;:&quot;https://t.co/pjiaYlVNdR&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:185,&quot;retweet_count&quot;:163,&quot;like_count&quot;:4605,&quot;impression_count&quot;:481506,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2027542757548691457/vid/avc1/720x720/LY8Eih4V5DDgY-4l.mp4&quot;,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>Memory on Free Plan</strong>: Persistent memory across conversations now available to all free-tier Claude users.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/claudeai/status/2028559427167834314&quot;,&quot;full_text&quot;:&quot;Memory is now available on the free plan.\n\nWe've also made it easier to import saved memories into Claude. \n\nYou can export them whenever you want. &quot;,&quot;username&quot;:&quot;claudeai&quot;,&quot;name&quot;:&quot;Claude&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1950950107937185792/QOfEjFoJ_normal.jpg&quot;,&quot;date&quot;:&quot;2026-03-02T19:53:50.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://pbs.substack.com/media/HCbjvTwaAAAkLtw.png&quot;,&quot;link_url&quot;:&quot;https://t.co/6994lxNjo2&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:1271,&quot;retweet_count&quot;:2691,&quot;like_count&quot;:38350,&quot;impression_count&quot;:10851082,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><div><hr></div><h3>Mar 3 &#8211; Mar 9</h3><p><strong>Voice Mode</strong>: Talk to Claude Code using push-to-talk voice input instead of typing commands.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/trq212/status/2028628570692890800&quot;,&quot;full_text&quot;:&quot;Voice mode is rolling out now in Claude Code. It&#8217;s live for ~5% of users today, and will be ramping through the coming weeks.\n\nYou'll see a note on the welcome screen once you have access. /voice to toggle it on! &quot;,&quot;username&quot;:&quot;trq212&quot;,&quot;name&quot;:&quot;Thariq&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1976939058741039104/r3GgzqRh_normal.jpg&quot;,&quot;date&quot;:&quot;2026-03-03T00:28:36.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/upload/w_1028,c_limit,q_auto:best/l_twitter_play_button_rvaygk,w_88/kmczg1grvfyryf2wxkmr&quot;,&quot;link_url&quot;:&quot;https://t.co/P7GQ6pEANy&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:1090,&quot;retweet_count&quot;:1345,&quot;like_count&quot;:17302,&quot;impression_count&quot;:3509065,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2028628068517183489/vid/avc1/720x720/6G7ZOBnwQUYbMWax.mp4&quot;,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC HTTP Hooks</strong>: Fire HTTP webhooks on Claude Code events &#8212; connect sessions to Slack, CI pipelines, or any external system.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/dickson_tsai/status/2029235808235078095&quot;,&quot;full_text&quot;:&quot;In Claude Code, we&#8217;ve recently launched HTTP hooks, easier to use and more secure than existing command hooks! You can build a web app (even on localhost) to view CC&#8217;s progress, manage its permissions, and more. Then, now that you have a server with your hooks processing logic,&quot;,&quot;username&quot;:&quot;dickson_tsai&quot;,&quot;name&quot;:&quot;Dickson Tsai&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1175648714427232256/f-UlO_6-_normal.jpg&quot;,&quot;date&quot;:&quot;2026-03-04T16:41:32.000Z&quot;,&quot;photos&quot;:[],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:81,&quot;retweet_count&quot;:187,&quot;like_count&quot;:2279,&quot;impression_count&quot;:391350,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC Local Scheduled Tasks</strong>: Schedule recurring tasks that run automatically on your machine while your computer is awake.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/trq212/status/2030019397335843288&quot;,&quot;full_text&quot;:&quot;Today we're launching local scheduled tasks in Claude Code desktop. \n\nCreate a schedule for tasks that you want to run regularly. They'll run as long as your computer is awake. &quot;,&quot;username&quot;:&quot;trq212&quot;,&quot;name&quot;:&quot;Thariq&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1976939058741039104/r3GgzqRh_normal.jpg&quot;,&quot;date&quot;:&quot;2026-03-06T20:35:14.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/upload/w_1028,c_limit,q_auto:best/l_twitter_play_button_rvaygk,w_88/uqamiurysado9f2tuayq&quot;,&quot;link_url&quot;:&quot;https://t.co/15AYd0NHqR&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:672,&quot;retweet_count&quot;:1025,&quot;like_count&quot;:13572,&quot;impression_count&quot;:3694847,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2030019113637269505/vid/avc1/720x720/NnP7W6RrOtN17az2.mp4&quot;,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>Enterprise Marketplace</strong>: Enterprise customers get a curated marketplace of approved plugins and integrations for their org.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/claudeai/status/2029966517497122886&quot;,&quot;full_text&quot;:&quot;Introducing the Claude Marketplace, a way for enterprises to simplify their procurement of AI tools.\n\nNow in limited preview. &quot;,&quot;username&quot;:&quot;claudeai&quot;,&quot;name&quot;:&quot;Claude&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1950950107937185792/QOfEjFoJ_normal.jpg&quot;,&quot;date&quot;:&quot;2026-03-06T17:05:07.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://pbs.substack.com/media/HCvfSyEb0AAsmKW.jpg&quot;,&quot;link_url&quot;:&quot;https://t.co/4dm4x6Y9O2&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:673,&quot;retweet_count&quot;:1303,&quot;like_count&quot;:19391,&quot;impression_count&quot;:5087829,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC /loop</strong>: Set Claude Code to continuously iterate on a task &#8212; building, testing, and fixing in a loop until your tests pass.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/bcherny/status/2030193932404150413&quot;,&quot;full_text&quot;:&quot;Released today: /loop\n\n/loop is a powerful new way to schedule recurring tasks, for up to 3 days at a time\n\neg. &#8220;/loop babysit all my PRs. Auto-fix build issues and when comments come in, use a worktree agent to fix them&#8221;\n\neg. &#8220;/loop every morning use the Slack MCP to give me a&quot;,&quot;username&quot;:&quot;bcherny&quot;,&quot;name&quot;:&quot;Boris Cherny&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1902044548936953856/J2jeik0t_normal.jpg&quot;,&quot;date&quot;:&quot;2026-03-07T08:08:47.000Z&quot;,&quot;photos&quot;:[],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:573,&quot;retweet_count&quot;:842,&quot;like_count&quot;:12886,&quot;impression_count&quot;:2113943,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC Auto Mode</strong>: Claude Code automatically selects the right execution approach without requiring manual mode switching.</p><p><strong>CC Code Review (Multi-Agent)</strong>: Multiple Claude agents analyze your pull request in parallel, each reviewing different aspects of the code.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/claudeai/status/2031088171262554195&quot;,&quot;full_text&quot;:&quot;Introducing Code Review, a new feature for Claude Code.\n\nWhen a PR opens, Claude dispatches a team of agents to hunt for bugs. &quot;,&quot;username&quot;:&quot;claudeai&quot;,&quot;name&quot;:&quot;Claude&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1950950107937185792/QOfEjFoJ_normal.jpg&quot;,&quot;date&quot;:&quot;2026-03-09T19:22:10.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/upload/w_1028,c_limit,q_auto:best/l_twitter_play_button_rvaygk,w_88/eu5i3dz9bem0eej11rm6&quot;,&quot;link_url&quot;:&quot;https://t.co/AL2J4efxPw&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:2149,&quot;retweet_count&quot;:5200,&quot;like_count&quot;:62994,&quot;impression_count&quot;:23292659,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2031087443961851904/vid/avc1/1280x720/aXesjAR-puqqyN6r.mp4&quot;,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><div><hr></div><h3>Mar 10 &#8211; Mar 16</h3><p><strong>CC /btw</strong>: Send Claude a side note mid-task without interrupting its current work &#8212; corrections, context, or new info.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/trq212/status/2031506296697131352&quot;,&quot;full_text&quot;:&quot;We just added /btw to Claude Code! \n\nUse it to have side chain conversations while Claude is working. &quot;,&quot;username&quot;:&quot;trq212&quot;,&quot;name&quot;:&quot;Thariq&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1976939058741039104/r3GgzqRh_normal.jpg&quot;,&quot;date&quot;:&quot;2026-03-10T23:03:39.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/upload/w_1028,c_limit,q_auto:best/l_twitter_play_button_rvaygk,w_88/utcjxxdtvecuibyik6ny&quot;,&quot;link_url&quot;:&quot;https://t.co/hjO3YqvrPr&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:1187,&quot;retweet_count&quot;:1597,&quot;like_count&quot;:25967,&quot;impression_count&quot;:2738896,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2031506219714940928/vid/avc1/720x720/qn3PmH5a1dWdlNSV.mp4&quot;,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC /effort</strong>: Control how deeply Claude thinks &#8212; from quick one-shot responses to extended multi-step reasoning.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/trq212/status/2031506296697131352&quot;,&quot;full_text&quot;:&quot;We just added /btw to Claude Code! \n\nUse it to have side chain conversations while Claude is working. &quot;,&quot;username&quot;:&quot;trq212&quot;,&quot;name&quot;:&quot;Thariq&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1976939058741039104/r3GgzqRh_normal.jpg&quot;,&quot;date&quot;:&quot;2026-03-10T23:03:39.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/upload/w_1028,c_limit,q_auto:best/l_twitter_play_button_rvaygk,w_88/utcjxxdtvecuibyik6ny&quot;,&quot;link_url&quot;:&quot;https://t.co/hjO3YqvrPr&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:1187,&quot;retweet_count&quot;:1597,&quot;like_count&quot;:25967,&quot;impression_count&quot;:2738896,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2031506219714940928/vid/avc1/720x720/qn3PmH5a1dWdlNSV.mp4&quot;,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>Cowork Excel + PowerPoint Sync</strong>: Edit Excel spreadsheets and PowerPoint decks in Cowork with cross-file synchronization.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/claudeai/status/2031790754637717772&quot;,&quot;full_text&quot;:&quot;Claude for Excel and Claude for PowerPoint now sync together seamlessly.\n\nWhen you&#8217;ve got more than one file open, Claude shares the full context of your conversation between them.\n\nPull data from spreadsheets, build out tables, and update a deck &#8212; without re-explaining a step. &quot;,&quot;username&quot;:&quot;claudeai&quot;,&quot;name&quot;:&quot;Claude&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1950950107937185792/QOfEjFoJ_normal.jpg&quot;,&quot;date&quot;:&quot;2026-03-11T17:53:59.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/upload/w_1028,c_limit,q_auto:best/l_twitter_play_button_rvaygk,w_88/z4ed3mnrjcql8ahfgivh&quot;,&quot;link_url&quot;:&quot;https://t.co/mY8jrHj6Di&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:712,&quot;retweet_count&quot;:2596,&quot;like_count&quot;:29273,&quot;impression_count&quot;:12374437,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2031775091202355200/vid/avc1/1280x720/RFkYnS7mKAOJs1fy.mp4&quot;,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>Interactive Charts</strong>: Claude can now build interactive charts, diagrams, and visualizations directly in chat. HTML-based, editable, available on all plans.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/claudeai/status/2032124273587077133&quot;,&quot;full_text&quot;:&quot;Claude can now build interactive charts and diagrams, directly in the chat.\n\nAvailable today in beta on all plans, including free.\n\nTry it out: <a class=\&quot;tweet-url\&quot; href=\&quot;http://claude.ai\&quot;>claude.ai</a> &quot;,&quot;username&quot;:&quot;claudeai&quot;,&quot;name&quot;:&quot;Claude&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1950950107937185792/QOfEjFoJ_normal.jpg&quot;,&quot;date&quot;:&quot;2026-03-12T15:59:16.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/upload/w_1028,c_limit,q_auto:best/l_twitter_play_button_rvaygk,w_88/uyvwjdaswmaguyh05zyh&quot;,&quot;link_url&quot;:&quot;https://t.co/WXRrD4VkAt&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:1569,&quot;retweet_count&quot;:3478,&quot;like_count&quot;:42014,&quot;impression_count&quot;:10857781,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2032121339667234817/vid/avc1/1280x720/SE4OjAfae7LVB4XE.mp4&quot;,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>Rich Text Output</strong>: Claude no longer defaults to plain text &#8212; responses now include interactive charts, formatted tables, and rich media.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/feldman/status/2032137366358401484&quot;,&quot;full_text&quot;:&quot;Starting today, Claude no longer defaults to text. Claude is learning to choose the best medium for each response &#8212; based on the task, the data, and what's most useful for the person. Give it a try!&quot;,&quot;username&quot;:&quot;feldman&quot;,&quot;name&quot;:&quot;Adam Feldman&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1195050484400181248/fu6aETqW_normal.jpg&quot;,&quot;date&quot;:&quot;2026-03-12T16:51:18.000Z&quot;,&quot;photos&quot;:[],&quot;quoted_tweet&quot;:{&quot;full_text&quot;:&quot;Claude can now build interactive charts and diagrams, directly in the chat.\n\nAvailable today in beta on all plans, including free.\n\nTry it out: https://t.co/tHPAZRgQkn&quot;,&quot;username&quot;:&quot;claudeai&quot;,&quot;name&quot;:&quot;Claude&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1950950107937185792/QOfEjFoJ_normal.jpg&quot;},&quot;reply_count&quot;:24,&quot;retweet_count&quot;:38,&quot;like_count&quot;:834,&quot;impression_count&quot;:380451,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC Setup Scripts</strong>: Add a setup script that runs automatically when Claude Code initializes in your project directory.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/OmidMogasemi/status/2032239184401088725&quot;,&quot;full_text&quot;:&quot;You can now add a setup script in Claude Code on the web &amp;amp; desktop! \n\nUse these to automate setup before Claude Code launches on a cloud environment. It&#8217;s particularly useful for installing dependencies, settings, configs, etc. &quot;,&quot;username&quot;:&quot;OmidMogasemi&quot;,&quot;name&quot;:&quot;Omid Mogasemi&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1770587470134185984/1m34mw_C_normal.jpg&quot;,&quot;date&quot;:&quot;2026-03-12T23:35:53.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://pbs.substack.com/media/HDP2dmlbQAAjsri.jpg&quot;,&quot;link_url&quot;:&quot;https://t.co/TIbiCF8RbY&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:15,&quot;retweet_count&quot;:11,&quot;like_count&quot;:132,&quot;impression_count&quot;:75647,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>Voice Mode on Desktop + Cowork</strong>: Push-to-talk voice input now available on the Claude desktop app and in Cowork sessions.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/amorriscode/status/2032241734886047993&quot;,&quot;full_text&quot;:&quot;sometimes you need somebody to talk to\n\nwe just rolled out voice mode for Claude Code on desktop and Cowork &#128226; &quot;,&quot;username&quot;:&quot;amorriscode&quot;,&quot;name&quot;:&quot;Anthony Morris &#12484;&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/2006926826405556224/q_n_igbS_normal.png&quot;,&quot;date&quot;:&quot;2026-03-12T23:46:01.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/upload/w_1028,c_limit,q_auto:best/l_twitter_play_button_rvaygk,w_88/bzpjoi4c8p6yojboee23&quot;,&quot;link_url&quot;:&quot;https://t.co/ibHsDtPobs&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:79,&quot;retweet_count&quot;:35,&quot;like_count&quot;:551,&quot;impression_count&quot;:120107,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2032241081023414275/vid/avc1/1204x720/TqBaNjKowDA33vnr.mp4&quot;,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>1M Context Window GA</strong>: One-million-token context window generally available across all paid Claude plans.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/claudeai/status/2032509548297343196&quot;,&quot;full_text&quot;:&quot;1 million context window: Now generally available for Claude Opus 4.6 and Claude Sonnet 4.6. &quot;,&quot;username&quot;:&quot;claudeai&quot;,&quot;name&quot;:&quot;Claude&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1950950107937185792/QOfEjFoJ_normal.jpg&quot;,&quot;date&quot;:&quot;2026-03-13T17:30:13.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://pbs.substack.com/media/HDTovvJaMAI8jWP.png&quot;,&quot;link_url&quot;:&quot;https://t.co/jreruGukcm&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:1202,&quot;retweet_count&quot;:2025,&quot;like_count&quot;:25175,&quot;impression_count&quot;:5566961,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC Opus 1M Default</strong>: Opus 4.6 with 1M context is now the default model in Claude Code.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/bcherny/status/2032514807388123255&quot;,&quot;full_text&quot;:&quot;&#127873; Happy Friday - Opus 4.6 1M is now the default Opus model for Claude Code users on Max, Team, and Enterprise plans.\n\nPro and Sonnet users can opt in with /extra-usage.&quot;,&quot;username&quot;:&quot;bcherny&quot;,&quot;name&quot;:&quot;Boris Cherny&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1902044548936953856/J2jeik0t_normal.jpg&quot;,&quot;date&quot;:&quot;2026-03-13T17:51:07.000Z&quot;,&quot;photos&quot;:[],&quot;quoted_tweet&quot;:{&quot;full_text&quot;:&quot;1 million context window: Now generally available for Claude Opus 4.6 and Claude Sonnet 4.6.&quot;,&quot;username&quot;:&quot;claudeai&quot;,&quot;name&quot;:&quot;Claude&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1950950107937185792/QOfEjFoJ_normal.jpg&quot;},&quot;reply_count&quot;:291,&quot;retweet_count&quot;:251,&quot;like_count&quot;:4556,&quot;impression_count&quot;:361564,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC Session Spawning</strong>: Spawn new local Claude Code sessions directly from the mobile Remote Control app.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/noahzweben/status/2032533699116355819&quot;,&quot;full_text&quot;:&quot;Remote Control - Session Spawning:\nRun claude remote-control and then spawn a NEW local session in the mobile app.\n\n* Out to Max, Team, and Enterprise (&amp;gt;=2.1.74)\n*Have GH set up on mobile (relaxing soon)\n* Working on speeding up session start-time &quot;,&quot;username&quot;:&quot;noahzweben&quot;,&quot;name&quot;:&quot;Noah Zweben&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1983955803137814528/cbOrJWsw_normal.jpg&quot;,&quot;date&quot;:&quot;2026-03-13T19:06:11.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/upload/w_1028,c_limit,q_auto:best/l_twitter_play_button_rvaygk,w_88/yivffqvp3s9gblprtzav&quot;,&quot;link_url&quot;:&quot;https://t.co/tFEe9hcZL6&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:124,&quot;retweet_count&quot;:119,&quot;like_count&quot;:1579,&quot;impression_count&quot;:729450,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2032532538384609281/vid/avc1/440x960/Ky8ax6eFHmJiGgbx.mp4&quot;,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC /color</strong>: Customize your Claude Code terminal with color themes and visual preferences.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/trq212/status/2032632602629386348&quot;,&quot;full_text&quot;:&quot;Other new things:\n- use claude --name &amp;lt;NAME&amp;gt; to name your session on start\n- after plan mode, claude will auto name your session\n- use /color to change the color of the prompt input\n- there's a postcompact hook \n- your session will get automatically named after plan mode if it&quot;,&quot;username&quot;:&quot;trq212&quot;,&quot;name&quot;:&quot;Thariq&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1976939058741039104/r3GgzqRh_normal.jpg&quot;,&quot;date&quot;:&quot;2026-03-14T01:39:11.000Z&quot;,&quot;photos&quot;:[],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:21,&quot;retweet_count&quot;:6,&quot;like_count&quot;:269,&quot;impression_count&quot;:22016,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC Review Manual Trigger</strong>: Type @claude review in any PR comment to trigger a multi-agent code review on demand.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/trq212/status/2032482315046474116&quot;,&quot;full_text&quot;:&quot;You can now configure Code Review to run manually on demand by typing `<span class=\&quot;tweet-fake-link\&quot;>@Claude</span> review` in your Github PR or comments. \n\nThis gives you more control to use Code Review on select PRs where the review would be useful. &quot;,&quot;username&quot;:&quot;trq212&quot;,&quot;name&quot;:&quot;Thariq&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1976939058741039104/r3GgzqRh_normal.jpg&quot;,&quot;date&quot;:&quot;2026-03-13T15:42:00.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://pbs.substack.com/media/HDTTza2bAAAPx5D.png&quot;,&quot;link_url&quot;:&quot;https://t.co/niM4gczCIn&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:46,&quot;retweet_count&quot;:13,&quot;like_count&quot;:308,&quot;impression_count&quot;:26831,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC MCP Elicitation</strong>: MCP servers can now ask Claude Code for additional context during tool execution instead of failing silently.</p><p><strong>2x Usage</strong>: Double usage limits during off-peak hours for all paid plan subscribers.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/claudeai/status/2032911277497135523&quot;,&quot;full_text&quot;:&quot;How it works:\n- 2x usage on weekdays outside 5&#8211;11am PT / 12&#8211;6pm GMT\n- 2x usage all day on weekends\n- Automatic, nothing to enable&quot;,&quot;username&quot;:&quot;claudeai&quot;,&quot;name&quot;:&quot;Claude&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1950950107937185792/QOfEjFoJ_normal.jpg&quot;,&quot;date&quot;:&quot;2026-03-14T20:06:32.000Z&quot;,&quot;photos&quot;:[],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:368,&quot;retweet_count&quot;:413,&quot;like_count&quot;:8685,&quot;impression_count&quot;:1650590,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><div><hr></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h3>Mar 17 &#8211; Mar 23</h3><p><strong>Cowork Dispatch</strong>: A persistent, always-on Claude conversation that runs on your computer &#8212; continues working even when you close the app.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/felixrieseberg/status/2034005731457044577&quot;,&quot;full_text&quot;:&quot;We're shipping a new feature in Claude Cowork as a research preview that I'm excited about: Dispatch!\n\nOne persistent conversation with Claude that runs on your computer. Message it from your phone. Come back to finished work. \n\nTo try it out, download Claude Desktop, then pair &quot;,&quot;username&quot;:&quot;felixrieseberg&quot;,&quot;name&quot;:&quot;Felix Rieseberg&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1544558915819487233/qMrauBqx_normal.jpg&quot;,&quot;date&quot;:&quot;2026-03-17T20:35:31.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/upload/w_1028,c_limit,q_auto:best/l_twitter_play_button_rvaygk,w_88/lnw4ckcij93rcjr61jnu&quot;,&quot;link_url&quot;:&quot;https://t.co/r6OH46Ll89&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:962,&quot;retweet_count&quot;:1495,&quot;like_count&quot;:17377,&quot;impression_count&quot;:6094049,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2034004291279851522/vid/avc1/1280x720/KVbJ622D1LStOz7e.mp4&quot;,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC Output Tokens 64K</strong>: Maximum output token limit increased to 64K for longer generated code and responses.</p><p><strong>Opus 1M on Desktop</strong>: Opus 4.6 with 1M context now available on the desktop app for Max, Teams, and Enterprise users.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/amorriscode/status/2033998163074551961&quot;,&quot;full_text&quot;:&quot;heard you like context?\n\nOpus 4.6 1M context is out for Max/Teams/Enterprise on desktop &quot;,&quot;username&quot;:&quot;amorriscode&quot;,&quot;name&quot;:&quot;Anthony Morris &#12484;&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/2006926826405556224/q_n_igbS_normal.png&quot;,&quot;date&quot;:&quot;2026-03-17T20:05:26.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://pbs.substack.com/media/HDo0p-JbEAUrPbt.jpg&quot;,&quot;link_url&quot;:&quot;https://t.co/pmzUYYzq20&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:76,&quot;retweet_count&quot;:35,&quot;like_count&quot;:1088,&quot;impression_count&quot;:89892,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>Dispatch + CC Sessions</strong>: Dispatch can now launch and manage full Claude Code sessions alongside its standard Cowork tasks.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/felixrieseberg/status/2034381385134399913&quot;,&quot;full_text&quot;:&quot;By popular demand, Dispatch can now launch Claude Code sessions. Ask it to build, make, or improve something!\n\nTo use it, update your Claude desktop app and make sure you have Code enabled. &quot;,&quot;username&quot;:&quot;felixrieseberg&quot;,&quot;name&quot;:&quot;Felix Rieseberg&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1544558915819487233/qMrauBqx_normal.jpg&quot;,&quot;date&quot;:&quot;2026-03-18T21:28:13.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://pbs.substack.com/media/HDuTDNLakAAQ9D7.jpg&quot;,&quot;link_url&quot;:&quot;https://t.co/q65MyqkUJN&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:182,&quot;retweet_count&quot;:133,&quot;like_count&quot;:2480,&quot;impression_count&quot;:218682,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC Shell in SKILL.md</strong>: Embed live shell command outputs directly in skill files using !<code>command</code> syntax for dynamic context.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/lydiahallie/status/2034337963820327017&quot;,&quot;full_text&quot;:&quot;if your skill depends on dynamic content, you can embed !`command` in your SKILL.md to inject shell output directly into the prompt\n\nClaude Code runs it when the skill is invoked and swaps the placeholder inline, the model only sees the result! &quot;,&quot;username&quot;:&quot;lydiahallie&quot;,&quot;name&quot;:&quot;Lydia Hallie &#10024;&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1994238936345137154/exEBW2UI_normal.jpg&quot;,&quot;date&quot;:&quot;2026-03-18T18:35:41.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://pbs.substack.com/media/HDtlqI7bgAAFRKu.jpg&quot;,&quot;link_url&quot;:&quot;https://t.co/b6smVdkHN1&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:127,&quot;retweet_count&quot;:248,&quot;like_count&quot;:2980,&quot;impression_count&quot;:832267,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong><a href="http://claude.ai/">Claude.ai</a> Speed Boost</strong>: <a href="http://claude.ai/">Claude.ai</a> and desktop apps load significantly faster after migrating from SSR to Vite + TanStack Router.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/felixrieseberg/status/2034688574239776778&quot;,&quot;full_text&quot;:&quot;A small ship I love: We made <a class=\&quot;tweet-url\&quot; href=\&quot;http://Claude.ai\&quot;>Claude.ai</a> and our desktop apps meaningful faster this week.\n\nWe moved our architecture from SSR to a static <span class=\&quot;tweet-fake-link\&quot;>@vite_js</span> &amp;amp; <span class=\&quot;tweet-fake-link\&quot;>@tan_stack</span> router setup that we can serve straight from workers at the edge. Time to first byte is down 65% at p75,&quot;,&quot;username&quot;:&quot;felixrieseberg&quot;,&quot;name&quot;:&quot;Felix Rieseberg&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1544558915819487233/qMrauBqx_normal.jpg&quot;,&quot;date&quot;:&quot;2026-03-19T17:48:53.000Z&quot;,&quot;photos&quot;:[],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:105,&quot;retweet_count&quot;:97,&quot;like_count&quot;:2545,&quot;impression_count&quot;:508292,&quot;expanded_url&quot;:{&quot;url&quot;:&quot;http://Claude.ai&quot;,&quot;title&quot;:&quot;Claude&quot;,&quot;description&quot;:&quot;Claude is Anthropic's AI, built for problem solvers. Tackle complex challenges, analyze data, write code, and think through your hardest work.&quot;,&quot;domain&quot;:&quot;claude.ai&quot;,&quot;image&quot;:&quot;https://pbs.substack.com/news_img/2034521965588045824/Dy5QB7FI?format=png&amp;name=orig&quot;},&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC VSCode Remote</strong>: Use Remote Control to manage Claude Code sessions running inside VS Code from your phone.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/noahzweben/status/2034452278971932695&quot;,&quot;full_text&quot;:&quot;A few &#128293; Claude Code VSCode drops\n\n1. Remote Control in VSCode &quot;,&quot;username&quot;:&quot;noahzweben&quot;,&quot;name&quot;:&quot;Noah Zweben&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1983955803137814528/cbOrJWsw_normal.jpg&quot;,&quot;date&quot;:&quot;2026-03-19T02:09:56.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://pbs.substack.com/media/HDvTb6FbEAEzs0M.jpg&quot;,&quot;link_url&quot;:&quot;https://t.co/byt6JIsRHs&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:43,&quot;retweet_count&quot;:23,&quot;like_count&quot;:586,&quot;impression_count&quot;:99938,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC Skills over Remote Control</strong>: Run skills and slash commands from your phone via Remote Control &#8212; full command access on mobile.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/noahzweben/status/2034457917555179977&quot;,&quot;full_text&quot;:&quot;And another thing... Skills and a bunch of /slash commands (/clear, /compact) etc now work over mobile in Remote Control.  As a heads up we dont have auto-complete yet so better get those spelling-bee skills sharpened :)  \n\nUpdate to latest cc &amp;amp; mobile &quot;,&quot;username&quot;:&quot;noahzweben&quot;,&quot;name&quot;:&quot;Noah Zweben&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1983955803137814528/cbOrJWsw_normal.jpg&quot;,&quot;date&quot;:&quot;2026-03-19T02:32:20.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/upload/w_1028,c_limit,q_auto:best/l_twitter_play_button_rvaygk,w_88/wugypd387it8megnh6ig&quot;,&quot;link_url&quot;:&quot;https://t.co/quZj2KcLzO&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:48,&quot;retweet_count&quot;:27,&quot;like_count&quot;:571,&quot;impression_count&quot;:65234,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2034457767428378624/vid/avc1/440x960/A0DwDfkxvL-kT5g-.mp4&quot;,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC Channels (Telegram + Discord)</strong>: Connect Claude Code to Telegram and Discord &#8212; interact with your coding agent from messaging apps.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/trq212/status/2034761016320696565&quot;,&quot;full_text&quot;:&quot;We just released Claude Code channels, which allows you to control your Claude Code session through select MCPs, starting with Telegram and Discord. \n\nUse this to message Claude Code directly from your phone. &quot;,&quot;username&quot;:&quot;trq212&quot;,&quot;name&quot;:&quot;Thariq&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1976939058741039104/r3GgzqRh_normal.jpg&quot;,&quot;date&quot;:&quot;2026-03-19T22:36:44.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/upload/w_1028,c_limit,q_auto:best/l_twitter_play_button_rvaygk,w_88/zym3n6ihgdjn0ifmyips&quot;,&quot;link_url&quot;:&quot;https://t.co/sl3BP2BEzS&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:1690,&quot;retweet_count&quot;:2365,&quot;like_count&quot;:25742,&quot;impression_count&quot;:7385626,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2034760524685250560/vid/avc1/1280x720/Wz1TYKtcmf3MLfoP.mp4&quot;,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC Cloud Scheduled Tasks</strong>: Schedule recurring Claude Code tasks that run in the cloud &#8212; no local machine required.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/noahzweben/status/2035122989533163971&quot;,&quot;full_text&quot;:&quot;You can now schedule recurring cloud-based tasks on Claude Code.\n\nSet a repo (or repos), a schedule, and a prompt. Claude runs it via cloud infra on your schedule, so you don&#8217;t need to keep Claude Code running on your local machine. &quot;,&quot;username&quot;:&quot;noahzweben&quot;,&quot;name&quot;:&quot;Noah Zweben&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1983955803137814528/cbOrJWsw_normal.jpg&quot;,&quot;date&quot;:&quot;2026-03-20T22:35:06.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/upload/w_1028,c_limit,q_auto:best/l_twitter_play_button_rvaygk,w_88/yfntsgjxprjwhn5evkns&quot;,&quot;link_url&quot;:&quot;https://t.co/Vse4WfVnKC&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:287,&quot;retweet_count&quot;:561,&quot;like_count&quot;:7488,&quot;impression_count&quot;:1970459,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2035122202828480512/vid/avc1/1280x720/cFD9DJ8zH-oDP2aT.mp4&quot;,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>Projects in Cowork</strong>: Organize Cowork conversations into named projects for better context separation and management.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/claudeai/status/2035025492617961704&quot;,&quot;full_text&quot;:&quot;Projects are now available in Cowork.\n\nKeep your tasks and context in one place, focused on one area of work. Files and instructions stay on your computer.\n\nImport existing projects in one click, or start fresh. &quot;,&quot;username&quot;:&quot;claudeai&quot;,&quot;name&quot;:&quot;Claude&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1950950107937185792/QOfEjFoJ_normal.jpg&quot;,&quot;date&quot;:&quot;2026-03-20T16:07:41.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://pbs.substack.com/media/HD3ZedIboAQIWl9.jpg&quot;,&quot;link_url&quot;:&quot;https://t.co/4AxvfiHhiv&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:722,&quot;retweet_count&quot;:1141,&quot;like_count&quot;:14195,&quot;impression_count&quot;:2904061,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC DOM Element Selection</strong>: Select DOM elements directly from a running application to reference them in Claude Code conversations.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/lydiahallie/status/2035088515332284651&quot;,&quot;full_text&quot;:&quot;Claude Code on desktop lets you select DOM elements directly, much easier than describing which component you want updated!\n\nClaude gets the tag, classes, key styles, surrounding HTML, and a cropped screenshot. React apps also get the source file, component name and props &quot;,&quot;username&quot;:&quot;lydiahallie&quot;,&quot;name&quot;:&quot;Lydia Hallie &#10024;&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1994238936345137154/exEBW2UI_normal.jpg&quot;,&quot;date&quot;:&quot;2026-03-20T20:18:06.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/upload/w_1028,c_limit,q_auto:best/l_twitter_play_button_rvaygk,w_88/ybmhaiih8kdaiudd96f3&quot;,&quot;link_url&quot;:&quot;https://t.co/LfV9CyDMJU&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:186,&quot;retweet_count&quot;:293,&quot;like_count&quot;:4643,&quot;impression_count&quot;:581679,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2035088007515287552/vid/avc1/1282x720/PLRE1lMsX5KB-hpB.mp4&quot;,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC Effort in Skills</strong>: Set effort levels directly inside skill and slash command definitions to control reasoning depth per task.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/lydiahallie/status/2035426943777263751&quot;,&quot;full_text&quot;:&quot;You can now set effort level in skills/slash commands!\n\nThis controls how long the model thinks before answering, and overrides your session default &quot;,&quot;username&quot;:&quot;lydiahallie&quot;,&quot;name&quot;:&quot;Lydia Hallie &#10024;&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1994238936345137154/exEBW2UI_normal.jpg&quot;,&quot;date&quot;:&quot;2026-03-21T18:42:54.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/upload/w_1028,c_limit,q_auto:best/l_twitter_play_button_rvaygk,w_88/o8ddhhiaodvcvzdzx5xf&quot;,&quot;link_url&quot;:&quot;https://t.co/KYjgmoTita&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:78,&quot;retweet_count&quot;:146,&quot;like_count&quot;:2951,&quot;impression_count&quot;:621962,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2035425103891353600/vid/avc1/1280x720/ITBTalVTfhKOp7tN.mp4&quot;,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC /loop 7 Days</strong>: Loop sessions now run for up to 7 days instead of the previous 3-day limit.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/noahzweben/status/2035766998320456173&quot;,&quot;full_text&quot;:&quot;Loops now run for up to 7 days instead of 3. \n\nLet me know what you&#8217;re /looping on!&quot;,&quot;username&quot;:&quot;noahzweben&quot;,&quot;name&quot;:&quot;Noah Zweben&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1983955803137814528/cbOrJWsw_normal.jpg&quot;,&quot;date&quot;:&quot;2026-03-22T17:14:09.000Z&quot;,&quot;photos&quot;:[],&quot;quoted_tweet&quot;:{&quot;full_text&quot;:&quot;/loop 5m make sure this PR passes CI\n\nWhile loops for agents have dropped!\n\nhttps://t.co/vi2B1Bdemk&quot;,&quot;username&quot;:&quot;noahzweben&quot;,&quot;name&quot;:&quot;Noah Zweben&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1983955803137814528/cbOrJWsw_normal.jpg&quot;},&quot;reply_count&quot;:40,&quot;retweet_count&quot;:17,&quot;like_count&quot;:385,&quot;impression_count&quot;:88532,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC /init v2</strong>: Redesigned project initialization that interviews you about your codebase before generating <a href="http://claude.md/">CLAUDE.md</a> configuration.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/trq212/status/2035799806640115806&quot;,&quot;full_text&quot;:&quot;we're testing a new version of /init based on your feedback- it should interview you and help setup skills, hooks, etc.\n\nyou can enable it with this env_var flag:\n\nCLAUDE_CODE_NEW_INIT=1 claude\n\nwould love your feedback!&quot;,&quot;username&quot;:&quot;trq212&quot;,&quot;name&quot;:&quot;Thariq&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1976939058741039104/r3GgzqRh_normal.jpg&quot;,&quot;date&quot;:&quot;2026-03-22T19:24:31.000Z&quot;,&quot;photos&quot;:[],&quot;quoted_tweet&quot;:{&quot;full_text&quot;:&quot;I want to make /init more useful- what do you think it should do to help setup Claude Code in a repo?&quot;,&quot;username&quot;:&quot;trq212&quot;,&quot;name&quot;:&quot;Thariq&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1976939058741039104/r3GgzqRh_normal.jpg&quot;},&quot;reply_count&quot;:205,&quot;retweet_count&quot;:248,&quot;like_count&quot;:4025,&quot;impression_count&quot;:520380,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC /schedule Cloud</strong>: Schedule cloud-based tasks directly from the /schedule command &#8212; tasks run on Anthropic&#8217;s infrastructure.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/noahzweben/status/2036129220959805859&quot;,&quot;full_text&quot;:&quot;Use /schedule to create recurring cloud-based jobs for Claude, directly from the terminal. \n\nWe use these internally to automatically resolve CI failures, push doc updates, and generally power automations that you want to exists beyond a closed laptop &quot;,&quot;username&quot;:&quot;noahzweben&quot;,&quot;name&quot;:&quot;Noah Zweben&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1983955803137814528/cbOrJWsw_normal.jpg&quot;,&quot;date&quot;:&quot;2026-03-23T17:13:30.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/upload/w_1028,c_limit,q_auto:best/l_twitter_play_button_rvaygk,w_88/uxnbf2u9ogglanwxdabf&quot;,&quot;link_url&quot;:&quot;https://t.co/uuDesRzSrg&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:168,&quot;retweet_count&quot;:291,&quot;like_count&quot;:3910,&quot;impression_count&quot;:750502,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2036129172448485378/vid/avc1/1180x720/yXRrc8tcw8D9UYDf.mp4&quot;,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>Computer Use</strong>: Claude can now control your computer directly &#8212; mouse clicks, keyboard input, and screen reading for end-to-end automation.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/felixrieseberg/status/2036193240509235452&quot;,&quot;full_text&quot;:&quot;Today, we&#8217;re releasing a feature that allows Claude to control your computer: Mouse, keyboard, and screen, giving it the ability to use any app.\n\nI believe this is especially useful if used with Dispatch, which allows you to remotely control Claude on your computer while you&#8217;re &quot;,&quot;username&quot;:&quot;felixrieseberg&quot;,&quot;name&quot;:&quot;Felix Rieseberg&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1544558915819487233/qMrauBqx_normal.jpg&quot;,&quot;date&quot;:&quot;2026-03-23T21:27:53.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/upload/w_1028,c_limit,q_auto:best/l_twitter_play_button_rvaygk,w_88/yrakwxuscbsswlgswd9p&quot;,&quot;link_url&quot;:&quot;https://t.co/tthl6vpID2&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:819,&quot;retweet_count&quot;:1376,&quot;like_count&quot;:17569,&quot;impression_count&quot;:4097049,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2036187698961195010/vid/avc1/1280x720/1Ja5lMWa755JQbPb.mp4&quot;,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>CC Channels Permission Prompts</strong>: Channels now support permission prompts so you can approve sensitive actions from Telegram or Discord.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/noahzweben/status/2036228890717462785&quot;,&quot;full_text&quot;:&quot;Claude Code channels now support Permission Prompts. \n\nUpdate to latest claude and update your channel plugins! &quot;,&quot;username&quot;:&quot;noahzweben&quot;,&quot;name&quot;:&quot;Noah Zweben&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1983955803137814528/cbOrJWsw_normal.jpg&quot;,&quot;date&quot;:&quot;2026-03-23T23:49:33.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://pbs.substack.com/media/HEIjOLoaAAA2t_e.jpg&quot;,&quot;link_url&quot;:&quot;https://t.co/M2lpwrwaAH&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:42,&quot;retweet_count&quot;:21,&quot;like_count&quot;:335,&quot;impression_count&quot;:62769,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><div><hr></div><h3>Mar 24 &#8211; Mar 30</h3><p><strong>CC Channels for Teams + Enterprise</strong>: Channels (Telegram, Discord integration) now available for Teams and Enterprise plans.</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/noahzweben/status/2036235916675793105&quot;,&quot;full_text&quot;:&quot;Channels now available for Teams and Enterprise. \n\nMust be enabled in <a class=\&quot;tweet-url\&quot; href=\&quot;http://claude.ai/admin-settings/claude-code\&quot;>claude.ai/admin-settings&#8230;</a> &quot;,&quot;username&quot;:&quot;noahzweben&quot;,&quot;name&quot;:&quot;Noah Zweben&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1983955803137814528/cbOrJWsw_normal.jpg&quot;,&quot;date&quot;:&quot;2026-03-24T00:17:28.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://pbs.substack.com/media/HEIpqDjb0AAFeyM.jpg&quot;,&quot;link_url&quot;:&quot;https://t.co/GJDxoJ1n40&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:6,&quot;retweet_count&quot;:10,&quot;like_count&quot;:127,&quot;impression_count&quot;:8875,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p><strong>And the week continues.</strong> </p><p>[Edited] Here we go, not included in the infographic:</p><p><strong>CC Auto Mode (Research Preview):</strong> Claude autonomously handles permission prompts during coding. A pre-execution classifier reviews every tool call, blocking destructive operations and prompt injection. Enable with `claude --enable-auto-mode`.<br></p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/claudeai/status/2036503582166393240&quot;,&quot;full_text&quot;:&quot;New in Claude Code: auto mode.\n\nInstead of approving every file write and bash command, or skipping permissions entirely, auto mode lets Claude make permission decisions on your behalf.\n\nSafeguards check each action before it runs. &quot;,&quot;username&quot;:&quot;claudeai&quot;,&quot;name&quot;:&quot;Claude&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1950950107937185792/QOfEjFoJ_normal.jpg&quot;,&quot;date&quot;:&quot;2026-03-24T18:01:05.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/upload/w_1028,c_limit,q_auto:best/l_twitter_play_button_rvaygk,w_88/ohwfvqlp6qhsxy7nho9e&quot;,&quot;link_url&quot;:&quot;https://t.co/kHbTN2jrWw&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:1723,&quot;retweet_count&quot;:2185,&quot;like_count&quot;:30973,&quot;impression_count&quot;:3768155,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2036502255298285568/vid/avc1/1280x720/8Xef6CxoT2A2DNgQ.mp4&quot;,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><div><hr></div><p>P.S. Glad Claude Team noticed this. Noah is the legend:</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/i/status/2036603010525397444&quot;,&quot;full_text&quot;:&quot;This has been a fun month.&quot;,&quot;username&quot;:&quot;noahzweben&quot;,&quot;name&quot;:&quot;Noah Zweben&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1983955803137814528/cbOrJWsw_normal.jpg&quot;,&quot;date&quot;:&quot;2026-03-25T00:36:10.000Z&quot;,&quot;photos&quot;:[],&quot;quoted_tweet&quot;:{&quot;full_text&quot;:&quot;73 product releases in 52 days. That's not a launch cadence &#8212; that's a different kind of company.\n\nI tracked every Anthropic release from Feb 1 to Mar 23 by going through @bcherny, @trq212, @noahzweben, @felixrieseberg, @lydiahallie, @amorriscode, @feldman, @dickson_tsai, and&quot;,&quot;username&quot;:&quot;PawelHuryn&quot;,&quot;name&quot;:&quot;Pawe&#322; Huryn&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/2031703870615715840/aq6W0Caw_normal.jpg&quot;},&quot;reply_count&quot;:10,&quot;retweet_count&quot;:5,&quot;like_count&quot;:141,&quot;impression_count&quot;:12868,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><div><hr></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><p>Have a great rest of the week,<br>Pawe&#322;</p>]]></content:encoded></item><item><title><![CDATA[The Claude Dispatch Guide: 48 Hours Running AI Agents From My Phone]]></title><description><![CDATA[Real PM workflows, honest gotchas, and why the biggest unlock has nothing to do with Dispatch itself.]]></description><link>https://www.productcompass.pm/p/claude-dispatch-guide</link><guid isPermaLink="false">https://www.productcompass.pm/p/claude-dispatch-guide</guid><dc:creator><![CDATA[Paweł Huryn]]></dc:creator><pubDate>Mon, 23 Mar 2026 10:47:29 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/0f549e07-ab5d-4068-9a14-5dbd79dbbf82_1280x720.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Claude now has 4 ways to run from your phone. Most people will try one, hit friction, and give up. Here's what actually works &#8212; and how it changed how I structure my day.</p><p>Dispatch is the newest surface &#8212; and the one most likely to change how you work as a PM. Not because it&#8217;s the most powerful, but because it turns every gap in your day into a window for directing real work. Dog walks, coffee, the passenger seat, standing at the sidelines of a bounce house &#8212; all become productive without being &#8220;always on.&#8221;</p><p>I tested this for 48 hours straight, building real PM workflows from my phone. What you&#8217;re reading is everything I found &#8212; the workflows that actually work, the friction points nobody warns you about, and the architectural insight that matters more than any single feature Anthropic ships.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!5C7X!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b071e46-6539-45c3-80fa-8c779a49f9c6_1400x1169.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!5C7X!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b071e46-6539-45c3-80fa-8c779a49f9c6_1400x1169.png 424w, https://substackcdn.com/image/fetch/$s_!5C7X!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b071e46-6539-45c3-80fa-8c779a49f9c6_1400x1169.png 848w, https://substackcdn.com/image/fetch/$s_!5C7X!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b071e46-6539-45c3-80fa-8c779a49f9c6_1400x1169.png 1272w, https://substackcdn.com/image/fetch/$s_!5C7X!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b071e46-6539-45c3-80fa-8c779a49f9c6_1400x1169.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!5C7X!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b071e46-6539-45c3-80fa-8c779a49f9c6_1400x1169.png" width="1400" height="1169" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9b071e46-6539-45c3-80fa-8c779a49f9c6_1400x1169.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1169,&quot;width&quot;:1400,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:374650,&quot;alt&quot;:&quot;Claude Dispatch mobile view &#8212; the orchestrator conversation with multiple task sessions listed&quot;,&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://www.productcompass.pm/i/191769648?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b071e46-6539-45c3-80fa-8c779a49f9c6_1400x1169.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Claude Dispatch mobile view &#8212; the orchestrator conversation with multiple task sessions listed" title="Claude Dispatch mobile view &#8212; the orchestrator conversation with multiple task sessions listed" srcset="https://substackcdn.com/image/fetch/$s_!5C7X!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b071e46-6539-45c3-80fa-8c779a49f9c6_1400x1169.png 424w, https://substackcdn.com/image/fetch/$s_!5C7X!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b071e46-6539-45c3-80fa-8c779a49f9c6_1400x1169.png 848w, https://substackcdn.com/image/fetch/$s_!5C7X!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b071e46-6539-45c3-80fa-8c779a49f9c6_1400x1169.png 1272w, https://substackcdn.com/image/fetch/$s_!5C7X!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b071e46-6539-45c3-80fa-8c779a49f9c6_1400x1169.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Claude Dispatch mobile view</figcaption></figure></div><div><hr></div><h2>What You&#8217;ll Learn</h2><ul><li><p>What Dispatch actually is &#8212; and the difference from &#8220;Claude chat on your phone&#8221;</p></li><li><p>How to set up and start your first Dispatch session</p></li><li><p>The real 48-hour timeline &#8212; how async direction reshapes your day</p></li><li><p>Every gotcha I hit, with tested workarounds</p></li><li><p>When to use Dispatch vs. Web Sessions vs. Channels vs. Code</p></li><li><p>Why the knowledge layer matters more than any single surface</p></li><li><p>The single highest-leverage investment for PMs building with AI</p></li></ul><p>If you haven't read the earlier parts of this series, they help but aren't required &#8212; this post stands alone:</p><ul><li><p><a href="https://www.productcompass.pm/p/claude-cowork-guide">Claude Cowork Guide</a> &#8212; the desktop agent Dispatch controls remotely</p></li><li><p><a href="https://www.productcompass.pm/p/claude-code-guide">Claude Code: The Complete PM Guide</a> &#8212; how to start</p></li><li><p><a href="https://www.productcompass.pm/p/self-improving-claude-system">The Self-Improving Claude System</a> &#8212; the knowledge architecture that makes all of this compound</p></li></ul><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h2>1. What Dispatch Is (And Isn&#8217;t)</h2><p>Dispatch isn&#8217;t &#8220;Claude chat on your phone.&#8221; You already have that.</p><p>Dispatch is an <strong>orchestrator</strong>. From a single conversation on your phone, you spawn and manage multiple Cowork task sessions running simultaneously on your desktop. Each session runs independently &#8212; its own context, its own file access, its own connectors.</p><p>Your phone is the command chair. Your desktop does the heavy lifting.</p><p>Think of the difference between texting someone a request and sitting in a control room with multiple screens. Each screen is a task session running on your desktop. Your phone directs all of them from one conversation thread.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!-j-T!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f64ea33-85a0-43e2-8c19-fc9d07be4642_1600x1114.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!-j-T!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f64ea33-85a0-43e2-8c19-fc9d07be4642_1600x1114.png 424w, https://substackcdn.com/image/fetch/$s_!-j-T!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f64ea33-85a0-43e2-8c19-fc9d07be4642_1600x1114.png 848w, https://substackcdn.com/image/fetch/$s_!-j-T!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f64ea33-85a0-43e2-8c19-fc9d07be4642_1600x1114.png 1272w, https://substackcdn.com/image/fetch/$s_!-j-T!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f64ea33-85a0-43e2-8c19-fc9d07be4642_1600x1114.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!-j-T!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f64ea33-85a0-43e2-8c19-fc9d07be4642_1600x1114.png" width="1456" height="1014" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8f64ea33-85a0-43e2-8c19-fc9d07be4642_1600x1114.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1014,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:190465,&quot;alt&quot;:&quot;What Claude Dispatch is: Phone &#8594; Orchestrator &#8594; Task Sessions &#8594; Desktop&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://www.productcompass.pm/i/191769648?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f64ea33-85a0-43e2-8c19-fc9d07be4642_1600x1114.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="What Claude Dispatch is: Phone &#8594; Orchestrator &#8594; Task Sessions &#8594; Desktop" title="What Claude Dispatch is: Phone &#8594; Orchestrator &#8594; Task Sessions &#8594; Desktop" srcset="https://substackcdn.com/image/fetch/$s_!-j-T!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f64ea33-85a0-43e2-8c19-fc9d07be4642_1600x1114.png 424w, https://substackcdn.com/image/fetch/$s_!-j-T!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f64ea33-85a0-43e2-8c19-fc9d07be4642_1600x1114.png 848w, https://substackcdn.com/image/fetch/$s_!-j-T!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f64ea33-85a0-43e2-8c19-fc9d07be4642_1600x1114.png 1272w, https://substackcdn.com/image/fetch/$s_!-j-T!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f64ea33-85a0-43e2-8c19-fc9d07be4642_1600x1114.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Phone &#8594; Orchestrator &#8594; Task Sessions &#8594; Desktop</figcaption></figure></div><blockquote><p><strong>For PMs:</strong> This maps to something you already do &#8212; running multiple workstreams simultaneously. One analyst pulling competitor data. Another drafting the stakeholder email. A third organizing research notes. Dispatch is that, except the analysts are AI sessions on your desktop and the command chair is in your pocket.</p></blockquote><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!MWGo!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9eb5ab12-682a-40d1-917b-fb38ad6e5321_1600x1148.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!MWGo!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9eb5ab12-682a-40d1-917b-fb38ad6e5321_1600x1148.png 424w, https://substackcdn.com/image/fetch/$s_!MWGo!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9eb5ab12-682a-40d1-917b-fb38ad6e5321_1600x1148.png 848w, https://substackcdn.com/image/fetch/$s_!MWGo!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9eb5ab12-682a-40d1-917b-fb38ad6e5321_1600x1148.png 1272w, https://substackcdn.com/image/fetch/$s_!MWGo!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9eb5ab12-682a-40d1-917b-fb38ad6e5321_1600x1148.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!MWGo!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9eb5ab12-682a-40d1-917b-fb38ad6e5321_1600x1148.png" width="1456" height="1045" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9eb5ab12-682a-40d1-917b-fb38ad6e5321_1600x1148.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1045,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:158818,&quot;alt&quot;:&quot;Claude Cowork vs. Dispatch&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://www.productcompass.pm/i/191769648?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9eb5ab12-682a-40d1-917b-fb38ad6e5321_1600x1148.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Claude Cowork vs. Dispatch" title="Claude Cowork vs. Dispatch" srcset="https://substackcdn.com/image/fetch/$s_!MWGo!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9eb5ab12-682a-40d1-917b-fb38ad6e5321_1600x1148.png 424w, https://substackcdn.com/image/fetch/$s_!MWGo!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9eb5ab12-682a-40d1-917b-fb38ad6e5321_1600x1148.png 848w, https://substackcdn.com/image/fetch/$s_!MWGo!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9eb5ab12-682a-40d1-917b-fb38ad6e5321_1600x1148.png 1272w, https://substackcdn.com/image/fetch/$s_!MWGo!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9eb5ab12-682a-40d1-917b-fb38ad6e5321_1600x1148.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Every Cowork connector you've configured &#8212; Gmail, Notion, Slack, all of them &#8212; works through Dispatch because Dispatch delegates to Cowork.</p><div><hr></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.productcompass.pm/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.productcompass.pm/subscribe?"><span>Subscribe now</span></a></p><div><hr></div><h2><strong>2. How to Set Up Claude Dispatch</strong></h2><p><strong>Step 1:</strong> Set up <a href="https://www.productcompass.pm/p/claude-cowork-guide">Cowork on your desktop</a> with the connectors you use &#8212; Gmail, Notion, Slack, whatever your stack is. Everything must be configured on desktop first. Then, keep your desktop awake and Claude app running.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!COi6!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccec9e3b-f6d8-4096-93d9-878b4da0e0ec_1600x754.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!COi6!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccec9e3b-f6d8-4096-93d9-878b4da0e0ec_1600x754.png 424w, https://substackcdn.com/image/fetch/$s_!COi6!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccec9e3b-f6d8-4096-93d9-878b4da0e0ec_1600x754.png 848w, https://substackcdn.com/image/fetch/$s_!COi6!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccec9e3b-f6d8-4096-93d9-878b4da0e0ec_1600x754.png 1272w, https://substackcdn.com/image/fetch/$s_!COi6!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccec9e3b-f6d8-4096-93d9-878b4da0e0ec_1600x754.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!COi6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccec9e3b-f6d8-4096-93d9-878b4da0e0ec_1600x754.png" width="1456" height="686" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ccec9e3b-f6d8-4096-93d9-878b4da0e0ec_1600x754.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:686,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:88133,&quot;alt&quot;:&quot;Hot to keep Claude Dispatch awake (prevents sleep/hibernation)&quot;,&quot;title&quot;:&quot;Hot to keep Claude Dispatch awake (prevents sleep/hibernation)&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://www.productcompass.pm/i/191769648?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccec9e3b-f6d8-4096-93d9-878b4da0e0ec_1600x754.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Hot to keep Claude Dispatch awake (prevents sleep/hibernation)" title="Hot to keep Claude Dispatch awake (prevents sleep/hibernation)" srcset="https://substackcdn.com/image/fetch/$s_!COi6!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccec9e3b-f6d8-4096-93d9-878b4da0e0ec_1600x754.png 424w, https://substackcdn.com/image/fetch/$s_!COi6!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccec9e3b-f6d8-4096-93d9-878b4da0e0ec_1600x754.png 848w, https://substackcdn.com/image/fetch/$s_!COi6!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccec9e3b-f6d8-4096-93d9-878b4da0e0ec_1600x754.png 1272w, https://substackcdn.com/image/fetch/$s_!COi6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccec9e3b-f6d8-4096-93d9-878b4da0e0ec_1600x754.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><strong>Step 2:</strong> Open the Claude mobile app. You&#8217;ll see the Dispatch tab. Start a conversation and tell it to run a Cowork task.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!JGzW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8753117a-52ee-4f95-be30-eb5fbbf3aa4c_1600x740.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!JGzW!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8753117a-52ee-4f95-be30-eb5fbbf3aa4c_1600x740.png 424w, https://substackcdn.com/image/fetch/$s_!JGzW!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8753117a-52ee-4f95-be30-eb5fbbf3aa4c_1600x740.png 848w, https://substackcdn.com/image/fetch/$s_!JGzW!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8753117a-52ee-4f95-be30-eb5fbbf3aa4c_1600x740.png 1272w, https://substackcdn.com/image/fetch/$s_!JGzW!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8753117a-52ee-4f95-be30-eb5fbbf3aa4c_1600x740.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!JGzW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8753117a-52ee-4f95-be30-eb5fbbf3aa4c_1600x740.png" width="1456" height="673" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8753117a-52ee-4f95-be30-eb5fbbf3aa4c_1600x740.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:673,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:111371,&quot;alt&quot;:&quot;How to open Dispatch in the Claude mobile app&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://www.productcompass.pm/i/191769648?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8753117a-52ee-4f95-be30-eb5fbbf3aa4c_1600x740.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="How to open Dispatch in the Claude mobile app" title="How to open Dispatch in the Claude mobile app" srcset="https://substackcdn.com/image/fetch/$s_!JGzW!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8753117a-52ee-4f95-be30-eb5fbbf3aa4c_1600x740.png 424w, https://substackcdn.com/image/fetch/$s_!JGzW!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8753117a-52ee-4f95-be30-eb5fbbf3aa4c_1600x740.png 848w, https://substackcdn.com/image/fetch/$s_!JGzW!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8753117a-52ee-4f95-be30-eb5fbbf3aa4c_1600x740.png 1272w, https://substackcdn.com/image/fetch/$s_!JGzW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8753117a-52ee-4f95-be30-eb5fbbf3aa4c_1600x740.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Dispatch in the Claude mobile app</figcaption></figure></div><p><strong>Step 3:</strong> Start small. One task (e.g., &#8220;summarize unanswered emails from the last week&#8221;). See the output. Then try running two tasks from the same conversation to feel the parallel workflow.</p><p><strong>Step 4:</strong> To work with files, grant folder access &#8212; describe the folder naturally (&#8221;go to workspace/editor&#8221;) or use a shortcut you&#8217;ve defined. Start with the folder that has your CLAUDE.md and knowledge files.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!KGaR!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa557e944-abec-4ac7-ae76-86c7fcbdc639_1600x740.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!KGaR!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa557e944-abec-4ac7-ae76-86c7fcbdc639_1600x740.png 424w, https://substackcdn.com/image/fetch/$s_!KGaR!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa557e944-abec-4ac7-ae76-86c7fcbdc639_1600x740.png 848w, https://substackcdn.com/image/fetch/$s_!KGaR!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa557e944-abec-4ac7-ae76-86c7fcbdc639_1600x740.png 1272w, https://substackcdn.com/image/fetch/$s_!KGaR!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa557e944-abec-4ac7-ae76-86c7fcbdc639_1600x740.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!KGaR!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa557e944-abec-4ac7-ae76-86c7fcbdc639_1600x740.png" width="1456" height="673" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a557e944-abec-4ac7-ae76-86c7fcbdc639_1600x740.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:673,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:175914,&quot;alt&quot;:&quot;Granting folder permissions for Dispatch in the Claude mobile app &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://www.productcompass.pm/i/191769648?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa557e944-abec-4ac7-ae76-86c7fcbdc639_1600x740.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Granting folder permissions for Dispatch in the Claude mobile app " title="Granting folder permissions for Dispatch in the Claude mobile app " srcset="https://substackcdn.com/image/fetch/$s_!KGaR!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa557e944-abec-4ac7-ae76-86c7fcbdc639_1600x740.png 424w, https://substackcdn.com/image/fetch/$s_!KGaR!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa557e944-abec-4ac7-ae76-86c7fcbdc639_1600x740.png 848w, https://substackcdn.com/image/fetch/$s_!KGaR!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa557e944-abec-4ac7-ae76-86c7fcbdc639_1600x740.png 1272w, https://substackcdn.com/image/fetch/$s_!KGaR!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa557e944-abec-4ac7-ae76-86c7fcbdc639_1600x740.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Granting folder permissions for Dispatch in the Claude mobile app </figcaption></figure></div><p><strong>Step 5:</strong> Set up your workarounds early:</p><ul><li><p>If your workspace syncs via Google Drive/Dropbox/iCloud, check that files appear on your phone &#8212; this eliminates the file transfer problem entirely</p></li><li><p>Define folder shortcuts (&#8221;editor mode,&#8221; &#8220;workspace&#8221;) so you describe folders naturally instead of typing paths</p></li></ul><div><hr></div><h2><strong>3. Real PM Workflows With Claude Dispatch (48-Hour Test)</strong></h2><p>Dispatch didn't fill my dead time. It <strong>changed how I structured my day</strong>. I went to the jump arena with my kid <em>because</em> I could direct work async from the sidelines. The model isn't "grind during gaps." It's "design your day differently because the work runs without you sitting in front of it."</p><p>Here's what that looked like:</p>
      <p>
          <a href="https://www.productcompass.pm/p/claude-dispatch-guide">
              Read more
          </a>
      </p>
   ]]></content:encoded></item></channel></rss>