Two ways to change a UI

May 26, 2026 · WIP

Same job both times: a modified version of our UI, fast, without a designer or engineer hand-building each one. I keep running into this at Canary, and I'm not convinced we've cracked it.

What we keep needing
demos

Rebranded versions of the product for whichever enterprise prospect sales is pitching — their branding, their data, the right feature flags.

quick designs for eng tickets

Show a UI change — sometimes small, sometimes bigger — well enough that the team can react to it. Today: a screenshot into Figma Make, then iterate.

Two ways to do it

A Copy & edit

Make a static copy of the frontend, sample data baked in. A coding agent recolors it to spin up demo environments; the chatbot is the front door — point it at the customer's site, it rebrands.

We built this. It works. Three problems:

  • The copy drifts. Changes to the real frontend don't show up in the copy. Someone has to keep them in sync. This is the one that bothers me most.
  • Making it look good is slow. Many rounds with the agent — worse because the people driving it are non-technical (sales).
  • It just moves the cost center. Not paying for design anymore. Paying for engineering.

Take it seriously anyway. What would it actually need? A model that looks at the product the way a person does — screenshots, the rendered DOM and HTML, the source. We have all of that. The only real bar: can it do it well enough to stop needing constant steering?

Right now it can't — even Opus needs steering. But copying a whole codebase was never realistic before (months). Now it's two or three weeks. Still horrible work, and maybe the human isn't needed: if the code is throwaway — never ships, all black boxes — maybe nobody steers. Just a loop that keeps inspecting until an agent can pass it off.

B Live edit

No copy. Open the actual page — real branding, real data, real feature flags — and the page is the canvas. Describe a change; an agent reads the DOM, writes a bit of CSS or JS, injects it. Nothing to sync, because there's nothing to sync. You're already on the thing you'd ship.

Its own problems:

  • Complex apps resist JS injection. The agent has to work very hard to change anything structural.
  • Easy things stay easy, hard things stay hard. Colors and text, fine. Beyond that it's like Claude Code in a stripped-down environment — almost no tools — and the Max plans need handholding for decent quality.
Where it lands

Both bottleneck on the same thing: a model that can look at a UI and change it well without someone steering every step. A is feasible-but-grim manual work that might not even need a human. B is cleaner in principle but blocked on complex apps.

So is there a way to do this yet? Or are we just early?

app.pivot.co/settings
some website
the chat
Add a confirmation modal when the user clicks Delete.
Done. Delete now opens a modal — “Delete this item? This can’t be undone.” — with Cancel and Delete buttons, styled to match the page.
Make the Delete button red.
Updated — it’s red now, same rounded shape as your other buttons.
Now show a toast after it deletes… Send
a quick sketch of the idea
A · copy & edit
real frontend
static clone drifts ✕
agent recolors
demo per customer
B · live edit
the real page
describe a change
agent injects CSS / JS structural = hard
you're on the shipped thing