Taste: find what makes a UI look AI-generated, and fix it

/taste looks at the interface you're building and points out what reads as AI-generated or templated, then lets you choose what Darce fixes. When Darce writes UI itself, it runs the same checks on its own edits.

/taste                      # open the taste window for your app
/taste localhost:3000/pricing  # a specific page
/taste list                 # print the findings in the terminal instead
/taste off                  # stop the checks on Darce's own edits (/taste on turns them back on)

What it looks for

Darce renders your app in Chrome, at desktop and phone width, and opens a window with numbered pins on each finding:

  • purple or rainbow gradients, and gradient headlines
  • emoji standing in for icons
  • colored side stripes and glow blobs
  • filler marketing copy, and claims the page doesn't back up, such as made-up proof (the word list is based on no-ai-slop)
  • Tailwind's stock palette used unchanged

Each pin points to the file and line it comes from, including copy that lives in data files rather than in the component.

The System and Code tabs

  • System shows the page's style system as rendered: its palette, type scale, corner radii and typefaces.
  • Code looks at how the UI is built: the same class list pasted in many places, colors typed out across files, and components carrying a whole screen of state.

Fix or keep

Choose Fix or Keep for each item. Darce fixes the chosen ones while the window shows each step as it happens and asks for approvals in place. It ends on a before/after slider you can drag across.

Items you keep are remembered in .darce/taste.json.

The fixes run as a normal Darce task, so /undo reverses them like any other change.

Checks on Darce's own edits

When Darce writes UI, the lines it added are checked as part of the same step. Anything that reads as generated goes back to Darce straight away, so it cleans up its own work before you see it. /taste off turns this off.

Cleanup

The headless Chrome that /taste starts and the port its window uses are cleaned up when Darce exits.

See also: Commands for every slash command, and Swarm and derby for running several agents at once.


Next: Models · All docs · Model directory · Claude Code alternative