figma-blame-node

figma-blame-node is a skill for Claude Code from southleft/figma-console-mcp-skills. It costs 176 tokens per session (1,351 once invoked), scanned A, original, MIT.

A Figma history tool that finds the version where a component property or child layer first appeared.

In plain words
What is it for?
Answering who added a particular Figma change and when. It requires a Figma personal access token and file-history permissions.
Why use it?
It provides blame-like attribution for design changes without checking every version one by one.

Skill for Claude Code

Written for Claude Code: disable-model-invocation in frontmatter. Also seen: mentions Claude Code; mentions Codex; mentions Gemini CLI.

Needs its repository: it reads a path above its own folder, which exists only inside the repository. The line is ../figma-version-history/scripts/list-versions.sh ABC123def456 --autosaves.

Part of the figma-console-mcp-skills plugin — 23 skills shipped together

Good fit Answering who added a particular Figma change and when. It requires a Figma personal access token and file-history permissions.

Compare 6 skills from other repositories ↓
Install

Getting it into your agent

It runs from inside its repository, so the clone comes first — what it calls does not travel with the file alone.

Clone the repo
git clone --depth 1 https://github.com/southleft/figma-console-mcp-skills
agentmods
npx agentmods add skills/southleft/figma-console-mcp-skills/figma-blame-node

Made for: Claude Code.

Or install figma-console-mcp-skills, the plugin that ships this one along with the rest of its 23 skills.

Wrote 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.

agentmods badge for figma-blame-node

README.md
[![agentmods](https://agentmods.dev/badge/skills/southleft/figma-console-mcp-skills/figma-blame-node/github.svg)](https://agentmods.dev/skills/southleft/figma-console-mcp-skills/figma-blame-node)
Your own site
<a href="https://agentmods.dev/skills/southleft/figma-console-mcp-skills/figma-blame-node"><img src="https://agentmods.dev/badge/skills/southleft/figma-console-mcp-skills/figma-blame-node/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for figma-blame-node

Your own site · 80×15
<a href="https://agentmods.dev/skills/southleft/figma-console-mcp-skills/figma-blame-node"><img src="https://agentmods.dev/badge/skills/southleft/figma-console-mcp-skills/figma-blame-node.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 176 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,351 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • NVIDIA SkillSpector warn 7 Sept 2026
SkillSpector: 3 findings, up to high

These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →

  • high Privilege Escalation · line 3
    Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.
    Fix: Remove references to credential paths. Use environment variables or secrets managers. For docs, use placeholder paths (e.g., /path/to/config). Never load .env or token files in production code paths.
  • high Privilege Escalation · line 13
    Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.
    Fix: Remove references to credential paths. Use environment variables or secrets managers. For docs, use placeholder paths (e.g., /path/to/config). Never load .env or token files in production code paths.
  • high Privilege Escalation · line 13
    Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.
    Fix: Remove references to credential paths. Use environment variables or secrets managers. For docs, use placeholder paths (e.g., /path/to/config). Never load .env or token files in production code paths.
How audits are shown
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5.1 $0.00176 $0.01351
Opus 5 $0.00088 $0.00675
Sonnet 5 $0.00035 $0.00270
Haiku 4.5 $0.00018 $0.00135

Measured 11d ago against content hash d625694b4383, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-11, from the pricing page.

Security

Grade A, and why

figma-blame-node 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 11d ago.

The scan reads SKILL.md. This mod also ships 1 executable file (scripts/blame-node.mjs), listed below but not scanned — reading those needs a real analyzer, not pattern matching.

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.

skills/figma-blame-node/SKILL.md · 87 lines

How it starts

The opening of the file, as written. The whole thing — 87 lines — stays where its author put it; the contents beside it link to each section on GitHub.

figma-blame-node — binary-search which version introduced a change

Like git blame, but for Figma. Given a node and a target (a componentPropertyDefinitions key or a descendant child node id), this localizes the version that first introduced the target and returns that version's label, author handle, and timestamp.

Setup — terminal + token required. This skill runs shell commands, so it works in Claude Code (including the "Code" tab inside Claude Desktop), Cursor, Codex, or Gemini CLI — it does not run in plain Claude Desktop or claude.ai chat (no shell). The Figma connector's OAuth login does not authorize these REST calls, so you must supply your own Figma personal access token: in Figma go to Settings → Security → Personal access tokens, generate one with scope File content: read (plus File versions: read), then set it in your shell: export FIGMA_TOKEN="figd_…". The script reads it from the environment at runtime — never put the token in a skill file.

A naive walk would fetch the node at every version — N API calls for N versions. Existence of a target is monotonic (added once, then present in every newer version up to HEAD), so we binary search: probe the midpoint, check whether the target exists there, then narrow to the older or newer half. That's ~log2(N) calls — e.g. ~8 probes across 200 versions instead of 200. This is the rate-limit-friendly approach: Figma REST is throttled per token, and old snapshots are immutable, so fewer probes is strictly better.

Setup & skill boundaries

  • All requests use X-Figma-Token: $FIGMA_TOKEN against https://api.figma.com.

Derive the file key

FILE_KEY=$(echo "$FILE_URL" | sed -E 's#.*/(design|file)/([A-Za-z0-9]+).*#\2#')

Workflow

  1. Identify the node and the target. node_id is typically a COMPONENT_SET. The target is exactly one of:
    • --property '<key>' — a componentPropertyDefinitions key like Disabled#1:2, or
    • --child '<node_id>' — a descendant node id that should appear under node_id.

Read the full file on GitHub · 87 lines

Files

What ships with it

1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

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.

  1. 11d ago First seen · 87 lines · 176 tokens per session scan A d625694b4383

Subscribe to this mod's changes

figma-blame-node is a skill published in the GitHub repository southleft/figma-console-mcp-skills (80 stars, last pushed 25d ago), licensed MIT. It adds 176 tokens to every session and 1,351 once invoked, about $0.0009 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.

Related

Other skills, from other repositories

design-to-code

Use this skill when translating UI/UX designs into production-ready frontend code. Handles design source ingestion (Figma, Sketch, Adobe XD, screenshots, design specs), design token extraction, component hierarchy mapping, responsive breakpoint strategy, accessibility-first implementation (WCAG 2.1 AA minimum)…

JPeetz/agent-skills · 184 tokens

design-md

Author/validate/export Google's DESIGN.md token spec files.

mateaix/mateclaw · 14 tokens

system-pitch

Write a design system investment pitch with a business case and ROI framing. Trigger when someone says: pitch the design system, make the case for the system, sell this to leadership, justify the investment, business case for design systems, why should we invest in a design system, or anything about building an…

murphytrueman/design-system-ops · 72 tokens

token-audit

Audit a design system's token definitions for naming violations, missing semantic tiers, and structural debt. This audits how tokens are defined and organised, NOT how they are consumed in code. Trigger when someone says: audit my tokens, token naming review, are my tokens consistent, token health check, review my…

murphytrueman/design-system-ops · 93 tokens

ai-component-description

Generate AI-optimised text descriptions for components, formatted for Figma's MCP server and LLM consumption. This produces prose descriptions in a six-section format (purpose, props, anti-patterns, composition, accessibility, examples), NOT JSON schemas or structured data files. Trigger when someone says: write…

murphytrueman/design-system-ops · 132 tokens

context-engine-builder

Generate a context engine — seven structured blueprint files (UX, UI, content, accessibility, ethical, technical, business intelligence) that encode everything an AI agent needs to work with a design system. This produces YAML infrastructure in .ai/context-engine/, NOT a health score or quality assessment. Trigger…

murphytrueman/design-system-ops · 135 tokens