design-system-governance — Claude Code skill: rules for evolving
This skill lays out how a design system changes over time: ownership, contribution, versioning, deprecation. It fits teams where more than one group ships components.
npx skills add Owl-Listener/designer-skills --skill design-system-governance -a claude-codeWhat design-system-governance does
The skill walks through the questions a governance model has to answer: who owns the system, who may contribute, how changes get proposed and decided, how releases are numbered, and what happens with breaking changes. Three ownership models are covered — centralized, federated, and hybrid — each with its tradeoffs.
A seven-step contribution process follows: request, triage, design, review, build and test, release, communication. Versioning uses semver, with patch for fixes, minor for new components, and major for breaking changes. Deprecation and the breaking change policy get their own sections, including migration guides and console warnings for consumers.
Nothing to install beyond the skill file itself. It earns its keep once several teams touch the same component library and start arguing about who adds what. On a single team that edits components directly, the whole apparatus just adds drag.
What it helps with
- settle who owns which components in the design system
- write down the path from component request to release
- pick between centralized and federated ownership
- introduce semver and a changelog for a component library
- plan deprecation so consuming teams are not caught off guard
Example prompts for the agent
- Draft an ownership model for our design system across three product teams
- Lay out the contribution process for a new component, from request to release
- Write a breaking change policy with migration steps for our library
How to install design-system-governance
1Skills CLI (Vercel)
npx skills add Owl-Listener/designer-skills --skill design-system-governance -a claude-code2Manually: put the files in place
~/.claude/skills/design-system-governance/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/design-system-governance/
1Skills CLI (Vercel)
npx skills add Owl-Listener/designer-skills --skill design-system-governance -a codex2Manually: put the files in place
.agents/skills/design-system-governance/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add Owl-Listener/designer-skills --skill design-system-governance -a cursor2Manually: put the files in place
.cursor/skills/design-system-governance/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install Owl-Listener/designer-skills design-system-governance2Manually: put the files in place
.github/skills/design-system-governance/SKILL.md1Skills CLI (Vercel)
npx skills add Owl-Listener/designer-skills --skill design-system-governance -a gemini-cli2Platform CLI
gemini skills install https://github.com/Owl-Listener/designer-skills --path design-systems/skills/design-system-governanceManually: put the files in place
.devin/skills/design-system-governance/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add Owl-Listener/designer-skills --skill design-system-governance -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about design-system-governance
How do I install design-system-governance in Claude?
Run npx skills add Owl-Listener/designer-skills --skill design-system-governance -a claude-code. The skill lands at ~/.claude/skills/design-system-governance/SKILL.md.
What does design-system-governance do?
It defines the processes and roles behind a design system's evolution: ownership models, contribution intake, versioning, deprecation, and breaking change handling.
How is it different from design-system-adoption?
Governance covers how the system changes. Adoption from designer-toolkit covers how teams take it up. For design file history, use version-control-strategy from design-ops.
Source text
SKILL.md · MIT
---
name: design-system-governance
description: Define how the system evolves — contribution model, versioning, deprecation, and change management. Use when multiple teams contribute. For driving uptake use `design-system-adoption` (designer-toolkit); for design file history use `version-control-strategy` (design-ops).
---
# Design System Governance
You are an expert in the operational and organizational structures that keep a design system healthy over time.
## What You Do
You define the processes, roles, and decision frameworks that allow a design system to evolve without fragmenting — so contributors know how to participate, consumers know how to depend on it, and the system stays coherent as the product scales.
## Core Governance Questions
A governance model must answer:
1. **Who owns the system?** Dedicated team, federated contributors, or hybrid?
2. **Who can contribute?** Anyone, or only the core team?
3. **How are changes proposed and decided?** Request process, RFC, or open pull requests?
4. **How is the system versioned?** How do consumers know what changed?
5. **How are breaking changes handled?** How much notice, what migration support?
6. **What gets deprecated, and how?** Timeline and removal process?
7. **How is quality maintained?** Review process before merging new components?
## Ownership Models
### Centralized (Core Team)
A dedicated design system team owns all components. Consumers submit requests; the core team builds and maintains.
- High consistency, high quality
- Can become a bottleneck; slow to respond to product team needs
- Works best in large orgs with budget for a dedicated team
### Federated (Distributed)
Any product team can contribute components. A lightweight governance layer reviews and accepts contributions.
- Fast to grow; reflects actual product needs
- Requires strong review standards to maintain quality
- Works best in mid-size orgs with mature design practice
### Hybrid
Core team owns foundational components; product teams own domain-specific components with support from core.
- Balances quality with velocity
- Requires clear ownership boundaries ("core" vs "extended" library)
- Most common model in practice
## Contribution Process
Define the lifecycle of a new component or change:
1. **Request/Proposal**: product team identifies a need; submits a request with use case and context
2. **Triage**: core team assesses: is this generalizable? Does something similar exist? What's the priority?
3. **Design**: component designed and specced (states, variants, accessibility, tokens)
4. **Review**: design critique + accessibility review + engineering feasibility
5. **Build and test**: implementation, documentation, accessibility testing
6. **Release**: versioned release with changelog entry
7. **Communication**: announce to consumers with migration notes if applicable
## Versioning
Use semantic versioning (semver) as the communication contract:
| Version type | When to use |
|---|---|
| **Patch** (1.0.x) | Bug fixes, documentation corrections, no API changes |
| **Minor** (1.x.0) | New components or variants added; backwards compatible |
| **Major** (x.0.0) | Breaking changes: renamed props, removed components, changed behavior |
- Tag every release in version control
- Maintain a public changelog — consumers need to know what changed and why
- Keep major version bumps rare and well-communicated
## Deprecation Process
- Announce deprecation with the release that introduces the replacement
- Provide a migration guide: what replaces the deprecated item, with code examples
- Keep deprecated items functional for at least one minor version cycle before removal
- Use in-product warnings (console warnings, Figma annotations) to surface deprecations to consumers
- Communicate timelines clearly: "Deprecated in 2.3, removed in 3.0 (Q3)"
## Breaking Change Policy
Before releasing a breaking change:
- Give consumers a migration path (a codemod, a replacement component, a spec change)
- Document the change in the changelog with "BREAKING:" prefix
- Provide a migration guide in docs
- Consider a compatibility shim for critical consumers who can't migrate immediately
## Quality Standards
Define what a component must have before it can enter the system:
- Documented props, variants, and states
- Accessibility review (WCAG AA minimum, keyboard navigation, screen reader tested)
- Responsive behavior specified
- Design token usage (no hardcoded values)
- Usage guidance (when to use, when not to use)
- Design file component (Figma or equivalent) synced with code
## Best Practices
- Publish a clear contribution guide so product teams know how to participate
- Hold regular office hours or open reviews — governance works better as a conversation than a ticket queue
- Review adoption metrics (which components are used most/least) to guide investment
- Document decisions as well as outcomes — why a component works the way it does prevents revisiting settled debates
- Treat governance as a product: it has users (contributors and consumers), and it needs iteration
© Owl-Listener · MIT · Owl-Listener/designer-skills