- name
- understand-figma
- description
- Analyze a Figma file via the Figma REST API and generate an interactive design knowledge graph (pages, screens, components, component sets, instances, design tokens) with a kind:"design" dashboard.
- argument-hint
- <figma-file-url-or-key> [--language <lang>]
/understand-figma
Analyzes a Figma file and produces an interactive design knowledge graph in the existing dashboard.
Prerequisites
FIGMA_TOKENenvironment variable — a Figma personal access token (create one at https://www.figma.com/settings). If it is missing, STOP and tell the user:Set a Figma token first: create one at figma.com/settings, then
export FIGMA_TOKEN=<token>.- Node ≥ 22, pnpm ≥ 10.
Security: the token is read only from the environment and travels only in the
X-Figma-Tokenrequest header. Never write it to the graph,meta.json, logs, or intermediate files. This skill makes outbound calls toapi.figma.com— unlike/understand, it is not fully offline. Tell the user this once.
Phase 0 — Pre-flight
- Parse
$ARGUMENTSfor a Figma URL or bare file key (the non-flag token) and an optional--language <lang>. - Resolve
PROJECT_ROOTto the current working directory. Resolve the data directory$UA_DIRonce and reuse it for every read and write below:UA_DIR="$PROJECT_ROOT/$([ -d "$PROJECT_ROOT/.understand-anything" ] && echo .understand-anything || echo .ua)"— the legacy.understand-anything/when it already exists, otherwise the new.ua/. Because each phase may run in a fresh shell, carry$UA_DIRforward like$PROJECT_ROOT, re-resolving it with the same line if a later command block needs it. - Resolve
PLUGIN_ROOTand ensure core is built (same logic as/understandPhase 0.1.5). Ifpackages/core/dist/figma/index.jsis missing, run:cd "$PLUGIN_ROOT" && (pnpm install --frozen-lockfile 2>/dev/null || pnpm install) && pnpm --filter @understand-anything/core build mkdir -p $UA_DIR/intermediate.
Phase 1 — FETCH & PARSE (deterministic)
Run the bundled scan script ( is this skill's directory):