extract-design-system
Reverse-engineer a project's real, shipped design language into a reusable design skill, so any agent can build or restyle pages that match it.
Skill by therapys
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/therapys-extract-design-system
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: design, agent-building
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/extract-design-system
What's inside
- Skill name
extract-design-system- Description
- Reverse-engineer a project's real, shipped design language into a reusable design skill, so any agent can build or restyle pages that match it. Use when the user says 'create a design skill from this project', 'make a design skill from the current project', 'extract the design system', 'capture this app's design as a skill', 'codify our design language', or 'reverse-engineer the design system into a SKILL.md'.
- License
- MIT
- Instructions
- 87 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# Extract Design System
Turn a codebase's **actual, shipped** design language into a reusable skill. The output is a
new `SKILL.md` — a tight rules + workflow + pitfalls guide — that lets any agent restyle or
build pages that look like they belong in this app. Ground **everything** in the real code
and the rendered UI. Never invent tokens; a design system you can't point to in the tree is
a guess.
This is the generator that produces a design skill. It is not `frontend` (which invents a
new aesthetic) — here the aesthetic already exists and your job is to codify it faithfully.
## Steps
1. **Read the tokens — don't guess.** Find where design decisions actually live:
- *Config tokens:* Tailwind config (`theme.extend` — colors, `fontFamily`, `borderRadius`,
`boxShadow`, spacing), CSS custom properties (`:root`, `@theme`, `data-theme`), SCSS/LESS
variables, or a `tokens.*` / `theme.*` file.
- *Typography:* font loading (`next/font`, `@font-face`, `<link>`), families, weights, the
type scale, and any display/accent face used differently from body.
- *Color & theming:* the palette and the **semantic** names layered on it (`background`,
`surface`, `muted`, `accent`, `border`), plus the dark-mode strategy (class vs
`prefers-color-scheme`) and how token pairs flip.
- *Scales:* the real radius, spacing, shadow, and border values in use — and which size
maps to which kind of element (control vs card vs sheet).
- *Components:* open the base primitives (`Button`, `Card`, `Input`, layout shell). Note
default radii, whether surfaces use borders / shadows / tone, and the variant set.
- *Motion & atmosphere:* transition durations/easings, hover/active patterns,
`prefers-reduced-motion` handling, and any grain, gradient, glow, or background wash.
2. **See it, don't just read it.** Run the app (or open Storybook / existing screenshots) and
look at 2–3 real screens in **both themes**. Code lies — dead tokens, inline overrides,
one-off styles. Trust what renders; reconcile it with the tokens.
3. **Derive the rules, not the inventory.** A design system is the handful of non-obvious
constraints that make pages look right — what defines a surface, what never gets a border,
the radius scale, how sections are separated, the one signature move. Aim for **6–9
load-bearing rules**, each citing real class/token names. A dump of every variable is not
a design system.
4. **Write the skill.** Create `skills/<name>-design/SKILL.md` following the skeleton below,
named after the product or aesthetic. Put copy-paste token values and 2–4 **real** code
snippets from the app in a sibling `REFERENCE.md` if they run long; keep `SKILL.md` dense.
5. **Validate and dogfood.** Run `npm run check`, then apply the new skill to restyle one
small component and screenshot it in both themes — it should be indistinguishable from the
source app. If it isn't, a rule is wrong or missing.
## Output skeleton (the design skill you generate)
```markdown
---
name: <product>-design
description: Apply the <product> "<aesthetic name>" design system — <3-5 word essence>. Use
when building or restyling pages/components in <product>, or when the user mentions
"<signature terms>" or asks to make a page match <product>.
---
# <Product> Design System
<one-paragraph thesis: the single mental model that explains the whole design>
## The N rules
1. **<Grammar rule>.** <real token values and the class names that carry them>
… (6–9 rules)
## Workflow for a new page
1. … the order you actually build a screen in this system
## Pitfalls (each shipped as a bug once)
- <concrete failure mode observed in the code/UI> → <the fix>
## Tokens / reference
<the token table, or a link to REFERENCE.md>
```
Model the density and voice on the project's own well-written docs — every line should save
the next agent a lookup.
## Guardrails
- **Grounded only.** Never document a token, class, or component you haven't found in the
tree and confirmed on screen.
- **Rules over inventory.** 6–9 constraints that carry the look beat a wall of variables.
- **Portability.** An extracted design skill is usually product-specific (brand colors,
product name, private aesthetic). Keep it **local** unless it's genuinely generic and meant
to be shared — add `skills/<name>-design/` to `.gitignore` so brand-specific design skills
never publish by accident. Strip any secret, internal URL, or machine-specific path from
the output.
- Leave committing to the `commit` / `ship` skills.From therapys/dotagents, MIT.
More from therapys/dotagents
- 0.631score
frontend
therapys
Build and polish production-ready frontend interfaces using Emil Kowalski's design-engineering approach.
SkillAFreshness: A★ 8Claude Code +9 - 0.626score
hairline-create
therapys
Use when someone asks for a new Hairline figure, or runs /hairline-create with an idea.
SkillAFreshness: A★ 8Claude Code +9 - 0.626score
image-generation
therapys
Generate and download images through ChatGPT in the user's signed-in browser, using their ChatGPT subscription rather than API keys or API billing.
SkillAFreshness: A★ 8Claude Code +9 - 0.592score
flesch-kincaid-proofreader
therapys
Measure and improve the readability of English copy with the Flesch–Kincaid grade-level test.
SkillBFreshness: B★ 8Claude Code +9 - 0.592score
signoz-investigating-alerts
therapys
Diagnose why a SigNoz alert fired by correlating the alert's own signal with neighbor signals (error rate, latency, throughput, CPU/memory), traces, and logs…
SkillBFreshness: B★ 8Claude Code +9 - 0.592score
posthog
therapys
Drive PostHog through the claude.ai `exec` connector — query analytics and entities (HogQL, insights, funnels, retention, web analytics), investigate LLM…
SkillBFreshness: B★ 8Claude Code +9 - 0.587score
autonomous-maintainer
therapys
Run the agent as an autonomous maintainer of a product — set it up once, then loop on small, verified, logged improvements while keeping the product…
SkillBFreshness: B★ 8Claude Code +9 - 0.587score
compress-skills
therapys
Compress one or more SKILL.md files so they consume less context on load while preserving 100% of their value — same triggers, capabilities, guardrails…
SkillBFreshness: B★ 8Claude Code +9 - 0.587score
ship
therapys
Take the current changes from a dirty tree to an open pull request — branch, commit, push, and open the PR.
SkillBFreshness: B★ 8Claude Code +9 - 0.587score
update-agents-md
therapys
Generate or refresh a repo's AGENTS.md (the source-of-truth agent context file) and its one-line CLAUDE.md pointer.
SkillBFreshness: B★ 8Claude Code +9 - 0.584score
gog
therapys
Use the gog CLI for safe Google Workspace automation: Gmail and email, Calendar and events, Drive files, Docs, Sheets, Contacts, Tasks, Chat, and other Google…
SkillBFreshness: B★ 8Claude Code +9 - 0.584score
teach
therapys
Teach the user anything so it actually locks in and is understood, not just memorized.
SkillBFreshness: B★ 8Claude Code +9
Signals
- Stars
- 8
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Aug 31, 2026 (1 month ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/therapys/dotagents
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from therapys
- 0.631score
frontend
therapys
Build and polish production-ready frontend interfaces using Emil Kowalski's design-engineering approach.
SkillAFreshness: A★ 8Claude Code +9 - 0.626score
hairline-create
therapys
Use when someone asks for a new Hairline figure, or runs /hairline-create with an idea.
SkillAFreshness: A★ 8Claude Code +9 - 0.626score
image-generation
therapys
Generate and download images through ChatGPT in the user's signed-in browser, using their ChatGPT subscription rather than API keys or API billing.
SkillAFreshness: A★ 8Claude Code +9 - 0.592score
flesch-kincaid-proofreader
therapys
Measure and improve the readability of English copy with the Flesch–Kincaid grade-level test.
SkillBFreshness: B★ 8Claude Code +9 - 0.592score
signoz-investigating-alerts
therapys
Diagnose why a SigNoz alert fired by correlating the alert's own signal with neighbor signals (error rate, latency, throughput, CPU/memory), traces, and logs…
SkillBFreshness: B★ 8Claude Code +9 - 0.592score
posthog
therapys
Drive PostHog through the claude.ai `exec` connector — query analytics and entities (HogQL, insights, funnels, retention, web analytics), investigate LLM…
SkillBFreshness: B★ 8Claude Code +9
Cite this page
extract-design-system skill. Agent Mart. https://agentmart.dev/skills/therapys-extract-design-system (last updated 2026-10-24)