Fix Figma MCP timeline, update tool counts to 26, add AI providers to roadmap
This commit is contained in:
parent
d24e0ee767
commit
c2e77ff63d
1
PLAN.md
1
PLAN.md
|
|
@ -1079,6 +1079,7 @@ Tauri v2 desktop app (macOS, Windows, Linux). Web app at app.openpencil.dev. CLI
|
|||
### What's next
|
||||
|
||||
- **Multi-file / tabs** — open multiple documents in tabs within a single window
|
||||
- **More AI providers** — Anthropic API, Claude Code subscription, Gemini, local models via Ollama
|
||||
- **Code signing** — Apple & Azure certificates for properly signed desktop binaries
|
||||
- **.fig compatibility** — improving import/export fidelity across a larger set of real-world files
|
||||
- **Port all figma-use tools** — bring the full 118-tool set from [figma-use](https://github.com/dannote/figma-use) into the editor (currently 26/118) for complete AI agent design capabilities
|
||||
|
|
|
|||
|
|
@ -9,6 +9,7 @@ Open-source, AI-native design editor. Figma-compatible, AI-first, fully local.
|
|||
> **What's next**
|
||||
>
|
||||
> - Multi-file / tabs support
|
||||
> - More AI providers (Anthropic API, Claude Code subscription, Gemini, local models via Ollama)
|
||||
> - Code signing (Apple & Azure certificates for properly signed binaries)
|
||||
> - Improving .fig compatibility across a larger set of files
|
||||
> - Porting all [figma-use](https://github.com/dannote/figma-use) tools (118 → 26 currently) for full AI agent design capabilities
|
||||
|
|
@ -18,7 +19,7 @@ Open-source, AI-native design editor. Figma-compatible, AI-first, fully local.
|
|||
|
||||
## Why
|
||||
|
||||
Figma is a closed platform that actively fights programmatic access. In February 2026, [Figma 126.1.2 started stripping `--remote-debugging-port`](https://forum.figma.com/report-a-problem-6/remote-debugging-port-not-working-in-figma-desktop-126-1-2-50858) on startup — killing CDP-based automation tools like [figma-use](https://github.com/dannote/figma-use) that filled gaps Figma refused to address. Their own MCP server, launched months after figma-use proved the demand, still can't create or modify designs — it's read-only.
|
||||
Figma is a closed platform that actively fights programmatic access. Their [MCP server](https://www.figma.com/blog/introducing-figma-mcp-server/), launched in June 2025, was read-only — you could pull design context but not create or modify anything. [figma-use](https://github.com/dannote/figma-use) filled that gap in January 2026 with full read/write design automation via CDP. A month later, [Figma 126.1.2 started stripping `--remote-debugging-port`](https://forum.figma.com/report-a-problem-6/remote-debugging-port-not-working-in-figma-desktop-126-1-2-50858) on startup — killing CDP-based tools. Figma has since added UI-to-Figma capture via their MCP server, but it still can't programmatically create or modify design nodes.
|
||||
|
||||
This is a supply chain problem. Designers and developers build workflows on top of their design tool. When that tool is closed-source, the vendor controls what's possible. They can break your tooling overnight with a point release. Your design files are in a proprietary binary format that only their software can fully read.
|
||||
|
||||
|
|
|
|||
|
|
@ -107,13 +107,13 @@ Core extraction, CLI, MCP server, design guidelines, screenshot verification loo
|
|||
- .fig roundtrip tests with LFS fixtures (material3.fig 87K nodes, nuxtui.fig 314K nodes)
|
||||
- .fig import O(n²) → O(n) fix (37s → 535ms on 87K nodes), ByteBuffer optimization
|
||||
- test:coverage script
|
||||
- AI chat: OpenRouter direct (no backend), Stronghold key storage, 10 tools (create_shape, set_fill, etc.), model selector, ⌘J toggle, streaming markdown, Playwright tests with mock transport
|
||||
- AI chat: OpenRouter direct (no backend), Stronghold key storage, 26 tools (create_shape, set_fill, set_effects, set_constraints, components, groups, pages, variables, eval_code, etc.), model selector, ⌘J toggle, streaming markdown, Playwright tests with mock transport
|
||||
- Code panel: sceneNodeToJsx() export, Prism.js highlighting, line numbers, copy button, 14 tests
|
||||
- Properties panel restructured: Design | Code | AI tabs
|
||||
- npm publishing preparation for core and cli packages
|
||||
|
||||
**Planned:**
|
||||
- Port MCP server from figma-use (117 tools)
|
||||
- Port remaining figma-use tools (118 total, 26 currently implemented)
|
||||
- Attached mode: WebSocket to running editor for eval, create, export, screenshot
|
||||
- Design guidelines system
|
||||
- AI-driven design workflow via MCP
|
||||
|
|
|
|||
|
|
@ -207,7 +207,7 @@ Built-in AI assistant accessible via the AI tab in the properties panel or <kbd>
|
|||
|
||||
**Model selector** with curated models: Claude, Gemini, GPT, DeepSeek, Qwen, Kimi, Llama — stored in `@open-pencil/core` constants with benchmark-ranked tags. Responses stream as markdown (vue-stream-markdown).
|
||||
|
||||
**10 AI tools** wired to the editor store with valibot schemas: `create_shape`, `set_fill`, `set_stroke`, `update_node`, `set_layout`, `delete_node`, `select_nodes`, `get_page_tree`, `get_selection`, `rename_node`. The ToolLoopAgent executes tools automatically in a loop. Tool calls display as collapsible timeline entries in the chat (reka-ui Collapsible).
|
||||
**26 AI tools** defined in `packages/core/src/tools/schema.ts` with valibot schemas: read tools (`get_selection`, `get_page_tree`, `get_node`, `find_nodes`, `list_pages`, `list_variables`, `list_collections`), create tools (`create_shape`, `render`, `create_component`, `create_instance`), modify tools (`set_fill`, `set_stroke`, `set_effects`, `update_node`, `set_layout`, `set_constraints`, `rename_node`, `reparent_node`, `clone_node`, `delete_node`), organize tools (`select_nodes`, `group_nodes`, `ungroup_node`, `switch_page`), and `eval_code` escape hatch. Tool calls display as collapsible timeline entries in the chat (reka-ui Collapsible).
|
||||
|
||||
Tested with Playwright using mock transport for CI.
|
||||
|
||||
|
|
|
|||
|
|
@ -27,7 +27,7 @@ Feature-by-feature comparison of Figma Design capabilities with Open Pencil's cu
|
|||
| Layer outlines view | 🔲 | Wireframe view of all layers |
|
||||
| Custom file thumbnails | 🔲 | Thumbnail generated on export, but no custom thumbnail picker |
|
||||
| Nudge value settings | 🔲 | Default 1px/10px; Figma allows custom small/big nudge values |
|
||||
| AI tools | 🟡 | 10 AI tools via OpenRouter (create/modify/delete shapes, fills/strokes, layout); no AI-generated images or AI-powered search yet |
|
||||
| AI tools | 🟡 | 26 AI tools via OpenRouter (create/modify/delete shapes, fills/strokes/effects, layout, constraints, components, groups, pages, variables); no AI-generated images or AI-powered search yet |
|
||||
|
||||
## Layers & Shapes
|
||||
|
||||
|
|
@ -208,8 +208,8 @@ Feature-by-feature comparison of Figma Design capabilities with Open Pencil's cu
|
|||
| Code Connect | 🔲 | Link design components to code |
|
||||
| Code snippets | 🟡 | JSX export with syntax highlighting and copy; no CSS/Swift/Kotlin snippets |
|
||||
| Figma for VS Code | 🔲 | Editor plugin integration |
|
||||
| MCP server | 🔲 | Planned for Phase 5; 117-tool MCP server from figma-use |
|
||||
| CLI tools | 🟡 | Headless CLI: info, tree, find, export, analyze (colors/typography/spacing/clusters), node, pages, variables; MCP server not yet |
|
||||
| MCP server | 🔲 | Planned; porting 118 tools from figma-use (26 currently available as AI tools) |
|
||||
| CLI tools | 🟡 | Headless CLI: info, tree, find, export, analyze (colors/typography/spacing/clusters), node, pages, variables, eval; MCP server not yet |
|
||||
|
||||
## Figma Draw
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue