Implement and evaluate design systems using Brad Frost's atomic design methodology. Use for building component libraries, auditing existing UIs, extracting design tokens, migrating legacy components, and documenting design systems.
<why_now>
Brad Frost's atomic design methodology has become the de facto standard for building scalable design systems. The insight: build systems, not pages. By starting with the smallest elements (atoms) and composing them into increasingly complex structures (molecules, organisms, templates, pages), teams create:
The methodology isn't about rigid categorization—it's about understanding hierarchical composition: how smaller building blocks combine to create larger, more complex structures.
As Brad Frost himself said: "The specific labels (atoms, molecules, organisms, templates, pages) have never been the point... But they're still useful as a mental model." </why_now>
<core_principles>
Atoms are UI elements that can't be broken down further without losing meaning:
Test: Can this be broken into smaller functional pieces? If no, it's an atom.
Molecules combine atoms into simple, functional units:
Test: Is this a simple combination of 2-3 atoms with a single purpose?
Organisms are complex UI sections composed of molecules and atoms:
Test: Is this a distinct section of the interface that could stand alone?
Templates define page structure without real content:
Test: Does this define where content goes without being the content?
Pages are templates filled with real content:
Test: Is this the final output with real content that users experience? </core_principles>
<intake> ## What aspect of atomic design do you need help with?Wait for response before proceeding. </intake>
<routing> | Response | Action | |----------|--------| | 1, "audit", "analyze" | Read [evaluation-criteria.md](./references/evaluation-criteria.md), suggest running `/atomic-audit` command | | 2, "implement", "new", "build", "create" | Read [core-concepts.md](./references/core-concepts.md) and [component-hierarchy.md](./references/component-hierarchy.md), suggest `/atomic-init` | | 3, "token", "extract", "design token" | Read [design-tokens.md](./references/design-tokens.md) — comprehensive EightShapes naming taxonomy | | 4, "migrate", "refactor", "convert" | Read [migration-patterns.md](./references/migration-patterns.md), suggest `/atomic-migrate` | | 5, "document", "docs", "storybook" | Read [documentation-templates.md](./references/documentation-templates.md) | | 6, "evaluate", "score", "compliance" | Read [evaluation-criteria.md](./references/evaluation-criteria.md) | | 7, "react" | Read [framework-patterns/react-patterns.md](./references/framework-patterns/react-patterns.md) | | 7, "vue" | Read [framework-patterns/vue-patterns.md](./references/framework-patterns/vue-patterns.md) | | 7, "vanilla", "web components", "css" | Read [framework-patterns/vanilla-patterns.md](./references/framework-patterns/vanilla-patterns.md) |After reading references, apply patterns to the user's specific context. </routing>
<parallel_agents>
For comprehensive audits, launch these agents in parallel:
┌─────────────────────────┐ ┌─────────────────────────┐
│ component-hierarchy- │ │ token-auditor │
│ analyzer │ │ │
│ → Classifies components │ │ → Extracts design tokens│
│ into atomic levels │ │ from CSS/SCSS │
└───────────┬─────────────┘ └───────────┬─────────────┘
│ │
└──────────┬─────────────────┘
▼
┌─────────────────────────┐
│ atomic-compliance-scorer│
│ → Scores and recommends │
└─────────────────────────┘
┌─────────────────────────┐
│ atomic-migration-planner│
│ → Plans phased migration│
└───────────┬─────────────┘
│
▼
┌─────────────────────────────────────────────┐
│ Ralph Wiggum Loop (one task per iteration) │
│ │
│ Iteration 1: Extract Button atom │
│ Iteration 2: Extract Input atom │
│ Iteration 3: Compose SearchForm molecule │
│ ... │
│ Completion signal: all components migrated │
└─────────────────────────────────────────────┘
</parallel_agents>
<ralph_wiggum_integration>
Phase 1: Token Extraction
Prompt: "Extract all design tokens from existing CSS"
Completion signal: tokens.json exists with all values mapped
Phase 2: Atom Identification
Prompt: "Identify and extract atomic components"
Completion signal: atoms/ directory with all atom components
Phase 3: Composition
Prompt: "Compose atoms into molecules, then organisms"
Completion signal: molecules/ and organisms/ directories complete
Each iteration handles one component:
Iteration 1: Extract Button → atoms/Button/
Iteration 2: Extract Input → atoms/Input/
Iteration 3: Extract Icon → atoms/Icon/
Iteration 4: Compose SearchInput → molecules/SearchInput/
...
Define rules that reject invalid structures:
## Constraints
- Atoms cannot import other atoms (composition violation)
- Molecules can only import from atoms/
- Organisms can import from atoms/ and molecules/
- If an import violates hierarchy → build fails
</ralph_wiggum_integration>
<reference_index>
All references in references/:
Core Concepts:
Framework Patterns:
Process:
/atomic-audit [path] — Run full atomic design audit with parallel agents/atomic-init [framework] — Scaffold new atomic design system/atomic-migrate — Iterative migration using Ralph Wiggum pattern
</commands>
<anti_patterns>
Organism importing organism — Organisms should compose molecules/atoms, not other organisms
✗ Header imports Footer
✓ Header composes Logo + Nav + SearchForm + UserMenu
Molecule with too many atoms — If a molecule has 5+ atoms, it's probably an organism
✗ SearchSection (input + button + filters + results + pagination)
✓ SearchSection as organism containing SearchForm molecule + ResultsList organism
Atoms with internal state — Atoms should be stateless; state belongs in molecules/organisms
✗ Button with internal loading state
✓ Button receives isLoading prop from parent
Skipping semantic tier — Components referencing primitives directly
✗ --button-bg: var(--color-blue-600);
✓ --button-bg: var(--color-action-primary);
Hardcoded values in components — All values should reference tokens
✗ padding: 16px;
✓ padding: var(--space-4);
See design-tokens.md for comprehensive token anti-patterns. </anti_patterns>
<success_criteria>
You've built a proper atomic design system when:
Can a new developer understand the component hierarchy in 5 minutes? Can they add a new molecule without guidance?
If yes, you've built a successful atomic design system. </success_criteria>
npx skills add cbarker95/atomic-design-system下载完整 Skill 目录,包含 SKILL.md 及所有相关文件
Search for places (restaurants, cafes, etc.) via Google Places API proxy on localhost.
Interact with GitHub using the `gh` CLI. Use `gh issue`, `gh pr`, `gh run`, and `gh api` for issues, PRs, CI runs, and advanced queries.
Create or update AgentSkills. Use when designing, structuring, or packaging skills with scripts, references, and assets.
Start voice calls via the OpenClaw voice-call plugin.
Notion API for creating and managing pages, databases, and blocks.
Gemini CLI for one-shot Q&A, summaries, and generation.
Category:developer