/coleoni-variants

Three real versions. Pick one.

Choosing between descriptions is guessing. The skill designs three genuinely different directions for a component, with the project’s own fonts and colors, applies each one to the live page, and lays them out next to the current version on desktop and phone. You choose 1, 2, 3 or a mix; it builds that one.

npx skills add c0le0ni/skills --skill coleoni-variants
View on GitHub
Claude Code, Codex and more 3 directions, not 3 tweaks In the real page Builds the one you pick
Three variations of a menu card next to the current one Each variation on desktop and on a phone The variations board on three phones
Example

Receipt, chalkboard or tiles?

The card next to the bakery’s headline: what’s ready, when, how much, what’s gone. Three positions, all in the brand’s colors and fonts, none adding a fact that isn’t on the page.

variants.json
{
  "title": "Today's menu card",
  "brief": "What's ready, when, how much,
            and what's gone. First.",
  "variants": [
    { "name": "Receipt",
      "note": "A printed ticket..." },
    { "name": "Chalkboard",
      "note": "The board behind..." },
    { "name": "Tiles",
      "note": "One tile per item..." }
  ]
}
3directions, each with its trade-off
2screens per variation
0variations breaking on the phone
1decision instead of a debate
How it works

Brief, three positions, the real page.

Each variation takes a clear position and says what it gives up. The board puts them in the page, where the decision actually happens.

  1. Reads the component

    Its markup, its CSS, the tokens it uses, and the project’s design rules.

  2. Writes the brief

    What the component is for and what the reader must get first. The variations compete on that.

  3. Designs three directions

    Quiet, branded, dense, or what fits the component. Same content, the project’s tokens.

  4. Applies them live

    Each one injected into the real page, with the real fonts, colors and neighbors.

  5. Lays out the board

    Current and the three, on desktop and a 390px phone, checked for sideways scroll and cut text.

  6. Builds your pick

    The way the project writes styles, with tokens, keeping headings, labels and focus.

Install

One command, any agent.

The only package is playwright-core, installed by the agent on first use. It drives the Chrome or Edge you already have.

AgentClaude Code, Codex, Cursor…
Node.js18 or newer
Chrome or Edgealready on the machine
01Install
npx skills add c0le0ni/skills --skill coleoni-variants
02Use it in your agent
/coleoni-variants the pricing table
For your whole user, not just the project-g
Claude Code only-a claude-code
Codex only-a codex
Every Coleoni skillnpx skills add c0le0ni/skills
Examples

Any component worth a second look.

Cards, heroes, pricing tables, navs, forms, empty states.

Three ways to show the plans.

/coleoni-variants the pricing table

With a constraint.

/coleoni-variants the hero, one of them without the photo

Mix two of them.

/coleoni-variants build 2 with the tiles of 3
Options

The engine, from the terminal.

scripts/variants.mjs runs on its own too: node variants.mjs http://localhost:3000 --select ".pricing" --variants variants.json.

OptionWhat it does
--select ".card"The component
--variants file.jsonName, note, CSS and optional HTML for each variation
--width 1280Desktop width; the phone is 390
--lang en|ptLanguage of the board

Stop describing it. Look at it.

npx skills add c0le0ni/skills --skill coleoni-variants