Figma Design System Builder
warpdotdev/warp
Builds or updates a design system in Figma from a codebase in ordered phases: discovery, variables and tokens, components, theming and documentation, with checkpoints.
Author a new Design System Doc Spec (DSDS) spec from component implementation, Figma design, or written requirements.
$ npx skills add somerandomdude/design-system-documentation-schema --skill dsds-add -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install somerandomdude/design-system-documentation-schema dsds-add --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/somerandomdude/design-system-documentation-schema.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/dsds-add .claude/skills/dsds-add && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "dsds-add" agent skill from https://github.com/somerandomdude/design-system-documentation-schema/tree/main/.agents/skills/dsds-add into .claude/skills/dsds-add/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dsds-add", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/somerandomdude/design-system-documentation-schema/tree/main/.agents/skills/dsds-addType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add somerandomdude/design-system-documentation-schema --skill dsds-add -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install somerandomdude/design-system-documentation-schema dsds-add --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/somerandomdude/design-system-documentation-schema.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/dsds-add .agents/skills/dsds-add && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "dsds-add" agent skill from https://github.com/somerandomdude/design-system-documentation-schema/tree/main/.agents/skills/dsds-add into .agents/skills/dsds-add/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dsds-add", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add somerandomdude/design-system-documentation-schema --skill dsds-add -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install somerandomdude/design-system-documentation-schema dsds-add --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/somerandomdude/design-system-documentation-schema.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/dsds-add .cursor/skills/dsds-add && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "dsds-add" agent skill from https://github.com/somerandomdude/design-system-documentation-schema/tree/main/.agents/skills/dsds-add into .cursor/skills/dsds-add/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dsds-add", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/somerandomdude/design-system-documentation-schema.git --path .agents/skills/dsds-add--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add somerandomdude/design-system-documentation-schema --skill dsds-add -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install somerandomdude/design-system-documentation-schema dsds-add --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/somerandomdude/design-system-documentation-schema.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/dsds-add .gemini/skills/dsds-add && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "dsds-add" agent skill from https://github.com/somerandomdude/design-system-documentation-schema/tree/main/.agents/skills/dsds-add into .gemini/skills/dsds-add/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dsds-add", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install somerandomdude/design-system-documentation-schema dsds-addInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add somerandomdude/design-system-documentation-schema --skill dsds-add -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/somerandomdude/design-system-documentation-schema.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/dsds-add .github/skills/dsds-add && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "dsds-add" agent skill from https://github.com/somerandomdude/design-system-documentation-schema/tree/main/.agents/skills/dsds-add into .github/skills/dsds-add/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dsds-add", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add somerandomdude/design-system-documentation-schema --skill dsds-add -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install somerandomdude/design-system-documentation-schema dsds-add --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/somerandomdude/design-system-documentation-schema.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/dsds-add .opencode/skills/dsds-add && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "dsds-add" agent skill from https://github.com/somerandomdude/design-system-documentation-schema/tree/main/.agents/skills/dsds-add into .opencode/skills/dsds-add/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dsds-add", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
dsds-addAuthor a new Design System Doc Spec (DSDS) spec from component implementation, Figma design, or written requirements.
Dsds Add is an agent skill from somerandomdude/design-system-documentation-schema. Author a new Design System Doc Spec (DSDS) spec from component implementation, Figma design, or written requirements. Triggers on "add spec", "create spec", "new spec", "author spec", "spec from component", "spec from Figma".
Its SKILL.md is about 1.7k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Frontend & Design, covering Design systems. It works with Figma. The licence is Apache-2.0.
7 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 52790fe. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
npxFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
designsystemdocspec.orgFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Dsds Add loads about 1.7k tokens when it runs. Until then it costs about 59 tokens; SKILL.md has 718 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from somerandomdude/design-system-documentation-schema at commit 52790fe, republished under its Apache-2.0 licence (© somerandomdude). 718 words, ~1,732 tokens.
.claude/skills/dsds-add/SKILL.md (or your agent's skills folder).Create a new standalone .dsds.yaml entry file in your project's documentation directory (see File Placement below for where a given kind lives).
component, token, theme, or the generic entry kind (for a foundation, pattern, guide, or anything else — use a namespaced custom kind like acme.icon-library instead if the document wants its own recognizable name).{directory}/{id}.dsds.yaml using the template below.refs entry (rel: file) in index.dsds.yaml pointing at the new file.npx dsds-validate {directory}/{id}.dsds.yaml — fix errors until it passes. Run npx dsds-lint {directory}/{id}.dsds.yaml for advisory documentation-quality warnings.npx dsds-validate won't mention it, and npx dsds-lint reports it as an advisory warning (DSDS-17–DSDS-23), never a failure.| Kind | Directory |
|---|---|
component | components/ |
token | tokens/ |
theme | themes/ |
entry (foundation) | foundations/ |
entry (pattern) | patterns/ |
entry (guide) | guides/ |
kind: component
id: <filename-without-extension>
name: <PascalCase>
description: <one-sentence summary>
metadata:
tags: [<action|feedback|form|disclosure|overlay|navigation|layout>]
since: <version>
status: {status: draft}
sections:
- kind: guidelines
for: all
framing: when-to-use
items:
- level: should
statement: <when this component is the right choice>
- kind: guidelines
for: all
items:
- level: must
statement: <a rule for using it correctly>
checkedBy: manual
sourceFiles:
- platform: <react|web-component|...>
file: <path to the real source file>
imports:
- platform: <react|web-component|...>
code: <import statement, written out>
package: <package name>
traits:
- traitType: variant
kind: enum
id: <the real prop or attribute name>
description: <what this dimension controls>
values:
- id: <value name, as the API spells it>
description: <what this value is for>Include at minimum: a guidelines section (framing: how-to-use, the default) covering usage rules and accessibility requirements. Add traits (top-level, not a section) for variants/states, a guidelines section with framing: when-to-use for fit judgments, and a definitions section for props/anatomy only when there's no real source file to point sourceFiles at instead. Add a for: agent section for firm rules an agent needs but a person wouldn't.
When a section has a recognizable job, say so in context (anatomy, terms, keyboard, events) rather than relying on its title — that's the field a tool reads to find the anatomy table. Tag a single-subject section with tags ([accessibility]) and place it after the broader sections on the same entry.
sourceFiles at the real file instead of hand-typing props — that's the whole point of the field. If your build already generates an API contract (a Custom Elements Manifest, a DS Contracts document), point specs at that generated document too, with rel: contract. Map variant/state props → traits, each tagged traitType: variant or traitType: state, with kind: enum or kind: boolean for the form its value takes. Give each trait the real prop or attribute name as its id, in whatever case the API uses — isDisabled stays isDisabled. Map CSS parts or named sub-elements → a definitions section with context: anatomy.traits, layer structure → a definitions section with context: anatomy, variable bindings → token refs. A Figma variable's own name is a valid token id as written, slashes and capitals included.guidelines items (level from RFC 2119: must/should/should-not/must-not/may), interaction requirements → a definitions section with context: keyboard (term = key, definition = action).When a guideline claims checkedBy: automated, checks must point at what runs the check: rel: test, rel: lint-rule, or rel: agent-test (a fixture that runs an AI agent against the guideline and grades its output). Prefer checkedBy: assisted with an agent-test, whose result is usually a pass rate rather than a strict pass/fail.
When unsure about fields or required properties, consult:
https://designsystemdocspec.org/v0.21.2/dsds.bundled.schema.json (or node_modules/design-system-documentation-schema/schema/dsds.bundled.schema.json if DSDS is installed as a dependency)/schema/entries-<kind>.md on this site — a few KB of field
names, types, requiredness and descriptions for that kind alone, in the order the schema
declares them. Prefer it over the whole bundle when you need one shape:
entries-component.md./schema/sections-<kind>.md — for example
sections-guidelines.md.id must match the filename (e.g. checkbox → checkbox.dsds.yaml).sourceFiles, specs, imports, traits, and combos are top-level fields on the entry, never inside a section.traitType. kind answers a different question and never substitutes for it. A trait carries no other classification field.must, should, should-not, must-not, may.metadata.status is always an object ({status: "draft"}), never a bare string.© somerandomdude, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .agents/skills/dsds-add of somerandomdude/design-system-documentation-schema.
Open the folder on GitHubat commit 52790fe
Dsds Add next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Dsds Add this skillsomerandomdude/design-system-documentation-schema | 114 | — | ~1.7k | Automated safety check: Pass | Apache-2.0 | |
| Figma Design System Builderwarpdotdev/warp | 65k | 2 repos | ~4.4k | Automated safety check: Pass | AGPL-3.0 | |
| Figma use_figma Plugin API Ruleswarpdotdev/warp | 65k | 4 repos | ~4.4k | Automated safety check: Pass | AGPL-3.0 | |
| Figma Design System Rules Generatorwarpdotdev/warp | 65k | 3 repos | ~4.6k | Automated safety check: Pass | AGPL-3.0 | |
| Figma Code Connect Componentswarpdotdev/warp | 65k | 2 repos | ~4.2k | Automated safety check: Pass | AGPL-3.0 | |
| Cc DesignZeroZ-lab/cc-design | 827 | — | ~2.2k | Automated safety check: Notes | None |
warpdotdev/warp
Builds or updates a design system in Figma from a codebase in ordered phases: discovery, variables and tokens, components, theming and documentation, with checkpoints.
warpdotdev/warp
Required groundwork before any use_figma call: the rules and reference files for running JavaScript in a Figma file through the Plugin API without common failures.
warpdotdev/warp
Creates project-specific design system rules from your codebase so coding agents implement Figma designs with your components, naming and tokens.
warpdotdev/warp
Maps published Figma components to their code implementations with Code Connect, using the Figma MCP suggestion and mapping tools.
ZeroZ-lab/cc-design
High-fidelity HTML design and prototype creation. An agent skill from ZeroZ-lab/cc-design.
calesthio/OpenMontage
Create, extract, and apply portable visual design systems via visual-style.md files.
somerandomdude/design-system-documentation-schema
Everything about Design System Doc Spec (DSDS) — entry kinds, sections, schema structure, and how it fits into the ecosystem.
somerandomdude/design-system-documentation-schema
Validate DSDS specs against the bundled schema and check for consistency issues.
somerandomdude/design-system-documentation-schema
Update an existing DSDS spec based on implementation changes, Figma updates, or written instructions.
Works with
Categories
Author a new Design System Doc Spec (DSDS) spec from component implementation, Figma design, or written requirements. Dsds Add is an agent skill from somerandomdude/design-system-documentation-schema. Author a new Design System Doc Spec (DSDS) spec from component implementation, Figma design, or written requirements.
Dsds Add fits situations like: spec from component; spec from Figma.
Run `npx skills add somerandomdude/design-system-documentation-schema --skill dsds-add -a claude-code`. Or copy the skill folder (.agents/skills/dsds-add in somerandomdude/design-system-documentation-schema) into .claude/skills/dsds-add in your project. Claude Code loads it when a task matches its description.
Run `npx skills add somerandomdude/design-system-documentation-schema --skill dsds-add -a codex`. Or copy the skill folder (.agents/skills/dsds-add in somerandomdude/design-system-documentation-schema) into .agents/skills/dsds-add in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add somerandomdude/design-system-documentation-schema --skill dsds-add -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/dsds-add, .gemini/skills/dsds-add, .github/skills/dsds-add and .opencode/skills/dsds-add in your project.
Going by SKILL.md and its folder, Dsds Add needs the command-line tools its instructions call (npx). Our summary lists: Node.js.
SKILL.md names 1 domain. In commands or code: designsystemdocspec.org; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Dsds Add is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.7k tokens (SKILL.md is roughly 6.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Dsds Add: Figma Design System Builder (warpdotdev/warp, 65k stars), Figma use_figma Plugin API Rules (warpdotdev/warp, 65k stars), Figma Design System Rules Generator (warpdotdev/warp, 65k stars) and Figma Code Connect Components (warpdotdev/warp, 65k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
somerandomdude (a GitHub user) maintains it in somerandomdude/design-system-documentation-schema, which has 114 GitHub stars. The repository holds 4 skills in this directory. The repository was last updated on October 7, 2026.
Source: somerandomdude/design-system-documentation-schema on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.