Redesign an existing website to make it better. Built on top of impeccable.
71
89%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Low
Low-risk findings worth noting
These examples teach the style of reasoning. They are not a lookup
table. Two phrases that look similar may resolve to different plans
depending on register, prior direction, and constraints. Always run the
full procedure in intent-reasoning.md; use these only as calibration.
Each example shows: phrase → restatement → movement → gaps → questions → command sequence → reasoning. Some examples deliberately ask zero questions; some ask the maximum two; some show the user pushing back on an assumption.
Phrase: "make it better"
Restatement:
product from existing site)Movement: None of the directional axes. The phrase is a quality demand, not a directional one.
Gaps: What does "better" mean to the user? But the agent does not ask this. "Better" has a default meaning in stardust: pass impeccable's critique and audit cleanly. Asking would be pedantic.
Questions: None.
Plan:
$impeccable critique stardust/current/ — score the existing site,
surface P0/P1 issues.npx impeccable detect --json --fast stardust/current/ — deterministic
anti-pattern scan.harden, clarify, optimize).$impeccable polish — final pre-ship pass.Reasoning shown to user: "Better' has no direction in your phrase, so I default to making the existing site pass impeccable's critique and audit. If you want me to also push the design somewhere (bolder, quieter, more distinctive), say so."
Phrase: "make it more expressive"
Restatement:
drenched)distinctive)Gaps: Audience and register.
Questions:
- Who's the audience? (a) existing customers, (b) prospects we don't have yet, (c) other — please describe.
- Should this stay within the existing brand palette, or are we open to swapping it? (a) keep palette, (b) open to new palette.
Plan (assuming user picks "prospects we don't have" + "open to new palette"):
$stardust direct — write the resolved direction to
stardust/direction.md.$impeccable shape stardust/current/index.html — produce a Design
Brief with the scene sentence anchored on the new audience.$impeccable craft — primary expressive pass.$impeccable colorize — palette swap, recommended pick from stardust's
library if user wants.$impeccable typeset — type voice that matches the expressive move.$impeccable critique — verify we landed in the intended quadrant
without slipping into AI-default territory.$impeccable polish.Phrase: "make it more expressive for a young audience"
Restatement:
drencheddistinctiveGaps: "Young" is too coarse — Gen Z college students and 26-year-old junior PMs are both "young" but want different things.
Questions:
- Sharpen "young" — pick the closest: (a) Gen Z college / first-job, (b) millennial professionals 25-35, (c) digital-native parents 30-40, (d) other — describe.
- Should the design feel native to a specific cultural reference set? (Examples: indie publishing, gaming, streetwear, K-pop visual culture.) Optional — say "skip" if you don't want to pin one.
Plan (after answers): identical shape to Example 2, but the scene
sentence in shape is filled with the resolved audience and reference
set. colorize and typeset are constrained by the cultural reference
set.
Phrase: "less corporate"
Restatement:
distinctive (away from familiar)seriousMovement note: This phrase is mostly about what to remove, not what to add. Distinguish from "more expressive" which is additive.
Gaps: None worth a question — the prompt is unambiguous in dimensional terms.
Questions: None.
Plan:
$impeccable distill stardust/current/ — strip corporate-default
patterns (hero metric template, identical card grids, gray-on-color).$impeccable typeset — replace corporate-default font reflexes (no Inter,
no Plus Jakarta Sans, no DM Sans) with something with a point of view.$impeccable colorize — replace corporate palette with something that
carries tone.$impeccable critique — confirm distinctiveness moved without
sacrificing legibility.$impeccable polish.Phrase: "make it more accessible"
Restatement:
a11y-first pinnedMovement note: Accessibility is a constraint, not a direction. The plan is audit-driven.
Questions: None.
Plan:
$impeccable audit stardust/current/ — score and find P0/P1 a11y
issues.$impeccable harden — i18n, edge cases, focus management,
keyboard reachability.$impeccable clarify — UX copy and labels, error messages with aria-*
wiring.$impeccable polish — final alignment with system tokens.Phrase: "more Linear, less Salesforce"
Restatement:
product (both anchors are product-register tools)committed (Linear) from restrained
(legacy enterprise)packed (Linear is dense)distinctiveMovement note: Anchor + anti-reference pairs are dense signal. Capture both verbatim in the brief.
Questions: None.
Plan:
$impeccable shape stardust/current/ — brief with anchor Linear,
anti-reference Salesforce.$impeccable layout — density move.$impeccable typeset — Linear-style restrained-but-distinctive type.$impeccable craft — execute the brief.$impeccable critique + $impeccable polish.Phrase: "modernise it"
Restatement:
distinctive, but with a
divergence-toolkit guardrail clamped on.Gaps: What does "modern" mean to this user? But asking abstractly will not help. Better: surface concrete reflexes the agent will avoid and let the user push back.
Questions:
- I'll avoid the AI-default modern look (gradients on text, glass cards, neon-on-dark). Is that what you want — or do you specifically want one of those? (a) avoid them, (b) actually I want [X], (c) other.
- Pick a non-category anchor reference if possible — something outside SaaS/tech that you find modern. (Optional — say "skip".)
Plan (after "avoid them"):
npx impeccable detect --json — flag any existing slop.$impeccable shape — brief with anti-references = the slop list.$impeccable distill — strip dated patterns first.$impeccable typeset — replace dated type with current expressive type
(avoiding the impeccable reflex-reject list).$impeccable colorize — non-cliché palette pick.$impeccable critique + $impeccable polish.Phrase: "I want it to feel premium"
Restatement:
distinctiveairy (premium often = restraint)seriousrestrained (Hermès web)
or drenched (Bottega Veneta)Gaps: The expressive axis fork is the whole question.
Questions:
- Premium-by-restraint or premium-by-presence? (a) restrained — quiet confidence, lots of negative space (b) committed/drenched — high-presence, designed surfaces, big type.
Plan: branches on the answer. Restrained → quieter + distill +
polish. Committed → bolder + typeset + craft + polish. Both
include a colorize step to land on a non-default palette.
Phrase: "make it bolder"
Plan offered:
$impeccable bolder$impeccable typeset$impeccable colorize$impeccable polishUser reply: "Skip the type and color changes — just push the layout."
Resolution: Replace the plan with $impeccable layout + $impeccable polish. Update direction.md to record that type and color are pinned to
their current values per user override. Run the new plan.
Phrase: "I want it to be amazing"
Restatement: moves no dimension at all; "amazing" is a quality demand without direction and without a default like "better" has.
Questions: Two ceilings, picked for highest leverage.
- Pick a direction we should push: (a) make it more distinctive, (b) make it more accessible, (c) make it more performant, (d) something else — describe in one sentence.
- Optional: a reference site you find amazing.
Plan: deferred until the user answers. This is the only case where asking-then-stopping is correct.
.tessl-plugin
skills
audit
reference
deploy
diff
direct
extract
migrate
prepare-migration
prototype
replica
reskin
rollout
stardust
uplift
reference