From design
Define a component contract with props, variants, states, tokens, and accessibility criteria for design-system-quality components
How this skill is triggered — by the user, by Claude, or both
Slash command
/design:define-componentThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Produce a complete component contract for "$ARGUMENTS" that serves as the single source of truth for prototyping, implementation, and testing.
Produce a complete component contract for "$ARGUMENTS" that serves as the single source of truth for prototyping, implementation, and testing.
Read .metapowers/design/$ARGUMENTS/01-empathize.md. If this file does not exist, tell the user:
Phase 1 (Empathize) has not been completed for "$ARGUMENTS". Run
/design:empathize $ARGUMENTSfirst, or use--skip-checksto bypass.
If --skip-checks is present in $ARGUMENTS, skip this check and log to .metapowers/design/$ARGUMENTS/skip-log.md.
Read context files:
plugins/design/shared/component-contract-template.md for the output structureplugins/design/shared/wcag-criteria.md for accessibility requirements.metapowers/design/$ARGUMENTS/01-empathize.md for user needs and existing patterns (if exists)Read the design system via MCP tools figma_get_design_system and figma_get_variables:
Produce the component contract following the template structure. Every field must be filled — no placeholders, no TBDs. Specifically:
Self-review the contract:
Write the artifact to .metapowers/design/$ARGUMENTS/02-define.md
The component contract written to .metapowers/design/$ARGUMENTS/02-define.md. Present a summary to the user highlighting:
Creates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.
npx claudepluginhub bromso/metapowers --plugin design