figma-design-to-code
Skill6 starsChanged 9 months agoMITView on GitHub
**MANDATORY prerequisite** — you MUST invoke this skill BEFORE calling the `get_design_context` Figma MCP tool. You MUST trigger this skill whenever the user wants to implement, build, port, or code up a Figma design as code. Example prompts (not exhaustive) are 'implement this Figma design', 'build this screen from Figma', 'turn this Figma into code', 'design to code'. This skill provides critical instructions and steps to the agent on how to correctly implement Figma designs in code and must NOT be skipped.
5 other projects use a version of this, 2 of them edited.
Adopted by
Most recently taken up by
- PracticalSwan/agent-skillsedited, first seen Oct 19, 2026
- openai/pluginsword for word, first seen Oct 13, 2026
- figma/mcp-server-guideedited, first seen Oct 8, 2026
- Ghosteken/agent-harnesstheir own version, first seen Oct 1, 2026
- SkotAlexsander/skillsword for word, first seen Sep 16, 2026
Other versions5 projects use a version of this.
Word for word · 2
- openai/plugins★ 7.8k100% same
- SkotAlexsander/skills★ 1100% same
Edited · 2
- figma/mcp-server-guide★ 2.2k22% same
- PracticalSwan/agent-skills★ 2214% same
Wrote their own version · 1
- Ghosteken/agent-harness★ 2same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository281 other files it gives its agents.
- redis-development/AGENTS.mdAGENTS.md
- video-podcast-maker/AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- imagenCN/CLAUDE.mdCLAUDE.md
- adaptSkill
- Add Admin API EndpointSkill
- agent-browserSkill
- agent-developmentSkill
- Agent DevelopmentSkill
- agent-native-designSkill
- aihotSkill
- algorithmic-artSkill
- alipay-payment-integrationSkill
- animateSkill
- api-and-interface-designSkill
- api-designerSkill
- api-design-principlesSkill
- api-designSkill
- archifySkill
- architecture-designerSkill
- architecture-patternsSkill
- arrangeSkill
- asta-skillSkill
- auditSkill
- auth-implementation-patternsSkill
- awesome-design-mdSkill
- ax-auditSkill
- backend-patternsSkill
- bangumi-framesSkill
- bolderSkill
- brand-guidelinesSkill
- brandkitSkill
- browser-skillSkill
- browser-testing-with-devtoolsSkill
- build-mcp-appSkill
- build-mcpbSkill
- build-mcp-serverSkill
- byted-seedance-video-generateSkill
- byted-seedream-image-generateSkill
- canvas-designSkill
- chart-visualizationSkill
- chrome-cdpSkill
- ci-cd-and-automationSkill
- clarifySkill
- claude-apiSkill
- claude-automation-recommenderSkill
- claude-md-improverSkill
- cli-developerSkill
- code-review-and-qualitySkill
- code-reviewerSkill
- code-simplificationSkill
- colorizeSkill
- command-developmentSkill
- computer-useSkill
- consulting-analysisSkill
- context-engineeringSkill
- cqrs-implementationSkill
- creating-mermaid-diagramsSkill
- critiqueSkill
- data-analysisSkill
- The first 60 shown.
The file
We split this skill into the rules it gives an agent
3 rules. 0 are common, 1 is distinctive, and 2 are very specific to this project.
0
Common
Most of the 3 edited versions we read keep these.
1
Distinctive
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 34
Before writing new code, You MUST check the target project for existing components, layout patterns, and design tokens that match the …
- Very specific: line 51
Render every icon/image from its exported asset: Never hand-write or inline <svg>/<path>, never author your own icon file, never drop an …
- Very specific: line 59
If the design URL has no node-id (a file-only URL), ask the user for a node-specific URL — You MUST NOT guess or pass an empty nodeId.
“Common” is measured: kept by at least 6 in 10 of the 3 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Implement a Figma Design as Code (Design → Code)
Use this skill to turn a Figma design into code in a target codebase. This is the read-FROM-Figma direction: pull design context out of Figma with get_design_context, then adapt it into the project's real stack. For the reverse direction — building or updating a design in Figma from code — use figma-generate-design instead.
This skill owns the workflow for design-to-code. Parameter mechanics (nodeId / fileKey / branchKey extraction, URL parsing, format/query options, response shape) live on the get_design_context tool description itself — follow them there.
Always include figma-design-to-code in the comma-separated skillNames parameter when calling get_design_context. If this skill was loaded via an MCP resource, you MUST prefix the name with resource: (e.g. resource:figma-design-to-code). This is a logging parameter used to track skill usage — it does not affect execution.
Direction and Scope
- You MUST use this skill for design → code: implementing, translating, or porting a Figma node into code.
- You MUST NOT use this skill to write to Figma.
Workflow
1. Call get_design_context first
- You MUST call
get_design_contexton the target node before writing any code. It is your primary tool — a single call returns reference code, a screenshot, and contextual hints. - You MUST NOT reach for
get_metadataorget_screenshotas a substitute. Use them only to orient (e.g. picking a node) or to validate, not in place ofget_design_context.
2. Treat the output as a reference, not final code
- The returned code is React + Tailwind enriched with hints. You MUST treat it as a REFERENCE, not as final code to paste verbatim.
- You MUST adapt it to the target project's language, framework, component library, styling system, and conventions. Match the surrounding code.
3. Reuse what the project already has
- Before writing new code, You MUST check the target project for existing components, layout patterns, and design tokens that match the design intent.
- You MUST reuse the project's existing components and tokens instead of generating new equivalents from scratch.
4. Honor the response hints by priority
Apply the hints in this order — earlier sources override later ones:
- Code Connect snippets → use the mapped codebase component directly.
- Component documentation links → follow them for usage and guidelines.
- Design annotations → follow any designer notes or constraints.
- Design tokens (CSS variables) → map them to the project's token system.
- Raw hex / absolute positioning → loosely structured; lean on the screenshot for intent.
5. Reproduce images and icons faithfully
Images and icons come back as <img> elements whose src is a remote asset URL (https://.../api/mcp/asset/...). Apply these rules as you write the code:
- Render every icon/image from its exported asset. Never hand-write or inline
<svg>/<path>, never author your own icon file, never drop an icon or leave a placeholder — you don't have the real vector data, so anything you draw is wrong. - Sourcing: the asset URL works directly as
srcfor an immediate render, but it expires in ~7 days — so for code you'll commit, download-and-commit the exact asset bytes, or wire a dynamic content image to the project's data source (API, CDN, or props). Never a file whose contents you authored. - Reuse a project icon component only if its glyph clearly matches (a name match is not enough); otherwise use the exported asset.
- Size explicitly: a fixed-size container (icons are usually square, e.g.
size-[24px],overflow-clip) with BOTH width and height set, and size the leaf<img>to fill it (100%or fixed px) — neverauto, which blows the image up to its intrinsic size.
Error Recovery
- On a
get_design_contexterror, STOP and read the message before retrying. - If the design URL has no
node-id(a file-only URL), ask the user for a node-specific URL — You MUST NOT guess or pass an emptynodeId. - On a timeout, retry against a smaller node or selection.
- You MUST NOT silently fall back to hand-writing the screen from the screenshot alone when
get_design_contextcan still provide context.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

