What is design-intelligence?
Grounded design brief from the adopted corpus — style, WCAG-checked color tokens, typography, layout pattern, anti-patterns. Use on ui-design-brief or any which-style/palette/font/chart decision.
event4u-app/agent-config
Grounded design brief from the adopted corpus — style, WCAG-checked color tokens, typography, layout pattern, anti-patterns. Use on ui-design-brief or any which-style/palette/font/chart decision.
npx skills add https://github.com/event4u-app/agent-config --skill "src/skills/design-intelligence"Quick start
Install it or open the source, trigger it with a clear task, then follow the source workflow.
npx skills add https://github.com/event4u-app/agent-config --skill "src/skills/design-intelligence"Use design-intelligence to help me with: [describe your task]. Before you begin, tell me what input you need, the steps you will follow, and the expected output.
No structured workflow was detected; follow the original SKILL.md below.
Continue to the workflowDirect answers
Grounded design brief from the adopted corpus — style, WCAG-checked color tokens, typography, layout pattern, anti-patterns. Use on ui-design-brief or any which-style/palette/font/chart decision.
It is relevant to workflows involving Engineering, Marketing, Design.
SkillSignal detected this source-specific command: npx skills add https://github.com/event4u-app/agent-config --skill "src/skills/design-intelligence". Inspect the repository and command before running it.
The upstream source does not declare a dedicated Agent platform.
No obvious permission action was detected by the static rules. This is not proof that the Skill is safe.
This page combines upstream documentation with deterministic repository, quality, and static-risk signals. It is not described as a manual test or security review.
SkillSignal brief
Grounded design brief from the adopted corpus — style, WCAG-checked color tokens, typography, layout pattern, anti-patterns. Use on ui-design-brief or any which-style/palette/font/chart decision.
Useful in these contexts
Core capabilities
Distilled from the source
About 12 min · 18 sections
The UI directive set emits @agent-directive: ui-design-brief (the
Any pre-build selection question: which style / palette / font pairing /
Stack-idiom lookup before writing UI code (--stack axis).
Grounded brief candidates per state.uidesign slot (layout,
The grounded output's confidence label + every evidencegap line,
Alternatives list per domain so the human can swap before
Quality breakdown
Based on traceable docs and repository signals; stars are not treated as quality.
Compare before choosing
These links are selected from shared tasks, functions, stacks, platforms, and same-name variants. Compare the source owner, documentation, permissions, and maintenance signals.
Brand-first landing page designer — runs a brand-identity interview (colors, typography, shape language), then generates and iterates on a polished landing page via Stitch with deployment-ready HTML. Use when the user asks to create, design, or build a landing page, homepage, or marketing page and has no established visual direction. Skip when they have a design mockup, need a dashboard or app UI, are working at component level, building a multi-page app, or restyling with known design tokens —
Generate images using the brand's visual identity and Gemini API. Reads brand/creative-kit.md for visual style, crafts narrative prompts, and produces images via Nano Banana Pro (gemini-3-pro-image-preview). Supports on-brand and freestyle modes. Use when the user needs a blog header, social graphic, product shot, hero image, banner, thumbnail, or any generated image. Also use proactively when building content that would benefit from visuals. Triggers on "generate image", "create image", "make m
When the user wants to audit, review, or diagnose SEO issues, plan site architecture, or implement schema markup. Use when someone says 'SEO audit', 'technical SEO', 'site architecture', 'schema markup', 'internal linking', 'why isn't my site ranking', 'site health check', 'crawl issues', 'fix my SEO', 'my traffic dropped', 'rankings fell', or 'site not ranking'. Also trigger when someone wants to plan URL structure, design navigation, add structured data, or review any website for search perfor
Elite frontend image-direction skill for generating premium, conversion-aware website design references. CRITICAL OUTPUT RULE — generate ONE separate horizontal image FOR EVERY section. A landing page with 8 sections produces 8 images. Never compress multiple sections into one image. Enforces composition variety (not always left-text / right-image), background-image freedom, varied CTAs, varied hero scales (giant / mid / mini minimalist), narrative concept spine, second-read moments, and a singl
Umbrella workflow for 67 public skills: Full Send, copy, design, code review, SEO, launch packaging, MCP QA, iOS and Android app shipping, and creator workflows. Loads the full public skill pack.
The grounded source for frontend design decisions (ADR-061; first consumer of
corpus-grounding). When the UI directive set'sdesignstep emits@agent-directive: ui-design-brief, consult this corpus FIRST and pre-fill the brief candidates — then the human confirms (design_confirmed). Corpus output is a constraint set, never final microcopy; the placeholder lock indirectives/ui/design.tsis unaffected.Boundary (council-locked):
design.tsstays a pure orchestration gate and never imports the engine — the corpus call lives HERE, in the skill layer, keeping the engine an optional dependency.
Corpus: 11 tabular CSVs under data/ (161-row ui-reasoning
decision map, WCAG-adjusted color token sets, 84 styles, 73 font
pairings, 25 chart rules, UX/react/mobile guidelines) + 16 prose
design-language specs (references/design-languages.md)
references/design-rules-checklist.md).
Provenance + licenses: ATTRIBUTION.md; manifest:
data/manifest.json.@agent-directive: ui-design-brief (the
design step found state.ui_design empty).--stack axis).Before running the corpus grounding or producing any design brief, check
the project root for DESIGN.md and/or PRODUCT.md (written by
design-system-capture). If they exist:
DESIGN.md — apply its captured visual decisions (radius, shadows,
motion, spacing) as project constraints that take precedence over
corpus suggestions. The corpus fills gaps; DESIGN.md overrides.PRODUCT.md — note interaction patterns that affect the design
(e.g., destructive-action policy, empty-state approach) so the brief
is consistent with existing product conventions.Boundary vs brand-to-tokens/.tokens.json:
.tokens.json = primitive definitions (gray-700 = #374151)DESIGN.md = usage decisions (elevated surfaces use the gray-700 shadow, 8px radius)
Both are consumed; DESIGN.md takes precedence for usage questions.Determine the design register before grounding (see
docs/guidelines/design-modes.md):
brand mode ("the impression IS the product" — marketing, landing, consumer
first-impression) prioritizes distinctive selection; product mode ("design
serves the task" — dashboard, admin, workflow) prioritizes earned familiarity
and accessibility. The register changes which corpus selections are appropriate
(distinctive palette/typography in brand mode; predictable, semantic in product
mode). State the register in the Design Read line below.
Embedded vs standalone (a third discriminator). UI embedded inside a host surface — a widget in a slide, a card in a chat, a panel in someone else's app — follows a flatter charter than a greenfield standalone page: restrained weights, hairline borders, no atmospherics/gradients/shadows that would fight the host. Select the register per surface (embedded → flat; standalone → the brand/product register above) — it is a selector, not a fixed token set (no values vendored; the host's tokens win).
Before producing any design brief or making any style selection, emit one line that declares the design read:
Reading this as: <page-kind> for <audience>, <vibe> language, leaning <design-system>.
Examples:
Reading this as: SaaS dashboard for internal ops teams, functional language, leaning Radix/shadcn.Reading this as: marketing landing for B2C consumer product, playful editorial, leaning custom tokens.Reading this as: admin panel for technical users, dense/utilitarian language, leaning data-grid primitives.If context is incomplete: state so and proceed exploratory — "Design context incomplete: no audience defined; proposing exploratory direction, expect revision after audience is clarified." Do NOT block on missing context; do NOT prompt the user with a gate; state the gap and continue.
If DESIGN.md declares ## Taste Dials, use those values. Otherwise infer
three 1–10 dials from the brief and append them to the Design Read line
(… · dials V/M/D = 6/3/4) so the user can correct them; on confirmation,
suggest persisting to DESIGN.md (via design-system-capture). Dials are a
config, not a vibe — never re-infer when DESIGN.md already sets them
(no drift across sessions).
Dial Inference Table (brief signal → Variance / Motion / Density, 1–10):
| Brief signal | V | M | D |
|---|---|---|---|
| minimal / calm / editorial / clean | 3–5 | 2–4 | 2–4 |
| trust / regulated / public-sector / fintech | 3–4 | 2–3 | 4–6 |
| default / unstated | 5–6 | 3–4 | 4–5 |
| data-dense / dashboard / admin / cockpit | 4–6 | 2–3 | 7–9 |
| bold / playful / expressive / awards / Dribbble | 8–10 | 7–10 | 3–5 |
Dial → downstream levers (how a dial value changes generation):
| Dial | Low (1–3) | High (8–10) |
|---|---|---|
| Variance | symmetric grids, one layout family | asymmetry, varied layout families, off-grid accents |
| Motion | static / prefers-reduced-motion-first, opacity-only | choreographed scroll/stagger (still GPU-only, still reduced-motion alt) |
| Density | generous whitespace, large spacing scale, few items/viewport | tight spacing scale, more information per viewport |
Dials persist in DESIGN.md; the stack executors (tailwind-engineer,
react-shadcn-ui, blade-ui, flux) read DESIGN.md and honour them.
Anti-Default Discipline — first-impulse check: Before committing to any
design direction, cross-check your first impulse against the current-generation
tells in design-antipatterns.md
(§ Current-generation tells — the warm-editorial C5+T2+T7 signature and the
previous-generation C1/C2 gradient) plus the L1/L2 layout defaults. If a tell
was your first reach, name a different direction or explicitly justify why this
brief genuinely calls for it. (The finalization cross-check against the full
catalog is under Anti-slop discipline below.)
When the brief maps to an official design system (Material Design, Fluent, Carbon, Polaris, GOV.UK, shadcn, Tailwind UI, Radix, etc.):
components.json/deps signal one (@mui/material, antd, @fluentui/*,
@carbon/*, @atlaskit/*), pull
docs/guidelines/design-canon.md,
surface the matching one-line summary, and offer to fetch the live spec
before committing to the system's conventions — rather than improvising.
The canon index is thin + lazy: do not load it for a generic, unnamed brief.@mui/material
distribution) and link the canonical documentation URL.@mui/material package; install the package for production use."source-discovery-gate: real source before guessing).Grounding precedence (consistent with brand-source-of-truth): consumer
brand tokens > confirmed session decisions > named canon
(design-canon.md) > generated
corpus. Canon is a gap-filler, never an override of a registered brand value.
ui-design-brief rebound)Ground (one call — engine runs the manifest's plan product → style → color → landing → typography with decision rules):
./scripts-run <skills-root>/corpus-grounding/scripts/ground ground \
--manifest <skills-root>/design-intelligence/data/manifest.json \
"<product type + mood + platform>" --json
Translate selections into the brief for state.ui_design:
layout ← landing/pattern selection (Section Order, CTA placement)
Recommended_Pattern;components ← audit reuse first (existing-ui-audit inventory wins
over corpus suggestions — never propose a new component the audit
already has);states ← required five (empty/loading/error/success/disabled),
styled per the selected design language;microcopy ← agent-written, final strings — the corpus never
supplies microcopy;a11y ← color selection's contrast-adjusted token set + the
checklist's CRITICAL rows + accessibility-auditor method;Always surface the grounded output's confidence + evidence_gap
lines in the brief summary — the user signs off on what the corpus
could NOT support, not only on what it could.
On design_confirmed: true the directive engine advances; revisions
loop back here.
The 745 KB Google-Fonts index was rejected (ADR-061 §8): it duplicates a
public API. When a requested font is outside font-pairings-reference.csv's 73
pairings: query https://fonts.google.com/specimen/<Family> (or the
webfonts API) for metadata, OR propose the nearest curated pairing and
say why. Never invent pairing metadata.
MASTER.md + page overrides ↔ state.ui_design (mapping)The upstream cross-session memory pattern maps onto our delivery state:
| Upstream artifact | Our state | Notes |
|---|---|---|
design-system/<project>/MASTER.md | state.ui_design (project-level brief: style, tokens, typography, anti-patterns) | The state is the source of truth during a run. |
design-system/<project>/pages/<page>.md | per-page override entries inside state.ui_design (e.g. pages.<page> dict) | Page rules override project rules for that page only. |
File persistence stays opt-in (ground … --persist <dir>) and writes
under the consumer's project as a durable artifact for multi-session
consistency; on a fresh session, re-hydrate state.ui_design from
MASTER.md + the page file before re-running design.
The review/polish steps gate on state.ui_review.a11y. Ground two
finding classes instead of ad-hoc judgment:
ground via
./scripts-run) — …/ground search --manifest … --domain chart "<data shape>" → Accessibility Grade, A11y Fallback,
Color Guidance columns justify "wrong chart type / missing colorblind
fallback" findings with a citable row.--domain color "<product>" returns the
WCAG-adjusted token set; a finding that a hex pair deviates from the
adopted set cites the row instead of eyeballing ratios. Auditing
method stays with accessibility-auditor.--stack axis)Per-framework Do/Don't corpora (16 stacks) ride the same manifest:
./scripts-run <skills-root>/corpus-grounding/scripts/ground search \
--manifest <skills-root>/design-intelligence/data/manifest.json \
--stack react "list rerender memo" [--filter "Severity=HIGH"]
Stack executors (blade-ui,
livewire, flux,
react-shadcn-ui,
tailwind-engineer) pull idiomatic
guidance + docs URLs from here instead of memory.
state.ui_design slot (layout,
components, states, microcopy placeholder-free, a11y) — selections
cited per corpus row.confidence label + every evidence_gap line,
verbatim, in the brief summary.design_confirmed.directives/ui/design.ts — council
boundary; the corpus call lives in this skill layer.existing-ui-audit inventory
already covers — audit findings outrank corpus suggestions.Choose a visualization by the intent verb, not the noun. Count the nouns before you draw (input-complexity triage): 1–2 → inline prose or a single shape; 3–7 → one diagram; 8+ → split or summarize, never one dense picture.
| The user asks… | Intent | Draw |
|---|---|---|
| "how does X work / flow" | illustrative (intuition) | flowchart / sequence — illustrative default |
| "what is X's architecture / structure" | reference (structural) | structural diagram (boxes + typed edges) |
| a cycle / loop / lifecycle | — | a stepper widget, never a hand-drawn ring |
| a DB schema / ERD / entity relations | — | mermaid, never hand-placed SVG |
Ranked by failure rate — procedures, not constants:
(Reference-only: any color/easing/frame values come from the consumer's tokens or a maintained upstream — this skill vendors no drawn-asset corpus.)
| Concern | Owner |
|---|---|
| What already exists (components, tokens) | existing-ui-audit — mandatory pre-step; audit findings outrank corpus suggestions |
| What to build (grounded selection) | this skill |
| Stack-agnostic heuristics + flow | fe-design — invokes this skill for grounding |
| Orchestration gates + locks | directives/ui/{design,review,polish}.ts — never import the engine |
| WCAG audit method | accessibility-auditor |
| Token authoring | design-tokens |
| Lo-fi structure exploration (pre-selection) | wireframe — disposable greyscale variants |
| Multiple hi-fi options (post-selection) | design-variations — grounds each variation via this skill |
| Fixed-canvas slide decks | html-deck — own medium, still corpus-grounded |
references/ instead) or as a validator (rules own that).style.Before finalizing any design brief, cross-check against
docs/guidelines/design-antipatterns.md
— especially the Color (C1–C5), Typography (T7–T8), and Layout (L1–L2) sections.
If the grounded corpus selection lands on a pattern in the catalog, either invoke
the override condition or adjust the selection. Run the AI-slop originality
self-test (catalog § "The AI-slop originality self-test") on the chosen aesthetic
direction before emitting design_confirmed.
This skill carries 11 tabular CSVs (161-row UI-reasoning decision map, WCAG-adjusted color token sets, 84 styles, 73 font pairings, 25 chart rules, UX/ react/mobile guidelines) plus 16 prose design-language specs and a 10-category pre-delivery checklist. Agents need to see the full corpus to make grounded selections — condensing to a summary destroys the evidence trail ("corpus row 47 justifies the palette choice") that the skill's output contract requires. Compressing the 16 design-language specs into fragments makes the style selection unreproducible and audit-unfriendly.
ATTRIBUTION.md.upstream.last_checked on
every refresh (ADR-061 §6).