event4u-app/agent-config

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.

100Collecting
See how to use itView GitHub source
npx skills add https://github.com/event4u-app/agent-config --skill "src/skills/design-intelligence"

Quick start

Start using it in three steps

Install it or open the source, trigger it with a clear task, then follow the source workflow.

1

Install the Skill

npx skills add https://github.com/event4u-app/agent-config --skill "src/skills/design-intelligence"
2

Describe the task

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.

3

Follow the workflow

No structured workflow was detected; follow the original SKILL.md below.

Continue to the workflow

Direct answers

Answers to review before you install

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.

Who should use design-intelligence?

It is relevant to workflows involving Engineering, Marketing, Design.

How do you install design-intelligence?

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.

Which Agent platforms does it support?

The upstream source does not declare a dedicated Agent platform.

What permissions or risks should you review?

No obvious permission action was detected by the static rules. This is not proof that the Skill is safe.

What are the current evidence limits?

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

Decide whether it fits your work first

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

Not yet included in a workflow collection

Core capabilities

EngineeringMarketingDesign

Distilled from the source

Understand this Skill in one minute

About 12 min · 18 sections

When it is worth using

  1. The UI directive set emits @agent-directive: ui-design-brief (the

  2. Any pre-build selection question: which style / palette / font pairing /

  3. Stack-idiom lookup before writing UI code (--stack axis).

Examples and typical usage

  1. Grounded brief candidates per state.uidesign slot (layout,

  2. The grounded output's confidence label + every evidencegap line,

  3. Alternatives list per domain so the human can swap before

Repository stars
7
Repository forks
1
Quality
100/100
Source repository last pushed

Quality breakdown

Based on traceable docs and repository signals; stars are not treated as quality.

100/100
Documentation30/30
Specificity25/25
Maintenance20/20
Trust signals25/25

Compare before choosing

Related Agent Skills and source variants

These links are selected from shared tasks, functions, stacks, platforms, and same-name variants. Compare the source owner, documentation, permissions, and maintenance signals.

brand-landingpage by wshobson

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 —

image-gen by MoizIbnYousaf

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

seo-audit by MoizIbnYousaf

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

imagegen-frontend-web by nexu-io

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

suede-workflow-skills by JasonColapietro

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.

View original Skill.mdThis page is parsed directly from the repository SKILL.md without editorial rewriting. Collected: Jul 28, 2026 · about 12 min

design-intelligence

The grounded source for frontend design decisions (ADR-061; first consumer of corpus-grounding). When the UI directive set's design step 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 in directives/ui/design.ts is unaffected.

Boundary (council-locked): design.ts stays 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)

When to use

  • The UI directive set emits @agent-directive: ui-design-brief (the design step found state.ui_design empty).
  • Any pre-build selection question: which style / palette / font pairing / layout pattern / chart type / icon system fits this product.
  • Stack-idiom lookup before writing UI code (--stack axis).

Cross-task design memory — read DESIGN.md / PRODUCT.md first

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:

  1. Read 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.
  2. Read 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.
  3. After generating the design brief: if a decision was made that isn't yet in DESIGN.md (e.g., chose a specific shadow for a new elevated surface), flag it for capture: "Suggest adding to DESIGN.md: elevated surface shadow = …"

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.

Register — brand vs product

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).

Design Read — articulate intent before generating

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.

Taste Dials — quantify, infer, emit

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 signalVMD
minimal / calm / editorial / clean3–52–42–4
trust / regulated / public-sector / fintech3–42–34–6
default / unstated5–63–44–5
data-dense / dashboard / admin / cockpit4–62–37–9
bold / playful / expressive / awards / Dribbble8–107–103–5

Dial → downstream levers (how a dial value changes generation):

DialLow (1–3)High (8–10)
Variancesymmetric grids, one layout familyasymmetry, varied layout families, off-grid accents
Motionstatic / prefers-reduced-motion-first, opacity-onlychoreographed scroll/stagger (still GPU-only, still reduced-motion alt)
Densitygenerous whitespace, large spacing scale, few items/viewporttight 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.)

Honesty / real-system grounding

