Best for
- Use when fetching design context from Figma, rendering Pencil designs, or exporting to React/Tailwind code.
modu-ai/moai-adk/.moai/archive/skills/v3.0/moai-design-tools/SKILL.md
Design tool integration specialist covering Figma MCP, Pencil renderer, and Pencil-to-code export. Use when fetching design context from Figma, rendering Pencil designs, or exporting to React/Tailwind code.
Decision brief
Comprehensive design-to-code workflow guidance covering three major capabilities: Figma MCP (design fetching), Pencil MCP (visual rendering), and Pencil-to-code export (React/Tailwind generation).
Compatibility matrix
| Platform | Status | Evidence | What to check |
|---|---|---|---|
| Codex | Not declared | No explicit evidence | Portability before use |
| Claude Code | Declared | Source record | Install path and trigger |
| Cursor | Not declared | No explicit evidence | Portability before use |
| Gemini CLI | Not declared | No explicit evidence | Portability before use |
Installation
The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.
npx skills add https://github.com/modu-ai/moai-adk --skill ".moai/archive/skills/v3.0/moai-design-tools"Inspect the Agent Skill "moai-design-tools" from https://github.com/modu-ai/moai-adk/blob/a739d04b40e64f9ca7852b66c8fd6edc927a25aa/.moai/archive/skills/v3.0/moai-design-tools/SKILL.md at commit a739d04b40e64f9ca7852b66c8fd6edc927a25aa. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.
Workflow
2. Open or Create Document
Applicable to all tools:
For detailed tool-specific implementation guidance, see the reference files:
File: reference/figma.md
[ ] Design tokens from Figma or Pencil used for colors, spacing, and typography
Permission review
The documentation includes network, browsing, or remote request actions.
bunx --bun shadcn@latest create --preset "https://ui.shadcn.com/init?base=radix&style=nova&baseColor=neutral&theme=neutral&iconLibrary=hugeicons&font=noto-sans&menuAccent=bold&menuColor=default&radius=small&template=next&rtl=false" --templaThe documentation asks the agent to read local files, directories, or repositories.
| `open_document` | Open existing .pen file or create new one |The documentation asks the agent to create, modify, or delete local files.
open_document(filePathOrNew: "new") → Create new .pen fileThe documentation asks the agent to read local files, directories, or repositories.
Open tool-specific reference file for implementation detailsEvidence record
| Signal | Value | Evidence type | Meaning |
|---|---|---|---|
| Quality score | 90/100 | Computed | Documentation, specificity, maintenance, and trust rules |
| Repository stars | 1,186 | Source | Repository attention, not individual Skill quality |
| Compatibility | 1 platforms | Source | Declared in the catalog source record |
| Usage guide | automated source guide | Editorial | Generated or reviewed according to the visible evidence level |
Pinned source
Comprehensive design-to-code workflow guidance covering three major capabilities: Figma MCP (design fetching), Pencil MCP (visual rendering), and Pencil-to-code export (React/Tailwind generation).
When no specific design style is requested, use the shadcn/ui Nova preset with Notion-style neutral color scheme:
bunx --bun shadcn@latest create --preset "https://ui.shadcn.com/init?base=radix&style=nova&baseColor=neutral&theme=neutral&iconLibrary=hugeicons&font=noto-sans&menuAccent=bold&menuColor=default&radius=small&template=next&rtl=false" --template next
| Property | Value | Description |
|---|---|---|
| Style | nova | Modern, clean design language |
| Base Color | neutral | Notion-style grayscale palette |
| Theme | neutral | Consistent neutral theming |
| Icon Library | hugeicons | Comprehensive icon set |
| Font | noto-sans | Clean, readable sans-serif |
| Radius | small | Subtle rounded corners |
| Menu Accent | bold | Strong menu highlighting |
Apply the Nova preset when:
Official Figma MCP integration via Remote MCP server (https://mcp.figma.com/mcp). Install with: claude plugin install figma@claude-plugins-official
Best For: Fetching design context from Figma files, extracting design tokens, generating new designs with Code-to-Canvas (generate_figma_design), accessing FigJam boards, and linking components to code with Code Connect.
Key Strengths: 16 official tools including read (get_design_context, get_variable_defs, get_screenshot, get_metadata), write (use_figma, generate_figma_design, create_new_file), Code Connect (get_code_connect_map, add_code_connect_map, get_code_connect_suggestions, send_code_connect_mappings), FigJam (get_figjam, generate_diagram), design system (search_design_system, create_design_system_rules), and utility (whoami). Write-to-canvas is currently free during beta.
Workflow: Install plugin → get_design_context → get_variable_defs → get_screenshot → Implement design → Verify against screenshot.
Context7 Library: /figma/docs
Pencil MCP integration for creating and editing .pen design files (schema v2.9) with AI-assisted design generation. CLI: @pencil.dev/cli v0.2.4.
Best For: Rapid prototyping, visual design iterations, creating UI mockups from text descriptions, collaborative design discussions, visual proposals before implementation.
Key Strengths: Text-to-design conversion, batch design operations, style guide integration, visual preview without implementation, collaborative design workflow, component system with slots, design libraries (.lib.pen).
Available Pencil MCP Tools (14 + 1 CLI-only):
Note: .pen files are pure JSON (Git diffable, mergeable). 13 node types: Rectangle, Ellipse, Line, Polygon, Path, Text, Frame, Group, Note, Prompt, Context, IconFont, Ref.
| Tool | Purpose |
|---|---|
batch_design | Create, modify, and manipulate design elements in batches (Insert/Copy/Replace/Update/Delete/Move/Generate) |
batch_get | Read design components and hierarchy by patterns or node IDs |
get_screenshot | Render design previews as PNG images |
snapshot_layout | Analyze computed layout structure with bounding boxes, detect overlaps |
get_editor_state | Get current editor context, active file, and selection |
get_variables | Read design tokens and theme variables (colors, spacing, radii, sizes, fonts) |
set_variables | Update design tokens and theme variables |
search_all_unique_properties | Recursively search for all unique properties on nodes |
replace_all_matching_properties | Recursively replace all matching properties on nodes |
get_guidelines | Get design guidelines (topics: code, table, tailwind, landing-page, design-system) |
get_style_guide | Get style guide by name or tags |
get_style_guide_tags | List all available style guide tags |
open_document | Open existing .pen file or create new one |
find_empty_space_on_canvas | Find available space for new elements |
export_nodes | CLI only — Export to PNG, JPEG, WEBP, PDF with scale multiplier |
Workflow: Describe UI in natural language → Generate design with batch_design → Visually review with get_screenshot → Iterate on design → Export to code when ready.
CLI Authentication: pencil login (interactive) or PENCIL_CLI_KEY env var (CI/CD). Agent mode: pencil --out file.pen --prompt "..." --model claude-sonnet-4-6.
Context7 Library: /pencil/docs
Export .pen designs to production-ready React and Tailwind CSS code via a prompt-based workflow.
Best For: Converting approved .pen designs to implementation, generating React components with Tailwind styling, maintaining design fidelity in code, rapid frontend development from visual designs.
Key Strengths: Prompt-based code generation (no export API), batch_get for reading .pen JSON structure, design token extraction via get_variables, React component generation with Tailwind classes, component structure preservation.
Workflow: batch_get frame data → Analyze JSON structure → Map to React/Tailwind → Apply design tokens → Verify against screenshot.
Note: Pencil-to-Code is a prompt-based workflow. There is no pencil.export_to_react() API or pencil.config.js configuration file.
Choose Figma MCP when:
Choose Pencil MCP when:
Choose Pencil-to-Code Export when:
Check Editor State
get_editor_state() → Determine active .pen file and user selection
Open or Create Document
open_document(filePathOrNew: "new") → Create new .pen file
open_document(filePathOrNew: "/path/to/file.pen") → Open existing
Get Design Guidelines
get_guidelines(topic: "code" | "table" | "tailwind" | "landing-page")
get_style_guide_tags() → Get available style tags
get_style_guide(tags: ["minimalist", "dashboard"], name: "nova")
Generate with batch_design
Use batch_design for efficient batch operations. Syntax:
foo=I("parent", { ... }) // Insert new node
baz=C("nodeid", "parent", { ... }) // Copy node
foo2=R("nodeid1/nodeid2", {...}) // Replace node
U(foo+"/nodeid", {...}) // Update node
D("dfFAeg2") // Delete node
M("nodeid3", "parent", 2) // Move node
G("baz", "ai", "...") // Generate image with AI
Design with Default Nova Style
When creating components without user-specified style:
Review with get_screenshot
get_screenshot() → Visual validation of design
Read Variables
get_variables() → Current design tokens and themes
Update Variables
set_variables(variables: { primary: "#3B82F6", ... })
snapshot_layout() → Analyze computed layout rectangles
find_empty_space_on_canvas(direction: "right", size: { w: 200, h: 100 })
These patterns apply across all three tools with tool-specific implementations.
Design Token Management:
All tools support design token extraction and management. Figma MCP extracts tokens from existing files, Pencil MCP generates tokens during design creation, Pencil-to-code exports tokens as CSS variables or Tailwind config.
Component Architecture:
All tools maintain component hierarchy. Figma MCP reads component structure from Figma, Pencil MCP creates component structure in DNA codes, Pencil-to-code generates React components preserving hierarchy.
Responsive Design:
All tools handle responsive layouts. Figma MCP extracts responsive variants, Pencil MCP defines responsive breakpoints in DNA, Pencil-to-code generates Tailwind responsive classes.
Style Consistency:
All tools ensure design consistency. Figma MCP validates against design system, Pencil MCP enforces design tokens, Pencil-to-code applies consistent Tailwind classes.
Applicable to all tools:
Design System Integration:
Version Control:
Collaboration:
Quality Assurance:
For detailed tool-specific implementation guidance, see the reference files:
File: reference/figma.md
Covers Figma MCP connection setup, file metadata fetching, component tree extraction, design token retrieval, screenshot capture, and style guide generation.
Key sections: MCP configuration, authentication setup, file access patterns, metadata queries, component hierarchy parsing, token extraction formats, screenshot API usage, design system documentation.
File: reference/pencil-renderer.md
Covers batch_design operations, style guide integration, .pen frame rendering, visual design iteration, collaborative workflows, and design version control.
Key sections: batch_design syntax, natural language design prompts, rendering options, frame configuration, design refinement patterns, version control strategies, team collaboration workflows.
File: reference/pencil-code.md
Covers .pen design export to React components, Tailwind CSS generation, component structure preservation, responsive layout handling, and design system integration.
Key sections: Export configuration, React component generation, Tailwind class application, props API design, state management integration, testing generated components, optimization strategies.
File: reference/comparison.md
Provides detailed comparison matrix covering use cases, workflow patterns, integration complexity, and when to use each tool.
Key sections: Feature comparison table, workflow decision matrix, tool integration patterns, migration strategies, ecosystem compatibility, team workflow recommendations.
When working with design-to-code features:
Access up-to-date tool documentation using Context7 MCP:
Figma:
Pencil:
Status: Active Version: 5.1.0 (Pencil docs sync — schema v2.9, CLI v0.2.4, slots, libraries, full node types) Last Updated: 2026-04-05 Tools: Figma MCP (16 tools, Official Remote Server), Pencil MCP (14 tools + export_nodes CLI-only), Pencil-to-Code Export Default Style: shadcn/ui Nova (neutral, noto-sans, small radius) UI Kits: Shadcn UI (default), Halo (glassmorphic), Lunaris (dark-mode), Nitro (minimal)
| Rationalization | Reality |
|---|---|
| "I can implement the design from the screenshot, I do not need Figma context" | Screenshots lose component structure, spacing tokens, and interaction states. Figma MCP provides structured design data. |
| "Pencil files are just for designers, developers do not need them" | Pencil files contain layout constraints and component hierarchy. Developers use them as the source of truth for implementation. |
| "I will export to code and clean it up" | Generated code is a starting point, not a deliverable. Export without review produces non-semantic, non-accessible markup. |
| "Design tokens are too rigid, I need custom values" | Custom values bypass the design system. Extend tokens through the system, not around it. |
| "I will sync with the designer after implementation" | Post-implementation sync means rework. Sync before implementation means alignment. |
Frequently asked questions
Comprehensive design-to-code workflow guidance covering three major capabilities: Figma MCP (design fetching), Pencil MCP (visual rendering), and Pencil-to-code export (React/Tailwind generation).
The source record exposes this install command: npx skills add https://github.com/modu-ai/moai-adk --skill ".moai/archive/skills/v3.0/moai-design-tools". Inspect the command and pinned source before running it.
The pinned source record declares support for: claude code.
Static rules flagged network, read-files, write-files in the source; the page lists the matching lines and excerpts.
Alternatives
Jamie-BitFlight/claude_skills
Use when creating a new Claude Code plugin from scratch — orchestrates prerequisite check, user discussion, parallel research, design with verification, atomic implementation, multi-layer validation, documentation, and final verification. For existing plugin improvement, use /plugin-creator:plugin-lifecycle instead.
upex-galaxy/agentic-qa-boilerplate
Analyze, prioritize, and document test cases in TMS (Jira/Xray), or repair an existing Story-ATS-ATP-ATR-TC cascade through a sealed explicit mode. Use for Test/ATP/ATR artifacts, ROI and automation verdicts, maintaining traceability, fix-traceability, or broken TMS links. The repair-traceability mode audits, plans, waits for explicit approval, applies, and verifies without launching the general documentation workflow. Do NOT use for writing test code (test-automation) or running suites (regress
NintendaDev/unikit-ai
Generate and maintain the project's TECHNICAL documentation from its codebase — scans the project structure, tech stack, and module boundaries, then writes a lean README landing page plus detailed topic pages (architecture, modules, setup, build, APIs), only the docs that are relevant. Use whenever the user wants to create, update, or validate documentation of the CODE or the project itself, e.g. "generate documentation", "create docs", "write the README", "update the project docs", "document th
mgiovani/cc-arsenal
Multi-agent review team: architecture, security, performance, testing, style, docs/UX, plus an adversary that cross-examines the other 6, for security-sensitive, architectural, or large PRs (15+ files) where a single-agent pass risks missing cross-cutting issues. Use for auth/payments/PII changes, schema/pattern changes, compliance sign-off, or when asked to 'get the review team on this' / 'multi-agent review' / 'thorough review before merge'. For a standard PR or a quick pre-merge check, use /r