Agent skill

Figma Upgrade Migration

by jeremylongshore in jeremylongshore/tons-of-skills-marketplace

Handle Figma REST API scope changes, deprecations, and migration tasks.

MITAuto-check passedBackend & APIs

Install Figma Upgrade Migration

skills CLI
$ npx skills add jeremylongshore/tons-of-skills-marketplace --skill figma-upgrade-migration -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install jeremylongshore/tons-of-skills-marketplace figma-upgrade-migration --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/jeremylongshore/tons-of-skills-marketplace.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/.curated/figma-upgrade-migration .claude/skills/figma-upgrade-migration && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
figma-upgrade-migration
GitHub stars
2.8k
Token cost
~1.6k tokens
SKILL.md length
347 words
Files
6 (incl. references)
Skills in repo
3,342
Repo updated
First seen
Licence
MIT

At a glance

Handle Figma REST API scope changes, deprecations, and migration tasks.

  • Works in 4 steps: Scope Migration (files:read Deprecation) → Webhooks V1 to V2 Migration → OAuth App Publishing Flow → …
  • Migrating from deprecated scopes
  • SKILL.md covers Overview, Prerequisites, Instructions and Output, plus 4 more sections
  • Calls curl and jq; reaches api.figma.com

What it does

Figma Upgrade Migration is an agent skill from jeremylongshore/tons-of-skills-marketplace. Handle Figma REST API scope changes, deprecations, and migration tasks. Use when migrating from deprecated scopes, updating webhook versions, or adapting to Figma API changelog changes. Trigger with phrases like "upgrade figma", "figma deprecation", "figma scope migration", "figma API changes", "figma v2 webhooks".

Its SKILL.md is about 1.6k tokens, which your agent loads only when the skill is triggered. The skill folder holds 6 other files, including reference files (for example `references/audit-and-update-codebase.md`, `references/errors.md` and `references/oauth-app-publishing-flow.md`). Compatibility notes: Designed for Claude Code

It sits in Backend & APIs, covering Webhooks and REST APIs. It works with Figma. The repository describes itself as: Model-agnostic agent-skills platform with a harness-free canonical layer, verified adapters, and the ccpi package manager. Explore at tonsofskills.com. The licence is MIT.

When your agent uses it

  • Migrating from deprecated scopes
  • Updating webhook versions
  • Adapting to Figma API changelog changes
  • With phrases like upgrade figma

Example prompts

  • “upgrade figma”
  • “figma deprecation”
  • “figma scope migration”
  • “/figma-upgrade-migration”

Requirements

  • Compatibility (from SKILL.md): Designed for Claude Code
  • Pre-approved tools (allowed-tools): Read, Write, Edit, Bash(npm:*), Bash(git:*)

Workflow steps

4 steps, taken from the step headings in SKILL.md.

  1. Scope Migration (files:read Deprecation)
  2. Webhooks V1 to V2 Migration
  3. OAuth App Publishing Flow
  4. Audit and Update Codebase

What it can do on your machine

Read from SKILL.md and the folder at commit cfae287. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Read
    • Write
    • Edit
    • Bash(npm:*)
    • Bash(git:*)

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • curl
    • jq

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • api.figma.com

    Also links to:

    • developers.figma.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

  • Compatibility

    Designed for Claude Code

    From compatibility in the SKILL.md frontmatter.

Context cost

Figma Upgrade Migration loads about 1.6k tokens when it runs, and up to ~3k if it reads all its reference files. Until then it costs about 85 tokens; SKILL.md has 347 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~85
When it runs · the whole SKILL.md, loaded when a task matches
~1.6k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~3k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from jeremylongshore/tons-of-skills-marketplace at commit cfae287, republished under its MIT licence (© jeremylongshore). 347 words, ~1,635 tokens.

