Repository navigation
Figloo 0.1.0
Figloo 0.1.0 adds page snapshots: for a page to implement, the agent reads a screenshot and every layer's place and properties in one call, then looks layers up without touching Figma again. It can also find layers by where they are on screen, and start from several selected layers.
Upgrading from 0.0.1
- Replace both files. The extension and the MCP server now speak bridge protocol 0.2.0, and a mismatched pair reports
PROTOCOL_MISMATCHinget_status. Reload the extension onchrome://extensionsorarc://extensions, then start a new agent session. - Codex stops a tool call after 60 seconds by default, and
snapshot_layercan take up to three minutes. Settool_timeout_sec = 300for figloo in~/.codex/config.toml; the README shows the full entry.
Files
| File | SHA-256 |
|---|---|
figloo-extension-0.1.0.zip |
41fa9dc0bf493275029315ac04978e0cd7196281612be1553c4004ed48bd58c1 |
figloo-mcp-0.1.0.mjs |
d4afd3be6027e133d0f2927909971f380f4c38569518c9a0d35043a613dc522b |
Install
- Unzip
figloo-extension-0.1.0.zipinto a folder you keep. Onchrome://extensionsorarc://extensions, turn on Developer mode, click "Load unpacked", and select that folder. - Keep
figloo-mcp-0.1.0.mjsanywhere; it needs only Node.js 24. Register it with Claude Code, then start a new session:claude mcp add -s user figloo -- node /absolute/path/to/figloo-mcp-0.1.0.mjs
- Pair once: run
node figloo-mcp-0.1.0.mjs pairand paste the token and port into the extension's options page. - In Figma, sign in (view access is enough), use the English UI, keep the UI expanded, and turn on "Adapt content for screen readers" under Main menu, Preferences, Accessibility settings. Keep the Figma tab on screen while the agent works.
The README has the details and troubleshooting.
What's new
snapshot_layerreads a layer and everything inside it, up to 400 layers: about 40 seconds for 300 layers, at most three minutes. It returns a screenshot and an outline with one line per layer, and saves the snapshot under~/.figloo/snapshots/for 24 hours (snapshotTtlHoursin the config file). For each layer it records its place and size relative to the root, whether it is hidden, the designer's export settings, and everythinginspect_nodesshows. Instances count as one layer.image.alignmentsays whether the root's place in the screenshot was checked against the screenshot itself. Meanwhile the user cannot use Figma; a click in Figma stops it.query_snapshotlooks layers up in a saved snapshot without the Figma tab, even after the page reloads: by ref in full, or by text, type, and the layer they are inside.get_visual_neighborslists the siblings of a layer by where they are on screen, with the side, gap, and offset in design pixels.get_anchorreturns up to 20 selected layers.- When the selected layer is a screen frame, the popup's prompt asks the agent to implement that page and to take a snapshot of it first.
- The README is also available in Traditional Chinese (Taiwan).
Fixes
captureno longer crops around a layer's old place when the zoom barely changes, for example from 100% to 93%.get_visual_neighborsmeasures lines, which have no height on screen.
The full contract is in docs/mcp-tools.md.
Verification
- Arc 1.166.0 (Chromium 154) on macOS 27.0, signed in with view access: snapshots of a 278-layer and a 198-layer screen in 29 to 39 seconds. The properties of 16 sampled layers match
inspect_nodesexactly, and 117 of 120 unrotated layers sit within 0.1 px of what the inspection panel shows. A click in Figma during a snapshot stops it and closes what it opened. - Chrome for Testing through Playwright: end-to-end tests against real Figma as a guest, run against these release files.
- Supported setups and known limitations, including the occasional stale screen place behind
image.alignment: docs/compatibility.