/contribution-workflow
Create or document a contribution workflow for a design system — the multi-stage process for evaluating, accepting, and shepherding new contributions through to publication. Trigger when someone says: how should someone contribute, contribution process, adding a new component,
$ npx -y skills add murphytrueman/design-system-ops --skill contribution-workflow --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.
- You can call itInvoke it directly when you want it.
- Slash command
/contribution-workflow
Context preview
The summary Claude sees to decide when to auto-load this skill.
Create or document a contribution workflow for a design system — the multi-stage process for evaluating, accepting, and shepherding new contributions through to publication. Trigger when someone says: how should someone contribute, contribution process, adding a new component,
SKILL.md
contribution-workflow.SKILL.mdname: contribution-workflow
description: "Create or document a contribution workflow for a design system — the multi-stage process for evaluating, accepting, and shepherding new contributions through to publication. Trigger when someone says: how should someone contribute, contribution process, adding a new component, contribution guidelines, what's the process for adding something, how do we handle contributions, or anything about the process of bringing new work into the design system. Do NOT trigger for converting audit findings into backlog tickets — use backlog-generator for that."
references:
- ../../knowledge-notes/component-governance.md
- ../../knowledge-notes/design-to-code-contract.md
Contribution workflow
A skill for creating a structured contribution workflow covering the full journey from proposal to release. Output is a document teams can actually follow — not a policy statement, but a process with named stages, decision criteria, and clear ownership at each gate.
Context
Most design systems have one of two contribution problems. Either there is no process, so contributions arrive inconsistently and the design systems team becomes a bottleneck because every request is a negotiation. Or there is a process that is so heavy it discourages contribution entirely, and teams build locally rather than bother.
The goal here is a workflow that is lightweight enough to not be a burden, structured enough to produce consistent quality, and honest enough to tell contributors what will and will not make it into the system.
The six-stage structure below reflects the full lifecycle of a contribution. Not every contribution needs all six stages at the same depth — a small enhancement to an existing component is lighter than a new foundational component. The workflow should scale accordingly, and the output should note where the path diverges by contribution type.
---
Step 1: Understand the current state
Ask for or confirm:
- Does a contribution process already exist? If so, what is working and what is not?
- Who is responsible for design system maintenance — a dedicated team, shared responsibility, or a single person?
- What types of contributions are most common? (New components, enhancements, token changes, documentation, bug fixes)
- What is the team's capacity for reviewing and integrating contributions?
Capacity is the variable most contribution processes ignore. A six-stage review process designed for a four-person dedicated team will break immediately if there is only one part-time maintainer.
**Small-system note (fewer than 5 components):** For systems this size, the full six-stage workflow is almost certainly too heavy. Produce a lightweight three-stage workflow instead: Propose (async, one paragraph) → Build (with review from the maintainer) → Ship (documentation + release note). The community review stage and the detailed assessment stage add overhead that small teams cannot absorb. The contribution criteria should still be documented — but they can be a short checklist, not a policy document. Ask: "Is there one person maintaining this, or is it shared?" If one person, the workflow is essentially "talk to them first."
Step 2: Write the contribution workflow
---
Design system contribution workflow
**Version:** [version number or date] **Owner:** [who maintains this document] **Last reviewed:** [date]
---
Contribution types
Before the stages, establish the contribution types. Different types move through the process at different speeds.
**Type A: Bug fix or small enhancement** Scope: Correcting a documented error, adding a missing state, fixing a token reference. Path: Lightweight — skips proposal and community review, moves directly to build.
**Type B: Component enhancement** Scope: Adding a new variant, prop, or behaviour to an existing component. Path: Standard — proposal, design review, build, documentation, release.
**Type C: New component** Scope: A component that does not currently exist in the system. Path: Full — all six stages.
**Type D: System-level change** Scope: Token architecture changes, naming convention updates, governance policy changes. Path: Full, with extended community review. These changes have the widest blast radius.
---
Stage 1: Proposal
**Purpose:** Establish whether a contribution is worth building before anyone builds it.
**What the contributor submits:**
- What they want to add or change, in one sentence
- The problem it solves and for which product contexts
- Evidence of the need: two or more distinct product use cases, not just a single team's request
- Whether they are aware of anything in the current system that partially addresses this need
**Proposal template:**
## Contribution proposal
**What:** [One sentence — what you want to add or change]
**Why:** [The problem this solves, in business or user terms]
**Evidence:** [Two or more distinct product use cases demonstrating the need]
**Existing awareness:** [What currently exists in the system that partially addresses this? Why is it insufficient?]
**Contributor commitment:** [Are you willing to own the build phase? Y/N]
**What happens next:** The design systems team reviews the proposal within [SLA — e.g. five working days]. Three outcomes are possible:
- Accepted: proceed to Stage 2
- Deferred: the need is real but the timing or scope is wrong — include a reason and a re-evaluation date
- Declined: the need is better served by a local solution or does not meet the contribution criteria — include a reason
**Deferred proposals:** Proposals marked as "deferred" are real needs with wrong timing. To prevent them from being forgotten:
- Assign a re-evaluation date (typically next quarter or next planning cycle)
- Log the proposal in the system's backlog with the original evidence
- Notify the contributor when the re-evaluation date arrives
- If the same need surfaces from a second team before the re-evaluation date, escalate to
Read more
name: contribution-workflow description: "Create or document a contribution workflow for a design system — the multi-stage process for evaluating, accepting, and shepherding new contributions through to publication. Trigger when someone says: how should someone contribute, contribution process, adding a new component, contribution guidelines, what's the process for adding something, how do we handle contributions, or anything about the process of bringing new work into the design system. Do NOT trigger for converting audit findings into backlog tickets — use backlog-generator for that." references: - ../../knowledge-notes/component-governance.md - ../../knowledge-notes/design-to-code-contract.md
Contribution workflow
A skill for creating a structured contribution workflow covering the full journey from proposal to release. Output is a document teams can actually follow — not a policy statement, but a process with named stages, decision criteria, and clear ownership at each gate.
Context
Most design systems have one of two contribution problems. Either there is no process, so contributions arrive inconsistently and the design systems team becomes a bottleneck because every request is a negotiation. Or there is a process that is so heavy it discourages contribution entirely, and teams build locally rather than bother.
The goal here is a workflow that is lightweight enough to not be a burden, structured enough to produce consistent quality, and honest enough to tell contributors what will and will not make it into the system.
The six-stage structure below reflects the full lifecycle of a contribution. Not every contribution needs all six stages at the same depth — a small enhancement to an existing component is lighter than a new foundational component. The workflow should scale accordingly, and the output should note where the path diverges by contribution type.
---
Step 1: Understand the current state
Ask for or confirm:
- Does a contribution process already exist? If so, what is working and what is not?
- Who is responsible for design system maintenance — a dedicated team, shared responsibility, or a single person?
- What types of contributions are most common? (New components, enhancements, token changes, documentation, bug fixes)
- What is the team's capacity for reviewing and integrating contributions?
Capacity is the variable most contribution processes ignore. A six-stage review process designed for a four-person dedicated team will break immediately if there is only one part-time maintainer.
**Small-system note (fewer than 5 components):** For systems this size, the full six-stage workflow is almost certainly too heavy. Produce a lightweight three-stage workflow instead: Propose (async, one paragraph) → Build (with review from the maintainer) → Ship (documentation + release note). The community review stage and the detailed assessment stage add overhead that small teams cannot absorb. The contribution criteria should still be documented — but they can be a short checklist, not a policy document. Ask: "Is there one person maintaining this, or is it shared?" If one person, the workflow is essentially "talk to them first."
Step 2: Write the contribution workflow
---
Design system contribution workflow
**Version:** [version number or date] **Owner:** [who maintains this document] **Last reviewed:** [date]
---
Contribution types
Before the stages, establish the contribution types. Different types move through the process at different speeds.
**Type A: Bug fix or small enhancement** Scope: Correcting a documented error, adding a missing state, fixing a token reference. Path: Lightweight — skips proposal and community review, moves directly to build.
**Type B: Component enhancement** Scope: Adding a new variant, prop, or behaviour to an existing component. Path: Standard — proposal, design review, build, documentation, release.
**Type C: New component** Scope: A component that does not currently exist in the system. Path: Full — all six stages.
**Type D: System-level change** Scope: Token architecture changes, naming convention updates, governance policy changes. Path: Full, with extended community review. These changes have the widest blast radius.
---
Stage 1: Proposal
**Purpose:** Establish whether a contribution is worth building before anyone builds it.
**What the contributor submits:**
- What they want to add or change, in one sentence
- The problem it solves and for which product contexts
- Evidence of the need: two or more distinct product use cases, not just a single team's request
- Whether they are aware of anything in the current system that partially addresses this need
**Proposal template:**
## Contribution proposal **What:** [One sentence — what you want to add or change] **Why:** [The problem this solves, in business or user terms] **Evidence:** [Two or more distinct product use cases demonstrating the need] **Existing awareness:** [What currently exists in the system that partially addresses this? Why is it insufficient?] **Contributor commitment:** [Are you willing to own the build phase? Y/N]
**What happens next:** The design systems team reviews the proposal within [SLA — e.g. five working days]. Three outcomes are possible:
- Accepted: proceed to Stage 2
- Deferred: the need is real but the timing or scope is wrong — include a reason and a re-evaluation date
- Declined: the need is better served by a local solution or does not meet the contribution criteria — include a reason
**Deferred proposals:** Proposals marked as "deferred" are real needs with wrong timing. To prevent them from being forgotten:
- Assign a re-evaluation date (typically next quarter or next planning cycle)
- Log the proposal in the system's backlog with the original evidence
- Notify the contributor when the re-evaluation date arrives
- If the same need surfaces from a second team before the re-evaluation date, escalate to
Showing the first part of this file.
Claude Code skills for the work that keeps a design system alive.
Repo: murphytrueman/design-system-ops
Other skills on design-system-ops.
- /accessibility-per-component
Run an accessibility audit on a specific design system component. Trigger when someone says: accessibility check, a11y audit, WCAG compliance, is this accessible, check accessibility, does this meet WCAG, screen reader support, keyboard navigation check, or anything about
Open skill - /adoption-report
Produce a design system adoption report separating coverage from actual adoption, with trend direction and risk flags. Trigger when someone says: adoption report, how much is the system being used, usage metrics, adoption status, coverage report, which teams are using the
Open skill - /ai-component-description
Generate AI-optimised text descriptions for components, formatted for Figma's MCP server and LLM consumption. This produces prose descriptions in a six-section format (purpose, props, anti-patterns, composition, accessibility, examples), NOT JSON schemas or structured data
Open skill - /backlog-generator
Transform audit findings into sprint-ready work items with effort estimates, acceptance criteria, and stakeholder-friendly rationale. This converts existing findings into tickets, NOT the process for contributing new components to the system. Trigger when someone says: generate
Open skill - /change-communication
Produce a communication package for a design system change — release notes, migration guide, and team announcement. This produces communication artefacts for changes that have already been decided, NOT the deprecation lifecycle itself. Trigger when someone says: communicate this
Open skill - /cicd-integration
Generate CI/CD pipeline configurations that automate design system quality checks — token validation, component linting, visual regression, accessibility scanning, and release gating. Produces ready-to-use pipeline files for GitHub Actions, GitLab CI, CircleCI, or Bitbucket
Open skill

