All skills
mblode avatar

/product-design

@ad09ff3
by Matthew Blodemblode/agent-skills136 stars
12

Specifies interaction choices, action scope, reversibility, recovery, and reachable states. Use when asked to "design the flow", "should delete be undoable", "choose the control", or "review this product decision". For visual implementation use ui-design; for motion use ui-animation; for wording use ghostwriter.

Use this Skill: https://skilld.dev/gh/mblode/agent-skills/product-design

This session only. Nothing lands on disk.

referenceslint-patterns.md

≈763 tokens on demand. Your agent reads this file only when SKILL.md points to it.

Lint Patterns

Read when deciding whether a product-design standard belongs in a linter or this skill, or when encoding a standard's deterministic slice as a lint rule in a consuming project.

Deterministic, structural, single-file checks belong in a linter; judgment that needs product context stays in this skill. These patterns are not a shippable package: each rule must point at the consuming project's own components (its Modal, its Select, its spacing scale), so encode them in that project's ESLint config, wired to its design system.

The decision tree

Can code identify the failure from one file's AST, without rendering?
  No  -> agent guidance (this skill).
  Yes -> Can the rule avoid likely false positives?
           No  -> agent guidance.
           Yes -> Does the violation have a concrete, mechanical fix?
                    Yes -> a lint rule (encode it in the project).
                    No  -> a warning, or agent guidance.

Needs product or codebase context (which object, what consequence)?  -> agent guidance.
Establishes a new standard or product policy?                          -> human decision first.

For either path, add a test or eval catching the regression. If a rule needs many exceptions, move it back to agent guidance.

Examples of the split:

  • Counting 2 to 3 static options is mechanical, so prefer-radio is a lint rule.
  • Naming the right object and consequence for a destructive action needs product context: it stays here (rule/name-object-scope-consequence) and in ghostwriter for wording.
  • Detecting a nested modal is structural: a lint rule. Whether the second step should exist is judgment.
  • Whether a gesture has a control alternative (rule/gesture-has-control-alternative) needs the whole surface, not one file: judgment. Whether a control's rendered box meets the target-size floor is ui-design's interaction-target-size rule, not a lint rule here.

Three deterministic rules worth encoding

Each points at a product-design rule ID. Configure each against the project's own component names; none should hardcode a design system.

Rule Rule ID Suggested default What it catches
prefer-radio-for-few-options rule/control-matches-cardinality warn A select with 2 to 3 static options that should be radios or a segmented control
no-nested-modals rule/no-nested-modals error A modal opened inside another modal
icon-button-accessible-name rule/accessible-name-required error An icon-only button with no accessible name

Keep formatting in a faster tool (oxfmt or Biome); let ESLint own these JSX-semantic rules, which do not overlap with formatting.

Implementation notes: for prefer-radio-for-few-options, bail on dynamically rendered children (a .map, a spread) since the count is not statically known, then report only a static option count in range; for no-nested-modals, track modal-element depth and report any modal opened while already inside one.

Source: SKILL.md on GitHub

No alerts9d3 checks · Risk SAFE
  • Gen Agent Trust Hub9d

    The skill is a set of design guidelines and rules for product design tasks. It provides a structured workflow for an AI agent to analyze user interface flows, accessibility, and state management. No security risks were identified.

  • Socket9d

    No alerts

  • Snyk9d

    Risk: LOW · No issues

Signed by skilld at ad09ff3. This ties the file your Agent reads to that commit on GitHub. It does not review the instructions.

Last checked against GitHub 4 hours ago.

Activeupdated last week

README badge

README badge for mblode/agent-skills/product-design