When the brief maps to an official design system (Material Design, Fluent, Carbon, Polaris, GOV.UK, shadcn, Tailwind UI, Radix, etc.):

  1. Canon grounding first. If the brief names a system OR 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.
  2. Install the real package — do not hand-recreate its CSS or components. Surface the install command for the project's package manager (the system's official package, e.g. the shadcn CLI or the @mui/material distribution) and link the canonical documentation URL.
  3. Never label an approximation as the official system. If generating approximate CSS for a system the project does not yet depend on, label it explicitly: "Approximation of Material Design elevation — not the official @mui/material package; install the package for production use."
  4. If no official system is relevant: pick a deliberate creative direction (see Design Read above); never fall back to an unnamed generic aesthetic (per 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.

Procedure: Produce a grounded design brief (ui-design-brief rebound)

  1. 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
    
  2. Translate selections into the brief for state.ui_design:

    • layout ← landing/pattern selection (Section Order, CTA placement)
      • the reasoning rule's 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;
    • microcopyagent-written, final strings — the corpus never supplies microcopy;
    • a11y ← color selection's contrast-adjusted token set + the checklist's CRITICAL rows + accessibility-auditor method;
    • style/typography/effects/anti-patterns ← the grounded selections verbatim, with alternatives listed.
  3. 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.

  4. On design_confirmed: true the directive engine advances; revisions loop back here.

Font fallback (no google-fonts index — by design)

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 artifactOur stateNotes
design-system/<project>/MASTER.mdstate.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>.mdper-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.

Grounding the review/polish a11y gate (charts + contrast)

The review/polish steps gate on state.ui_review.a11y. Ground two finding classes instead of ad-hoc judgment:

  • Chart-type findings — the grounding CLI (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.
  • Contrast findings--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 guidance (--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.

Output format

  1. Grounded brief candidates per state.ui_design slot (layout, components, states, microcopy placeholder-free, a11y) — selections cited per corpus row.
  2. The grounded output's confidence label + every evidence_gap line, verbatim, in the brief summary.
  3. Alternatives list per domain so the human can swap before design_confirmed.

Do NOT

  • Do NOT let the corpus write microcopy — it supplies constraint sets; final strings are agent-written (placeholder lock stays in force).
  • Do NOT import the engine into directives/ui/design.ts — council boundary; the corpus call lives in this skill layer.
  • Do NOT propose a new component the existing-ui-audit inventory already covers — audit findings outrank corpus suggestions.
  • Do NOT hide low confidence — the user signs off on the gaps too.

Diagram-type routing — route on the verb

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…IntentDraw
"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 / lifecyclea stepper widget, never a hand-drawn ring
a DB schema / ERD / entity relationsmermaid, never hand-placed SVG

Geometric pre-checks (run BEFORE finalizing an SVG/diagram)

Ranked by failure rate — procedures, not constants:

  1. viewBox safety — compute the lowest + rightmost element (plus a buffer) and set the viewBox from that; never assume the default fits.
  2. arrow-through-box trace — trace every arrow's path and confirm it does not cross through an unrelated box before drawing it.
  3. box-width-from-longest-label — size each box from its longest label before placing it, so text never overflows.

(Reference-only: any color/easing/frame values come from the consumer's tokens or a maintained upstream — this skill vendors no drawn-asset corpus.)

Interplay (who owns what)

ConcernOwner
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 + flowfe-design — invokes this skill for grounding
Orchestration gates + locksdirectives/ui/{design,review,polish}.ts — never import the engine
WCAG audit methodaccessibility-auditor
Token authoringdesign-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 deckshtml-deck — own medium, still corpus-grounded

Gotchas

  • Corpus grounds pre-action selection — do not use it as mid-task reference (open references/ instead) or as a validator (rules own that).
  • Empty result ≠ error: surface the evidence gap and proceed on priors.
  • Keep queries product-shaped ("fintech dashboard", "luxury e-commerce mobile") — the detect map routes generic words to style.

Anti-slop discipline

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.

Why this skill is rich

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.

Policies

  • Upstream MIT + Apache-2.0 obligations: ATTRIBUTION.md.
  • Refresh: quarterly per the manifest; bump upstream.last_checked on every refresh (ADR-061 §6).
Skill path
src/skills/design-intelligence/SKILL.md
Commit SHA
0adf49a8ae84
Repository license
MIT
Data collected