Variant exploration with aesthetic direction differentiation. Generates 3-4 distinct alternatives validated against the anti-pattern blocklist, compares across measurable dimensions, and recommends. Use to expand the solution space — triggered by 'explore design variants', 'compare design approaches', 'show me design options'.
Generate genuinely distinct alternatives — expand the solution space, do not confirm the obvious choice.
Parse $ARGUMENTS. Scan codebase for existing patterns and constraints:
ls package.json pyproject.toml go.mod Cargo.toml 2>/dev/null
Read references: skills/design/references/principles.md (anti-patterns, aesthetic catalog, AI fingerprints), typography.md, color-and-contrast.md.
State boundaries: Fixed (platform, existing patterns, a11y requirements, integration points) vs Variable (layout, interaction model, hierarchy, visual treatment).
Create 3-4 genuinely distinct variants, each committing to a different aesthetic direction from the catalog in . Validate each against the anti-pattern blocklist during generation.
principles.mdFor each variant:
Direction: [from catalog or custom] | Design language: Type [family + scale + clamp()] | Color [OKLCH palette + contrast] | Spacing [grid + density] | Motion [easing + duration]
Key characteristics: Core idea (what makes this distinct), primary structural choice, state coverage (loading/error/empty handling)
Pros: genuine advantages | Cons: honest disadvantages — no softening | Best for: use cases favoring this
Build a side-by-side comparison table:
| Dimension | Variant A | Variant B | Variant C | Variant D |
|---|---|---|---|---|
| Complexity | low/med/high | ... | ... | ... |
| Flexibility | low/med/high | ... | ... | ... |
| Accessibility | WCAG level + notes | ... | ... | ... |
| Aesthetic distinctiveness | commitment strength | ... | ... | ... |
| State coverage | completeness | ... | ... | ... |
| Time to implement | relative estimate | ... | ... | ... |
| Maintenance burden | low/med/high | ... | ... | ... |
Assess honestly — do not inflate the recommended variant or deflate others.
State recommendation, held loosely:
Recommendation: Variant [X] — [Name]
Reason: [1-2 sentences on why this balances constraints best]
When I'd choose differently: [context shift that would change this pick]
Derive topic slug (lowercase, hyphens, max 4 words). Write to .forge/design/explore-[topic].md with sections: Scope (Fixed/Variable), Variants (direction, design language, characteristics, pros/cons/best-for), Comparison table, Recommendation.
mkdir -p .forge/design
Report:
FORGE /design-explore — Complete
Output: .forge/design/explore-[topic].md
Variants: [count] generated
Recommendation: Variant [X] — [Name]
Compliance, telemetry, error handling, and what's-next routing: see
skills/shared/compliance-telemetry.md,skills/shared/rules.md, andskills/shared/workflow-routing.md. Log violations viascripts/compliance-log.sh. Keys:duplicate-variants(major),no-unconventional(minor),accessibility-fail(major). Recommended next:/design review. Alternative:/architectif a clear winner emerged.