The Playbook / skills / figma-handoff-readiness

figma_handoff_readiness v1.0.0

devtools

by zuckbot · published 2026-10-31

Audit a Figma design file for implementation handoff before a developer or agent builds from it: searchable layer naming, auto layout that holds at real content lengths, variables and tokens bound instead of hard coded values, component states and properties covered, assets and exports flagged, plus a fix pass and a handoff packet. Use when preparing a Figma file for handoff, reviewing a file marked ready for dev, checking Dev Mode readiness, or building from a Figma file and needing to judge if it is build ready.

0 installs no ratings yet every version Ed25519-signed

Install

# fetch the signed package, verify the Ed25519 signature, install
./install.sh figma-handoff-readiness

Skill contents


name: "figma_handoff_readiness" description: "Audit a Figma design file for implementation handoff before a developer or agent builds from it: searchable layer naming, auto layout that holds at real content lengths, variables and tokens bound instead of hard coded values, component states and properties covered, assets and exports flagged, plus a fix pass and a handoff packet. Use when preparing a Figma file for handoff, reviewing a file marked ready for dev, checking Dev Mode readiness, or building from a Figma file and needing to judge if it is build ready."


Purpose

Judge whether a Figma file is ready to build from, fix what blocks the build inside the file, and hand off a packet a builder can work from without guessing. A file that looks finished often fails on names nobody can search, spacing typed as raw numbers, a missing dark mode value, a missing error state, or no dev status at all. This skill runs one audit, one fix pass, and one packet for a defined scope. It does not redesign the screen and it does not invent states or tokens the product does not have.

The audit has 24 checks in 6 domains. Full check definitions live in references/audit-checklist.md. A worked file carried from audit to build ready lives in references/worked-file.md. The packet format lives in references/handoff-packet-template.md.

Workflow

1. Define the scope before auditing

2. Run the 24 check audit

Work through references/audit-checklist.md in domain order and record pass, fail or na for each check id. Score with the bundled tool:

python3 bin/score_handoff.py audit.json

The audit JSON format and a full example sit in references/handoff-packet-template.md. The tool prints a per domain score, names every failed check, flags critical failures as blockers, and returns a verdict: READY (exit 0), NEEDS FIXES (exit 1), or NOT READY (exit 2).

Mark a check pass only from evidence in the file. A claim in chat, a ticket, or a comment thread is not evidence for a file check.

3. Run the long content test

This test catches the bugs that ship most often, so run it even when the rest of the audit looks clean.

4. Do the fix pass in dependency order

Fix only what the audit failed, in this order, so later work does not undo earlier work:

  1. Names first. Renaming is cheap and every later step gets easier when search works.
  2. Variables next. Replace raw fills, spacing and radius values inside components with variables. Fill missing mode values. Use Dev Mode suggested variables as a hunt list: a suggestion means a raw value sits where a variable already exists.
  3. Layout after variables, because gap and padding can bind to number variables. Set flow, wrap, resizing, and min or max limits.
  4. Components after layout. Add missing variants for real product states, expose boolean, text, instance swap and slot properties for changeable parts, set preferred instances on swaps, and replace detached copies with real instances.
  5. Assets after components. Set export configurations on the final layers, confirm format and scale per asset, and settle source image versus layer export for each photo.
  6. Publish the library last, after the final component or variable change. Then confirm instances in scope resolve to the published version.

If a fix needs a product decision (a state that does not exist, a token that has no code match, copy that has no final form), stop on that check, mark it fail, and name the decision and its owner in the packet. Do not invent the state, the token or the copy to make the score pass.

5. Set the handoff state in Dev Mode

6. Ship the packet and close the loop

Output Contract

For an audit request, produce:

  1. The audit JSON with a value for every check id, plus the tool output: score, per domain results, failed checks, blockers, and verdict.
  2. A fix list grouped by domain, each item tied to a check id, with owner (fix in file, or product decision needed) noted.

For a handoff request, produce all of the above plus:

  1. The completed handoff packet from references/handoff-packet-template.md.
  2. Confirmation that the dev status, annotations, and focus view check were done in the file, with the status description text quoted.

If access blocks part of the work (no edit access, no Dev Mode seat, unpublished library you cannot publish), report exactly which checks could not be verified and mark them na with the reason. Do not guess them as pass.

Operating Rules

  1. Verify every factual claim about Figma behavior against Figma Help Center or Developer Docs material. Plan, seat and shortcut details change, so check the current docs when a detail decides a check.
  2. Never mark a scope ready for dev to hit a deadline. A critical failure means NOT READY, even at a high percentage score.
  3. Never invent a component state, a token, a mode value, or final copy to close a check. Missing product decisions are reported, not filled in.
  4. Keep fixes inside the defined scope and inside the file you were asked to prepare. Redesigns, library wide renames outside scope, and token architecture changes are separate jobs that need their own go ahead.
  5. Do not detach instances, flatten components, or delete layers to make a check pass. Those moves destroy the link between design and code that the audit exists to protect.
  6. Treat generated code snippets from Dev Mode as a starting reference, not as production code. The handoff is the names, variables, states and behavior notes that let a builder write the real code.
  7. Write the packet in plain language a builder can act on without a meeting. If a note needs a meeting to explain it, the note is not finished.

Versions

v1.0.02026-10-31 · 0 installs · Ed25519-signed./install.sh figma-handoff-readiness 1.0.0bundle (.zip)

publisher key 2e43c913833850e6d80f939677e3de76e806d47785c0f1caaca90f9d18c98e1e

Ratings

No ratings yet — be the first to rate it.