Repository navigation
v0.12.0
figlens 0.12.0 reads a selection you copied in Figma, with no saved .fig needed, and reads the Dev Mode notes designers leave on a design.
Read a copied selection without saving the file (#212)
Before this release, figlens needed a whole local copy of the file (File > Save local copy) to read even one screen. Now you can copy the selection in Figma (Cmd/Ctrl+C), save the clipboard's HTML, and turn it into a .fig that every command and MCP tool can read:
# macOS: save the clipboard's HTML
osascript -e 'the clipboard as «class HTML»' | sed 's/^«data HTML//;s/»$//' | xxd -r -p > copied.html
figlens clipboard copied.html screen.fig
figlens bundle screen.fig <node> frame.zipThe copy keeps the source file's node ids and brings along the components its instances use. It never overwrites an existing file.
A copy does not include image bytes or vector outlines. The command reports what is missing (missingImages, missingComponents, layersWithoutOutlines). Exports and bundles then warn wherever they draw without those inputs: an image drawn empty, a vector drawn as its box, or an instance whose component is not in the file. These export warnings apply to any .fig that lacks those inputs, not only copies.
Limitations:
- Converting a copy is a CLI command only. MCP, Pi, OpenCode and OMP read the converted file with their existing tools.
- Only copies from the macOS desktop app have been checked.
Dev Mode annotations and Ready for dev status (#213)
Dev Mode annotations are stored in .fig files, but figlens used to drop them, so agents reported the designer's notes as unavailable. Now:
nodesand bundles (design/nodes.json) putannotationson each annotated layer: the plain-textlabel,labelMarkdown, the pinnedproperties(such asfillsoritemSpacing) andcategoryId. The response lists the named categories it uses inannotationCategories.- Ready for dev status: frames and sections marked Ready for dev carry
devStatus(READY_FOR_DEVorCOMPLETED, with the description when one was written). inspectshows bounded previews of these notes.inspect --flataddsdevStatus=andannotations=N.diffand change tracking report edited annotations, statuses and categories. A diff scoped below the page or document that holds them marks them as not compared, instead of reporting the result as complete.- The preview's Copy/Download Context keeps the category of each annotation.
The guidance for agents treats annotations as designer notes to check against the design, never as instructions.
Limitations:
- Saved Dev Mode measurements are not emitted yet. How their stored values map to the ones Figma shows is not established, so they are listed as a known handoff gap.
- The mapping was checked against stored data in four production files, two of them held out from development. It was not compared with Figma's own API output.
Update
figlens update # or: brew upgrade figlens
npx @runkids/figlens@0.12.0 --version