autodev-cli 1.4.150 → 1.4.151
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/out/configManager.js +23 -0
- package/out/configManager.js.map +1 -1
- package/out/core/gimpPluginInstall.d.ts +17 -1
- package/out/core/gimpPluginInstall.js +51 -2
- package/out/core/gimpPluginInstall.js.map +1 -1
- package/out/core/gimpPluginSource.d.ts +4 -0
- package/out/core/gimpPluginSource.js +284 -0
- package/out/core/gimpPluginSource.js.map +1 -0
- package/package.json +3 -1
package/out/configManager.js
CHANGED
|
@@ -44,6 +44,7 @@ const mcpStartupTimeout_1 = require("./core/mcpStartupTimeout");
|
|
|
44
44
|
const secureFile_1 = require("./core/secureFile");
|
|
45
45
|
const projectMcp_1 = require("./core/projectMcp");
|
|
46
46
|
const mcpCatalogMigrate_1 = require("./core/mcpCatalogMigrate");
|
|
47
|
+
const gimpPluginInstall_1 = require("./core/gimpPluginInstall");
|
|
47
48
|
// ---------------------------------------------------------------------------
|
|
48
49
|
// ConfigManager — applies permission/settings files for each CLI provider
|
|
49
50
|
// and syncs default MCP servers to all of them.
|
|
@@ -482,6 +483,28 @@ class ConfigManager {
|
|
|
482
483
|
continue;
|
|
483
484
|
effective[name] = raw;
|
|
484
485
|
}
|
|
486
|
+
// If a `gimp` MCP server is ENABLED in the effective set, best-effort install
|
|
487
|
+
// the GIMP-side AUTO-START plugin so the socket bridge opens on GIMP launch —
|
|
488
|
+
// exactly what `mcp detect --enable gimp` does, but now also on the in-process
|
|
489
|
+
// enable path the VS Code extension uses (saveProjectUserMcp + this sync),
|
|
490
|
+
// which never called the CLI's `mcp detect`. The plugin body is EMBEDDED
|
|
491
|
+
// (gimpPluginSource.ts), so this works in the extension bundle too (no media
|
|
492
|
+
// file on disk). Fully guarded + idempotent: only when GIMP 3.x is detected,
|
|
493
|
+
// and a failure/absent GIMP must NEVER break the sync.
|
|
494
|
+
if (effective['gimp']) {
|
|
495
|
+
try {
|
|
496
|
+
const res = (0, gimpPluginInstall_1.installGimpPluginIfDetected)();
|
|
497
|
+
if (res.installed) {
|
|
498
|
+
log?.(`ConfigManager: installed auto-start GIMP MCP plugin (GIMP ${res.version}) — ${res.paths.join(', ')}`);
|
|
499
|
+
}
|
|
500
|
+
for (const w of res.warnings) {
|
|
501
|
+
log?.(`ConfigManager: GIMP plugin: ${w}`);
|
|
502
|
+
}
|
|
503
|
+
}
|
|
504
|
+
catch (e) {
|
|
505
|
+
log?.(`ConfigManager: GIMP plugin auto-install skipped (non-fatal): ${e}`);
|
|
506
|
+
}
|
|
507
|
+
}
|
|
485
508
|
// Names autodev may manage (everything in .mcp.json in any state + built-ins
|
|
486
509
|
// + pixel-office). Used to PRUNE entries from provider configs when they're
|
|
487
510
|
// disabled/removed — otherwise a merge-only write leaves stale entries (and
|
package/out/configManager.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configManager.js","sourceRoot":"","sources":["../src/configManager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"configManager.js","sourceRoot":"","sources":["../src/configManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,7 +9,13 @@ export interface GimpInstallDeps {
|
|
|
9
9
|
writeFile: (p: string, data: string) => void;
|
|
10
10
|
chmod: (p: string, mode: number) => void;
|
|
11
11
|
copyFile: (src: string, dst: string) => void;
|
|
12
|
-
/**
|
|
12
|
+
/** Read an existing file (for idempotent-skip content comparison). '' if unreadable. */
|
|
13
|
+
readFile: (p: string) => string;
|
|
14
|
+
/**
|
|
15
|
+
* The auto-start plugin source. Defaults to the EMBEDDED string
|
|
16
|
+
* (GIMP_PLUGIN_SOURCE) so it works when esbuild-bundled into the VS Code
|
|
17
|
+
* extension where media/gimp/gimp_mcp_server.py is NOT on disk at runtime.
|
|
18
|
+
*/
|
|
13
19
|
readPluginSource: () => string;
|
|
14
20
|
/** GIMP detection (to gate on major < 3). Defaults to detectApp('gimp'). */
|
|
15
21
|
detectGimp: () => DetectAppResult;
|
|
@@ -39,3 +45,13 @@ export declare function gimpMajorFromPath(p: string | null): number | null;
|
|
|
39
45
|
* on launch. Does NOT install when a clearly < 3 GIMP is the only one detected.
|
|
40
46
|
*/
|
|
41
47
|
export declare function installGimpPlugin(opts?: GimpInstallOpts, deps?: Partial<GimpInstallDeps>): GimpInstallResult;
|
|
48
|
+
/**
|
|
49
|
+
* Sync-path variant: install the auto-start plugin ONLY when GIMP 3.x is actually
|
|
50
|
+
* DETECTED. Unlike installGimpPlugin (which will create a 3.0 config dir even with
|
|
51
|
+
* no GIMP present — appropriate for the explicit `mcp detect --enable gimp` /
|
|
52
|
+
* `gimp-install-plugin` flows), this refuses to touch the filesystem when GIMP is
|
|
53
|
+
* absent or is clearly < 3, so a routine ConfigManager.syncProjectMcpServers on a
|
|
54
|
+
* box without GIMP never spuriously creates a config dir. Returns a skip result
|
|
55
|
+
* (installed:false + warning) instead of throwing so callers can swallow it.
|
|
56
|
+
*/
|
|
57
|
+
export declare function installGimpPluginIfDetected(opts?: GimpInstallOpts, deps?: Partial<GimpInstallDeps>): GimpInstallResult;
|
|
@@ -58,10 +58,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
58
58
|
exports.vendoredPluginSourcePath = vendoredPluginSourcePath;
|
|
59
59
|
exports.gimpMajorFromPath = gimpMajorFromPath;
|
|
60
60
|
exports.installGimpPlugin = installGimpPlugin;
|
|
61
|
+
exports.installGimpPluginIfDetected = installGimpPluginIfDetected;
|
|
61
62
|
const fs = __importStar(require("fs"));
|
|
62
63
|
const path = __importStar(require("path"));
|
|
63
64
|
const os = __importStar(require("os"));
|
|
64
65
|
const binDetect_1 = require("./binDetect");
|
|
66
|
+
const gimpPluginSource_1 = require("./gimpPluginSource");
|
|
65
67
|
/** Absolute path to the vendored auto-start plugin shipped in the tarball. */
|
|
66
68
|
function vendoredPluginSourcePath() {
|
|
67
69
|
// Compiled to out/core/gimpPluginInstall.js → package root is ../../ .
|
|
@@ -91,7 +93,15 @@ function realDeps() {
|
|
|
91
93
|
}
|
|
92
94
|
catch { /* non-POSIX fs */ } },
|
|
93
95
|
copyFile: (src, dst) => { fs.copyFileSync(src, dst); },
|
|
94
|
-
|
|
96
|
+
readFile: (p) => { try {
|
|
97
|
+
return fs.readFileSync(p, 'utf8');
|
|
98
|
+
}
|
|
99
|
+
catch {
|
|
100
|
+
return '';
|
|
101
|
+
} },
|
|
102
|
+
// Runtime uses the EMBEDDED source (bundle-safe). media/gimp/gimp_mcp_server.py
|
|
103
|
+
// stays the canonical source + GPL attribution, but is no longer read at runtime.
|
|
104
|
+
readPluginSource: () => gimpPluginSource_1.GIMP_PLUGIN_SOURCE,
|
|
95
105
|
detectGimp: () => (0, binDetect_1.detectApp)('gimp'),
|
|
96
106
|
};
|
|
97
107
|
}
|
|
@@ -152,12 +162,26 @@ function gimpMajorFromPath(p) {
|
|
|
152
162
|
const m = /gimp[-_]?(\d+)/i.exec(base);
|
|
153
163
|
return m ? parseInt(m[1], 10) : null;
|
|
154
164
|
}
|
|
155
|
-
/**
|
|
165
|
+
/**
|
|
166
|
+
* Write the plugin into one plug-ins dir. IDEMPOTENT: if the target already
|
|
167
|
+
* holds byte-identical content, skip the write (and the .bak) — but still ensure
|
|
168
|
+
* the executable bit on non-Windows. A .bak backup is made ONLY when overwriting
|
|
169
|
+
* content that DIFFERS from the source.
|
|
170
|
+
*/
|
|
156
171
|
function installInto(pluginsDir, source, d) {
|
|
157
172
|
const sub = path.join(pluginsDir, 'gimp_mcp_server');
|
|
158
173
|
const py = path.join(sub, 'gimp_mcp_server.py');
|
|
159
174
|
d.mkdirp(sub);
|
|
160
175
|
if (d.fileExists(py)) {
|
|
176
|
+
const existing = d.readFile(py);
|
|
177
|
+
if (existing === source) {
|
|
178
|
+
// Already up to date — no write, no backup. Still ensure it's executable.
|
|
179
|
+
if (d.platform !== 'win32') {
|
|
180
|
+
d.chmod(py, 0o755);
|
|
181
|
+
}
|
|
182
|
+
return py;
|
|
183
|
+
}
|
|
184
|
+
// Different content → back it up before overwriting.
|
|
161
185
|
d.copyFile(py, py + '.bak');
|
|
162
186
|
}
|
|
163
187
|
d.writeFile(py, source);
|
|
@@ -221,4 +245,29 @@ function installGimpPlugin(opts, deps) {
|
|
|
221
245
|
}
|
|
222
246
|
return { installed: paths.length > 0, paths, version, warnings };
|
|
223
247
|
}
|
|
248
|
+
/**
|
|
249
|
+
* Sync-path variant: install the auto-start plugin ONLY when GIMP 3.x is actually
|
|
250
|
+
* DETECTED. Unlike installGimpPlugin (which will create a 3.0 config dir even with
|
|
251
|
+
* no GIMP present — appropriate for the explicit `mcp detect --enable gimp` /
|
|
252
|
+
* `gimp-install-plugin` flows), this refuses to touch the filesystem when GIMP is
|
|
253
|
+
* absent or is clearly < 3, so a routine ConfigManager.syncProjectMcpServers on a
|
|
254
|
+
* box without GIMP never spuriously creates a config dir. Returns a skip result
|
|
255
|
+
* (installed:false + warning) instead of throwing so callers can swallow it.
|
|
256
|
+
*/
|
|
257
|
+
function installGimpPluginIfDetected(opts, deps) {
|
|
258
|
+
const d = { ...realDeps(), ...deps };
|
|
259
|
+
const det = d.detectGimp();
|
|
260
|
+
const major = gimpMajorFromPath(det.path);
|
|
261
|
+
// Require a detected GIMP that is not clearly < 3 (major null = version not in
|
|
262
|
+
// the launcher path, e.g. a macOS app bundle — allowed).
|
|
263
|
+
if (!det.installed || (major !== null && major < 3)) {
|
|
264
|
+
return {
|
|
265
|
+
installed: false,
|
|
266
|
+
paths: [],
|
|
267
|
+
version: null,
|
|
268
|
+
warnings: ['GIMP 3.x not detected — auto-start plugin install skipped (sync path).'],
|
|
269
|
+
};
|
|
270
|
+
}
|
|
271
|
+
return installGimpPlugin(opts, deps);
|
|
272
|
+
}
|
|
224
273
|
//# sourceMappingURL=gimpPluginInstall.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gimpPluginInstall.js","sourceRoot":"","sources":["../../src/core/gimpPluginInstall.ts"],"names":[],"mappings":";AAAA,8EAA8E;AAC9E,4EAA4E;AAC5E,2EAA2E;AAC3E,0CAA0C;AAC1C,EAAE;AACF,yCAAyC;AACzC,kFAAkF;AAClF,iFAAiF;AACjF,iFAAiF;AACjF,iFAAiF;AACjF,iEAAiE;AACjE,iFAAiF;AACjF,kFAAkF;AAClF,wDAAwD;AACxD,gFAAgF;AAChF,uEAAuE;AACvE,kFAAkF;AAClF,EAAE;AACF,8EAA8E;AAC9E,kFAAkF;AAClF,mDAAmD;AACnD,8EAA8E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"gimpPluginInstall.js","sourceRoot":"","sources":["../../src/core/gimpPluginInstall.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
/** sha256 (first 12 hex) of the canonical media/gimp/gimp_mcp_server.py. */
|
|
2
|
+
export declare const GIMP_PLUGIN_SOURCE_HASH = "93b608412db2";
|
|
3
|
+
/** Full body of the auto-start GIMP 3.x MCP plugin (media/gimp/gimp_mcp_server.py). */
|
|
4
|
+
export declare const GIMP_PLUGIN_SOURCE = "#!/usr/bin/env python3\n# -*- coding: utf-8 -*-\n#\n# gimp_mcp_server.py \u2014 AutoDev auto-start GIMP 3.x MCP bridge\n#\n# Derived from libreearth/gimp-mcp @49c46dd (GPL-3.0); modified by AutoDev to\n# auto-start as a GIMP 3.x PERSISTENT extension. The upstream plugin registered a\n# manual \"<Image>/Filters/Development/ \u2192 Start MCP Server\" ImageProcedure that the\n# user had to click; this variant registers a PERSISTENT extension so GIMP starts\n# the socket server automatically on launch \u2014 no menu click, no open image needed.\n#\n# The socket / command-marshalling logic (start_server, handle_client,\n# execute_command, GLib.idle_add onto GIMP's main thread) is kept from upstream.\n# ONLY the registration + run() model changed to PERSISTENT + defensive ordering.\n#\n# ---------------------------------------------------------------------------\n# GIMP 3.x plugin layout (REQUIRED): this file must live at\n# <gimp-config>/<ver>/plug-ins/gimp_mcp_server/gimp_mcp_server.py\n# i.e. inside a sub-folder whose name == this file's basename. A loose .py is\n# IGNORED by GIMP 3.x. On Linux/macOS it must ALSO be executable (chmod 0o755).\n# ---------------------------------------------------------------------------\n#\n# Copyright (C) 2023 libreearth (upstream, GPL-3.0)\n# Modifications Copyright (C) 2025 AutoDev\n#\n# This program is free software: you can redistribute it and/or modify it under\n# the terms of the GNU General Public License as published by the Free Software\n# Foundation, either version 3 of the License, or (at your option) any later\n# version.\n#\n# This program is distributed in the hope that it will be useful, but WITHOUT ANY\n# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A\n# PARTICULAR PURPOSE. See the GNU General Public License for more details.\n#\n# You should have received a copy of the GNU General Public License along with\n# this program. If not, see <https://www.gnu.org/licenses/>. A copy is vendored\n# next to this file as LICENSE.\n\nimport os\nimport sys\nimport json\nimport socket\nimport threading\nimport traceback\nimport datetime\n\nimport gi\ngi.require_version('Gimp', '3.0')\nfrom gi.repository import Gimp\nfrom gi.repository import GLib\n\n\n# ---------------------------------------------------------------------------\n# Logging \u2014 an auto-start extension has NO console, so every diagnostic goes to\n# a log file the user can read. We resolve it next to this plug-in first (always\n# writable if the plug-in loaded at all), falling back to the GIMP config dir.\n# Nothing here may raise: a logging failure must never stop GIMP from launching.\n# ---------------------------------------------------------------------------\ndef _log_path():\n try:\n here = os.path.dirname(os.path.abspath(__file__))\n return os.path.join(here, 'gimp-mcp-server.log')\n except Exception:\n try:\n return os.path.join(GLib.get_user_config_dir(), 'gimp-mcp-server.log')\n except Exception:\n return os.path.join(os.path.expanduser('~'), 'gimp-mcp-server.log')\n\n\n_LOG_FILE = _log_path()\n\n\ndef log(msg):\n \"\"\"Best-effort append to the log file AND stderr. Never raises.\"\"\"\n line = '[%s] %s' % (datetime.datetime.now().isoformat(timespec='seconds'), msg)\n try:\n with open(_LOG_FILE, 'a', encoding='utf-8') as fh:\n fh.write(line + '\\n')\n except Exception:\n pass\n try:\n sys.stderr.write(line + '\\n')\n except Exception:\n pass\n\n\nclass MCPPlugin(Gimp.PlugIn):\n # \u2500\u2500 Registration \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n def do_query_procedures(self):\n return [\"plug-in-mcp-server-autostart\"]\n\n def do_create_procedure(self, name):\n # PERSISTENT + no args + no menu = GIMP auto-starts this extension at\n # launch. Adding ANY argument, a menu label, or a menu path would turn\n # it back into a user-invoked plug-in and disable auto-start.\n procedure = Gimp.Procedure.new(\n self, name, Gimp.PDBProcType.PERSISTENT, self.run, None,\n )\n try:\n procedure.set_documentation(\n \"AutoDev MCP server (auto-start)\",\n \"Auto-starts a localhost:9876 socket bridge so external MCP \"\n \"clients can drive GIMP. Derived from libreearth/gimp-mcp \"\n \"(GPL-3.0), modified by AutoDev to run as a PERSISTENT extension.\",\n name,\n )\n procedure.set_attribution(\"AutoDev\", \"AutoDev (GPL-3.0)\", \"2025\")\n except Exception as e:\n # Attribution/doc setters are cosmetic \u2014 never let a binding\n # mismatch here prevent the procedure from registering.\n log(\"do_create_procedure: non-fatal setter error: %s\" % e)\n return procedure\n\n # \u2500\u2500 Extension entry point \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n def run(self, procedure, config, run_data):\n \"\"\"PERSISTENT extension entry point.\n\n DEFENSIVE ORDER (the brick-risk part): call persistent_ready() FIRST.\n Its ABSENCE is what hangs GIMP at startup, so it must run before\n anything that could throw. Everything after it is wrapped so a bind\n failure logs + degrades instead of taking GIMP core down with it.\n \"\"\"\n # 1) Hand control back to GIMP core IMMEDIATELY so the UI keeps loading.\n try:\n procedure.persistent_ready()\n log(\"persistent_ready() OK \u2014 extension is live\")\n except Exception as e:\n # A binding mismatch on this exact call is the known lock-up cause;\n # log it (do NOT re-raise) so GIMP still finishes launching.\n log(\"persistent_ready() FAILED (non-fatal): %s\\n%s\"\n % (e, traceback.format_exc()))\n\n # 2) Start the socket server on a daemon thread. A bind failure (port in\n # use, sandbox denial) MUST NOT crash the process or block launch.\n try:\n t = threading.Thread(target=self.start_server, daemon=True)\n t.start()\n log(\"MCP server thread started (listening on localhost:9876)\")\n except Exception as e:\n log(\"failed to start MCP server thread (non-fatal): %s\\n%s\"\n % (e, traceback.format_exc()))\n\n # 3) Keep this extension process alive for the whole GIMP session so the\n # socket stays open and idle_add callbacks can marshal onto core.\n try:\n GLib.MainLoop().run()\n except Exception as e:\n log(\"main loop exited (non-fatal): %s\" % e)\n\n # 4) Standard PERSISTENT success return.\n return procedure.new_return_values(Gimp.PDBStatusType.SUCCESS, GLib.Error())\n\n # \u2500\u2500 Socket server (kept from upstream) \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n def start_server(self):\n host = 'localhost'\n port = 9876\n sock = None\n try:\n sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)\n sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)\n sock.bind((host, port))\n sock.listen(1)\n log(\"server listening on %s:%d\" % (host, port))\n except Exception as e:\n # Bind/listen failed (e.g. port already taken by Blender's MCP or a\n # second GIMP). Log + bail out of the thread; GIMP keeps running.\n log(\"bind/listen failed (non-fatal): %s\\n%s\" % (e, traceback.format_exc()))\n try:\n if sock is not None:\n sock.close()\n except Exception:\n pass\n return\n\n while True:\n try:\n client, addr = sock.accept()\n log(\"client connected: %s\" % (addr,))\n threading.Thread(\n target=self.handle_client, args=(client,), daemon=True,\n ).start()\n except Exception as e:\n log(\"accept error: %s\" % e)\n break\n try:\n sock.close()\n except Exception:\n pass\n\n def handle_client(self, client):\n buffer = b''\n while True:\n try:\n data = client.recv(1024)\n if not data:\n break\n buffer += data\n try:\n command = json.loads(buffer.decode('utf-8'))\n buffer = b''\n # Marshal onto GIMP's main thread \u2014 the PDB is not thread-safe.\n GLib.idle_add(self.execute_command, command, client)\n except json.JSONDecodeError:\n # Partial frame \u2014 keep buffering until it parses.\n continue\n except Exception as e:\n log(\"client error: %s\" % e)\n break\n try:\n client.close()\n except Exception:\n pass\n\n def execute_command(self, command, client):\n \"\"\"Runs on GIMP's main thread via idle_add. Guarded so a bad command or\n a wrong binding logs + returns an error frame rather than hanging.\"\"\"\n response = {}\n try:\n cmd_type = command.get(\"type\")\n params = command.get(\"params\", {})\n\n if cmd_type == \"call_api\":\n api_path = params[\"api_path\"]\n args = params.get(\"args\", [])\n kwargs = params.get(\"kwargs\", {})\n\n module = Gimp\n for part in api_path.split(\".\"):\n module = getattr(module, part)\n\n result = module(*args, **kwargs)\n\n if hasattr(result, \"ID\"):\n result = {\"id\": result.ID}\n elif isinstance(result, list):\n result = [self.serialize_gimp_object(item) for item in result]\n else:\n result = str(result)\n\n response = {\"status\": \"success\", \"result\": result}\n else:\n response = {\"status\": \"error\", \"message\": \"Unknown command: %s\" % cmd_type}\n except Exception as e:\n response = {\"status\": \"error\", \"message\": str(e),\n \"traceback\": traceback.format_exc()}\n\n try:\n client.sendall(json.dumps(response).encode('utf-8'))\n except Exception as e:\n log(\"failed to send response: %s\" % e)\n return False # one-shot idle callback\n\n def serialize_gimp_object(self, obj):\n try:\n if hasattr(obj, \"ID\"):\n return {\"id\": obj.ID, \"type\": obj.__class__.__name__}\n except Exception:\n pass\n return str(obj)\n\n\ntry:\n Gimp.main(MCPPlugin.__gtype__, sys.argv)\nexcept Exception as _e:\n # If GIMP's main dispatch itself fails, log it \u2014 never let the plug-in\n # process take the launch down with an unhandled traceback.\n log(\"Gimp.main failed: %s\\n%s\" % (_e, traceback.format_exc()))\n";
|
|
@@ -0,0 +1,284 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// ---------------------------------------------------------------------------
|
|
3
|
+
// gimpPluginSource.ts — GENERATED. Do not edit by hand.
|
|
4
|
+
//
|
|
5
|
+
// Source of truth: media/gimp/gimp_mcp_server.py (GPL-3.0; see media/gimp/LICENSE).
|
|
6
|
+
// Regenerate with: node scripts/gen-gimp-plugin-source.mjs (runs in `npm run build`).
|
|
7
|
+
//
|
|
8
|
+
// This embeds the auto-start GIMP MCP plugin body as a string so the installer
|
|
9
|
+
// works even when bundled (VS Code extension esbuild) with no media file on disk.
|
|
10
|
+
// ---------------------------------------------------------------------------
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.GIMP_PLUGIN_SOURCE = exports.GIMP_PLUGIN_SOURCE_HASH = void 0;
|
|
13
|
+
/** sha256 (first 12 hex) of the canonical media/gimp/gimp_mcp_server.py. */
|
|
14
|
+
exports.GIMP_PLUGIN_SOURCE_HASH = "93b608412db2";
|
|
15
|
+
/** Full body of the auto-start GIMP 3.x MCP plugin (media/gimp/gimp_mcp_server.py). */
|
|
16
|
+
exports.GIMP_PLUGIN_SOURCE = `#!/usr/bin/env python3
|
|
17
|
+
# -*- coding: utf-8 -*-
|
|
18
|
+
#
|
|
19
|
+
# gimp_mcp_server.py — AutoDev auto-start GIMP 3.x MCP bridge
|
|
20
|
+
#
|
|
21
|
+
# Derived from libreearth/gimp-mcp @49c46dd (GPL-3.0); modified by AutoDev to
|
|
22
|
+
# auto-start as a GIMP 3.x PERSISTENT extension. The upstream plugin registered a
|
|
23
|
+
# manual "<Image>/Filters/Development/ → Start MCP Server" ImageProcedure that the
|
|
24
|
+
# user had to click; this variant registers a PERSISTENT extension so GIMP starts
|
|
25
|
+
# the socket server automatically on launch — no menu click, no open image needed.
|
|
26
|
+
#
|
|
27
|
+
# The socket / command-marshalling logic (start_server, handle_client,
|
|
28
|
+
# execute_command, GLib.idle_add onto GIMP's main thread) is kept from upstream.
|
|
29
|
+
# ONLY the registration + run() model changed to PERSISTENT + defensive ordering.
|
|
30
|
+
#
|
|
31
|
+
# ---------------------------------------------------------------------------
|
|
32
|
+
# GIMP 3.x plugin layout (REQUIRED): this file must live at
|
|
33
|
+
# <gimp-config>/<ver>/plug-ins/gimp_mcp_server/gimp_mcp_server.py
|
|
34
|
+
# i.e. inside a sub-folder whose name == this file's basename. A loose .py is
|
|
35
|
+
# IGNORED by GIMP 3.x. On Linux/macOS it must ALSO be executable (chmod 0o755).
|
|
36
|
+
# ---------------------------------------------------------------------------
|
|
37
|
+
#
|
|
38
|
+
# Copyright (C) 2023 libreearth (upstream, GPL-3.0)
|
|
39
|
+
# Modifications Copyright (C) 2025 AutoDev
|
|
40
|
+
#
|
|
41
|
+
# This program is free software: you can redistribute it and/or modify it under
|
|
42
|
+
# the terms of the GNU General Public License as published by the Free Software
|
|
43
|
+
# Foundation, either version 3 of the License, or (at your option) any later
|
|
44
|
+
# version.
|
|
45
|
+
#
|
|
46
|
+
# This program is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
47
|
+
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
|
48
|
+
# PARTICULAR PURPOSE. See the GNU General Public License for more details.
|
|
49
|
+
#
|
|
50
|
+
# You should have received a copy of the GNU General Public License along with
|
|
51
|
+
# this program. If not, see <https://www.gnu.org/licenses/>. A copy is vendored
|
|
52
|
+
# next to this file as LICENSE.
|
|
53
|
+
|
|
54
|
+
import os
|
|
55
|
+
import sys
|
|
56
|
+
import json
|
|
57
|
+
import socket
|
|
58
|
+
import threading
|
|
59
|
+
import traceback
|
|
60
|
+
import datetime
|
|
61
|
+
|
|
62
|
+
import gi
|
|
63
|
+
gi.require_version('Gimp', '3.0')
|
|
64
|
+
from gi.repository import Gimp
|
|
65
|
+
from gi.repository import GLib
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
# ---------------------------------------------------------------------------
|
|
69
|
+
# Logging — an auto-start extension has NO console, so every diagnostic goes to
|
|
70
|
+
# a log file the user can read. We resolve it next to this plug-in first (always
|
|
71
|
+
# writable if the plug-in loaded at all), falling back to the GIMP config dir.
|
|
72
|
+
# Nothing here may raise: a logging failure must never stop GIMP from launching.
|
|
73
|
+
# ---------------------------------------------------------------------------
|
|
74
|
+
def _log_path():
|
|
75
|
+
try:
|
|
76
|
+
here = os.path.dirname(os.path.abspath(__file__))
|
|
77
|
+
return os.path.join(here, 'gimp-mcp-server.log')
|
|
78
|
+
except Exception:
|
|
79
|
+
try:
|
|
80
|
+
return os.path.join(GLib.get_user_config_dir(), 'gimp-mcp-server.log')
|
|
81
|
+
except Exception:
|
|
82
|
+
return os.path.join(os.path.expanduser('~'), 'gimp-mcp-server.log')
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
_LOG_FILE = _log_path()
|
|
86
|
+
|
|
87
|
+
|
|
88
|
+
def log(msg):
|
|
89
|
+
"""Best-effort append to the log file AND stderr. Never raises."""
|
|
90
|
+
line = '[%s] %s' % (datetime.datetime.now().isoformat(timespec='seconds'), msg)
|
|
91
|
+
try:
|
|
92
|
+
with open(_LOG_FILE, 'a', encoding='utf-8') as fh:
|
|
93
|
+
fh.write(line + '\\n')
|
|
94
|
+
except Exception:
|
|
95
|
+
pass
|
|
96
|
+
try:
|
|
97
|
+
sys.stderr.write(line + '\\n')
|
|
98
|
+
except Exception:
|
|
99
|
+
pass
|
|
100
|
+
|
|
101
|
+
|
|
102
|
+
class MCPPlugin(Gimp.PlugIn):
|
|
103
|
+
# ── Registration ──────────────────────────────────────────────────────
|
|
104
|
+
def do_query_procedures(self):
|
|
105
|
+
return ["plug-in-mcp-server-autostart"]
|
|
106
|
+
|
|
107
|
+
def do_create_procedure(self, name):
|
|
108
|
+
# PERSISTENT + no args + no menu = GIMP auto-starts this extension at
|
|
109
|
+
# launch. Adding ANY argument, a menu label, or a menu path would turn
|
|
110
|
+
# it back into a user-invoked plug-in and disable auto-start.
|
|
111
|
+
procedure = Gimp.Procedure.new(
|
|
112
|
+
self, name, Gimp.PDBProcType.PERSISTENT, self.run, None,
|
|
113
|
+
)
|
|
114
|
+
try:
|
|
115
|
+
procedure.set_documentation(
|
|
116
|
+
"AutoDev MCP server (auto-start)",
|
|
117
|
+
"Auto-starts a localhost:9876 socket bridge so external MCP "
|
|
118
|
+
"clients can drive GIMP. Derived from libreearth/gimp-mcp "
|
|
119
|
+
"(GPL-3.0), modified by AutoDev to run as a PERSISTENT extension.",
|
|
120
|
+
name,
|
|
121
|
+
)
|
|
122
|
+
procedure.set_attribution("AutoDev", "AutoDev (GPL-3.0)", "2025")
|
|
123
|
+
except Exception as e:
|
|
124
|
+
# Attribution/doc setters are cosmetic — never let a binding
|
|
125
|
+
# mismatch here prevent the procedure from registering.
|
|
126
|
+
log("do_create_procedure: non-fatal setter error: %s" % e)
|
|
127
|
+
return procedure
|
|
128
|
+
|
|
129
|
+
# ── Extension entry point ─────────────────────────────────────────────
|
|
130
|
+
def run(self, procedure, config, run_data):
|
|
131
|
+
"""PERSISTENT extension entry point.
|
|
132
|
+
|
|
133
|
+
DEFENSIVE ORDER (the brick-risk part): call persistent_ready() FIRST.
|
|
134
|
+
Its ABSENCE is what hangs GIMP at startup, so it must run before
|
|
135
|
+
anything that could throw. Everything after it is wrapped so a bind
|
|
136
|
+
failure logs + degrades instead of taking GIMP core down with it.
|
|
137
|
+
"""
|
|
138
|
+
# 1) Hand control back to GIMP core IMMEDIATELY so the UI keeps loading.
|
|
139
|
+
try:
|
|
140
|
+
procedure.persistent_ready()
|
|
141
|
+
log("persistent_ready() OK — extension is live")
|
|
142
|
+
except Exception as e:
|
|
143
|
+
# A binding mismatch on this exact call is the known lock-up cause;
|
|
144
|
+
# log it (do NOT re-raise) so GIMP still finishes launching.
|
|
145
|
+
log("persistent_ready() FAILED (non-fatal): %s\\n%s"
|
|
146
|
+
% (e, traceback.format_exc()))
|
|
147
|
+
|
|
148
|
+
# 2) Start the socket server on a daemon thread. A bind failure (port in
|
|
149
|
+
# use, sandbox denial) MUST NOT crash the process or block launch.
|
|
150
|
+
try:
|
|
151
|
+
t = threading.Thread(target=self.start_server, daemon=True)
|
|
152
|
+
t.start()
|
|
153
|
+
log("MCP server thread started (listening on localhost:9876)")
|
|
154
|
+
except Exception as e:
|
|
155
|
+
log("failed to start MCP server thread (non-fatal): %s\\n%s"
|
|
156
|
+
% (e, traceback.format_exc()))
|
|
157
|
+
|
|
158
|
+
# 3) Keep this extension process alive for the whole GIMP session so the
|
|
159
|
+
# socket stays open and idle_add callbacks can marshal onto core.
|
|
160
|
+
try:
|
|
161
|
+
GLib.MainLoop().run()
|
|
162
|
+
except Exception as e:
|
|
163
|
+
log("main loop exited (non-fatal): %s" % e)
|
|
164
|
+
|
|
165
|
+
# 4) Standard PERSISTENT success return.
|
|
166
|
+
return procedure.new_return_values(Gimp.PDBStatusType.SUCCESS, GLib.Error())
|
|
167
|
+
|
|
168
|
+
# ── Socket server (kept from upstream) ────────────────────────────────
|
|
169
|
+
def start_server(self):
|
|
170
|
+
host = 'localhost'
|
|
171
|
+
port = 9876
|
|
172
|
+
sock = None
|
|
173
|
+
try:
|
|
174
|
+
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
|
|
175
|
+
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
|
|
176
|
+
sock.bind((host, port))
|
|
177
|
+
sock.listen(1)
|
|
178
|
+
log("server listening on %s:%d" % (host, port))
|
|
179
|
+
except Exception as e:
|
|
180
|
+
# Bind/listen failed (e.g. port already taken by Blender's MCP or a
|
|
181
|
+
# second GIMP). Log + bail out of the thread; GIMP keeps running.
|
|
182
|
+
log("bind/listen failed (non-fatal): %s\\n%s" % (e, traceback.format_exc()))
|
|
183
|
+
try:
|
|
184
|
+
if sock is not None:
|
|
185
|
+
sock.close()
|
|
186
|
+
except Exception:
|
|
187
|
+
pass
|
|
188
|
+
return
|
|
189
|
+
|
|
190
|
+
while True:
|
|
191
|
+
try:
|
|
192
|
+
client, addr = sock.accept()
|
|
193
|
+
log("client connected: %s" % (addr,))
|
|
194
|
+
threading.Thread(
|
|
195
|
+
target=self.handle_client, args=(client,), daemon=True,
|
|
196
|
+
).start()
|
|
197
|
+
except Exception as e:
|
|
198
|
+
log("accept error: %s" % e)
|
|
199
|
+
break
|
|
200
|
+
try:
|
|
201
|
+
sock.close()
|
|
202
|
+
except Exception:
|
|
203
|
+
pass
|
|
204
|
+
|
|
205
|
+
def handle_client(self, client):
|
|
206
|
+
buffer = b''
|
|
207
|
+
while True:
|
|
208
|
+
try:
|
|
209
|
+
data = client.recv(1024)
|
|
210
|
+
if not data:
|
|
211
|
+
break
|
|
212
|
+
buffer += data
|
|
213
|
+
try:
|
|
214
|
+
command = json.loads(buffer.decode('utf-8'))
|
|
215
|
+
buffer = b''
|
|
216
|
+
# Marshal onto GIMP's main thread — the PDB is not thread-safe.
|
|
217
|
+
GLib.idle_add(self.execute_command, command, client)
|
|
218
|
+
except json.JSONDecodeError:
|
|
219
|
+
# Partial frame — keep buffering until it parses.
|
|
220
|
+
continue
|
|
221
|
+
except Exception as e:
|
|
222
|
+
log("client error: %s" % e)
|
|
223
|
+
break
|
|
224
|
+
try:
|
|
225
|
+
client.close()
|
|
226
|
+
except Exception:
|
|
227
|
+
pass
|
|
228
|
+
|
|
229
|
+
def execute_command(self, command, client):
|
|
230
|
+
"""Runs on GIMP's main thread via idle_add. Guarded so a bad command or
|
|
231
|
+
a wrong binding logs + returns an error frame rather than hanging."""
|
|
232
|
+
response = {}
|
|
233
|
+
try:
|
|
234
|
+
cmd_type = command.get("type")
|
|
235
|
+
params = command.get("params", {})
|
|
236
|
+
|
|
237
|
+
if cmd_type == "call_api":
|
|
238
|
+
api_path = params["api_path"]
|
|
239
|
+
args = params.get("args", [])
|
|
240
|
+
kwargs = params.get("kwargs", {})
|
|
241
|
+
|
|
242
|
+
module = Gimp
|
|
243
|
+
for part in api_path.split("."):
|
|
244
|
+
module = getattr(module, part)
|
|
245
|
+
|
|
246
|
+
result = module(*args, **kwargs)
|
|
247
|
+
|
|
248
|
+
if hasattr(result, "ID"):
|
|
249
|
+
result = {"id": result.ID}
|
|
250
|
+
elif isinstance(result, list):
|
|
251
|
+
result = [self.serialize_gimp_object(item) for item in result]
|
|
252
|
+
else:
|
|
253
|
+
result = str(result)
|
|
254
|
+
|
|
255
|
+
response = {"status": "success", "result": result}
|
|
256
|
+
else:
|
|
257
|
+
response = {"status": "error", "message": "Unknown command: %s" % cmd_type}
|
|
258
|
+
except Exception as e:
|
|
259
|
+
response = {"status": "error", "message": str(e),
|
|
260
|
+
"traceback": traceback.format_exc()}
|
|
261
|
+
|
|
262
|
+
try:
|
|
263
|
+
client.sendall(json.dumps(response).encode('utf-8'))
|
|
264
|
+
except Exception as e:
|
|
265
|
+
log("failed to send response: %s" % e)
|
|
266
|
+
return False # one-shot idle callback
|
|
267
|
+
|
|
268
|
+
def serialize_gimp_object(self, obj):
|
|
269
|
+
try:
|
|
270
|
+
if hasattr(obj, "ID"):
|
|
271
|
+
return {"id": obj.ID, "type": obj.__class__.__name__}
|
|
272
|
+
except Exception:
|
|
273
|
+
pass
|
|
274
|
+
return str(obj)
|
|
275
|
+
|
|
276
|
+
|
|
277
|
+
try:
|
|
278
|
+
Gimp.main(MCPPlugin.__gtype__, sys.argv)
|
|
279
|
+
except Exception as _e:
|
|
280
|
+
# If GIMP's main dispatch itself fails, log it — never let the plug-in
|
|
281
|
+
# process take the launch down with an unhandled traceback.
|
|
282
|
+
log("Gimp.main failed: %s\\n%s" % (_e, traceback.format_exc()))
|
|
283
|
+
`;
|
|
284
|
+
//# sourceMappingURL=gimpPluginSource.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gimpPluginSource.js","sourceRoot":"","sources":["../../src/core/gimpPluginSource.ts"],"names":[],"mappings":";AAAA,8EAA8E;AAC9E,wDAAwD;AACxD,EAAE;AACF,oFAAoF;AACpF,wFAAwF;AACxF,EAAE;AACF,+EAA+E;AAC/E,kFAAkF;AAClF,8EAA8E;;;AAE9E,4EAA4E;AAC/D,QAAA,uBAAuB,GAAG,cAAc,CAAC;AAEtD,uFAAuF;AAC1E,QAAA,kBAAkB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2QjC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "autodev-cli",
|
|
3
|
-
"version": "1.4.
|
|
3
|
+
"version": "1.4.151",
|
|
4
4
|
"description": "AutoAIDev CLI — autonomous AI task loop with VS Code / Cursor launcher",
|
|
5
5
|
"author": "Peter Ivanov <peter@microweber.com>",
|
|
6
6
|
"license": "MIT",
|
|
@@ -27,6 +27,8 @@
|
|
|
27
27
|
"cursor"
|
|
28
28
|
],
|
|
29
29
|
"scripts": {
|
|
30
|
+
"gen:gimp": "node scripts/gen-gimp-plugin-source.mjs",
|
|
31
|
+
"prebuild": "node scripts/gen-gimp-plugin-source.mjs",
|
|
30
32
|
"build": "tsc -p ./",
|
|
31
33
|
"dev": "tsc -p ./ --watch",
|
|
32
34
|
"prepublishOnly": "npm run build",
|