<?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[horizon]]></title><description><![CDATA[Design and Product on the Edge. "The only way to discover the limits of the possible is to go beyond them." - Arthur C. Clarke.]]></description><link>https://kcwolfy.substack.com</link><image><url>https://substackcdn.com/image/fetch/$s_!gpZ9!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3f2e0f89-62dd-4114-8491-0ccd6f5936e4_256x256.png</url><title>horizon</title><link>https://kcwolfy.substack.com</link></image><generator>Substack</generator><lastBuildDate>Sun, 14 Jun 2026 20:17:17 GMT</lastBuildDate><atom:link href="https://kcwolfy.substack.com/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[KC]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[kcwolfy@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[kcwolfy@substack.com]]></itunes:email><itunes:name><![CDATA[KC]]></itunes:name></itunes:owner><itunes:author><![CDATA[KC]]></itunes:author><googleplay:owner><![CDATA[kcwolfy@substack.com]]></googleplay:owner><googleplay:email><![CDATA[kcwolfy@substack.com]]></googleplay:email><googleplay:author><![CDATA[KC]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[The Designer Experiment (Part 1)]]></title><description><![CDATA[What Designer is & how it works]]></description><link>https://kcwolfy.substack.com/p/the-designer-experiment-part-1</link><guid isPermaLink="false">https://kcwolfy.substack.com/p/the-designer-experiment-part-1</guid><dc:creator><![CDATA[KC]]></dc:creator><pubDate>Thu, 04 Jun 2026 16:05:56 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!ZH_r!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e458edf-21f6-4bf4-9aed-cbcf7bb80d1a_2956x1514.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>I built an agentic UX design harness - <a href="https://try-designer.vercel.app/">Designer</a>.</p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;e4b773e8-6713-43bc-9b9f-aaf79917678b&quot;,&quot;duration&quot;:null}"></div><p>A few weeks ago I closed <a href="https://kcwolfy.substack.com/p/the-visible-layer">The Visible Layer</a> with a claim. The claim: the surface layer of design (UI) has been commodified, but the work that actually decides whether a final design is any good (problem definition, framing, flow, exploration) sits <em>upstream</em> of where the current tools operate, and almost nobody is building there.</p><p>This is an upstream experiment, a tool called Designer. And this is part one: what it is and how it works. Part two will be my analysis of what worked, what didn&#8217;t, and what I&#8217;d do differently.</p><p></p><h3><strong>Good design comes from a good design process</strong></h3><p>Quick recap. Lovable, v0, Stitch, and Claude Design focus on UI. Prompt in a sentence: get a plausible interface out. Remarkable, and also narrower than it looks. They all work <em>downstream</em> of the real work. They accept whatever framing arrived in the prompt. The object model is implicit and undocumented. The flows are inferred from what the category usually looks like, not from what this user&#8217;s task actually is.</p><p>Ask for &#8220;a notes app&#8221; and you get the average. Apple-Notes-shaped: clean, capable, theory-free. The chrome is right. The point of view is missing because nobody took one.</p><p>Karri Saarinen said it cleanly: <a href="https://linear.app/now/output-isn-t-design">output isn&#8217;t design</a>. The form is the easy part now. What&#8217;s left is deciding what should exist at all, and that&#8217;s still mostly manual, mostly senior, and mostly untouched by the tools.</p><p>So here&#8217;s the question I wanted to explore. What would a tool look like if it modeled the UX process? Not <em>&#8220;make me a screen,&#8221;</em> but <em>&#8220;given this problem and this user, what are the genuinely different bets worth making, and which one actually holds up?&#8221;</em></p><p></p><h3><strong>What Designer is</strong></h3><p>Designer is a canvas. Not a chat box with a preview pane, but a left-to-right workspace where each node represents a part of the design process.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ZH_r!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e458edf-21f6-4bf4-9aed-cbcf7bb80d1a_2956x1514.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ZH_r!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e458edf-21f6-4bf4-9aed-cbcf7bb80d1a_2956x1514.png 424w, https://substackcdn.com/image/fetch/$s_!ZH_r!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e458edf-21f6-4bf4-9aed-cbcf7bb80d1a_2956x1514.png 848w, https://substackcdn.com/image/fetch/$s_!ZH_r!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e458edf-21f6-4bf4-9aed-cbcf7bb80d1a_2956x1514.png 1272w, https://substackcdn.com/image/fetch/$s_!ZH_r!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e458edf-21f6-4bf4-9aed-cbcf7bb80d1a_2956x1514.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ZH_r!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e458edf-21f6-4bf4-9aed-cbcf7bb80d1a_2956x1514.png" width="1456" height="746" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3e458edf-21f6-4bf4-9aed-cbcf7bb80d1a_2956x1514.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:746,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:782420,&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://kcwolfy.substack.com/i/200627894?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e458edf-21f6-4bf4-9aed-cbcf7bb80d1a_2956x1514.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_!ZH_r!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e458edf-21f6-4bf4-9aed-cbcf7bb80d1a_2956x1514.png 424w, https://substackcdn.com/image/fetch/$s_!ZH_r!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e458edf-21f6-4bf4-9aed-cbcf7bb80d1a_2956x1514.png 848w, https://substackcdn.com/image/fetch/$s_!ZH_r!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e458edf-21f6-4bf4-9aed-cbcf7bb80d1a_2956x1514.png 1272w, https://substackcdn.com/image/fetch/$s_!ZH_r!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e458edf-21f6-4bf4-9aed-cbcf7bb80d1a_2956x1514.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>On the left, the inputs - problem, research, etc. In the middle, the design hypothesis incubator / idea generator. On the right, the design hypotheses, and then the designs themselves. Left to right, the canvas <em>is</em> the design process.</p><p>We&#8217;ll start on the left, with the framing, because that&#8217;s where Designer starts, and it&#8217;s the part the other tools skip.</p><p>The shape of the canvas is the argument. A design is not a screen you generate. It&#8217;s a system you reason about (inputs, positions, artifacts, judgment), and the tool should make that whole chain visible. Eliel Saarinen again: <em>always design a thing by considering it in its next larger context.</em> The canvas is that instinct turned into software.</p><p></p><h3><strong>Framing the Design Problem</strong></h3><p>Five inputs feed the canvas, but only the design brief is actually required.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!us2r!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F690df24b-815b-4668-a6ec-5b5e2a998df6_2752x1536.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!us2r!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F690df24b-815b-4668-a6ec-5b5e2a998df6_2752x1536.jpeg 424w, https://substackcdn.com/image/fetch/$s_!us2r!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F690df24b-815b-4668-a6ec-5b5e2a998df6_2752x1536.jpeg 848w, https://substackcdn.com/image/fetch/$s_!us2r!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F690df24b-815b-4668-a6ec-5b5e2a998df6_2752x1536.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!us2r!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F690df24b-815b-4668-a6ec-5b5e2a998df6_2752x1536.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!us2r!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F690df24b-815b-4668-a6ec-5b5e2a998df6_2752x1536.jpeg" width="1456" height="813" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/690df24b-815b-4668-a6ec-5b5e2a998df6_2752x1536.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:813,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1630424,&quot;alt&quot;:null,&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://kcwolfy.substack.com/i/200627894?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F690df24b-815b-4668-a6ec-5b5e2a998df6_2752x1536.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!us2r!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F690df24b-815b-4668-a6ec-5b5e2a998df6_2752x1536.jpeg 424w, https://substackcdn.com/image/fetch/$s_!us2r!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F690df24b-815b-4668-a6ec-5b5e2a998df6_2752x1536.jpeg 848w, https://substackcdn.com/image/fetch/$s_!us2r!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F690df24b-815b-4668-a6ec-5b5e2a998df6_2752x1536.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!us2r!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F690df24b-815b-4668-a6ec-5b5e2a998df6_2752x1536.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 role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><strong>Design Brief.</strong> The directive: the challenge, the problem, or the opportunity. It&#8217;s the one input every tool already takes, just a sentence in a box. The difference is what happens next. Here the brief is a seed for the rest of the framing, not the whole of it.</p><p><strong>Research &amp; Context.</strong> Who the audience actually is, what they use today and how it fails them, where the real opportunity sits. Strategic grounding. The kind that decides which directions are even worth pursuing. Designer can draft a first pass from the brief, but it&#8217;s deliberately disciplined: no invented studies, no fake statistics, no drifting.</p><p><strong>Objectives &amp; Metrics.</strong> Not business metrics like KPIs, e.g., conversion and retention. Those live downstream of a shipped product, and nothing has shipped yet. These are <em>design</em> properties a reviewer (or another AI) can judge from the artifact itself, each paired with how it fails when overdone. You&#8217;re defining what good looks like, in design terms, before a design exists.</p><p><strong>Design Constraints.</strong> Not the execution rules the name might suggest, the contrast ratios, type scales, and touch-target sizes. Designer treats those as build-time craft, handled later. Constraints here are strategic: what decides which <em>directions</em> are even viable. The section opens by declaring the surface (a phone, a desktop tool, a kiosk, a voice flow), naming the real deal-breakers (the regulation that applies, the audience composition you have to reach), and separating the hard non-negotiables from the space that&#8217;s open to explore. Less a fence around the pixels than a filter on which bets are worth making at all.</p><p><strong>Design System.</strong> Optional, and pointedly downstream. If you have a visual identity (tokens, type, components), Designer normalizes it into a portable spec and hands it to the <em>designs</em>, not the strategy. The surface layer (the commodified part) is treated as exactly that: an input you plug in, not the work. The hypothesis takes its position first. The system just dresses it.</p><p>Three of these (research, objectives, constraints) Designer allows the user to generate draft versions from the brief if you let it, so a thin start doesn&#8217;t stay thin. But this relies on what the large language model knows about the domain, and it&#8217;s going to be subject to the same kinds of hallucinations we&#8217;re already familiar with. Use with caution. These are better completed with real, hard-earned domain knowledge and verifiable facts.</p><p></p><h3><strong>Hypotheses, not variations</strong></h3><p>This is the heart of Designer. Can it generate plausible, viable, valuable design hypotheses?</p><p>Feed the Incubator your brief and it doesn&#8217;t return five versions of the same page. It returns <em>hypotheses</em>: genuinely different bets about what will work for this user and this problem.</p><p>Take the notes app. Instead of one generic answer, you&#8217;d get distinct positions: a block-composition bet where the unit is a block and pages become databases (Notion&#8217;s theory of thinking); a plain-text-you-own bet where files live in a vault forever (Obsidian&#8217;s); a deliberate zero-structure capture bet, fast and frictionless, chosen <em>on purpose</em> rather than by default. Three different products, each taking a position on what notes are <em>for</em>. Designer surfaces those positions instead of quietly collapsing into one.</p><p>And they&#8217;re spread on purpose. Each hypothesis sits at a distinct point along <em>exploration axes</em>, the dimensions along which the solutions could meaningfully differ. The Incubator maps that space first, then places bets across it, so you get spread, not noise. Ask for more and it excludes the ones you already have, pushing into new territory instead of circling the average.</p><p>There&#8217;s an optional first move here too, a checkbox called <em>Brainstorm directions first</em>, off by default. Turn it on and Designer runs a divergent pass before the incubator even starts: brainstorm 10 to 15 deliberately obtuse product directions, no filtering for plausibility, the stranger the better. Then a curation pass converges, keeping the five with the widest spread and reshaping or dropping anything that isn&#8217;t genuinely a software product. Those five seed the hypotheses. It&#8217;s an extra step, off by default, there for when you want to cast a wider net before the incubator commits.</p><p>This is the <em>take a position</em> problem from The Visible Layer, turned into a mechanism. And it&#8217;s the bounding box from [<strong>New Rules</strong>]: before you build anything, you define the space you&#8217;re going to explore. You&#8217;re not designing a screen. You&#8217;re designing the boundaries of which screens could exist.</p><p></p><h3><strong>Exploring the solution space</strong></h3><p>Pick a hypothesis, hit Design, and Designer builds it. A working static prototype. HTML, CSS, and JavaScript. Clickable, navigable, the interactions run.</p><p>Because the marginal cost of a build is low, you don&#8217;t have to commit. Run several hypotheses in parallel. Build the same one twice and compare. Results stack as versions (v1, v2), so exploration accumulates instead of overwriting itself.</p><p>This is the move I argued for in New Rules: when generation is cheap, you explore the solution space <em>directly</em> rather than through proxies. Three approaches instead of one. The cost of being wrong early drops to near nothing.</p><p>But a build isn&#8217;t one shot, and that&#8217;s what separates it from a prompt-to-page toy. It&#8217;s an <em>agent</em>. It plans, writes files, checks its own work, and fixes what it broke. Before it writes a line of code, the agent commits to a plan: which features are needed to verify the hypothesis and which are scaffolds, visibly present but openly inert. What you get is a prototype where the parts that claim to work, work. The trick is building enough of a prototype to be able to prove out the hypothesis, or not.</p><p>Which brings me to design iterations and self-improvement.</p><p></p><h3><strong>Evaluation is the bounding box</strong></h3><p>A polished page no longer proves anything. The screen looks the same whether someone spent three weeks understanding the user or three minutes describing one to a model. So Designer doesn&#8217;t trust the surface. It evaluates.</p><p>Turn on Auto-improve, and every build gets scored. Against rubrics, not vibes. Design quality. Fidelity to the hypothesis: did the artifact actually express the position it was supposed to take? Implementation quality. A headless browser even renders the thing and checks that it works: console errors, broken images, layout.</p><p>Then it revises. The evaluation produces a fix list, the agent applies it, and the loop runs again. It&#8217;s bounded. It stops when the design clears the bar you set, or when it hits a ceiling. You define <em>good</em> before the variant exists, and the system converges toward it. A small, designer-controlled version of the Darwinian loop - hypothesize, build, judge, keep the best.</p><p></p><h3><strong>A note on what Designer is not</strong></h3><p>Designer is a pair designer. Not a replacement, and not a researcher. It does not talk to your users. It will happily generate a beautiful, confident answer to the wrong question. The framing is only ever as good as what you bring to it. <em>The average</em> is a gravity well, too. Left loose, even a hypothesis engine drifts toward the category default, and a lot of the work has gone into pulling against that. And a working prototype is still a prototype. It&#8217;s an argument you can click, not a shipped product.</p><p>Which is exactly the right place for it to sit. The scarce skills (the ones that stay scarce when generation is cheap) are the ones I keep landing on: understanding what users actually need, articulating it precisely, and the judgment to know when the numbers, or the pretty screen, are lying.</p><p></p><h3><strong>How it&#8217;s put together (for the technically curious)</strong></h3><p>Skip this if you don&#8217;t care how the sausage is made.</p><p>The build agent runs on an agentic coding harness (Pi) inside an isolated, in-memory sandbox. The agent gets file tools and a shell, like a developer in a tiny disposable VM, but with no network and no package installs. Just the craft of assembling the artifact, then validating its own HTML and JavaScript before it calls the work done.</p><p>The design judgment isn&#8217;t hard-coded. It lives in a library of prompts and skills (skill.md) the agent loads as it works: design quality, accessibility, and the discipline of <em>using</em> patterns rather than reinventing them. This is the <em>rules of use</em> point from The Visible Layer: a component library is inventory; the value is the governing logic. I tried to write that logic down and experimented with the various prompts.</p><p>Around it sits a server that orchestrates each run, streams progress to the canvas live, and runs evaluation as independent rubric workers plus that headless browser. Everything the agent produces is a real file tree you can preview, inspect, and download. That said, there is no follow-up, there is no re-prompt, and that&#8217;s a real limitation, and something I&#8217;ll return to in part two of this where I get to what worked and what did not.</p><p>That&#8217;s the architecture in a paragraph. The interesting engineering is in the details: the sandbox boundary, how positions are kept genuinely distinct, and how evaluation feeds revision. That&#8217;s a post of its own.</p><p></p><h3><strong>What&#8217;s next</strong></h3><p>This was part one: what Designer is. Part two is the part I&#8217;m most interested in writing: what I learned from building and using it. More soon.</p>]]></content:encoded></item><item><title><![CDATA[Designer Demo ]]></title><description><![CDATA[Video of the experimentual agentic UX harness]]></description><link>https://kcwolfy.substack.com/p/designer</link><guid isPermaLink="false">https://kcwolfy.substack.com/p/designer</guid><dc:creator><![CDATA[KC]]></dc:creator><pubDate>Thu, 28 May 2026 11:23:44 GMT</pubDate><enclosure url="https://api.substack.com/feed/podcast/199478082/24da43ce581777e0a99a7bfca2655eef.mp3" length="0" type="audio/mpeg"/><content:encoded><![CDATA[<p>Designer is an experiment in giving an AI design agent access to the upstream design work: problem statement, user research, design constraints, design system, ideation, hypotheses, prototypes, and critique loops.<br><br>Why? Existing solutions focus on the surface - the UI. But &#8216;design is how it works.&#8217;<br><br><a href="https://try-designer.vercel.app/">https://try-designer.vercel.app/</a></p><p></p>]]></content:encoded></item><item><title><![CDATA[The Visible Layer]]></title><description><![CDATA[Why a generated interface no longer proves there's design behind it.]]></description><link>https://kcwolfy.substack.com/p/the-visible-layer</link><guid isPermaLink="false">https://kcwolfy.substack.com/p/the-visible-layer</guid><dc:creator><![CDATA[KC]]></dc:creator><pubDate>Wed, 27 May 2026 15:17:28 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!HHKo!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F66525861-437f-44a4-a9a3-4c18f251e9cd_1280x719.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!HHKo!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F66525861-437f-44a4-a9a3-4c18f251e9cd_1280x719.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!HHKo!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F66525861-437f-44a4-a9a3-4c18f251e9cd_1280x719.png 424w, https://substackcdn.com/image/fetch/$s_!HHKo!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F66525861-437f-44a4-a9a3-4c18f251e9cd_1280x719.png 848w, https://substackcdn.com/image/fetch/$s_!HHKo!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F66525861-437f-44a4-a9a3-4c18f251e9cd_1280x719.png 1272w, https://substackcdn.com/image/fetch/$s_!HHKo!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F66525861-437f-44a4-a9a3-4c18f251e9cd_1280x719.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!HHKo!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F66525861-437f-44a4-a9a3-4c18f251e9cd_1280x719.png" width="1280" height="719" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/66525861-437f-44a4-a9a3-4c18f251e9cd_1280x719.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:719,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;The UX iceberg&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="The UX iceberg" title="The UX iceberg" srcset="https://substackcdn.com/image/fetch/$s_!HHKo!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F66525861-437f-44a4-a9a3-4c18f251e9cd_1280x719.png 424w, https://substackcdn.com/image/fetch/$s_!HHKo!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F66525861-437f-44a4-a9a3-4c18f251e9cd_1280x719.png 848w, https://substackcdn.com/image/fetch/$s_!HHKo!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F66525861-437f-44a4-a9a3-4c18f251e9cd_1280x719.png 1272w, https://substackcdn.com/image/fetch/$s_!HHKo!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F66525861-437f-44a4-a9a3-4c18f251e9cd_1280x719.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>So AI has commodified the UI. What now?</p><p>Let&#8217;s be honest, the visible layer of digital design has been largely commodified. Google Stitch, Claude Design, v0, Lovable can all generate a plausible interface from a sentence. That&#8217;s the conversation everyone is having (ad nauseam).</p><p>But <a href="https://www.linkedin.com/in/karrisaarinen/">Karri Saarinen</a> made the deeper point recently in <a href="https://linear.app/now/output-isn-t-design">Output Isn&#8217;t Design</a>: &#8220;the hard part of design is rarely generating the form.&#8221; The rest of design is figuring out what should exist at all. This essay sits in that lineage. The argument I want to add is more specific: the surface layer of design was already mostly pattern selection and design systems, and the rest of the UX process, the part that decides whether a product is actually any good, is still mostly untouched (for now).</p><h3><strong>The surface converged. That&#8217;s why generation works.</strong></h3><p>Most modern interfaces do not constitute invention. Login, onboarding, dashboards, checkout, settings, search, filters, tables, navigation, modals, alerts, empty states. These are solved problems, partly because users move between products and learn the patterns once. Modal behavior, table affordances, button placement, the way a filter chip works. Cross-product literacy. The patterns are universal by design.</p><p>Design systems made that convergence official a decade ago: stop reinventing the dropdown. They formalized the patterns into reusable components, documented the props and states, and made the inventory portable. Once that work was done, machine assembly was the obvious next step. AI generation didn&#8217;t invent the convergence. It inherited it from design systems and industrialized it.</p><p>On the brand and UI side, you can watch the cycle complete in real time. Last week Google open-sourced <a href="https://github.com/google-labs-code/design.md">DESIGN.md</a>, a portable markdown spec that hands AI design and coding agents like Stitch, Claude Design, and Cursor a project&#8217;s design tokens and component rules in a single file. The spec covers colors, typography, spacing, border-radius, component variants, contrast rules. Visual identity, made portable to any agent. But there&#8217;s no field for the user&#8217;s mental model. No field for the task flow. No field for what the product is for or who it&#8217;s for. The investment is going where the patterns already converged.</p><p>When a model generates a competent page design now, it isn&#8217;t doing magic. It&#8217;s drawing from a world where most surface problems already have conventional answers and where the answers are increasingly written down. The convergence is real. But it&#8217;s also a much narrower achievement than the demos make it look.</p><h3><strong>A polished looking page no longer proves anything</strong></h3><p>Visual polish, layout skill, UI fluency, and the visible craft of design used to be a moat. But now a non-designer can prompt their way to something that looks competent. The visible layer has been cheapened. I&#8217;m not saying here that UI is dead; in fact, I believe the opposite to be true. Originality is now more important than ever. It will stand out against the grey of agentic creation.</p><p>That matters because product design has historically been judged on what it looks like. A polished screen was circumstantial evidence of careful thinking underneath. Not anymore. The screen looks the same whether someone spent three weeks understanding the user or three minutes describing one to a model. Saarinen makes the same observation from the other direction: products that look ambitious and impressive at first glance often start to come apart the moment you actually use them. The form is there. The fit is not.</p><h3><strong>Surface patterns converge across products. Mental models don&#8217;t.</strong></h3><p>The natural follow-on is: if surface patterns converged, why haven&#8217;t deeper layers converged too?</p><p>Surface patterns converged because users learned them across products. Mental models don&#8217;t work that way. A mental model is a position on what the product is for, what the user is doing, and how the underlying world is shaped. Two products can share a button pattern and hold completely different positions on what they exist to do.</p><p>Notes apps are maybe the cleanest example. Apple Notes is what you get when no position is taken: a plain text editor with folders, search, and a few formatting controls. Competent, generic, theory-free. Notion and Obsidian each take a position, and the position shows up in the underlying object model.</p><p>Notion&#8217;s primary unit is the block. Blocks compose into pages, and pages can become databases. It&#8217;s a structured-composition theory of thinking, built for someone managing wikis, project trackers, team knowledge bases. Obsidian&#8217;s primary unit is the markdown file. Files live in a vault you own and link to each other through links. It&#8217;s a knowledge-belongs-to-the-user theory, built for someone who wants their notes in plain text, on their own machine, forever.</p><p>These object models aren&#8217;t arbitrary technical choices. They exist because each product is solving a specific problem for a specific kind of user. The user and the problem come first. The mental model is the position the product takes on them. The object model is what that position looks like written down.</p><p>Ask a model to generate &#8220;a notes app&#8221; and you get the average. Something Apple-Notes-shaped: clean, generic, capable, theory-free. The chrome looks right. The point of view is missing because no one took one. No specific user, no specific problem.</p><p>This is the gap the surface convergence hides. AI assembly is good at producing the average of a category. It is not good at producing a product that takes a position.</p><h3><strong>The work the current tools aren&#8217;t doing</strong></h3><p>Set research aside (that is a huge topic in its own right that I&#8217;ll come back to another day). Even with the research done, there&#8217;s a body of work that has to happen before anything appears on a screen.</p><p>Framing: what is the product for, and what is it not for? Which user does it serve, which does it ignore? What does success mean? The current tools don&#8217;t frame. They accept whatever framing arrived in the prompt (its all implicit).</p><p>Mental model and information architecture: what nouns live in the user&#8217;s world, how do they relate, what&#8217;s the taxonomy? <a href="https://www.linkedin.com/in/sophiav/">Sophia V Prater</a> &#8216;s <a href="https://ooux.com/">OOUX methodology</a> is the rigorous version of this work. The approach models objects and the relationships between them before any screens exist.</p><p>Interaction and behavioral design: flows, state machines, what the system decides versus what it asks, permissions, multi-user behavior, edge cases, time-on-task priorities. A pro tool optimizes for keystroke economy and reversibility on the fiftieth use. A consumer tool optimizes for legibility on the first. These are different products built on different assumptions about who is using them and how often.</p><p>Current tools work almost entirely downstream of all that. They take a sentence and produce an artifact. The framing is whatever was in the sentence. The object model is implicit, undocumented, and unstable across sessions. The flows are inferred from what the use case usually looks like, not from what this particular user&#8217;s task actually is.</p><p>The output looks like design. But most of the work that makes design good hasn&#8217;t happened.</p><h3><strong>Pattern libraries are not systems</strong></h3><p>A design system gives you the parts. It doesn&#8217;t automatically give you the rules for using them. Without that layer, even a good system can be reduced to a warehouse of components: buttons, cards, tabs, menus, charts, forms. Inventory without governing logic.</p><p>The value of a system was never the inventory. It&#8217;s the rules of use. When does this pattern appear? What is it allowed to do? Which product principle does it express? What expectation does it set in the user? How does it scale across teams and edge cases?</p><p><a href="https://www.linkedin.com/in/christinevallaure/">Christine Vallaure de la Paz</a> made a related point in a recent piece on <a href="https://uxdesign.cc/agentic-ai-design-systems-figma-a-practical-guide-6ab0b681718d">agentic design systems</a>: &#8220;good building blocks do not come from a component library maintained in isolation.&#8221; They come from someone who modeled the whole product first. The agentic setup pulls toward efficiency, toward the inventory of things to colour in quickly. Whether anything in the inventory is worth assembling is a separate question, and it&#8217;s the one that doesn&#8217;t get asked enough.</p><p>A model can remix the inventory without understanding the rules. That&#8217;s local optimization at scale. Each generated screen makes sense on its own; the product as a whole feels incoherent because nobody, human or model, was working on the system. Only on its parts.</p><h3><strong>Pages aren&#8217;t designed in isolation</strong></h3><p>A feature is never just a feature. The moment it enters a product, it becomes a relationship to everything it touches. Does it fit an existing pattern or do you need a new one? Where does it sit in the user&#8217;s flow? Does its placement here change what the user expects over there? Pattern reuse isn&#8217;t aesthetic preference. It&#8217;s the difference between a product that scales and a maintenance burden every team and user pays.</p><p>I wrote about this previously: <a href="https://www.linkedin.com/posts/kcwolff_designing-ux-designsystems-share-7450503244889407488-udjl?utm_source=share&amp;utm_medium=member_desktop&amp;rcm=ACoAAAAkOPoBryHGDeyb9HN8_gZVHyS7j0QlFLY">every feature you add reshapes the product around it</a>. The architect Eliel Saarinen put the same discipline in spatial terms: always design a thing by considering it in its next larger context. A chair in a room. A room in a house. A house in a city plan.</p><p>And this is exactly what today&#8217;s design generation tools don&#8217;t do. When you prompt v0, Google Stitch, Claude Design, or Figma Make for a component or a screen, it has no relationship to the whole. It doesn&#8217;t know your patterns, your users&#8217; learned behaviors, the top tasks the application has to support, or where this thing sits in a journey. It produces parts that look good in isolation and quietly accumulate the cost of reconciling them, for designers, for engineers, for users who have to learn five variations of the same control.</p><h3><strong>The unfinished part of the stack</strong></h3><p>Familiar patterns aren&#8217;t the problem. Good design uses them all the time. The problem is assembly without a model: of the product, of the user, of the system those patterns belong to. The visible competence of the output convinces people the work is done. In a word you might just say the UX. Right now AI assembly skips it.</p><p>Much of what passed for product design was already pattern selection. The value was never the production of screens. It was the authorship of the system underneath: deciding which patterns exist, when they apply, where consistency matters and where it has to give.</p><p>For these tools to get better they need to move upstream. Into framing, mental models, object design, flows. Into the work that actually decides whether the product is any good. Not many people are building there yet. But watch this space... more on this soon.<br><br>(Originally published on LinkedIn: April 28, 2026).</p>]]></content:encoded></item><item><title><![CDATA[The New Rules of Design and Code]]></title><description><![CDATA[UX & UI Design in the Agentic Era]]></description><link>https://kcwolfy.substack.com/p/the-new-rules-of-design-and-code</link><guid isPermaLink="false">https://kcwolfy.substack.com/p/the-new-rules-of-design-and-code</guid><dc:creator><![CDATA[KC]]></dc:creator><pubDate>Tue, 26 May 2026 15:27:39 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!9eFa!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71787e8c-f63e-47fe-9106-88572abba9d7_1279x720.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!9eFa!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71787e8c-f63e-47fe-9106-88572abba9d7_1279x720.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!9eFa!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71787e8c-f63e-47fe-9106-88572abba9d7_1279x720.jpeg 424w, https://substackcdn.com/image/fetch/$s_!9eFa!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71787e8c-f63e-47fe-9106-88572abba9d7_1279x720.jpeg 848w, https://substackcdn.com/image/fetch/$s_!9eFa!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71787e8c-f63e-47fe-9106-88572abba9d7_1279x720.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!9eFa!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71787e8c-f63e-47fe-9106-88572abba9d7_1279x720.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!9eFa!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71787e8c-f63e-47fe-9106-88572abba9d7_1279x720.jpeg" width="1279" height="720" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/71787e8c-f63e-47fe-9106-88572abba9d7_1279x720.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:720,&quot;width&quot;:1279,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;The New Rules of Design and Code&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="The New Rules of Design and Code" title="The New Rules of Design and Code" srcset="https://substackcdn.com/image/fetch/$s_!9eFa!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71787e8c-f63e-47fe-9106-88572abba9d7_1279x720.jpeg 424w, https://substackcdn.com/image/fetch/$s_!9eFa!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71787e8c-f63e-47fe-9106-88572abba9d7_1279x720.jpeg 848w, https://substackcdn.com/image/fetch/$s_!9eFa!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71787e8c-f63e-47fe-9106-88572abba9d7_1279x720.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!9eFa!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71787e8c-f63e-47fe-9106-88572abba9d7_1279x720.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 role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Originally published on LinkedIn - January 31, 2026</p><h3><strong>The Economic Shift in Code</strong></h3><p>The fundamental economics of software production are being restructured around a simple principle: <strong>the marginal cost of producing working code is collapsing toward zero.</strong></p><p>Historically, software was constrained by human cognitive bandwidth. There&#8217;s a limit to how much a developer can write, debug, and maintain in a day. Or a sprint. Or a program increment. This constraint is being removed in layers.</p><h3><strong>Three Layers of Change</strong></h3><p><strong>Large language models</strong> made code generation nearly instantaneous. A developer describes what they want; the model produces it. This alone changed everything but had limits: the human still orchestrates, reviews, and integrates.</p><p><strong>Agentic scaffolding</strong> added autonomy. Tools like <a href="https://www.anthropic.com/claude-code">Claude Code</a>, <a href="https://cursor.com/">Cursor</a>, and similar CLIs wrap models in loops that can execute code, observe results, and iterate. The human sets a goal; the agent works toward it, handling intermediate steps autonomously. This is where most production use sits today.</p><p><strong>Agent swarms</strong> take it further. Multiple AI agents work in coordination: specialized agents handle distinct tasks (planning, coding, testing, code review, documentation), orchestration layers break problems into subtasks and route them appropriately, and feedback loops allow agents to critique and iterate on each other&#8217;s outputs. This mirrors how human engineering teams operate, but at machine speed and cost. Tools like <a href="https://www.linkedin.com/redir/suspicious-page?url=https%3A%2F%2Fconductor.build%2F">Conductor</a> let developers run multiple Claude Code agents in parallel, each in an isolated git worktree, with a dashboard showing what each agent is working on. And swarm coordination is now being built into the models themselves: <a href="https://kimi.com/">Kimi K2.5</a>, released this week, can self-direct up to 100 sub-agents executing 1,500 tool calls in parallel, with the orchestration learned through reinforcement learning rather than hand-coded.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Icue!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07aba7f2-25c4-4466-8ec8-1744868e8094_746x1000.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Icue!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07aba7f2-25c4-4466-8ec8-1744868e8094_746x1000.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Icue!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07aba7f2-25c4-4466-8ec8-1744868e8094_746x1000.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Icue!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07aba7f2-25c4-4466-8ec8-1744868e8094_746x1000.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Icue!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07aba7f2-25c4-4466-8ec8-1744868e8094_746x1000.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Icue!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07aba7f2-25c4-4466-8ec8-1744868e8094_746x1000.jpeg" width="746" height="1000" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/07aba7f2-25c4-4466-8ec8-1744868e8094_746x1000.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1000,&quot;width&quot;:746,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Article content&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="Article content" title="Article content" srcset="https://substackcdn.com/image/fetch/$s_!Icue!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07aba7f2-25c4-4466-8ec8-1744868e8094_746x1000.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Icue!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07aba7f2-25c4-4466-8ec8-1744868e8094_746x1000.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Icue!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07aba7f2-25c4-4466-8ec8-1744868e8094_746x1000.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Icue!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07aba7f2-25c4-4466-8ec8-1744868e8094_746x1000.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 role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Three layers</p><h3><strong>The Evidence</strong></h3><p>This isn&#8217;t speculative.</p><p>When <a href="https://www.swebench.com/original.html">SWE-bench</a> launched in October 2023, the best AI systems solved under 2% of real-world GitHub issues autonomously. By March 2024, <a href="https://www.cognition.ai/blog/swe-bench-technical-report">Devin reached 13.86%</a>. It was the first agentic system to show real traction. Today, top systems exceed 75% on <a href="https://www.swebench.com/">SWE-bench Verified</a>.</p><p>The improvement came from better models, better tooling, and most importantly, agentic scaffolding that lets AI systems iterate on their own code until tests pass.</p><p>AI tools are now building AI tools. <a href="https://www.anthropic.com/news/cowork">Anthropic built Cowork</a>, a general-purpose desktop agent, in approximately ten days, with the code written primarily by Claude Code itself.</p><p><a href="https://cursor.com/blog/scaling-agents">Cursor recently demonstrated</a> what sustained autonomous development looks like: hundreds of AI agents running for a week straight, generating three million lines of Rust code for a browser built from scratch. The browser &#8220;kind of works.&#8221; But the lesson is clear: coordinated, autonomous software development at scale is no longer theoretical.</p><h3><strong>What Near-Zero Marginal Cost Means</strong></h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!CKdv!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6d41e88-c14b-43b7-9186-43b7f0315bc4_1376x768.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!CKdv!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6d41e88-c14b-43b7-9186-43b7f0315bc4_1376x768.jpeg 424w, https://substackcdn.com/image/fetch/$s_!CKdv!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6d41e88-c14b-43b7-9186-43b7f0315bc4_1376x768.jpeg 848w, https://substackcdn.com/image/fetch/$s_!CKdv!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6d41e88-c14b-43b7-9186-43b7f0315bc4_1376x768.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!CKdv!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6d41e88-c14b-43b7-9186-43b7f0315bc4_1376x768.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!CKdv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6d41e88-c14b-43b7-9186-43b7f0315bc4_1376x768.jpeg" width="1376" height="768" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b6d41e88-c14b-43b7-9186-43b7f0315bc4_1376x768.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:768,&quot;width&quot;:1376,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Article content&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="Article content" title="Article content" srcset="https://substackcdn.com/image/fetch/$s_!CKdv!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6d41e88-c14b-43b7-9186-43b7f0315bc4_1376x768.jpeg 424w, https://substackcdn.com/image/fetch/$s_!CKdv!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6d41e88-c14b-43b7-9186-43b7f0315bc4_1376x768.jpeg 848w, https://substackcdn.com/image/fetch/$s_!CKdv!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6d41e88-c14b-43b7-9186-43b7f0315bc4_1376x768.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!CKdv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6d41e88-c14b-43b7-9186-43b7f0315bc4_1376x768.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 role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Exploring alternatives becomes cheaper</p><p><strong>Exploring alternatives becomes cheaper.</strong> You can try three approaches instead of committing to one upfront. Build the feature two different ways and see which performs better. The cost of being wrong early drops dramatically.</p><p><strong>First versions come faster.</strong> Getting to something testable takes less time. The gap between &#8220;idea&#8221; and &#8220;working prototype&#8221; compresses.</p><p><strong>The bottleneck shifts from production to specification.</strong> When producing code is cheap, the constraint moves to knowing what code to produce. Defining the problem well, specifying the requirements precisely, and understanding what users actually need. Design lives here.</p><div><hr></div><h3><strong>Why This Changes Design</strong></h3><p>When the cost of a downstream activity collapses, it restructures the purpose and methods of everything upstream.</p><p>Design exists upstream of software development. It feeds into it. Traditionally, design served a specific economic function: <strong>risk mitigation for expensive downstream work</strong>.</p><h3><strong>The Traditional Logic</strong></h3><p>The reasoning was straightforward:</p><ul><li><p>Software is expensive to build</p></li><li><p>Building the wrong thing wastes that investment</p></li><li><p>Therefore, explore and validate <em>before</em> committing to code</p></li></ul><p>This created an entire methodology: wireframes, prototypes, usability testing, and concept validation. All proxies for the real thing, because the real thing costs too much to build speculatively.</p><h3><strong>The Inversion</strong></h3><p>If agent swarms collapse the marginal cost of working software to near-zero, this logic inverts.</p><p><strong>Why prototype when you can ship?</strong></p><p>Instead of testing a prototype with 8 users, you could deploy actual variants to real users in production. Instead of debating whether users will understand a flow, you could build the candidate flows and measure. Multivariate testing platforms already generate and test hundreds of combinations simultaneously, varying headlines, layouts, CTAs, and imagery across pages. This isn&#8217;t A/B testing as we know it. It&#8217;s parallel exploration of the solution space.</p><p>Stitch Fix offers a glimpse of what this looks like for product generation. Their Outfit Creation Model generates <a href="https://newsroom.stitchfix.com/blog/how-were-revolutionizing-personal-styling-with-generative-ai/">13 million new outfit combinations every day</a>, trained on millions of stylist-created outfits, considering real-time inventory and client preferences. They&#8217;re not prototyping outfit ideas. They&#8217;re generating and testing them at a scale no human team could match. This is AI-native product generation, not UI design. But it demonstrates the principle: when generation is cheap, you explore the solution space directly rather than through proxies.</p><p>This doesn&#8217;t mean prototyping vanishes. Prototypes still have value for rapid conceptual exploration, stakeholder alignment, and situations where production deployment infrastructure is the bottleneck. But the economic logic points toward a shift: the burden of proof moves from &#8220;why build this?&#8221; to &#8220;why <em>not</em> just ship it and learn?&#8221;</p><h2><strong>The New Workflow</strong></h2><p>This is the direction the economics point toward</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!IwPK!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6cd42052-f560-459f-81ab-25e2646c1750_1376x768.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!IwPK!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6cd42052-f560-459f-81ab-25e2646c1750_1376x768.png 424w, https://substackcdn.com/image/fetch/$s_!IwPK!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6cd42052-f560-459f-81ab-25e2646c1750_1376x768.png 848w, https://substackcdn.com/image/fetch/$s_!IwPK!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6cd42052-f560-459f-81ab-25e2646c1750_1376x768.png 1272w, https://substackcdn.com/image/fetch/$s_!IwPK!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6cd42052-f560-459f-81ab-25e2646c1750_1376x768.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!IwPK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6cd42052-f560-459f-81ab-25e2646c1750_1376x768.png" width="1376" height="768" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6cd42052-f560-459f-81ab-25e2646c1750_1376x768.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:768,&quot;width&quot;:1376,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Article content&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="Article content" title="Article content" srcset="https://substackcdn.com/image/fetch/$s_!IwPK!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6cd42052-f560-459f-81ab-25e2646c1750_1376x768.png 424w, https://substackcdn.com/image/fetch/$s_!IwPK!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6cd42052-f560-459f-81ab-25e2646c1750_1376x768.png 848w, https://substackcdn.com/image/fetch/$s_!IwPK!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6cd42052-f560-459f-81ab-25e2646c1750_1376x768.png 1272w, https://substackcdn.com/image/fetch/$s_!IwPK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6cd42052-f560-459f-81ab-25e2646c1750_1376x768.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Traditional Design &amp; Build vs New</p><p><strong>Traditional</strong></p><ul><li><p>Research &#8594; Design &#8594; Build &#8594; Test</p></li><li><p>3 concepts tested as prototypes</p></li><li><p>8-12 research participants</p></li><li><p>Months of iteration</p></li></ul><p><strong>Zero-Marginal-Cost Model</strong></p><ul><li><p>Define needs &#8594; Specify parameters &#8594; Generate variants &#8594; Deploy &#8594; Measure &#8594; Converge</p></li><li><p>Hundreds of combinations tested in production (via multivariate testing)</p></li><li><p>Real user behavior at scale</p></li><li><p>Days or weeks</p></li></ul><div><hr></div><h3><strong>What Design Becomes</strong></h3><p>As the integration between AI generation and experimentation infrastructure matures, the designer&#8217;s role shifts. How quickly this happens depends on how fast the emerging tools become reliable and widespread. But the direction is clear enough to act on now.</p><h3><strong>For Designers: From Artifacts to Specifications</strong></h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!3YTe!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F737f8412-88d7-4bb1-aa4a-431aa8d50900_1376x768.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!3YTe!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F737f8412-88d7-4bb1-aa4a-431aa8d50900_1376x768.jpeg 424w, https://substackcdn.com/image/fetch/$s_!3YTe!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F737f8412-88d7-4bb1-aa4a-431aa8d50900_1376x768.jpeg 848w, https://substackcdn.com/image/fetch/$s_!3YTe!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F737f8412-88d7-4bb1-aa4a-431aa8d50900_1376x768.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!3YTe!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F737f8412-88d7-4bb1-aa4a-431aa8d50900_1376x768.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!3YTe!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F737f8412-88d7-4bb1-aa4a-431aa8d50900_1376x768.jpeg" width="1376" height="768" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/737f8412-88d7-4bb1-aa4a-431aa8d50900_1376x768.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:768,&quot;width&quot;:1376,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Article content&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="Article content" title="Article content" srcset="https://substackcdn.com/image/fetch/$s_!3YTe!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F737f8412-88d7-4bb1-aa4a-431aa8d50900_1376x768.jpeg 424w, https://substackcdn.com/image/fetch/$s_!3YTe!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F737f8412-88d7-4bb1-aa4a-431aa8d50900_1376x768.jpeg 848w, https://substackcdn.com/image/fetch/$s_!3YTe!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F737f8412-88d7-4bb1-aa4a-431aa8d50900_1376x768.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!3YTe!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F737f8412-88d7-4bb1-aa4a-431aa8d50900_1376x768.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 role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>The designer&#8217;s core competency is integration: taking inputs from research, business, and technical constraints and synthesizing them into solutions that satisfy all three. That doesn&#8217;t change. But when generation becomes cheap, this skill expresses itself differently.</p><p>You&#8217;re not designing a screen. You&#8217;re designing the boundaries of what screens could exist. The output shifts from wireframes and prototypes to specifications that define what a solution must do, what it must never do, and how you&#8217;ll know if it worked.</p><p><strong>Stop:</strong> Spending time on pixel-level execution that can be generated. Treating prototypes as the primary learning vehicle when variants could ship.</p><p><strong>Start:</strong> Translating research insights and business requirements into specifications precise enough to guide generation. Defining evaluation criteria before variants exist - hat&#8217;s the bounding box? Designing experiments, not screens. Define the scope scope of the solution space. The where to explore - the constraints.</p><p>Maybe Jensen Huang CEO of NVIDIA said it best.</p><p>Captions are auto generated</p><p>Play</p><p>Smart is someone technically astute but with empathy</p><blockquote><p>&#8220;The traditional definition of smart &#8212; solving technical problems &#8212; is a commodity. That&#8217;s the first thing AI solved. The real definition of smart is someone at the intersection of technical ability and human empathy, who can see around corners and preempt problems before they show up &#8212; through a combination of data analysis, life experience, wisdom, and sensing other people. That person might score horribly on the SAT.&#8221;</p></blockquote><p>Think about it.</p><h3><strong>For Researchers: The Interpretive Layer</strong></h3><p>When you can generate anything, knowing what to generate matters more. Researchers own this.</p><p><strong>Generative research</strong> surfaces human needs and identifies which directions are worth exploring. Before anyone can specify a solution, someone has to understand what users actually need. This doesn&#8217;t come from behavioral data. It comes from qualitative work that reveals needs users can&#8217;t articulate and opportunities metrics can&#8217;t capture.</p><p><strong>Interpretive research</strong> explains what behavioral data means. When you can deploy hundreds of variants, you get abundant data on <em>what</em> users do. The scarce resource becomes understanding <em>why</em>.</p><p>The <a href="http://booking.com/">Booking.com</a> <a href="https://vwo.com/blog/cro-best-practices-booking/">WiFi example</a> illustrates this. It comes from traditional A/B testing, not AI-generated variants, but the lesson applies even more as variant generation scales: quantitative testing of &#8220;WiFi Strength - Strong&#8221; labels showed no conversion lift. Only through user interviews did researchers discover guests cared about <em>what WiFi enabled</em> (Netflix streaming, email), not signal strength itself. The winning variant was &#8220;Fast Netflix Streaming.&#8221; Behavioral data alone would have missed 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_!sx9j!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F585c2dca-8c95-47ef-b41c-a0f78b382463_1376x768.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!sx9j!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F585c2dca-8c95-47ef-b41c-a0f78b382463_1376x768.jpeg 424w, https://substackcdn.com/image/fetch/$s_!sx9j!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F585c2dca-8c95-47ef-b41c-a0f78b382463_1376x768.jpeg 848w, https://substackcdn.com/image/fetch/$s_!sx9j!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F585c2dca-8c95-47ef-b41c-a0f78b382463_1376x768.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!sx9j!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F585c2dca-8c95-47ef-b41c-a0f78b382463_1376x768.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!sx9j!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F585c2dca-8c95-47ef-b41c-a0f78b382463_1376x768.jpeg" width="1376" height="768" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/585c2dca-8c95-47ef-b41c-a0f78b382463_1376x768.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:768,&quot;width&quot;:1376,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Article content&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="Article content" title="Article content" srcset="https://substackcdn.com/image/fetch/$s_!sx9j!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F585c2dca-8c95-47ef-b41c-a0f78b382463_1376x768.jpeg 424w, https://substackcdn.com/image/fetch/$s_!sx9j!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F585c2dca-8c95-47ef-b41c-a0f78b382463_1376x768.jpeg 848w, https://substackcdn.com/image/fetch/$s_!sx9j!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F585c2dca-8c95-47ef-b41c-a0f78b382463_1376x768.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!sx9j!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F585c2dca-8c95-47ef-b41c-a0f78b382463_1376x768.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 role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Qualitative insights remain a huge differentiator</p><p><strong>Stop treating</strong> qualitative and quantitative as sequential phases. Running studies in isolation from live experimentation.</p><p><strong>Start:</strong> Integrating into the experimentation loop. Identifying which directions are worth exploring before experiments begin. Interpreting what the numbers can&#8217;t explain. Being the person who asks, &#8220;What&#8217;s the WiFi really about?&#8221;</p><div><hr></div><h2><strong>The Evidence</strong></h2><p>Three things need to be true for the thesis of this essay to hold: experimentation at scale must be valuable, AI must be able to generate variants cheaply, and the two must integrate. The first is proven. The second is proven. The third is emerging.</p><h3><strong>Experimentation at Scale Works</strong></h3><p>The largest digital companies have already demonstrated that continuous experimentation drives results.</p><p><strong><a href="https://engineering.atspotify.com/2020/01/for-your-ears-only-personalizing-spotify-home-with-machine-learning/">Spotify</a></strong> ($17B) says there is no single Spotify. There&#8217;s a version for every user. Their homepage uses multi-armed bandits to balance exploration and exploitation in real-time, continuously testing which content surfaces best for each listener. Their experimentation platform, Confidence, has scaled to <a href="https://engineering.atspotify.com/2025/09/spotifys-experiments-with-learning-framework/">over 300 teams running experiments regularly</a>.</p><p><strong><a href="http://booking.com/">Booking.com</a></strong> ($24B) runs 25,000+ A/B tests annually. That&#8217;s roughly 70 tests launching every single day, with 1,000 concurrent experiments deployable across 75 countries in under an hour.</p><p><strong><a href="https://netflixtechblog.com/experimentation-is-a-major-focus-of-data-science-across-netflix-f67923f8e985">Netflix</a></strong> ($39B) runs thousands of streaming experiments per year, with automation enabling engineers to configure, deploy, and analyze tests from a single file.</p><p>These companies built their experimentation infrastructure over years, with large engineering teams, before the current AI moment. They prove that experimentation at scale is valuable. They don&#8217;t prove that AI is generating the variants. But they set the benchmark: this is what&#8217;s possible when you treat every user interaction as a learning opportunity.</p><h3><strong>The Value Extends Across Revenue Scales</strong></h3><p>Experimentation isn&#8217;t only for companies with hundreds of millions of users.</p><p><strong><a href="https://www.ea.com/">Electronic Arts</a></strong> ($7.6B) learned through A/B testing that pre-order incentives can backfire. They discovered that certain bonus structures reduced conversions rather than lifting them.</p><p><strong><a href="https://www.clarks.com/">Clarks</a></strong> ($1.1B), the 200-year-old footwear retailer, discovered &#163;2.8 million in hidden annual revenue by testing shipping messaging visibility. Customers weren&#8217;t abandoning because of price. They didn&#8217;t know how close they were to free shipping.</p><p>At $35&#8211;50M in revenue, companies like <strong><a href="https://blog.evolv.ai/curiosity-stream-case-study">Curiosity Stream</a></strong> and <strong><a href="https://blog.evolv.ai/tea-collection-case-study">Tea Collection</a></strong> have tested hundreds of variant combinations across key pages, generating measurable revenue lift. Tea Collection&#8217;s head of e-commerce said it &#8220;created a culture of experimentation across our organization.&#8221;</p><h3><strong>The Experimentation Infrastructure Is Emerging</strong></h3><p>The experimentation infrastructure exists. The AI generation capability exists. What&#8217;s emerging is the connection between them.</p><p><a href="https://vwo.com/blog/ab-testing-gpt-3-5-turbo-ai/">VWO</a> has integrated GPT-3.5 to suggest copy variations directly in its visual editor. This is AI-assisted variant creation, though it still requires human selection and deployment. <a href="https://evolv.ai/home-1">Evolv AI</a> goes further, using machine learning to automatically combine and optimize variants, with newer generative AI features for creating copy and images. <a href="https://blog.evolv.ai/velocity-equals-customer-acquisition-and-revenue-for-po-cruises">P&amp;O Cruises</a> reported achieving &#8220;6 years worth of experimentation in 3 months&#8221; using Evolv&#8217;s platform, testing 72 combinations to find a variant that generated &#163;1.3 million in incremental revenue.</p><p>Newer tools like <a href="https://www.mida.so/">Mida</a>, <a href="https://www.keak.com/">Keak</a>, and <a href="https://fibr.ai/">Fibr AI</a> are building explicitly around AI-generated variants. You describe a change in natural language, and the system creates and deploys the experiment. These are early, but they point toward where the integration is heading.</p><p>The full realization is not yet widespread: AI that generates variants from specification at machine speed and cost, deploys them to production, measures results, and converges on winners with minimal human intervention. But the trajectory is clear. The companies that connect these pieces will operate differently than those still treating experimentation as a quarterly initiative.</p><div><hr></div><h2><strong>The Hard Problems</strong></h2><h3><strong>Ethical Boundaries</strong></h3><p>Not everything should be an experiment. Some variants might be manipulative, confusing, or harmful. The speed of generation outpaces the speed of ethical review.</p><p>When you can deploy hundreds of variant combinations overnight, governance becomes a bottleneck that can&#8217;t be ignored. Ethical constraints must be built into specifications <em>before</em> generation begins.</p><h3><strong>Infrastructure for Measurement</strong></h3><p>This model assumes solid systems for deploying variants, tracking outcomes, and converging on winners. <a href="http://booking.com/">Booking.com</a> built this infrastructure over years. But the timeline is compressing: platforms like Evolv AI, VWO, and <a href="https://webflow.com/feature/optimize">Webflow Optimize</a> now offer this as a service. A children&#8217;s clothing retailer can run 341 variant combinations; a regional bank can triple conversions through systematic testing. The infrastructure that was once a competitive moat is becoming table stakes.</p><h3><strong>The Risk of Losing Depth</strong></h3><p>Behavioral data tells you what happened. It doesn&#8217;t tell you what to try next. If organizations lean too heavily on generated variants and measured outcomes, they risk losing the deeper understanding that comes from talking to users directly. The researchers who ask &#8220;what&#8217;s the WiFi really about?&#8221; prevent optimization from becoming a local maximum search with no way out.</p><div><hr></div><h2><strong>Conclusion</strong></h2><p>The economics of code are changing. That much is proven. As production costs collapse, the economic logic points upstream: the value shifts to the work that determines what gets produced.</p><p>The full integration of AI generation with experimentation infrastructure is not yet widespread. The pieces exist. Experimentation at scale is proven valuable. AI can generate variants cheaply. The connection between them is emerging. Companies like P&amp;O Cruises and Tea Collection offer early evidence. Tools like VWO, Evolv AI, and newer entrants are building toward this future.</p><p>The question is not whether this integration will happen, but when. And for design teams, the question is whether to build the capabilities now or catch up later.</p><p>The skills that become more valuable are the ones that remain scarce when generation is cheap: deep understanding of human needs, precise articulation of requirements, and the judgment to know when the numbers are lying.</p>]]></content:encoded></item><item><title><![CDATA[The Agentic UI Landscape: A Primer (Part 1/2)]]></title><description><![CDATA[An exploration into the present and future of Agentic & Generative UX and UI design.]]></description><link>https://kcwolfy.substack.com/p/the-agentic-ui-landscape-a-primer</link><guid isPermaLink="false">https://kcwolfy.substack.com/p/the-agentic-ui-landscape-a-primer</guid><dc:creator><![CDATA[KC]]></dc:creator><pubDate>Mon, 05 Jan 2026 01:21:22 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!0TEd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F77453f35-a1d3-493f-88cb-841f4f3d58aa_1279x720.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!0TEd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F77453f35-a1d3-493f-88cb-841f4f3d58aa_1279x720.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!0TEd!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F77453f35-a1d3-493f-88cb-841f4f3d58aa_1279x720.jpeg 424w, https://substackcdn.com/image/fetch/$s_!0TEd!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F77453f35-a1d3-493f-88cb-841f4f3d58aa_1279x720.jpeg 848w, https://substackcdn.com/image/fetch/$s_!0TEd!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F77453f35-a1d3-493f-88cb-841f4f3d58aa_1279x720.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!0TEd!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F77453f35-a1d3-493f-88cb-841f4f3d58aa_1279x720.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!0TEd!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F77453f35-a1d3-493f-88cb-841f4f3d58aa_1279x720.jpeg" width="1279" height="720" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/77453f35-a1d3-493f-88cb-841f4f3d58aa_1279x720.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:720,&quot;width&quot;:1279,&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;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!0TEd!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F77453f35-a1d3-493f-88cb-841f4f3d58aa_1279x720.jpeg 424w, https://substackcdn.com/image/fetch/$s_!0TEd!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F77453f35-a1d3-493f-88cb-841f4f3d58aa_1279x720.jpeg 848w, https://substackcdn.com/image/fetch/$s_!0TEd!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F77453f35-a1d3-493f-88cb-841f4f3d58aa_1279x720.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!0TEd!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F77453f35-a1d3-493f-88cb-841f4f3d58aa_1279x720.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 role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>January 17, 2026</p><p>2025 was the year user interfaces started breaking out of the AI chat box. New standards and protocols emerged defining how user interfaces will work alongside smart agentic systems. If you are not already in the know, join me, and strap in. 2026 is going to be a hell of a ride.</p><p>This primer is in two parts. <strong>Part 1</strong> covers the four types of surfaces where AI agents meet users. It&#8217;s a conceptual grounding for anyone thinking about how UX and UI work alongside AI. <strong>Part 2</strong> gets into the agentic UI stack: the protocols, the architectural choices, the tradeoffs. That&#8217;s for people ready to understand and build.</p><p>Pick your adventure.</p><div><hr></div><h2><strong>The Four Surfaces</strong></h2><h3><strong>The Core Problem: Agents (still) Need Interfaces</strong></h3><p>Consider a travel agent, but not a human one. An AI agent helping someone book a trip. The agent has found three flight options. Now what?</p><p><strong>Option A: Text</strong></p><blockquote><p>&#8220;I found three flights. Option 1: Delta, departing 8:15 AM, $342. Option 2: United, departing 10:30 AM, $298. Option 3: American, departing 2:45 PM, $315. Which would you prefer?&#8221;</p></blockquote><p>This works. It&#8217;s also exhausting to read or, alternatively, listen to. The user has to parse three options, hold them in memory, and compare mentally. We invented tables for a reason.</p><p><strong>Option B: Generated UI</strong></p><p>The agent renders a comparison card with sortable columns, visual price indicators, and a &#8220;Select&#8221; button for each option. The user glances, compares, taps, or clicks.</p><p>Option B is probably better (depending on context). But it raises hard questions. How does the agent describe what it wants to show? How does your application render it? What if the agent is a third-party service you don&#8217;t control?</p><p>These are the questions the industry started answering in 2025. Before we get to <em>how</em> (Part 2), let&#8217;s understand <em>what</em>. The different surfaces where agents and users actually meet.</p><div><hr></div><h3><strong>Four Surfaces: Where Agents Meet Users</strong></h3><p>Agent interfaces aren&#8217;t one thing. They show up in distinct patterns, each with different interaction models. The spectrum runs from pure conversation to pure application UI, with two hybrids in between.</p><p><strong>Chat</strong> &#8212; Primary: Conversation. The agent is conversational (e.g., ChatGPT).</p><p><strong>Chat with UI&#8212;Primary:</strong> Conversation. Secondary: Embedded UI. The agent is an interactive chat.</p><p><strong>UI with Chat</strong> &#8212; Primary: Application. Secondary: Embedded chat. The agent is contextual assistance. </p><p><strong>Generative UI</strong> &#8212; Primary: Application. The agent is embedded intelligence.</p><div><hr></div><h3><strong>Chat</strong></h3><p><em>Maturity: Mature</em></p><p>This one we are most familiar with e.g. ChatGPT, Claude, Gemini. Chat works well for open-ended exploration, Q&amp;A, and tasks where the user drives the interaction. But it hits limits fast. Complex comparisons become walls of text - bullet lists or tables. Multi-step workflows require the user to hold state in their head. Rich interactions like selecting from options feel clunky.</p><p><strong>Examples:</strong> ChatGPT, Claude, Gemini, customer support bots, voice assistants.</p><p>Chat is the starting point. Not the destination.</p><p>Note: As of writing Chat GPT has over 800M weekly users. So no screenshot for this one. Its what we know already.</p><div><hr></div><h3><strong>Chat with UI</strong></h3><p><em>Maturity: Emerging</em></p><p>Chat with embedded UI. The conversational backbone remains, but agents can inject interactive components into the flow. Cards, forms, charts, buttons, tables.</p><p>The flight comparison example from earlier is Chat with UI. The agent responds conversationally (&#8221;I found three options that match your criteria&#8221;) and renders a comparison component inline. The user can still type, but they can also click, select, interact and direct.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!wQvk!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b042aa0-e208-4e07-9f26-434afe37b789_1456x819.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!wQvk!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b042aa0-e208-4e07-9f26-434afe37b789_1456x819.png 424w, https://substackcdn.com/image/fetch/$s_!wQvk!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b042aa0-e208-4e07-9f26-434afe37b789_1456x819.png 848w, https://substackcdn.com/image/fetch/$s_!wQvk!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b042aa0-e208-4e07-9f26-434afe37b789_1456x819.png 1272w, https://substackcdn.com/image/fetch/$s_!wQvk!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b042aa0-e208-4e07-9f26-434afe37b789_1456x819.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!wQvk!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b042aa0-e208-4e07-9f26-434afe37b789_1456x819.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8b042aa0-e208-4e07-9f26-434afe37b789_1456x819.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;Article content&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="Article content" title="Article content" srcset="https://substackcdn.com/image/fetch/$s_!wQvk!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b042aa0-e208-4e07-9f26-434afe37b789_1456x819.png 424w, https://substackcdn.com/image/fetch/$s_!wQvk!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b042aa0-e208-4e07-9f26-434afe37b789_1456x819.png 848w, https://substackcdn.com/image/fetch/$s_!wQvk!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b042aa0-e208-4e07-9f26-434afe37b789_1456x819.png 1272w, https://substackcdn.com/image/fetch/$s_!wQvk!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b042aa0-e208-4e07-9f26-434afe37b789_1456x819.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Expedia</p><p><a href="https://openai.com/index/introducing-apps-in-chatgpt/">OpenAI&#8217;s App Store launched</a> in December 2025 with <a href="https://chatgpt.com/apps">16 apps</a> and is the clearest example of this emergent pattern at scale. Mention Zillow and you can ask ChatGPT to find you an apartment - the Zillow app renders interactive listings right in the conversation.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!d1nb!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F859d033c-58bd-4496-85fe-b9fbad76f903_1456x856.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!d1nb!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F859d033c-58bd-4496-85fe-b9fbad76f903_1456x856.png 424w, https://substackcdn.com/image/fetch/$s_!d1nb!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F859d033c-58bd-4496-85fe-b9fbad76f903_1456x856.png 848w, https://substackcdn.com/image/fetch/$s_!d1nb!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F859d033c-58bd-4496-85fe-b9fbad76f903_1456x856.png 1272w, https://substackcdn.com/image/fetch/$s_!d1nb!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F859d033c-58bd-4496-85fe-b9fbad76f903_1456x856.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!d1nb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F859d033c-58bd-4496-85fe-b9fbad76f903_1456x856.png" width="1456" height="856" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/859d033c-58bd-4496-85fe-b9fbad76f903_1456x856.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;:null,&quot;alt&quot;:&quot;Article content&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="Article content" title="Article content" srcset="https://substackcdn.com/image/fetch/$s_!d1nb!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F859d033c-58bd-4496-85fe-b9fbad76f903_1456x856.png 424w, https://substackcdn.com/image/fetch/$s_!d1nb!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F859d033c-58bd-4496-85fe-b9fbad76f903_1456x856.png 848w, https://substackcdn.com/image/fetch/$s_!d1nb!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F859d033c-58bd-4496-85fe-b9fbad76f903_1456x856.png 1272w, https://substackcdn.com/image/fetch/$s_!d1nb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F859d033c-58bd-4496-85fe-b9fbad76f903_1456x856.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>ChatGPT App Store</p><p>Ask Spotify for a playlist the Spotify app shows a playable interface. Ask Canva to create a presentation, and Canva renders an editable deck. Other launch partners include <a href="http://booking.com/">Booking.com</a>, DoorDash, Expedia, and Coursera. Note: As of writing you have to mention the product by name or @ it to interact.</p><p><strong>Examples:</strong> ChatGPT Apps (Spotify, Canva, Zillow, DoorDash, <a href="http://booking.com/">Booking.com</a>), Claude Artifacts, ChatGPT Canvas.</p><p>Chat with UI is where most production agentic applications are heading right now. It keeps the flexibility of conversation while adding the efficiency of purpose-built interfaces.</p><div><hr></div><h3><strong>UI with Chat</strong></h3><p><em>Maturity: Emerging</em></p><p>Application with embedded chat. The inverse of Chat with UI. The user&#8217;s primary experience is a UI: a dashboard, a design tool, an IDE, or a document editor. A chat panel sits alongside, available for conversing with an agent while working.</p><p>The user doesn&#8217;t come to chat. They come to <em>do</em>. But when they need help, the agent is there. And because it&#8217;s embedded in the application, it already has context about what you&#8217;re working on. More importantly, the agent can act. It can modify the document, update the design, and run the code. You describe what you want; the agent does it in the interface.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!qUHa!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F100fa897-5ce1-4b0e-a52f-597191193635_1800x945.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!qUHa!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F100fa897-5ce1-4b0e-a52f-597191193635_1800x945.png 424w, https://substackcdn.com/image/fetch/$s_!qUHa!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F100fa897-5ce1-4b0e-a52f-597191193635_1800x945.png 848w, https://substackcdn.com/image/fetch/$s_!qUHa!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F100fa897-5ce1-4b0e-a52f-597191193635_1800x945.png 1272w, https://substackcdn.com/image/fetch/$s_!qUHa!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F100fa897-5ce1-4b0e-a52f-597191193635_1800x945.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!qUHa!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F100fa897-5ce1-4b0e-a52f-597191193635_1800x945.png" width="1456" height="764" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/100fa897-5ce1-4b0e-a52f-597191193635_1800x945.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:764,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Article content&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="Article content" title="Article content" srcset="https://substackcdn.com/image/fetch/$s_!qUHa!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F100fa897-5ce1-4b0e-a52f-597191193635_1800x945.png 424w, https://substackcdn.com/image/fetch/$s_!qUHa!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F100fa897-5ce1-4b0e-a52f-597191193635_1800x945.png 848w, https://substackcdn.com/image/fetch/$s_!qUHa!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F100fa897-5ce1-4b0e-a52f-597191193635_1800x945.png 1272w, https://substackcdn.com/image/fetch/$s_!qUHa!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F100fa897-5ce1-4b0e-a52f-597191193635_1800x945.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Cursor IDE</p><p>The most mature examples are in agentic coding. Cursor, Windsurf, and more recently Google&#8217;s Antigravity let developers work in a full IDE while conversing with an agent that can see their codebase and make changes directly. You highlight a function, ask, &#8220;Refactor this to handle errors better,&#8221; and the agent rewrites it in place. Alternatively, Loveable and v0-style agentic apps direct the agent to build the application you imagine with a prompt. Whereas Loveable, Replit, v0, and that ilk handle integration with 3rd party databases (like Supabase), tools like Cursor remain more hands-on.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!6YjW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6c117e4-bc9b-4cc8-aaab-b06ad5e5f4d1_1456x815.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!6YjW!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6c117e4-bc9b-4cc8-aaab-b06ad5e5f4d1_1456x815.png 424w, https://substackcdn.com/image/fetch/$s_!6YjW!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6c117e4-bc9b-4cc8-aaab-b06ad5e5f4d1_1456x815.png 848w, https://substackcdn.com/image/fetch/$s_!6YjW!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6c117e4-bc9b-4cc8-aaab-b06ad5e5f4d1_1456x815.png 1272w, https://substackcdn.com/image/fetch/$s_!6YjW!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6c117e4-bc9b-4cc8-aaab-b06ad5e5f4d1_1456x815.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!6YjW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6c117e4-bc9b-4cc8-aaab-b06ad5e5f4d1_1456x815.png" width="1456" height="815" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a6c117e4-bc9b-4cc8-aaab-b06ad5e5f4d1_1456x815.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;:null,&quot;alt&quot;:&quot;Article content&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="Article content" title="Article content" srcset="https://substackcdn.com/image/fetch/$s_!6YjW!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6c117e4-bc9b-4cc8-aaab-b06ad5e5f4d1_1456x815.png 424w, https://substackcdn.com/image/fetch/$s_!6YjW!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6c117e4-bc9b-4cc8-aaab-b06ad5e5f4d1_1456x815.png 848w, https://substackcdn.com/image/fetch/$s_!6YjW!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6c117e4-bc9b-4cc8-aaab-b06ad5e5f4d1_1456x815.png 1272w, https://substackcdn.com/image/fetch/$s_!6YjW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6c117e4-bc9b-4cc8-aaab-b06ad5e5f4d1_1456x815.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Excel Copilot</p><p>Agentic browsers such as Perplexity&#8217;s Comet also offer good insight into this pattern. The agent is aware of the content of the page and can &#8216;act&#8217; as a user when requested.</p><p>Play</p><p>Perplexity&#8217;s Comet agentic browser</p><p> <a href="https://blog.google/products/ads-commerce/ads-advisor-and-analytics-advisor/">Google Analytics - Analytics Advisor</a> is another example of how this is coming to life in the SaaS space. The protocols and tooling are ready. The applications are catching up.</p><p>Play</p><p>Google Analytics Advisor</p><p><strong>Examples:</strong> Google Analytics (analytics), Cursor, Windsurf (coding); Notion AI, Excel Copilot (productivity), Perplexity Comet (web browser).</p><p>UI with Chat is powerful when the user&#8217;s mental model is &#8220;I&#8217;m working in an application&#8221; rather than &#8220;I&#8217;m talking to an AI.&#8221; The chat is a feature, not the product. The common pattern, per the examples shared, is the content framed and the chat adjacent.</p><div><hr></div><h3><strong>Generative UI</strong></h3><p><em>Maturity: Frontier</em></p><p>Play</p><p>CoPilotKit</p><p>Pure application interface. The agent isn&#8217;t a conversational partner; it&#8217;s the intelligence <em>behind</em> and generating the application. Users interact with the UI directly; the agent decides what to show, what to highlight, and what options to provide. This can include a conversation element, but the key distinction is that what&#8217;s displayed has been partially or fully generated and orchestrated by an agentic layer.</p><p>Google validated this pattern in November 2025. Their research team published <a href="https://generativeui.github.io/static/pdfs/paper.pdf">&#8220;Generative UI: LLMs are Effective UI Generators,&#8221;</a> demonstrating that AI models can generate not just content but entire user experiences. Web pages, games, tools, applications. All designed and fully customized in response to any prompt. A single word. A paragraph of instructions. Doesn&#8217;t matter.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!5L-m!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa83fdc3f-30c3-4be6-a71f-8df1ed080c63_1250x402.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!5L-m!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa83fdc3f-30c3-4be6-a71f-8df1ed080c63_1250x402.png 424w, https://substackcdn.com/image/fetch/$s_!5L-m!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa83fdc3f-30c3-4be6-a71f-8df1ed080c63_1250x402.png 848w, https://substackcdn.com/image/fetch/$s_!5L-m!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa83fdc3f-30c3-4be6-a71f-8df1ed080c63_1250x402.png 1272w, https://substackcdn.com/image/fetch/$s_!5L-m!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa83fdc3f-30c3-4be6-a71f-8df1ed080c63_1250x402.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!5L-m!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa83fdc3f-30c3-4be6-a71f-8df1ed080c63_1250x402.png" width="1250" height="402" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a83fdc3f-30c3-4be6-a71f-8df1ed080c63_1250x402.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:402,&quot;width&quot;:1250,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Article content&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="Article content" title="Article content" srcset="https://substackcdn.com/image/fetch/$s_!5L-m!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa83fdc3f-30c3-4be6-a71f-8df1ed080c63_1250x402.png 424w, https://substackcdn.com/image/fetch/$s_!5L-m!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa83fdc3f-30c3-4be6-a71f-8df1ed080c63_1250x402.png 848w, https://substackcdn.com/image/fetch/$s_!5L-m!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa83fdc3f-30c3-4be6-a71f-8df1ed080c63_1250x402.png 1272w, https://substackcdn.com/image/fetch/$s_!5L-m!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa83fdc3f-30c3-4be6-a71f-8df1ed080c63_1250x402.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Left: Fashion advice. Middle: Learning about fractals. Right: Teaching mathematics</p><p>The results? Sites designed by human experts had the highest preference rates. Generated UI came in second, close behind. Then everything else: the top Google Search result for the query, raw LLM text, standard markdown. The generated interfaces were strongly preferred over all standard LLM output formats.</p><p>The paper frames this as &#8220;a first step toward fully AI-generated user experiences, where users automatically get dynamic interfaces tailored to their needs, rather than having to select from an existing catalog of applications.&#8221;</p><p>Read that again. Rather than selecting from an existing catalog of applications. The implication: apps as we know them may be an intermediate form.</p><p>The capability is <a href="https://research.google/blog/generative-ui-a-rich-custom-visual-interactive-user-experience-for-any-prompt/">now live</a>, though still experimental. In the <a href="https://blog.google/products/gemini/gemini-3-gemini-app/">Gemini app</a>, it&#8217;s called &#8220;dynamic view&#8221; and runs as a Labs experiment on desktop (not mobile yet). In <a href="https://blog.google/products/search/gemini-3-search-ai-mode">Google Search AI Mode</a>, generative UI is available to Pro and Ultra subscribers in the US. Google is A/B testing both, so you might see different versions.</p><p>Play</p><p>Google search results with a Van Gogh dynamic gallery (created with Gemini)</p><p>The addition though is important. Google isn&#8217;t just publishing theoretical papers on the subject. They shipped it. It&#8217;s experimental, it&#8217;s limited, but it&#8217;s in production with real users.</p><p>But here&#8217;s what makes Generative UI truly frontier: it doesn&#8217;t stop at one-shot generation. In its full-blown form, the UX and UI orchestrator agent is hypothesizing interface improvements, building them and A/B testing them, then finally auto selecting the best. Think of a UI, eventually a product, subject to Darwinian style evolution. Google proved the foundation, but we have the trajectory.</p><p>Side note: This one is probably the most scary for a UX/UI designer today, and if you are one, I&#8217;d encourage you to embrace the change because it&#8217;s coming whether you want it or not. Ride the wave; don&#8217;t get hit by it.</p><p>This pattern takes several forms:</p><p><strong>Proactive/Ambient</strong>: The agent observes and surfaces insights without being asked. A dashboard that highlights &#8220;Revenue dropped 15% in Southeast region, here&#8217;s why.&#8221; A design tool that warns &#8220;These elements are misaligned.&#8221; The user didn&#8217;t ask. The agent noticed.</p><p><strong>Orchestration</strong>: The agent decides what to show, what to prioritize, what to fetch. The user sees a curated interface but doesn&#8217;t realize an agent is generating it.</p><p><strong>Responsive to manipulation</strong>: The user drags, clicks, selects. The agent responds by updating <em>other</em> parts of the interface. You move a box in a design tool; the agent suggests layout adjustments elsewhere.</p><p><strong>Invisible infrastructure</strong>: The agent is so embedded you don&#8217;t think about it as AI. Google Maps routing. Spotify&#8217;s recommendations. Smart home interfaces deciding what&#8217;s urgent.</p><p>Proto-examples of this pattern predate the current stack. Algorithmic feeds, recommendation engines, and apps like Google Maps and Waze have operated this way for years. What&#8217;s new is the tooling to build <em>generalized</em> Generative UI.</p><p>Tools like Lovable, Bolt, and v0 are particularly interesting here. Their interface is Chat and UI (you describe what you want, they show previews), but their <em>output</em> is an agent-authored application. An entire UI generated by an agentic layer. They&#8217;re meta-tools: Chat and UI interfaces that produce Agentic UI artifacts.</p><p><strong>Proto-examples:</strong> Google Gemini Search, Spotify, Waze, algorithmic feeds, recommendation systems.</p><p><strong>Tools enabling Agentic UI:</strong> A collection of emerging standards and protocols. See Part 2.</p><p>Generative UI is the frontier. The protocols exist. The tooling to create it exists. But production applications fully leveraging these new capabilities are only beginning to emerge. This is where agents stop being &#8220;AI features&#8221; and become invisible infrastructure.</p><div><hr></div><h3><strong>The Voice Dimension</strong></h3><p>Voice isn&#8217;t a fifth surface. It&#8217;s a modality that cuts across all four. But its impact varies depending on where you are on the spectrum.</p><p><strong>For Chat and Chat with UI, voice is convenience.</strong> You&#8217;re speaking instead of typing. Siri, Alexa, and ChatGPT voice mode are examples. It&#8217;s hands-free input, but you still need to look at the screen to see and interact with whatever UI the agent renders. Useful. Not transformative.</p><p><strong>For UI with Chat and Agentic UI, voice is control.</strong> You&#8217;re not just inputting. You&#8217;re commanding an intelligent system that can act. The agent changes state, modifies documents, orchestrates systems, and reports back. Voice becomes a way to operate an application, not just converse with it.</p><p>The difference is significant.</p><p><strong>UI with Chat + voice:</strong> You&#8217;re in Cursor, hands on the keyboard writing code. You <em>say</em> &#8220;refactor this function to handle the edge case we discussed.&#8221; The agent does it. You never broke flow. Voice isn&#8217;t replacing typing. It&#8217;s a parallel control channel while your hands do other work.</p><p><strong>Agentic &amp; Generative UI + voice:</strong> You&#8217;re driving. You say, &#8220;Cancel my 3pm, message Sarah that I&#8217;ll reschedule, and find me 30 minutes tomorrow for a replacement.&#8221; The agent does all of it. Then it says, &#8220;Done.&#8221; I noticed you have a conflict tomorrow morning. Want me to sort that out too?&#8221; Eyes on the road. Hands on the wheel. Full control of an intelligent system acting on your behalf.</p><p>This opens up:</p><ul><li><p>Parallel input: voice commands while hands do other tasks (driving, cooking, physical work).</p></li><li><p>Conversational feedback loops: the agent acts, describes outcomes, you course-correct verbally</p></li><li><p>Accessibility: agentic applications available to users who can&#8217;t rely on screens</p></li></ul><p>Voice in the first two patterns is a nicer way to talk to a chatbot. Voice in the last two is a way to command an intelligent application to create outcomes.</p><div><hr></div><h3><strong>Delegated UI</strong></h3><p><em>Maturity: Emerging</em></p><p>At the far end of the spectrum, the interface disappears. Not because design failed, but because the user isn&#8217;t there.</p><p>In Delegated, the user has handed off execution. &#8220;Book me the cheapest flight that gets me there by 6pm.&#8221; &#8220;Process expense reports that match policy, flag the ones that don&#8217;t.&#8221; &#8220;Schedule something with Sarah next week.&#8221; The agent acts. The user reviews outcomes later, or not at all.</p><p>This pattern isn&#8217;t new. Email filters, auto-pay, smart home routines, and Zapier workflows have operated this way for years. What&#8217;s new is agents with enough judgment to handle ambiguity, situations where pre-programmed rules would break. Klarna&#8217;s AI resolves customer service claims end-to-end. AI SDRs send outreach without human review. Replit agents maintain deployed applications autonomously.</p><p>This isn&#8217;t Generative UI. In Generative UI, the agent orchestrates what the user sees <em>in the moment</em>. In Delegated, there is no moment. The user set intent, explicitly or through learned preferences, and walked away.</p><p>The design challenges shift entirely:</p><ul><li><p>From &#8220;what does the user see?&#8221; to &#8220;what is the agent allowed to do?&#8221;</p></li><li><p>From &#8220;how does the user interact?&#8221; to &#8220;when does the agent escalate?&#8221;</p></li><li><p>From &#8220;what&#8217;s the flow?&#8221; to &#8220;what are the guardrails, cost ceilings, and rollback mechanisms?&#8221;</p></li></ul><p>Jakob Nielsen explores this shift in <a href="https://www.uxtigers.com/post/no-more-ui">No More User Interface?</a>, arguing designers will move from wireframes to operating manuals, defining policies and confidence thresholds rather than screens.</p><p>This is real design work. But it&#8217;s not UI design. Parts 1 and 2 of this series focus on the surfaces where users and agents still meet visually. We&#8217;ll return to Delegated and what it means to design for user absence in a future article.</p><div><hr></div><p>So that&#8217;s the territory (so far), and only lightly touched. Four surfaces, from mature to frontier, with voice as a force multiplier. If you&#8217;re here for a conceptual grounding, you have it. If you want to understand <em>how</em> to build these surfaces, the protocols, the architectural decisions, and the tradeoffs, continue to Part 2 (coming soon).</p>]]></content:encoded></item></channel></rss>