Skip to content

/design-web

Use when building or revising a marketing/landing/campaign page, register `brand` locked at Gate 0 — use design-webapp for app screens instead.

shell
$ npx -y skills add fusengine/agents --skill design-web --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.
  • You can call itInvoke it directly when you want it.
  • Slash command/design-web
How auto-invocation works

Context preview

The summary Claude sees to decide when to auto-load this skill.

Use when building or revising a marketing/landing/campaign page, register `brand` locked at Gate 0 — use design-webapp for app screens instead.

SKILL.md

design-web.SKILL.md
name: design-web
description: "Use when building or revising a marketing/landing/campaign page, register `brand` locked at Gate 0 — use design-webapp for app screens instead."
when-to-use: "Building or revising a marketing/landing/campaign page after design-method's Gate 0 has locked register `brand`. If the surface is a logged-in dashboard/app screen, use design-webapp instead — design-method's routing table decides which."
keywords: web, marketing, landing, hero, macrostructure, body-sequence, anti-slop, lookalike-test, asymmetric
priority: critical
related: design-method, design-system, design-webapp, design-motion, design-review, ux-copy

<objective> Builds marketing sites, landing pages, and campaign pages under register `brand` (design IS the product). Structure comes from the register's point of view plus two named picks — a hero treatment for the first screen and a body sequence for everything after it — never from copying an inspiration site's section flow.

Covers hero discipline (headline/subhead word caps, single primary CTA), body-sequence selection against the canonical-order default, asymmetric grids instead of a uniform 3-column layout, and a set of mechanical anti-slop flags (uniform grids, uniform padding, the AI-signature entrance motion, the reflex blue/Inter/rounded-2xl combo).

Declares the three reproduced elements (`Je reproduis`, corpus procedures vs sector register) that `design-review` verdicts, and runs the silhouette Lookalike Test before the page can be called done: a fail is structural and goes back to the hero/body picks, not to a cosmetic tweak. </objective>

Design Web — Marketing & Landing, Register Brand

When

After `design-system` tokens exist and `design-method`'s Gate 0 has locked register `brand` (one dominant, expressive message). Read `design-method`'s routing table first — a dashboard/app/utility surface routes to `design-webapp` instead. Exception: a marketing-adjacent surface living inside an app shell (e.g. an in-app pricing page) still routes here for that one page (see `design-webapp`'s reciprocal note).

Input

  • `design-system.md` — OKLCH palette, type pair, spacing density, the 3 dials.
  • `../design-method/references/register/brand.md` — the page's POV sentence and the

per-section Competitor Lift Test (loaded once per task, not re-read per step).

  • The `generate` move report (`../design-method/references/moves/generate.md`) if this task

started from Gate 0 — steps 1-4 of that report (register, inspiration, tokens, and step 4's two picks: hero treatment + body sequence) are inputs here, not repeated.

Steps

1. **Structure comes from register + two structural picks, never from template reproduction.** `references/design-inspiration.md` sources taste in a fixed order: the local corpus (`references/refs-design/`, fifteen rebuilt pages whose `tokens-*.md` carry measured procedures) supplies palette, typography, depth and craft; 1-2 real production sites in the client's own sector supply **register only** — vocabulary, codes, level of formality. Section flow, spacing rhythm and layout are never copied from either. The actual skeleton is the pair named in `design-method`'s `generate` move: a **hero treatment** from `../design-method/references/macrostructure-bank.md` (first screen only — it decides nothing past the fold) plus a **body sequence** from `../design-method/references/body-sequence-bank.md`, both filtered through the POV in `register/brand.md`. Naming one without the other is an incomplete plan. Reproducing an inspiration site's structure verbatim is the single biggest source of templated output — treat it as a hard boundary, not a style preference.

2. **Pick a body sequence, and state what its principle becomes for this subject.** The body, not the hero, is the proven failure mode (`register/brand.md`). Choose one of the fifteen sequences read off shipped code in `../design-method/references/body-sequence-bank.md` and name it in the plan in that file's own format: **"Body sequence: {name} — principle applied here: {one line}."** State the principle in the brief's own terms; a plan naming the sequence but not what its principle becomes here has copied a composition. Deviating from the chosen sequence is expected, not forbidden — report which section moved and why in the generate-move report's macrostructure line. The canonical skeleton (nav → hero → features → testimonials → pricing → faq → cta → footer) is the detectable default **when it is reached by omission**; it is also entry 5 of the bank ("Bookended Canon"), legitimately choosable when it is actually *treated* — `fora` follows it almost to the letter without reading generic, for the measured reasons in its sheet (bank rule 2). Sections kept from the canon stay governed by `register/brand.md` §2 (Body ≠ SaaS Furniture) and its per-section Competitor Lift Test.

3. **Hero discipline (nngroup visual-hierarchy, lawsofux, refactoringui):** headline **< 10 words**, subhead **< 20 words**, **1 primary CTA**, real product/brand visual (not a stock abstraction). This word-count floor is tighter than `references/layout-discipline.md`'s hero hard numbers (≤ 2 lines, ≤ 4-element stack) — both apply; the tighter one wins on conflict. CTAs stay ≤ 3 touchpoints on the whole page, secondaries visually subordinate to the one primary. Von Restorff: exactly one visually distinct focal element per viewport reads as memorable — see the Focal-Block Floor (`layout-discipline.md` rule 9), mandatory in this register.

4. **Break grid and padding sameness.** Prefer asymmetric column splits (2/1, 1/2, span-2, bento) over a uniform 3-column grid reused section after section. Vary section padding for rhythm — tight groupings inside a section, generous separation between sections — instead of one uniform value applied everywhere. `layout-discipline.md` still owns the

Read more
Read it on GitHub ↗

Showing the first part of this file.

Ships withfusengine-agents

A plugin ecosystem that turns Claude Code into a supervised, multi-agent development environment.

Get the whole plugin, auto-invoked
Stats
22
Stars
0
Views
3
Forks
Active
Maintenance
CSS
Language
MIT
License
1d ago
Last commit
6mo ago
Created

Repo: fusengine/agents