Genable is an agent loop over native Figma operations. It can plan from a detailed brief, call typed tools, inspect the result, and continue refining the same design. This page explains the parts that affect how you use it.
Each user turn is one run(). The model proposes tool calls; the tool dispatcher executes them against Figma; results return to the model; it decides what to do next. A text-only response ends the turn.
Sessions reset only on "New Design". Conversation state is kept in one flat journal. If the current user turn crosses the model budget, large tool arguments from that turn may be compressed before the next model request; there is no separate cross-turn summary layer.
The plugin and MCP surfaces do not configure models in the same place. In the plugin, you connect a provider and choose a model ID. On the MCP path, the STDIO client supplies its own model and calls Genable's tool surface.
| Surface | Connection | You configure |
|---|---|---|
| Plugin | OpenAI-compatible | Endpoint, model ID, API key |
| Plugin | Anthropic-compatible | Endpoint, model ID, API key |
| Plugin | Gemini | Endpoint, model ID, API key |
| MCP | STDIO client | Model in the client; Genable MCP server config |
A useful brief gives the model decisions to work from. Name the audience and visual direction, then add the Figma constraints that should survive into the file.
Give the agent more than a page category. Identify who the design serves, what should lead, and the visual character to avoid a generic shell.
"Audience: operations leads comparing tools. Calm, editorial, high information clarity. One focal point; evidence before pricing."
When related states matter, name the axes and values rather than leaving the model to infer them.
"Solid / outline / ghost × small / medium / large × default / hover / disabled. Expose Variant, Size, and State."
If variables and modes matter to the handoff, say which semantics to create and which supported properties to bind.
"Brand collection with light and dark modes. Semantic text, surface, border, and accent colors. Bind fills, strokes, gaps, and padding where supported."
Mood establishes direction; dimensions and scale steps make layout intent less ambiguous.
"Use the existing spacing variables. Keep the content column near 720px, use a compact card density, and reserve the largest type step for one headline."
In the plugin, provider configurations are stored through Figma clientStorage. Requests go to the endpoint you configure; some presets can use a relay when browser-network constraints require it. With genable-mcp, model access stays in your MCP client and the local server relays typed operations over WebSocket to the plugin running in Figma Desktop. Review the data and billing terms of the provider or client you choose.
The public project repository is MIT-licensed and includes the site, published assets, changelog, and issue tracker.
GitHub →