38 Commits

Author SHA1 Message Date
Dominik Jain
02da2b4b19 Plugin: Add multi-user mode option (alt. run script, which sets constant)
User token is a dummy token for now; shall be provided by Penpot in the future
2025-12-16 22:28:02 +01:00
Dominik Jain
4c6b7844b1 Improve comments 2025-12-16 22:28:02 +01:00
Dominik Jain
a27f2d5122 Plugin: Display WebSocket errors (e.g. missing token) in UI #20 2025-12-16 22:28:02 +01:00
Dominik Jain
24ffeac2bf Move image import code to PenpotUtils 2025-11-14 12:58:04 +01:00
Dominik Jain
f8f440c7dd Add ImportImageTool
Add PenpotUtils.atob to support base64 conversion
(regular atob not available in plugin context)

Resolves #10
2025-11-13 19:09:27 +01:00
Dominik Jain
ac0290aca0 Add util functions getPageForShape and generateCss
in an attempt to circumvent restrictions of penpot.generateStyle
2025-10-15 17:30:23 +02:00
Dominik Jain
b5869d185b Reduce plugin UI size and improve colours 2025-10-11 22:56:57 +02:00
Dominik Jain
8a6848a663 Move prettier configuration to top level 2025-10-11 22:56:57 +02:00
Dominik Jain
0b9404e2a2 Remove obsolete tool: PrintTextTool 2025-10-11 22:56:57 +02:00
Dominik Jain
9dcbc68f09 Extend plugin permissions: Add read/write for library and comments 2025-10-08 00:10:26 +02:00
Dominik Jain
094e436d80 Make ExecuteCodeTaskHandler use async functions by default
facilitating calls to async functions (also triggered by the LLM)
2025-10-08 00:10:26 +02:00
Dominik Jain
3f7153c7e4 Update lock files 2025-10-08 00:10:26 +02:00
Dominik Jain
cbac84bab2 Restructuring, improving README structure and npm commands 2025-10-08 00:10:26 +02:00
Dominik Jain
cb5dbcfb06 Make plugin window smaller and use purple colour for successful connection 2025-10-08 00:10:26 +02:00
Dominik Jain
e5b5722ce6 Remove demo 'add text' button 2025-10-08 00:10:26 +02:00
Dominik Jain
11d67037e7 Make PenpotUtils.findShape search across all pages (i.e. globally) 2025-10-08 00:10:26 +02:00
Dominik Jain
dab0ab944e Remove obsolete template stuff from plugin 2025-10-08 00:10:26 +02:00
Dominik Jain
dacd87bbac Add utils for Page handling, improve prompts explaining design structure 2025-10-08 00:10:26 +02:00
Dominik Jain
865606b7b0 Add PenpotUtils (utility functions the LLM can make use of) 2025-10-08 00:10:25 +02:00
Dominik Jain
afb00f6033 Switch WebSocket port from 8080 to 4402 2025-10-08 00:10:25 +02:00
Dominik Jain
223d6d50b0 Improve return type definition of ExecuteCodePluginTask 2025-10-08 00:10:25 +02:00
Dominik Jain
13cb1aee0f ExecuteCodeTaskHandler: Await result if it is a Promise 2025-10-08 00:10:25 +02:00
Dominik Jain
4350f18ab3 Make TaskHandler.handle async 2025-10-08 00:10:25 +02:00
Dominik Jain
5ab14ffb9e Allow code execution to use the console, returning the full log 2025-10-08 00:10:25 +02:00
Dominik Jain
f0b25c1052 Apply formatter 2025-10-08 00:10:25 +02:00
Dominik Jain
c3ae05c8fc Track handler responses being sent 2025-10-08 00:10:25 +02:00
Dominik Jain
5ffaabd728 Add code execution tool 2025-10-08 00:09:42 +02:00
Dominik Jain
93e98f5e08 Refactor task handling (adding Task abstraction) 2025-09-17 19:43:21 +02:00
Dominik Jain
8275735999 Refactor task handling (introducing abstraction TaskHandler) 2025-09-16 17:38:34 +02:00
Dominik Jain
23d2270df0 Improve error handling in PluginTask execution 2025-09-12 18:36:13 +02:00
Dominik Jain
b7d1171654 Establish return channel when executing plugin tasks
and package 'common' for representations used in both subprojects
2025-09-12 16:42:13 +02:00
Dominik Jain
4b755e4381 Apply formatter 2025-09-11 11:37:25 +02:00
Dominik Jain
f99fedb4f1 Update formatter config 2025-09-11 11:35:48 +02:00
Dominik Jain
4a9700d445 Implement initial WebSocket interaction between MCP server and Penpot plugin
(Example: Writing and selecting a text object to the Penpot project)
2025-09-10 23:02:57 +02:00
Dominik Jain
7faca70aa7 Establish websocket connection between plugin and MCP server 2025-09-10 16:33:53 +02:00
Dominik Jain
740750fbd8 Update plugin metadata 2025-09-10 16:00:30 +02:00
Dominik Jain
44929fd684 Add plugin code from template 2025-09-10 15:34:22 +02:00
Dominik Jain
291908fede Initial setup 2025-09-10 10:23:46 +02:00