accessibility-per-comp…
Run an accessibility audit on a specific design system component. Trigger when someone says: accessibility check, a11y audit, WCAG compliance, is this…
Plan and execute the full deprecation lifecycle for a design system component, token, or pattern — including timeline, migration paths, communication plan, and multi-phase removal. Trigger when someone says: deprecate a component, remove a component, sunset this pattern, phase
$ npx -y skills add murphytrueman/design-system-ops --skill deprecation-process --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/deprecation-processContext preview
The summary Claude sees to decide when to auto-load this skill.
Plan and execute the full deprecation lifecycle for a design system component, token, or pattern — including timeline, migration paths, communication plan, and multi-phase removal. Trigger when someone says: deprecate a component, remove a component, sunset this pattern, phase
name: deprecation-process description: "Plan and execute the full deprecation lifecycle for a design system component, token, or pattern — including timeline, migration paths, communication plan, and multi-phase removal. Trigger when someone says: deprecate a component, remove a component, sunset this pattern, phase out these tokens, retire this variant, replace this with, or anything involving removing or replacing something from the design system. Do NOT trigger for communicating non-deprecation changes like new releases or feature updates — use change-communication for those." references: - ../../knowledge-notes/component-governance.md
A skill for planning and executing the deprecation of components, tokens, or patterns in a design system. Produces a deprecation plan with timeline, consumer communication, and migration guidance.
Deprecation is the maintenance work that never gets prioritised until it becomes a crisis. Components accumulate. Tokens multiply. Patterns fork. The longer a team waits to deprecate, the more existing usage entrenches, and the more a removal feels disruptive rather than healthy.
A deprecation done well is a contract with consumers: clear notice, a migration path, and a credible timeline. A deprecation done badly is a surprise, and it erodes trust in the system faster than almost anything else.
This skill produces a deprecation plan that is honest about the timeline, specific about migration, and structured to communicate clearly to the teams affected.
---
Clarify:
If nothing replaces it: the deprecation plan needs an extra step addressing why the use case should no longer be served and what teams who relied on it should do instead.
Before writing the plan, understand the exposure. Do not estimate when you can measure.
**Automated usage counting (if codebase access is available):**
Run these searches to produce a concrete usage count, not an estimate:
For component deprecation:
# Count import statements
grep -r "import.*{.*ComponentName" --include="*.tsx" --include="*.ts" --include="*.jsx" --include="*.js" src/ | wc -l
# Count JSX usage (may exceed imports if used multiple times per file)
grep -r "<ComponentName" --include="*.tsx" --include="*.jsx" src/ | wc -l
# List files with usage (for blast radius mapping)
grep -rl "import.*ComponentName\|<ComponentName" --include="*.tsx" --include="*.ts" --include="*.jsx" --include="*.js" src/For token deprecation:
# CSS custom properties grep -r "var(--token-name)" --include="*.css" --include="*.scss" --include="*.tsx" src/ | wc -l # SCSS variables grep -r "\$token-name" --include="*.scss" src/ | wc -l # JS/TS token references grep -r "tokens\.path\.to\.token\|theme\.path\.to\.token" --include="*.ts" --include="*.tsx" src/ | wc -l
**Present the usage count as a structured summary:**
Usage audit: DatePicker ───────────────────────── Import statements: 23 files JSX instances: 47 usages Unique consuming apps: 4 (checkout, dashboard, settings, admin) Critical paths: 2 (checkout date selection, appointment booking) Test files with refs: 12 Storybook stories: 3 Documentation refs: 5 ───────────────────────── Total blast radius: 47 instances across 23 files in 4 applications
If codebase access is not available, ask the user to run the grep commands and provide the output. If neither is possible, flag the usage audit as outstanding and required before soft removal.
**Per-consumer breakdown:** For each consuming application, produce a row showing:
| Consumer | Instances | Critical path? | Estimated migration effort | Contact | |---|---|---|---|---| | Checkout | 12 | Yes (date selection) | Medium (1–3 days) | [team/person] | | Dashboard | 18 | No | Low (<1 day) | [team/person] | | Settings | 8 | No | Low (<1 day) | [team/person] | | Admin | 9 | No | Medium (prop differences) | [team/person] |
This table is the deprecation plan's most operationally useful artifact. It tells the deprecation owner exactly who to contact, how much work each team faces, and where the blockers will be.
**Small-system note (fewer than 5 components):** Deprecating one component when you only have four is removing 25% of the system. The usage audit (this step) becomes mandatory, not optional — the blast radius is proportionally much larger. Consider whether the component should be archived or hidden rather than fully deprecated, since small systems have fewer alternatives and consumers may have no migration path. The communication step should be a direct conversation with every affected team, not a written announcement — with a system this size, you know who is using what.
---
**Item being deprecated:** [name] **Deprecated in version:** [version number or date] **Planned removal:** [version or date, or "TBD — see timeline"] **Replacement:** [name of replacement, or "none — see migration guidance"] **Owner:** [who is responsible for this deprecation]
---
One to three sentences. Be direct. "This component has a lower-quality replacement that covers all existing use cases and is more accessible" is more useful than "this component has reached the end of its lifecycle."
Include the decision record reference if one exists.
If there is a direct replacement: name it, link to it, and describe in one sentence what makes it the right choice for teams currently using the deprecated item.
If the
Claude Code skills for the work that keeps a design system alive.
Repo: murphytrueman/design-system-ops
Run an accessibility audit on a specific design system component. Trigger when someone says: accessibility check, a11y audit, WCAG compliance, is this…
Produce a design system adoption report separating coverage from actual adoption, with trend direction and risk flags. Trigger when someone says: adoption…
Generate AI-optimised text descriptions for components, formatted for Figma's MCP server and LLM consumption. This produces prose descriptions in a six-section…
Transform audit findings into sprint-ready work items with effort estimates, acceptance criteria, and stakeholder-friendly rationale. This converts existing…
Produce a communication package for a design system change — release notes, migration guide, and team announcement. This produces communication artefacts for…
Generate CI/CD pipeline configurations that automate design system quality checks — token validation, component linting, visual regression, accessibility…