Download SKILL.mdSave it as .claude/skills/figma-upgrade-migration/SKILL.md (or your agent's skills folder). This skill also uses 5 other files; get the full folder from GitHub.
name
figma-upgrade-migration
description
Handle Figma REST API scope changes, deprecations, and migration tasks. Use when migrating from deprecated scopes, updating webhook versions, or adapting to Figma API changelog changes. Trigger with phrases like "upgrade figma", "figma deprecation", "figma scope migration", "figma API changes", "figma v2 webhooks".
allowed-tools
Read, Write, Edit, Bash(npm:*), Bash(git:*)
compatibility
Designed for Claude Code
version
1.6.0
license
MIT
author
Jeremy Longshore <jeremy@intentsolutions.io>
tags
saas, figma

Figma Upgrade & Migration

Overview

Handle Figma REST API deprecations and breaking changes. The most significant recent change is the deprecation of the files:read scope in favor of granular scopes, and the move from Webhooks V1 to V2.

Prerequisites

  • Current Figma integration working
  • Git for version control
  • Access to Figma developer settings

Instructions

Step 1: Scope Migration (files:read Deprecation)

The files:read scope is deprecated. Migrate to granular scopes:

Deprecated ScopeReplacement ScopesEndpoints Covered
files:readfile_content:readGET /v1/files/:key, GET /v1/images/:key
files:readfile_comments:readGET /v1/files/:key/comments
files:readfile_dev_resources:readGET /v1/files/:key/dev_resources
files:readfile_versions:readGET /v1/files/:key/versions

Migration steps:

  1. Audit which endpoints your code calls
  2. Map each endpoint to its required scope
  3. Generate a new PAT with granular scopes
  4. Update OAuth apps with new scope list
  5. Test all endpoints with the new token
  6. Revoke old tokens
bash
# Find all Figma API calls in your codebase
grep -rn "api.figma.com" --include="*.ts" --include="*.js" src/ \
  | grep -oP '/v\d/[a-z_/]+' | sort -u

# Example output:
# /v1/files
# /v1/files/comments
# /v1/images
# /v2/webhooks
Step 2: Webhooks V1 to V2 Migration
typescript
// V1 (deprecated): POST /v1/webhooks
// V2 (current):    POST /v2/webhooks

// V2 adds context support: attach webhooks to teams, files, or projects
interface WebhookV2Config {
  event_type: 'FILE_UPDATE' | 'FILE_DELETE' | 'FILE_VERSION_UPDATE'
    | 'FILE_COMMENT' | 'LIBRARY_PUBLISH';
  // Context: where to listen
  team_id?: string;      // team-level (all files in team)
  // OR specify project/file context in the endpoint path
  endpoint: string;      // Your HTTPS webhook URL
  passcode: string;      // Secret for verification
  description?: string;
}

// Create a V2 webhook
async function createWebhook(config: WebhookV2Config) {
  const res = await fetch('https://api.figma.com/v2/webhooks', {
    method: 'POST',
    headers: {
      'X-Figma-Token': process.env.FIGMA_PAT!,
      'Content-Type': 'application/json',
    },
    body: JSON.stringify(config),
  });
  if (!res.ok) throw new Error(`Webhook creation failed: ${res.status}`);
  return res.json();
}

// List existing webhooks
async function listWebhooks(teamId: string) {
  const res = await fetch(
    `https://api.figma.com/v2/webhooks?team_id=${teamId}`,
    { headers: { 'X-Figma-Token': process.env.FIGMA_PAT! } }
  );
  return res.json();
}
Step 3: OAuth App Publishing Flow

All OAuth apps (public and private) must complete the new publishing flow:

  1. Go to your app in the Figma developer dashboard
  2. Complete the required app information fields
  3. Add required redirect URLs
  4. Submit for review (public apps) or activate (private apps)
  5. Update your code to handle the new token format
typescript
// Check if your OAuth tokens need refresh
async function checkTokenHealth(accessToken: string): Promise<boolean> {
  const res = await fetch('https://api.figma.com/v1/me', {
    headers: { 'X-Figma-Token': accessToken },
  });
  if (res.status === 403) {
    console.warn('Token expired or revoked -- refresh needed');
    return false;
  }
  return res.ok;
}
Step 4: Audit and Update Codebase
typescript
// Create a migration checker
function auditFigmaIntegration(codebasePaths: string[]) {
  const issues: string[] = [];

  // Check for deprecated scope usage
  // Check for V1 webhook endpoints
  // Check for old token format
  const patterns = [
    { pattern: 'files:read', message: 'Deprecated scope: use file_content:read' },
    { pattern: '/v1/webhooks', message: 'V1 webhooks: migrate to /v2/webhooks' },
    { pattern: 'X-FIGMA-TOKEN', message: 'Header is case-sensitive: use X-Figma-Token' },
  ];

  return { issues, patterns };
}

Output

  • Scopes migrated from files:read to granular alternatives
  • Webhooks upgraded from V1 to V2
  • OAuth app publishing flow completed
  • All endpoints tested with new tokens

Error Handling

IssueCauseSolution
403 after scope changeMissing required scopeAdd the specific scope for each endpoint
Webhook not firingV1 webhook still activeDelete V1, create V2 webhook
OAuth flow brokenPublishing flow not completedComplete app publishing in dashboard
Token format mismatchOld token typeGenerate new PAT with figd_ prefix

Examples

Find every deprecated files:read scope reference before Figma sunsets it (Step 1 + Step 4 audit):

bash
/usr/bin/grep -rn "files:read" --include='*.{ts,js,json,yml}' . | /usr/bin/grep -v node_modules
text
src/auth/oauth.ts:12:  scope: 'files:read',        ← replace with file_content:read
config/figma-app.json:8: "scopes": ["files:read"]  ← update in the Figma app config too

Migrate a V1 webhook to V2 and confirm the new shape (Step 2):

bash
curl -s -X POST https://api.figma.com/v2/webhooks \
  -H "X-Figma-Token: ${FIGMA_PAT}" -H 'Content-Type: application/json' \
  -d '{"event_type":"FILE_UPDATE","team_id":"'"${FIGMA_TEAM_ID}"'","endpoint":"https://example.com/figma/webhook","passcode":"'"${WEBHOOK_PASSCODE}"'"}' \
  | jq '{id, event_type, status}'

Full deprecation table and OAuth publishing steps: references/scope-migration-files-read-deprecation.md, references/oauth-app-publishing-flow.md.

Resources

Next Steps

For CI integration during upgrades, see figma-ci-integration.

© jeremylongshore, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 5 other files (references) in skills/.curated/figma-upgrade-migration of jeremylongshore/tons-of-skills-marketplace.

  • SKILL.md
  • references/audit-and-update-codebase.md
  • references/errors.md
  • references/oauth-app-publishing-flow.md
  • references/scope-migration-files-read-deprecation.md
  • references/webhooks-v1-to-v2-migration.md

Open the folder on GitHubat commit cfae287

Compare with similar skills

Figma Upgrade Migration next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Figma Upgrade Migration compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Figma Upgrade Migration this skilljeremylongshore/tons-of-skills-marketplace2.8k—~1.6kAutomated safety check: PassMIT
Io Figmagridaco/grida2.7k—~2.2kAutomated safety check: NotesApache-2.0
API Patternsdilolabs/nosia2131 repos~2.5kAutomated safety check: PassMIT
Loops APIopeninary/openinary412—~1.1kAutomated safety check: PassAGPL-3.0
Verifygregluffy/HomeLabInfo103—~424Automated safety check: PassGPL-3.0
Lemon Squeezy Integrationpockethost/pockethost1.4k—~1.1kAutomated safety check: PassMIT

Similar skills

  • Io Figma

    gridaco/grida

    Guides work on the Figma I/O package (@grida/io-figma, packages/grida-canvas-io-figma/).

    2.7k GitHub stars~2.2k tokensUpdated 2 days ago
    Backend & APIsAuto-check: notes
  • API Patterns

    dilolabs/nosia

    Builds REST APIs using respondto blocks with Jbuilder templates following the 37signals same-controllers-different-formats philosophy.

    213 GitHub starsUsed in 1 repo~2.5k tokens
    Backend & APIsAuto-check passed
  • Loops API

    openinary/openinary

    A skill your agent uses whenever the user wants to integrate Loops from application code, backend services, webhook handlers, or server-side automation.

    412 GitHub stars~1.1k tokensUpdated 6 days ago
    Backend & APIsAuto-check passed
  • Verify

    gregluffy/HomeLabInfo

    Build, run, and drive the HomeLabInfo backend to verify changes at its real surfaces (REST API, UDP DHCP listener, outgoing webhooks).

    103 GitHub stars~424 tokensUpdated today
    Backend & APIsAuto-check passed
  • Lemon Squeezy Integration

    pockethost/pockethost

    Full Lemon Squeezy integration — REST API, @lemonsqueezy/lemonsqueezy.js server SDK, Lemon.js checkout overlays, webhooks, customdata, and subscriptions.

    1.4k GitHub stars~1.1k tokensUpdated 13 days ago
    Backend & APIsAuto-check passed
  • Bigcommerce API

    qdhenry/Claude-Command-Suite

    BigCommerce API expert for building integrations, apps, headless storefronts, and automations.

    1.3k GitHub stars~1.5k tokensUpdated 7 mo ago
    Backend & APIsAuto-check passed

More from jeremylongshore/tons-of-skills-marketplace

All 3,342 skills in this repo
  • Performing Security Code Review

    jeremylongshore/tons-of-skills-marketplace

    Execute this skill enables AI assistant to conduct a security-focused code review using the security-agent plugin.

    2.8k GitHub starsUsed in 2 repos~1.3k tokens
    Auto-check: notes
  • Adapting Transfer Learning Models

    jeremylongshore/tons-of-skills-marketplace

    Build this skill automates the adaptation of pre-trained machine learning models using transfer learning techniques.

    2.8k GitHub stars~1.1k tokensUpdated today
    Auto-check passed
  • Agent Context Loader

    jeremylongshore/tons-of-skills-marketplace

    Execute proactive auto-loading: automatically detects and loads agents.md files.

    2.8k GitHub stars~1.1k tokensUpdated today
    Auto-check passed
  • Aggregating Performance Metrics

    jeremylongshore/tons-of-skills-marketplace

    Aggregate and centralize performance metrics from applications, systems, databases, caches, and services.

    2.8k GitHub stars~1.2k tokensUpdated today
    Auto-check passed
  • Analyzing Capacity Planning

    jeremylongshore/tons-of-skills-marketplace

    Execute this skill enables AI assistant to analyze capacity requirements and plan for future growth.

    2.8k GitHub stars~947 tokensUpdated today
    Auto-check passed
  • Analyzing Database Indexes

    jeremylongshore/tons-of-skills-marketplace

    Process use when you need to work with database indexing. An agent skill from jeremylongshore/tons-of-skills-marketplace.

    2.8k GitHub stars~2k tokensUpdated today
    Auto-check passed

Works with

Categories

Questions about Figma Upgrade Migration

What does Figma Upgrade Migration do?

Handle Figma REST API scope changes, deprecations, and migration tasks. Figma Upgrade Migration is an agent skill from jeremylongshore/tons-of-skills-marketplace. Handle Figma REST API scope changes, deprecations, and migration tasks.

When should I use Figma Upgrade Migration?

Figma Upgrade Migration fits situations like: migrating from deprecated scopes; updating webhook versions; adapting to Figma API changelog changes; with phrases like upgrade figma.

How do I install Figma Upgrade Migration in Claude Code?

Run `npx skills add jeremylongshore/tons-of-skills-marketplace --skill figma-upgrade-migration -a claude-code`. Or copy the skill folder (skills/.curated/figma-upgrade-migration in jeremylongshore/tons-of-skills-marketplace) into .claude/skills/figma-upgrade-migration in your project. Claude Code loads it when a task matches its description.

How do I install Figma Upgrade Migration in Codex?

Run `npx skills add jeremylongshore/tons-of-skills-marketplace --skill figma-upgrade-migration -a codex`. Or copy the skill folder (skills/.curated/figma-upgrade-migration in jeremylongshore/tons-of-skills-marketplace) into .agents/skills/figma-upgrade-migration in your project. Codex loads it when a task matches its description.

Can I use Figma Upgrade Migration in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add jeremylongshore/tons-of-skills-marketplace --skill figma-upgrade-migration -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/figma-upgrade-migration, .gemini/skills/figma-upgrade-migration, .github/skills/figma-upgrade-migration and .opencode/skills/figma-upgrade-migration in your project.

What does Figma Upgrade Migration need to run?

Going by SKILL.md and its folder, Figma Upgrade Migration needs the command-line tools its instructions call (curl and jq). Its frontmatter pre-approves these tools: Read, Write, Edit, Bash(npm:*), Bash(git:*). Compatibility (from SKILL.md): Designed for Claude Code.

Does Figma Upgrade Migration access the network?

SKILL.md names 2 domains. In commands or code: api.figma.com; the agent is likely to contact it when it follows the instructions. As links in the text: developers.figma.com. This is read from the text; nothing was executed.

Is Figma Upgrade Migration safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Figma Upgrade Migration use?

Figma Upgrade Migration is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Figma Upgrade Migration use?

About 1.6k tokens (SKILL.md is roughly 6.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 1.4k tokens, read only when the agent opens those files.

What are the alternatives to Figma Upgrade Migration?

Skills that share tags, products or a category with Figma Upgrade Migration: Io Figma (gridaco/grida, 2.7k stars), API Patterns (dilolabs/nosia, 213 stars), Loops API (openinary/openinary, 412 stars) and Verify (gregluffy/HomeLabInfo, 103 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Figma Upgrade Migration?

jeremylongshore (a GitHub user) maintains it in jeremylongshore/tons-of-skills-marketplace, which has 2,827 GitHub stars. The repository holds 3,342 skills in this directory. The repository was last updated on October 10, 2026.

Source: jeremylongshore/tons-of-skills-marketplace on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.