skills/viewing-figma-files/SKILL.md
--- Skill name: viewing-figma-files Skill description: View Figma files, inspect page/frame structure, export node images, and read comments via the Figma REST API. Use when asked to view, inspect, open, read, export, or describe a Figma file, frame, component, or design. --- # Viewing Figma Files View and inspect Figma files via the REST API. Supports file metadata, page/frame structure, node rendering, and comments. ## Authentication The skill uses a **Figma Personal Access Token** stored
npx skillsauth add abhiroopb/synthetic-mind skills/viewing-figma-filesInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
View and inspect Figma files via the REST API. Supports file metadata, page/frame structure, node rendering, and comments.
The skill uses a Figma Personal Access Token stored at ~/.config/figma/token.
If the token file doesn't exist, prompt the user:
To use this skill you need a Figma personal access token.
- Go to Figma → Settings → Security → Personal access tokens
- Generate a token with the
file_content:readscope- Save it:
mkdir -p ~/.config/figma && echo "YOUR_TOKEN" > ~/.config/figma/token
The current token was created on 2026-02-28 and expires ~2026-05-29. If a request returns 403, remind the user to regenerate.
Read the token:
FIGMA_TOKEN="$(cat ~/.config/figma/token 2>/dev/null)"
Users will typically paste a Figma URL. Extract the file key and optional node ID:
| URL pattern | File key | Node ID |
|---|---|---|
| https://www.figma.com/design/<KEY>/... | <KEY> | from ?node-id=X-Y |
| https://www.figma.com/file/<KEY>/... | <KEY> | from ?node-id=X-Y |
| https://www.figma.com/proto/<KEY>/... | <KEY> | from ?node-id=X-Y |
| https://www.figma.com/board/<KEY>/... | <KEY> | — |
Node IDs in URLs use - as separator (e.g., 1-2) but the API expects : (e.g., 1:2). Always convert - → : in node IDs.
Base URL: https://api.figma.com
All requests use:
curl -sH "X-Figma-Token: $FIGMA_TOKEN" "https://api.figma.com/v1/..."
curl -sH "X-Figma-Token: $FIGMA_TOKEN" \
"https://api.figma.com/v1/files/$FILE_KEY/meta"
Returns: name, folder, last touched, creator, thumbnail URL, editor type, role.
curl -sH "X-Figma-Token: $FIGMA_TOKEN" \
"https://api.figma.com/v1/files/$FILE_KEY?depth=2"
Use depth=2 to get pages and their immediate children (frames/groups) without downloading the full tree. Present as a structured list:
📄 File: "My Design"
📑 Page 1: "Home"
🖼 Frame 1:2 — "Header"
🖼 Frame 1:3 — "Hero Section"
🖼 Frame 1:4 — "Footer"
📑 Page 2: "Settings"
🖼 Frame 2:1 — "Account Settings"
curl -sH "X-Figma-Token: $FIGMA_TOKEN" \
"https://api.figma.com/v1/files/$FILE_KEY/nodes?ids=$NODE_IDS"
NODE_IDS is comma-separated (e.g., 1:2,1:3). Returns detailed node JSON.
curl -sH "X-Figma-Token: $FIGMA_TOKEN" \
"https://api.figma.com/v1/images/$FILE_KEY?ids=$NODE_IDS&format=png&scale=2"
Returns a map of node IDs → image URLs (expire after 30 days). Download and display them:
curl -sL "$IMAGE_URL" -o /tmp/figma-node.png
Then use the look_at tool to view/describe the rendered image.
Supported formats: png, jpg, svg, pdf. Scale: 0.01–4 (default 1, use 2 for retina).
curl -sH "X-Figma-Token: $FIGMA_TOKEN" \
"https://api.figma.com/v1/files/$FILE_KEY/comments"
Returns all comments with author, message, timestamp, and associated node.
Components are included in the GET /v1/files/:key response under the components key. Use depth=1 and parse the components map for a quick listing.
curl -sH "X-Figma-Token: $FIGMA_TOKEN" \
"https://api.figma.com/v1/files/$FILE_KEY/versions"
Returns version history with labels, timestamps, and user info.
~/.config/figma/token. If missing, guide user to create one.depth=2 to show pages and frames.look_at.node-id, go directly to rendering that node.depth=2 for initial file overview to avoid downloading massive file trees.| python3 -m json.tool to pretty-print JSON responses when debugging.ids parameter to fetch only the nodes you need.- (e.g., 1-2), but the API expects : (e.g., 1:2). Always convert.testing
Track TV shows and movies with Trakt.tv. Search, get watchlist, history, up-next, recommendations, trending, calendar, ratings, stats, add/remove from watchlist, mark watched, rate, and check in. Use when asked about what to watch, TV shows, movies, watch history, or Trakt.
development
Send and receive SMS messages via Twilio API. Used for text message notifications, forwarding important alerts, and two-way SMS communication.
documentation
Organizes files in the local Downloads folder into proper folders. Use when asked to organize, sort, or file downloaded documents.
tools
Book and manage appointments on Sutter Health MyHealth Online portal. Uses browser automation via Playwright MCP to interact with the patient portal.