[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M75419PBX7RVXRHF78TXTTHN":3,"skill-same:01M75419PBX7RVXRHF78TXTTHN":84},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":16,"sourceHtmlUrl":17,"categories":18,"keywords":19,"publishedAt":20,"linkOnly":21,"markdownContent":22,"markdownBody":23,"frontMatter":24,"refName":29,"commitSha":30,"skillDirectory":31,"forksCount":14,"repositoryHtmlUrl":32,"repositoryHomepageUrl":6,"ownerHtmlUrl":33,"ownerBlogUrl":34,"ownerDescription":35,"updatedAt":36,"install":37,"resources":50},"01M75419PBX7RVXRHF78TXTTHN","figma",null,"Use the Figma MCP server to fetch design context, screenshots, variables, and assets from Figma, and to translate Figma nodes into production code. Trigger when a task involves Figma URLs, node IDs, design-to-code implementation, or Figma MCP setup and troubleshooting.","miteshmap\u002Fai","miteshmap","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F2466013?v=4","01M753ZYJT8Y0GYGRB95KPX3N5","Mitesh Patel","01M753ZYKXH9ZBV3QYP4JQPKGF",0,"Apache-2.0","https:\u002F\u002Fgithub.com\u002Fmiteshmap\u002Fai\u002Fblob\u002Fmain\u002Fskills\u002Ffigma\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002Fmiteshmap\u002Fai\u002Fblob\u002Fmain\u002Fskills\u002Ffigma\u002FSKILL.md",[],[],"2026-11-12 13:55:43",false,"---\nname: figma\ndescription: Use the Figma MCP server to fetch design context, screenshots, variables, and assets from Figma, and to translate Figma nodes into production code. Trigger when a task involves Figma URLs, node IDs, design-to-code implementation, or Figma MCP setup and troubleshooting.\nmetadata:\n  short-description: \"Use Figma MCP for design-to-code work\"\n  author: OpenAI\n  source: https:\u002F\u002Fgithub.com\u002Fopenai\u002Fskills\u002Ftree\u002Fmain\u002Fskills\u002F.curated\u002Ffigma\n---\n\n# Figma MCP\n\nUse the Figma MCP server for Figma-driven implementation. For setup and debugging details (env vars, config, verification), see `references\u002Ffigma-mcp-config.md`.\n\n## Figma MCP Integration Rules\nThese rules define how to translate Figma inputs into code for this project and must be followed for every Figma-driven change.\n\n### Required flow (**DO NOT SKIP**)\n1. Run get_design_context first to fetch the structured representation for the exact node(s).\n2. If the response is too large or truncated, run get_metadata to get the high-level node map and then re-fetch only the required node(s) with get_design_context.\n3. Run get_screenshot for a visual reference of the node variant being implemented.\n4. Only after you have both get_design_context and get_screenshot, download any assets needed and start implementation.\n5. Extract a spec table from get_design_context (see \"Exact measurements\") before writing any code.\n6. Translate the output (usually React + Tailwind) into this project's conventions, styles and framework (CSS, SCSS, Less, utility classes, etc.). Reuse the project's color tokens, components, and typography wherever possible.\n7. Verify the built result against the spec table (see \"Verification\") before marking complete.\n\n### Exact measurements\n- The screenshot is for orientation only. Never take sizes, gaps or colours from it by eye.\n- Read every value from the get_design_context output (and get_variable_defs for tokens): width, height, gap, padding, margin, border, radius, font family\u002Fsize\u002Fweight\u002Fline-height\u002Fletter-spacing\u002Fcase, colour, opacity, shadow, icon size, and layout direction\u002Falignment.\n- Record them as a table per element (element | property | Figma value | project token or raw value used). Include interactive and edge states (hover, focus, disabled, empty, error) and each breakpoint that has its own frame.\n- Build the table for **every** frame (desktop, mobile, and tablet if it exists) before writing code, not only the first one. Do not mark a breakpoint done until its own frame has been fetched and compared.\n- Layout counts as a value: read the parent container's `flex`\u002F`flex-col`, `items-*`, `justify-*`, `gap-*` and padding from the code (e.g. a heading and arrows in `flex items-end gap-[51px] pb-[12px]` share one bottom-aligned row). Never infer alignment or row grouping from the screenshot.\n- When `get_design_context` output is too large and is saved to a temp file, search that file for the element's visible text or `data-node-id` and read the surrounding container markup; do not fall back to the screenshot.\n- Map each value to an existing project token when it is equal. When no token matches, use the raw value and flag it in the table. Do not round or \"adjust minimally\" without noting it.\n- When a value is missing from the Figma data, say so and ask; do not guess.\n\n### Verification\n- Render the result at the design frame's width (and each other frame's width).\n- Read the actual rendered values for the same elements (bounding box and computed styles in a browser, or the equivalent for the platform) and compare them with the spec table.\n- Compare a screenshot of the result next to the Figma screenshot.\n- Report every mismatch with the Figma value, the actual value and the reason. Fix all that are not deliberate; list the rest as deviations.\n\n### Implementation rules\n- Treat the Figma MCP output (React + Tailwind) as a representation of design and behavior, not as final code style.\n- Replace Tailwind utility classes with the project's preferred utilities\u002Fdesign-system tokens when applicable.\n- Reuse existing components (e.g., buttons, inputs, typography, icon wrappers) instead of duplicating functionality.\n- Use the project's color system, typography scale, and spacing tokens consistently.\n- Respect existing routing, state management, and data-fetch patterns already adopted in the repo.\n- Strive for 1:1 visual parity with the Figma design. When conflicts arise, prefer design-system tokens and adjust spacing or sizes minimally to match visuals.\n- Validate the final UI against the Figma screenshot for both look and behavior.\n\n### Asset handling\n- The Figma MCP Server provides an assets endpoint which can serve image and SVG assets.\n- IMPORTANT: If the Figma MCP Server returns a localhost source for an image or an SVG, use that image or SVG source directly.\n- IMPORTANT: DO NOT import\u002Fadd new icon packages, all the assets should be in the Figma payload.\n- IMPORTANT: do NOT use or create placeholders if a localhost source is provided.\n\n### Link-based prompting\n- The server is link-based: copy the Figma frame\u002Flayer link and give that URL to the MCP client when asking for implementation help.\n- The client cannot browse the URL but extracts the node ID from the link; always ensure the link points to the exact node\u002Fvariant you want.\n\n## References\n- `references\u002Ffigma-mcp-config.md` — setup, verification, troubleshooting, and link-based usage reminders.\n- `references\u002Ffigma-tools-and-prompts.md` — tool catalog and prompt patterns for selecting frameworks\u002Fcomponents and fetching metadata.\n","# Figma MCP\n\nUse the Figma MCP server for Figma-driven implementation. For setup and debugging details (env vars, config, verification), see `references\u002Ffigma-mcp-config.md`.\n\n## Figma MCP Integration Rules\nThese rules define how to translate Figma inputs into code for this project and must be followed for every Figma-driven change.\n\n### Required flow (**DO NOT SKIP**)\n1. Run get_design_context first to fetch the structured representation for the exact node(s).\n2. If the response is too large or truncated, run get_metadata to get the high-level node map and then re-fetch only the required node(s) with get_design_context.\n3. Run get_screenshot for a visual reference of the node variant being implemented.\n4. Only after you have both get_design_context and get_screenshot, download any assets needed and start implementation.\n5. Extract a spec table from get_design_context (see \"Exact measurements\") before writing any code.\n6. Translate the output (usually React + Tailwind) into this project's conventions, styles and framework (CSS, SCSS, Less, utility classes, etc.). Reuse the project's color tokens, components, and typography wherever possible.\n7. Verify the built result against the spec table (see \"Verification\") before marking complete.\n\n### Exact measurements\n- The screenshot is for orientation only. Never take sizes, gaps or colours from it by eye.\n- Read every value from the get_design_context output (and get_variable_defs for tokens): width, height, gap, padding, margin, border, radius, font family\u002Fsize\u002Fweight\u002Fline-height\u002Fletter-spacing\u002Fcase, colour, opacity, shadow, icon size, and layout direction\u002Falignment.\n- Record them as a table per element (element | property | Figma value | project token or raw value used). Include interactive and edge states (hover, focus, disabled, empty, error) and each breakpoint that has its own frame.\n- Build the table for **every** frame (desktop, mobile, and tablet if it exists) before writing code, not only the first one. Do not mark a breakpoint done until its own frame has been fetched and compared.\n- Layout counts as a value: read the parent container's `flex`\u002F`flex-col`, `items-*`, `justify-*`, `gap-*` and padding from the code (e.g. a heading and arrows in `flex items-end gap-[51px] pb-[12px]` share one bottom-aligned row). Never infer alignment or row grouping from the screenshot.\n- When `get_design_context` output is too large and is saved to a temp file, search that file for the element's visible text or `data-node-id` and read the surrounding container markup; do not fall back to the screenshot.\n- Map each value to an existing project token when it is equal. When no token matches, use the raw value and flag it in the table. Do not round or \"adjust minimally\" without noting it.\n- When a value is missing from the Figma data, say so and ask; do not guess.\n\n### Verification\n- Render the result at the design frame's width (and each other frame's width).\n- Read the actual rendered values for the same elements (bounding box and computed styles in a browser, or the equivalent for the platform) and compare them with the spec table.\n- Compare a screenshot of the result next to the Figma screenshot.\n- Report every mismatch with the Figma value, the actual value and the reason. Fix all that are not deliberate; list the rest as deviations.\n\n### Implementation rules\n- Treat the Figma MCP output (React + Tailwind) as a representation of design and behavior, not as final code style.\n- Replace Tailwind utility classes with the project's preferred utilities\u002Fdesign-system tokens when applicable.\n- Reuse existing components (e.g., buttons, inputs, typography, icon wrappers) instead of duplicating functionality.\n- Use the project's color system, typography scale, and spacing tokens consistently.\n- Respect existing routing, state management, and data-fetch patterns already adopted in the repo.\n- Strive for 1:1 visual parity with the Figma design. When conflicts arise, prefer design-system tokens and adjust spacing or sizes minimally to match visuals.\n- Validate the final UI against the Figma screenshot for both look and behavior.\n\n### Asset handling\n- The Figma MCP Server provides an assets endpoint which can serve image and SVG assets.\n- IMPORTANT: If the Figma MCP Server returns a localhost source for an image or an SVG, use that image or SVG source directly.\n- IMPORTANT: DO NOT import\u002Fadd new icon packages, all the assets should be in the Figma payload.\n- IMPORTANT: do NOT use or create placeholders if a localhost source is provided.\n\n### Link-based prompting\n- The server is link-based: copy the Figma frame\u002Flayer link and give that URL to the MCP client when asking for implementation help.\n- The client cannot browse the URL but extracts the node ID from the link; always ensure the link points to the exact node\u002Fvariant you want.\n\n## References\n- `references\u002Ffigma-mcp-config.md` — setup, verification, troubleshooting, and link-based usage reminders.\n- `references\u002Ffigma-tools-and-prompts.md` — tool catalog and prompt patterns for selecting frameworks\u002Fcomponents and fetching metadata.\n",{"name":5,"metadata":25,"description":7},{"author":26,"source":27,"short-description":28},"OpenAI","https:\u002F\u002Fgithub.com\u002Fopenai\u002Fskills\u002Ftree\u002Fmain\u002Fskills\u002F.curated\u002Ffigma","Use Figma MCP for design-to-code work","main","61ef96fa5d1fec2e0c52d41ec0deae159fe0f0ed","skills\u002Ffigma","https:\u002F\u002Fgithub.com\u002Fmiteshmap\u002Fai","https:\u002F\u002Fgithub.com\u002Fmiteshmap","https:\u002F\u002Fmitesh.dev","Software Engineer","2026-10-15 01:25:45",{"source":8,"skillName":5,"commands":38,"prompt":48,"zipAvailable":49},[39,42,45],{"tool":40,"command":41},"npx","npx skills add miteshmap\u002Fai --skill figma",{"tool":43,"command":44},"bunx","bunx skills add miteshmap\u002Fai --skill figma",{"tool":46,"command":47},"pnpm","pnpm dlx skills add miteshmap\u002Fai --skill figma","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fmiteshmap\u002Fai\u002Fblob\u002Fmain\u002Fskills\u002Ffigma\u002FSKILL.md",true,[51,57,63,67,71,76,80],{"path":52,"resourceType":53,"resourceTypeDesc":54,"sizeBytes":55,"sourceHtmlUrl":56},"agents\u002Fopenai.yaml","REFERENCE","参考文档",460,"https:\u002F\u002Fgithub.com\u002Fmiteshmap\u002Fai\u002Fblob\u002Fmain\u002Fskills\u002Ffigma\u002Fagents\u002Fopenai.yaml",{"path":58,"resourceType":59,"resourceTypeDesc":60,"sizeBytes":61,"sourceHtmlUrl":62},"assets\u002Ffigma-small.svg","ASSET","资产文件",810,"https:\u002F\u002Fgithub.com\u002Fmiteshmap\u002Fai\u002Fblob\u002Fmain\u002Fskills\u002Ffigma\u002Fassets\u002Ffigma-small.svg",{"path":64,"resourceType":59,"resourceTypeDesc":60,"sizeBytes":65,"sourceHtmlUrl":66},"assets\u002Ffigma.png",1612,"https:\u002F\u002Fgithub.com\u002Fmiteshmap\u002Fai\u002Fblob\u002Fmain\u002Fskills\u002Ffigma\u002Fassets\u002Ffigma.png",{"path":68,"resourceType":59,"resourceTypeDesc":60,"sizeBytes":69,"sourceHtmlUrl":70},"assets\u002Ficon.svg",964,"https:\u002F\u002Fgithub.com\u002Fmiteshmap\u002Fai\u002Fblob\u002Fmain\u002Fskills\u002Ffigma\u002Fassets\u002Ficon.svg",{"path":72,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":75,"sourceHtmlUrl":16},"LICENSE.txt","LICENSE","许可证",11358,{"path":77,"resourceType":53,"resourceTypeDesc":54,"sizeBytes":78,"sourceHtmlUrl":79},"references\u002Ffigma-mcp-config.md",2471,"https:\u002F\u002Fgithub.com\u002Fmiteshmap\u002Fai\u002Fblob\u002Fmain\u002Fskills\u002Ffigma\u002Freferences\u002Ffigma-mcp-config.md",{"path":81,"resourceType":53,"resourceTypeDesc":54,"sizeBytes":82,"sourceHtmlUrl":83},"references\u002Ffigma-tools-and-prompts.md",2796,"https:\u002F\u002Fgithub.com\u002Fmiteshmap\u002Fai\u002Fblob\u002Fmain\u002Fskills\u002Ffigma\u002Freferences\u002Ffigma-tools-and-prompts.md",[85],{"skillNo":86,"name":87,"nameZh":6,"description":88,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":89,"licenseFileUrl":6,"sourceHtmlUrl":90,"categories":91,"keywords":92,"publishedAt":20},"01M7540RPG97YX5S2MV39JWYVQ","drupal-security-review","This skill should be used when the user asks to \"run a Drupal security review\", \"audit custom modules for security issues\", \"check for Drupal security vulnerabilities\", requests a security review of web\u002Fmodules\u002Fcustom or web\u002Fthemes\u002Fcustom, or before merging PRs that touch access control, forms, or data handling in this repository.","MIT","https:\u002F\u002Fgithub.com\u002Fmiteshmap\u002Fai\u002Fblob\u002Fmain\u002Fskills\u002Fdrupal-security-review\u002FSKILL.md",[],[]]