Prototype
Build "$ARGUMENTS" in Figma as a component with all variants and states specified in the component contract.
Prerequisites
Read .metapowers/design/$ARGUMENTS/02-define.md (required — hard gate enforced by hook).
Read .metapowers/design/$ARGUMENTS/03-ideate.md. If this file does not exist, tell the user:
Phase 3 (Ideate) has not been completed for "$ARGUMENTS". Run
/design:ideate $ARGUMENTSfirst, or use--skip-checksto bypass.
If --skip-checks is present in $ARGUMENTS, skip the ideation check and log to .metapowers/design/$ARGUMENTS/skip-log.md.
Process
Read context files:
- Read
.metapowers/design/$ARGUMENTS/02-define.mdfor the component contract (props, variants, states, tokens) - Read
.metapowers/design/$ARGUMENTS/03-ideate.mdfor the chosen design approach (if exists) - Read
plugins/design/shared/component-contract-template.mdfor reference
- Read
Read the design system via MCP tools:
- Call
figma_get_variablesto get current token values for fills, spacing, typography - Call
figma_get_design_system_summaryto understand the system structure
- Call
Build the base component:
- Call
figma_create_componentwith the component name and base dimensions - Call
figma_set_auto_layoutto establish layout structure - Call
figma_create_textfor text elements - Call
figma_create_shapefor visual elements - Call
figma_apply_stylesto apply token-based fills, strokes, and effects
- Call
Build variant components for each variant dimension:
- Create a component for each variant value
- Call
figma_arrange_component_setto combine as a variant set
Apply states to each variant:
- Modify fills, opacity, and effects for hover, focus, active, disabled, error, loading states
Verify the prototype:
- Call
figma_export_imageto capture a visual of the built component - Compare against the component contract requirements
- Call
Write the artifact to
.metapowers/design/$ARGUMENTS/04-prototype.mdwith implementation notes
Output
The Figma component built on the canvas and notes written to .metapowers/design/$ARGUMENTS/04-prototype.md. Present to the user:
- Component node ID for reference
- Visual export of the component
- Any deviations from the contract and why
- Notes for the Test phase