CtrlK
BlogDocsLog inGet started
Tessl Logo

figma-use

**MANDATORY prerequisite** — you MUST invoke this skill BEFORE every `use_figma` tool call. NEVER call `use_figma` directly without loading this skill first. Skipping it causes common, hard-to-debug failures. Trigger whenever the user wants to perform a write action or a unique read action that requires JavaScript execution in the Figma file context — e.g. create/edit/delete nodes, set up variables or tokens, build components and variants, modify auto-layout or fills, bind variables to properties, or inspect file structure programmatically.

65

Quality

80%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./skills/figma-use/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

81%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

An exceptionally actionable, workflow-driven skill body: exact error messages, executable scripts, explicit validation checkpoints, and error-recovery feedback loops. Its main cost is token weight — deliberate rule repetition and inlined reference-grade tables make the 380-line body tighter than ideal for an overview that already ships a rich references/ bundle.

DimensionReasoningScore

Conciseness

The body is dense with genuinely non-obvious operational rules (little explanation of things Claude already knows), but it carries noticeable repetition and inlined reference-grade material: Rule 9 is restated across Section 2, Rule 5 across Sections 5–6, Section 3 restates Rules 4/15, the Pre-Flight Checklist (Section 8) re-enumerates Rules 1–18, and the full `node.query` selector grammar plus QueryResult method table plus editor-mode node-type lists would fit better in a reference file. This matches the 3 anchor ('mostly efficient but… could be tightened') better than 2 ('several unnecessary explanations or padded sections') since nearly all content is novel, not padding — and better than 4 given the 380-line body in a bundle that already ships 12+ reference files.

3 / 5

Actionability

Guidance is fully executable: copy-paste inspection scripts (e.g. `figma.root.children.map(p => ({ id: p.id, name: p.name }))`), exact error strings to expect ('"Setting figma.currentPage is not supported"', 'Expected \'FIXED\' | \'AUTO\', received \'FILL\''), WRONG/CORRECT code contrasts, and precise API recipes with argument shapes. This matches the 5 anchor: 'copy-paste ready code or commands; specific examples cover the common cases'.

5 / 5

Workflow Clarity

Section 6 gives a numbered step order with a per-step validation table ('What to validate at each step'), Section 7 defines an explicit feedback loop (obey `safeToRetryWithoutCanvasRead`, targeted fix scripts, root-cause rule on repeated errors), and Section 8 provides a pre-flight checklist. This is the 5 anchor: 'clear sequence with explicit validation steps; feedback loops for error recovery; checklists for complex processes'.

5 / 5

Progressive Disclosure

The reference docs table in Section 10 is a model of clear signaling (per-file 'When to load' and 'What it covers' columns) and all referenced paths resolve to real files in references/. However, the `working-with-design-systems/` chain nests three levels deep (SKILL.md → wwds.md → wwds-components.md → wwds-components--creating.md), and some reference-grade content (selector grammar, QueryResult method table, editor-mode node-type lists) is inlined in the overview. This fits the 4 anchor ('good structure; most content appropriately placed; references mostly clear; minor organization gaps') rather than 5, and is well above 3 since the primary navigation is explicit and easy to use.

4 / 5

Total

17

/

20

Passed

Description

78%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A strong, highly specific description with explicit trigger guidance and a clear niche. Its main weaknesses are that the 'what' (what the skill actually contains) is implied rather than stated, and the mandatory-prerequisite framing uses second-person imperative voice, which the rubric penalizes.

Suggestions

Open with an explicit third-person statement of what the skill does, e.g. 'Provides operating rules and reference documentation for executing JavaScript in Figma files via the Plugin API', before the trigger clause.

Replace second-person phrasing ('you MUST invoke this skill', 'NEVER call') with third-person equivalents ('Invoke before every use_figma call') to satisfy the voice requirement without losing force.

Add a few more natural trigger synonyms users would say, such as 'text styles', 'effects', or 'screenshots of nodes', to round out keyword coverage.

DimensionReasoningScore

Specificity

The description lists multiple concrete actions — 'create/edit/delete nodes, set up variables or tokens, build components and variants, modify auto-layout or fills, bind variables to properties, or inspect file structure programmatically' — which matches the 'lists several specific actions; minor gaps in coverage' anchor (5-level coverage minus one point for the second-person voice 'you MUST invoke this skill', which the guidelines explicitly penalize). It is well above the 3 anchor ('1-2 concrete actions') because the action list is comprehensive, but not a clean 5 due to the voice penalty.

4 / 5

Completeness

The 'when' is maximally explicit ('Trigger whenever the user wants to perform a write action or a unique read action…' plus e.g. instances), but the 'what' — that this skill provides the operating rules and reference docs for the `use_figma` Plugin API — is only implied by 'requires JavaScript execution in the Figma file context'. This sits at the 4 anchor ('has both what and when' with one of them improvable) rather than 5, where both would be explicitly and concretely stated; it is clearly above 3 since the trigger guidance is explicit, not weakly implied.

4 / 5

Trigger Term Quality

Natural Figma-domain terms are well covered — 'nodes', 'variables or tokens', 'components and variants', 'auto-layout', 'fills', 'bind variables', 'inspect file structure' — matching the 'good keyword coverage; a few natural terms missing' anchor. Not a 5 because phrases like 'unique read action that requires JavaScript execution in the Figma file context' are harness jargon rather than words a user would naturally say, and common variations (styles, effects, prototypes, screenshots) are absent.

4 / 5

Distinctiveness Conflict Risk

The description is bound to a single named tool ('BEFORE every `use_figma` tool call') with a clear niche and distinct triggers (node writes, variable/token setup, component/variant building, binding), matching the 'clear niche with distinct triggers; minimal conflict risk' anchor. It is not a 4 because the prerequisite framing actively reduces overlap risk with sibling Figma skills — any use_figma call routes here first.

5 / 5

Total

17

/

20

Passed

Validation

87%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

relative_links

Relative link issues: 1 deeper-than-1-level, 4 suspicious

Warning

referenced_paths_exist

Referenced path issues: 1 deeper-than-1-level

Warning

Total

14

/

16

Passed

Repository
figma/mcp-server-guide
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.