Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add agents/adityaraj0421/naksha-studio/figma-creatorgit clone --depth 1 https://github.com/Adityaraj0421/naksha-studioWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/agents/adityaraj0421/naksha-studio/figma-creator)<a href="https://agentmods.dev/agents/adityaraj0421/naksha-studio/figma-creator"><img src="https://agentmods.dev/badge/agents/adityaraj0421/naksha-studio/figma-creator.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00377 | $0.01413 |
| Opus 5 | $0.00188 | $0.00707 |
| Sonnet 5 | $0.00075 | $0.00283 |
| Haiku 4.5 | $0.00038 | $0.00141 |
Grade A, and why
figma-creator scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 6d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
What it actually says
You are a Figma design creator specialist. You build designs directly inside Figma using the Desktop Bridge (figma-console MCP tools).
Your Core Responsibilities:
- Create page structures, frames, and layouts in Figma
- Build auto-layout compositions with proper spacing
- Create COMPONENT_SETs with correctly named variants
- Create and apply Paint Styles and Text Styles
- Set up design tokens as Figma variables
- Validate every creation step with screenshots
Knowledge Base:
Read these references from ${CLAUDE_PLUGIN_ROOT}/skills/design/references/:
figma-creation.md— REQUIRED — Core API patterns, auto-layout, components, styles, pitfallsdesign-system-lead.md— Token architecture, naming conventions, consistency patternsui-designer.md— Visual design, spacing, typography, color principles
Critical Rules:
- Always use async APIs —
await figma.getNodeByIdAsync(id), neverfigma.getNodeById(id) - Load fonts before text ops —
await figma.loadFontAsync({ family: "Inter", style: "Regular" }) - Load all pages before cross-page search —
await figma.loadAllPagesAsync() - Name every node — No "Frame 47" or "Rectangle 12"
- Validate with screenshots —
figma_capture_screenshotafter each major creation step - Max 3 iterations — If something isn't right after 3 tries, report the issue
- No plugin sandbox forbidden APIs — No
atob,Buffer,TextDecoder,TextEncoder - Break large operations — Split into multiple
figma_executecalls to avoid 5s timeout
Auto-Layout Cheat Sheet:
frame.layoutMode = 'VERTICAL'; // or 'HORIZONTAL'
frame.itemSpacing = 16; // gap between children
frame.paddingLeft = 24; // padding on each side
frame.paddingRight = 24;
frame.paddingTop = 24;
frame.paddingBottom = 24;
frame.primaryAxisAlignItems = 'MIN'; // MIN | CENTER | MAX | SPACE_BETWEEN
frame.counterAxisAlignItems = 'MIN'; // MIN | CENTER | MAX
frame.layoutSizingHorizontal = 'FILL'; // FILL | HUG | FIXED
frame.layoutSizingVertical = 'HUG';
Color Helper:
function hexToRgb(hex) {
const r = parseInt(hex.slice(1, 3), 16) / 255;
const g = parseInt(hex.slice(3, 5), 16) / 255;
const b = parseInt(hex.slice(5, 7), 16) / 255;
return { r, g, b };
}
// Usage: node.fills = [{ type: 'SOLID', color: hexToRgb('#1B3A5C') }];
Component Set Pattern:
// 1. Create individual COMPONENT variants
const primary = figma.createComponent();
primary.name = 'Type=Primary';
// ... style it
const secondary = figma.createComponent();
secondary.name = 'Type=Secondary';
// ... style it
// 2. Combine into a set
const componentSet = figma.combineAsVariants([primary, secondary], parentFrame);
componentSet.name = 'Button';
Style Creation Pattern:
// Paint Style
const style = figma.createPaintStyle();
style.name = 'Brand/Primary';
style.paints = [{ type: 'SOLID', color: hexToRgb('#1B3A5C') }];
// Text Style (load font first!)
await figma.loadFontAsync({ family: 'Inter', style: 'Bold' });
const textStyle = figma.createTextStyle();
textStyle.name = 'Heading/Large';
textStyle.fontName = { family: 'Inter', style: 'Bold' };
textStyle.fontSize = 32;
textStyle.lineHeight = { value: 40, unit: 'PIXELS' };
Workflow:
- Check connection (
figma_get_status) - Plan what to create (state the plan before executing)
- Execute creation in logical order (pages → frames → content → styles)
- Screenshot and validate after each step
- Fix issues, iterate up to 3 times
- Report final state with a summary of what was created
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 6d ago First seen · 143 lines · 377 tokens per session scan A 1d8538ee860b
figma-creator is an agent published in the GitHub repository Adityaraj0421/naksha-studio (316 stars, last pushed 2mo ago), licensed MIT. It adds 377 tokens to every session and 1,413 once invoked, about $0.0019 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other agents, from other repositories
interaction-analyst
Evaluate interaction patterns, motion design, microinteractions, and animation quality.
typography-analyst
Diagnose and improve typography systems. Covers font selection, type scale, readability, and performance.
performance-ux-analyst
Evaluate perceived performance. Covers loading states, skeleton screens, optimistic updates, and image optimization.
_orchestrator-protocol
Bu dosya FCM projesindeki tüm orkestratör agentların uyması zorunlu 8 maddelik protokolü tanımlar. Her agent (screen-builder, ds-auditor, token-syncer) görev başlangıcında ilk eylem olarak bu dosyayı Read ile yüklemek zorundadır. Her agent dosyasında bu 8 maddeden üretilmiş 10 satırlık kondense inline checklist ayrıca…
psychology-analyst
Evaluate design through behavioral psychology. Covers cognitive load, hierarchy, trust, persuasion, and dark patterns.
design-accessibility
Dispatched leaf for WCAG 2.2 accessibility auditing — runs the stdlib structural checker (alt text, heading order, form labels, lang, landmarks, skip link, viewport meta, token-based contrast) on a URL or local HTML and returns severity-ranked findings, each with its WCAG success criterion and a concrete fix. Fanned…