comfyui-mcp 0.20.7 → 0.20.8
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.
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { execFileSync } from "node:child_process";
|
|
2
2
|
import { randomUUID } from "node:crypto";
|
|
3
3
|
import { existsSync } from "node:fs";
|
|
4
|
-
import { basename, join } from "node:path";
|
|
4
|
+
import { basename, isAbsolute, join, relative, resolve } from "node:path";
|
|
5
5
|
import { config, getComfyUIBaseUrl } from "../config.js";
|
|
6
6
|
import { comfyuiFetch } from "../comfyui/fetch.js";
|
|
7
7
|
import { ComfyUIError, ProcessControlError, ValidationError } from "../utils/errors.js";
|
|
@@ -335,7 +335,19 @@ function runGitCheckout(baseUrl, ref) {
|
|
|
335
335
|
throw new ProcessControlError("Checking out a custom-node git ref requires a local ComfyUI install, " +
|
|
336
336
|
"but config.comfyuiPath is not set.");
|
|
337
337
|
}
|
|
338
|
-
|
|
338
|
+
// SECURITY: this is also reached by the forced-cm-cli git path, NOT just the
|
|
339
|
+
// clone fallback, so validate here too before baseUrl / the derived dir reach
|
|
340
|
+
// git or the filesystem (option injection + path traversal). Mirrors
|
|
341
|
+
// cloneCustomNodeFallback's checks.
|
|
342
|
+
assertSafeGitUrl(baseUrl);
|
|
343
|
+
const repoName = gitCheckoutDir(baseUrl);
|
|
344
|
+
assertSafeRepoName(repoName);
|
|
345
|
+
const customNodesRoot = resolve(config.comfyuiPath, "custom_nodes");
|
|
346
|
+
const nodeDir = resolve(customNodesRoot, repoName);
|
|
347
|
+
const rel = relative(customNodesRoot, nodeDir);
|
|
348
|
+
if (rel === "" || rel.startsWith("..") || isAbsolute(rel)) {
|
|
349
|
+
throw new ValidationError(`Refusing to check out: resolved path "${nodeDir}" escapes ${customNodesRoot}.`);
|
|
350
|
+
}
|
|
339
351
|
logger.info("Checking out custom-node git ref", {
|
|
340
352
|
repository: baseUrl,
|
|
341
353
|
ref,
|
|
@@ -361,6 +373,186 @@ function runGitCheckout(baseUrl, ref) {
|
|
|
361
373
|
});
|
|
362
374
|
}
|
|
363
375
|
}
|
|
376
|
+
/**
|
|
377
|
+
* Does an installed node match the wanted id/url? Mirrors manifest.ts's private
|
|
378
|
+
* nodeAlreadyInstalled, but kept local to this unit. Normalizes (lowercase) and
|
|
379
|
+
* matches an installed node's module/cnrId/auxId (and the basename of each — aux
|
|
380
|
+
* ids are typically "owner/repo") against the wanted value and, when the wanted
|
|
381
|
+
* value is a git URL, its derived repo name. This is how we VERIFY a Manager
|
|
382
|
+
* install actually landed on disk (Manager marks the queue "done" even when it
|
|
383
|
+
* resolved nothing).
|
|
384
|
+
*/
|
|
385
|
+
function nodeInstalledMatches(idOrUrl, installed) {
|
|
386
|
+
const wanted = idOrUrl.trim().toLowerCase();
|
|
387
|
+
const repoName = looksLikeGitUrl(idOrUrl)
|
|
388
|
+
? gitCheckoutDir(parseGitUrl(idOrUrl).baseUrl).toLowerCase()
|
|
389
|
+
: wanted;
|
|
390
|
+
return installed.some((node) => {
|
|
391
|
+
const candidates = [];
|
|
392
|
+
for (const v of [node.module, node.cnrId, node.auxId]) {
|
|
393
|
+
if (!v)
|
|
394
|
+
continue;
|
|
395
|
+
const norm = v.trim().toLowerCase();
|
|
396
|
+
candidates.push(norm);
|
|
397
|
+
candidates.push(basename(norm));
|
|
398
|
+
}
|
|
399
|
+
return candidates.includes(wanted) || candidates.includes(repoName);
|
|
400
|
+
});
|
|
401
|
+
}
|
|
402
|
+
/**
|
|
403
|
+
* Resolve the ComfyUI venv python for installing a cloned node's deps. Prefers
|
|
404
|
+
* the install's own `.venv` (Windows Scripts/ or POSIX bin/), falling back to a
|
|
405
|
+
* bare "python" on PATH.
|
|
406
|
+
*/
|
|
407
|
+
function resolveVenvPython() {
|
|
408
|
+
if (config.comfyuiPath) {
|
|
409
|
+
const winPy = join(config.comfyuiPath, ".venv", "Scripts", "python.exe");
|
|
410
|
+
if (existsSync(winPy))
|
|
411
|
+
return winPy;
|
|
412
|
+
const posixPy = join(config.comfyuiPath, ".venv", "bin", "python");
|
|
413
|
+
if (existsSync(posixPy))
|
|
414
|
+
return posixPy;
|
|
415
|
+
}
|
|
416
|
+
return "python";
|
|
417
|
+
}
|
|
418
|
+
/**
|
|
419
|
+
* Validate a git URL before it is handed to `git clone` as an argument.
|
|
420
|
+
* Rejects an arg-injection vector (a URL parsed as a git option) and anything
|
|
421
|
+
* that isn't a recognized git URL shape.
|
|
422
|
+
*/
|
|
423
|
+
function assertSafeGitUrl(gitId) {
|
|
424
|
+
if (gitId.startsWith("-")) {
|
|
425
|
+
throw new ValidationError(`Refusing to clone git URL "${gitId}": it starts with '-' and would be ` +
|
|
426
|
+
`interpreted as a git option.`);
|
|
427
|
+
}
|
|
428
|
+
if (/[\x00-\x1F\x7F]/.test(gitId)) {
|
|
429
|
+
throw new ValidationError("Git URL cannot contain ASCII control characters.");
|
|
430
|
+
}
|
|
431
|
+
if (!looksLikeGitUrl(gitId)) {
|
|
432
|
+
throw new ValidationError(`Refusing to clone "${gitId}": not a recognized git URL (expected ` +
|
|
433
|
+
`https://, ssh://, git@…, git+…, or a .git URL).`);
|
|
434
|
+
}
|
|
435
|
+
}
|
|
436
|
+
/**
|
|
437
|
+
* Validate the repo name derived from a git URL before it is used as a
|
|
438
|
+
* filesystem path segment under custom_nodes. Rejects empty, '.'/'..', names
|
|
439
|
+
* starting with '-', and names containing path separators or control chars —
|
|
440
|
+
* any of which could escape custom_nodes or be parsed as a git option.
|
|
441
|
+
*/
|
|
442
|
+
function assertSafeRepoName(repoName) {
|
|
443
|
+
if (repoName.length === 0 ||
|
|
444
|
+
repoName === "." ||
|
|
445
|
+
repoName === ".." ||
|
|
446
|
+
repoName.startsWith("-") ||
|
|
447
|
+
/[/\\]/.test(repoName) ||
|
|
448
|
+
/[\x00-\x1F\x7F]/.test(repoName)) {
|
|
449
|
+
throw new ValidationError(`Refusing to use "${repoName}" as a custom_nodes directory name (empty, ` +
|
|
450
|
+
`'.'/'..', starts with '-', or contains a path separator/control char).`);
|
|
451
|
+
}
|
|
452
|
+
}
|
|
453
|
+
/**
|
|
454
|
+
* Direct-clone fallback for an unregistered git repo the Manager can't resolve.
|
|
455
|
+
* Clones into custom_nodes/<repoName>, checks out a ref if given, then makes a
|
|
456
|
+
* best-effort attempt at installing python deps (requirements.txt + install.py).
|
|
457
|
+
* Dep failures DON'T fail the install (clone succeeded) — they're surfaced as
|
|
458
|
+
* warnings. A clone failure throws NodeManagementError.
|
|
459
|
+
*/
|
|
460
|
+
function cloneCustomNodeFallback(gitId, repoName, gitRef, managerStatus) {
|
|
461
|
+
if (!config.comfyuiPath) {
|
|
462
|
+
throw new ProcessControlError(`"${repoName}" is not in the ComfyUI-Manager registry and cloning it ` +
|
|
463
|
+
`requires a local ComfyUI install, but config.comfyuiPath is not set ` +
|
|
464
|
+
`(running in remote --comfyui-url mode). Install it on the ComfyUI host, ` +
|
|
465
|
+
`or pass a registered pack id.`);
|
|
466
|
+
}
|
|
467
|
+
// SECURITY: validate before either value becomes a `git clone` arg or a path
|
|
468
|
+
// segment. gitId is checked for option-injection; repoName for path traversal.
|
|
469
|
+
assertSafeGitUrl(gitId);
|
|
470
|
+
assertSafeRepoName(repoName);
|
|
471
|
+
// Resolve the target and ASSERT it stays inside <comfyuiPath>/custom_nodes,
|
|
472
|
+
// mirroring manifest.ts's isWithinRoot containment check (defense in depth on
|
|
473
|
+
// top of the repoName validation above).
|
|
474
|
+
const customNodesRoot = resolve(config.comfyuiPath, "custom_nodes");
|
|
475
|
+
const nodeDir = resolve(customNodesRoot, repoName);
|
|
476
|
+
const rel = relative(customNodesRoot, nodeDir);
|
|
477
|
+
if (rel === "" || rel.startsWith("..") || isAbsolute(rel)) {
|
|
478
|
+
throw new ValidationError(`Refusing to clone: resolved path "${nodeDir}" escapes ${customNodesRoot}.`);
|
|
479
|
+
}
|
|
480
|
+
const warnings = [];
|
|
481
|
+
const alreadyPresent = existsSync(nodeDir);
|
|
482
|
+
if (!alreadyPresent) {
|
|
483
|
+
// A concrete ref needs the full history reachable; otherwise shallow-clone.
|
|
484
|
+
// `--end-of-options` ensures gitId/nodeDir are never parsed as git options.
|
|
485
|
+
const cloneArgs = gitRef
|
|
486
|
+
? ["clone", "--end-of-options", gitId, nodeDir]
|
|
487
|
+
: ["clone", "--depth", "1", "--end-of-options", gitId, nodeDir];
|
|
488
|
+
logger.info("Cloning unregistered custom node", { gitId, nodeDir, gitRef });
|
|
489
|
+
try {
|
|
490
|
+
execFileSync("git", cloneArgs, {
|
|
491
|
+
cwd: config.comfyuiPath,
|
|
492
|
+
encoding: "utf-8",
|
|
493
|
+
timeout: CM_CLI_TIMEOUT,
|
|
494
|
+
env: {
|
|
495
|
+
...process.env,
|
|
496
|
+
...(config.githubToken ? { GITHUB_TOKEN: config.githubToken } : {}),
|
|
497
|
+
},
|
|
498
|
+
});
|
|
499
|
+
}
|
|
500
|
+
catch (err) {
|
|
501
|
+
const e = err;
|
|
502
|
+
throw new NodeManagementError(`Failed to clone "${gitId}" into custom_nodes/${repoName}: ${e.message}`, {
|
|
503
|
+
stdout: e.stdout ? e.stdout.toString() : "",
|
|
504
|
+
stderr: e.stderr ? e.stderr.toString() : "",
|
|
505
|
+
});
|
|
506
|
+
}
|
|
507
|
+
if (gitRef)
|
|
508
|
+
runGitCheckout(gitId, gitRef);
|
|
509
|
+
}
|
|
510
|
+
// VERIFY the clone landed before attempting deps.
|
|
511
|
+
if (!existsSync(nodeDir)) {
|
|
512
|
+
throw new NodeManagementError(`Clone of "${gitId}" reported success but ${nodeDir} is missing.`);
|
|
513
|
+
}
|
|
514
|
+
// Best-effort python deps. Don't fail the install if these don't.
|
|
515
|
+
const requirements = join(nodeDir, "requirements.txt");
|
|
516
|
+
const installScript = join(nodeDir, "install.py");
|
|
517
|
+
if (existsSync(requirements) || existsSync(installScript)) {
|
|
518
|
+
const python = resolveVenvPython();
|
|
519
|
+
if (existsSync(requirements)) {
|
|
520
|
+
try {
|
|
521
|
+
execFileSync(python, ["-m", "pip", "install", "-r", requirements], {
|
|
522
|
+
cwd: nodeDir,
|
|
523
|
+
encoding: "utf-8",
|
|
524
|
+
timeout: CM_CLI_TIMEOUT,
|
|
525
|
+
});
|
|
526
|
+
}
|
|
527
|
+
catch (err) {
|
|
528
|
+
const e = err;
|
|
529
|
+
warnings.push(`Python dependencies (requirements.txt) failed to install (${e.message}); install them manually with "${python} -m pip install -r requirements.txt".`);
|
|
530
|
+
}
|
|
531
|
+
}
|
|
532
|
+
if (existsSync(installScript)) {
|
|
533
|
+
try {
|
|
534
|
+
execFileSync(python, [installScript], {
|
|
535
|
+
cwd: nodeDir,
|
|
536
|
+
encoding: "utf-8",
|
|
537
|
+
timeout: CM_CLI_TIMEOUT,
|
|
538
|
+
});
|
|
539
|
+
}
|
|
540
|
+
catch (err) {
|
|
541
|
+
const e = err;
|
|
542
|
+
warnings.push(`install.py failed to run (${e.message}); the node may need manual setup.`);
|
|
543
|
+
}
|
|
544
|
+
}
|
|
545
|
+
}
|
|
546
|
+
const base = alreadyPresent
|
|
547
|
+
? `"${repoName}" already exists in custom_nodes (${repoName}) — left it in place.`
|
|
548
|
+
: `"${repoName}" is not in the ComfyUI-Manager registry — cloned it directly into custom_nodes (${repoName}).`;
|
|
549
|
+
const warn = warnings.length ? ` ${warnings.join(" ")}` : "";
|
|
550
|
+
return {
|
|
551
|
+
mechanism: "git-clone",
|
|
552
|
+
message: `${base}${warn} RESTART ComfyUI to load it.`,
|
|
553
|
+
details: { nodeDir, warnings, managerStatus },
|
|
554
|
+
};
|
|
555
|
+
}
|
|
364
556
|
export async function installCustomNode(opts) {
|
|
365
557
|
const { id, version, mode = "remote", channel = "default" } = opts;
|
|
366
558
|
const parsedGit = parseGitUrl(id);
|
|
@@ -374,6 +566,13 @@ export async function installCustomNode(opts) {
|
|
|
374
566
|
const gitRef = source === "git" && gitRefCandidate
|
|
375
567
|
? validateGitRef(gitRefCandidate)
|
|
376
568
|
: gitRefCandidate;
|
|
569
|
+
// SECURITY: validate a git URL ONCE, up front, before it can reach ANY install
|
|
570
|
+
// path — cm-cli (`cm-cli install <url>`), the Manager queue, or the clone
|
|
571
|
+
// fallback. Rejects option-injection (leading "-") / non-git / control chars.
|
|
572
|
+
// The repo-name + custom_nodes-containment checks live where the on-disk dir is
|
|
573
|
+
// actually used (runGitCheckout, cloneCustomNodeFallback).
|
|
574
|
+
if (source === "git")
|
|
575
|
+
assertSafeGitUrl(gitId);
|
|
377
576
|
if (opts.useCmCli) {
|
|
378
577
|
// cm-cli install accepts registry ids and git urls alike.
|
|
379
578
|
const installId = source === "git" ? gitId : id;
|
|
@@ -387,40 +586,58 @@ export async function installCustomNode(opts) {
|
|
|
387
586
|
details: out.trim(),
|
|
388
587
|
};
|
|
389
588
|
}
|
|
390
|
-
let params;
|
|
391
589
|
if (source === "git") {
|
|
392
|
-
//
|
|
393
|
-
//
|
|
394
|
-
//
|
|
395
|
-
//
|
|
396
|
-
//
|
|
397
|
-
//
|
|
398
|
-
//
|
|
399
|
-
|
|
590
|
+
// REGISTRY-FIRST, CLONE FALLBACK. The Manager backend resolves an install
|
|
591
|
+
// by the pack's REPO NAME / CNR id — NOT a full git URL (do_install splits
|
|
592
|
+
// `${id}@${selected_version}` and looks the result up in its DB; a full URL
|
|
593
|
+
// matches nothing and the queue silently marks the task "done"). So we mirror
|
|
594
|
+
// the frontend UI: id = repo name, selected_version = ref or "nightly" (the
|
|
595
|
+
// git-HEAD channel for unclaimed packs), channel "dev", mode "cache". The
|
|
596
|
+
// ignored `repository`/`pip` fields are dropped.
|
|
597
|
+
const repoName = gitCheckoutDir(gitId);
|
|
400
598
|
const selected = gitRef ?? "nightly";
|
|
401
|
-
|
|
402
|
-
id:
|
|
599
|
+
const status = await queueManagerTask("install", {
|
|
600
|
+
id: repoName,
|
|
403
601
|
version: selected,
|
|
404
602
|
selected_version: selected,
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
}
|
|
603
|
+
channel: opts.channel ?? "dev",
|
|
604
|
+
mode: opts.mode ?? "cache",
|
|
605
|
+
});
|
|
606
|
+
// VERIFY: /v2/customnode/installed reflects on-disk custom_nodes, so a
|
|
607
|
+
// freshly-cloned pack shows up even before a reboot. If the Manager actually
|
|
608
|
+
// installed it, we're done; otherwise it's unregistered → clone it directly.
|
|
609
|
+
const installed = await listInstalledNodes().catch(() => []);
|
|
610
|
+
if (nodeInstalledMatches(gitId, installed)) {
|
|
611
|
+
return {
|
|
612
|
+
mechanism: "manager-http",
|
|
613
|
+
message: `Installed "${repoName}" via ComfyUI-Manager. Restart may be required to load new nodes.`,
|
|
614
|
+
details: status,
|
|
615
|
+
};
|
|
616
|
+
}
|
|
617
|
+
return cloneCustomNodeFallback(gitId, repoName, gitRef, status);
|
|
618
|
+
}
|
|
619
|
+
// Registry (plain CNR id). Keep the prior defaults channel "default" /
|
|
620
|
+
// mode "remote" (overridable via opts) — forcing "dev"/"cache" risks resolving
|
|
621
|
+
// a different build or failing for default-only packs. The UI-style
|
|
622
|
+
// "dev"/"cache" is used ONLY for the git registry-first lookup above. Then
|
|
623
|
+
// VERIFY the pack actually landed — a non-URL id can't be cloned, so an absent
|
|
624
|
+
// pack is a hard error rather than a silent no-op.
|
|
625
|
+
const status = await queueManagerTask("install", {
|
|
626
|
+
id,
|
|
627
|
+
version: version ?? "latest",
|
|
628
|
+
selected_version: version ?? "latest",
|
|
629
|
+
channel,
|
|
630
|
+
mode,
|
|
631
|
+
});
|
|
632
|
+
const installed = await listInstalledNodes().catch(() => []);
|
|
633
|
+
if (!nodeInstalledMatches(id, installed)) {
|
|
634
|
+
throw new NodeManagementError(`"${id}" was queued but is not present afterward — it was not found in the ` +
|
|
635
|
+
`ComfyUI-Manager registry. Check the pack id, or pass a git URL to clone ` +
|
|
636
|
+
`it directly.`, status);
|
|
419
637
|
}
|
|
420
|
-
const status = await queueManagerTask("install", params);
|
|
421
638
|
return {
|
|
422
639
|
mechanism: "manager-http",
|
|
423
|
-
message: `
|
|
640
|
+
message: `Installed "${id}" via ComfyUI-Manager. Restart may be required to load new nodes.`,
|
|
424
641
|
details: status,
|
|
425
642
|
};
|
|
426
643
|
}
|
|
@@ -439,10 +656,18 @@ export async function updateCustomNode(opts) {
|
|
|
439
656
|
}
|
|
440
657
|
let status;
|
|
441
658
|
if (all) {
|
|
442
|
-
// update_all keeps its own dedicated route
|
|
443
|
-
|
|
659
|
+
// update_all keeps its own dedicated route. The backend reads
|
|
660
|
+
// UpdateAllQueryParams from the QUERY STRING (manager_server.py), NOT the
|
|
661
|
+
// JSON body — a body-only request leaves mode defaulting to 'remote' and
|
|
662
|
+
// drops client_id/ui_id. Send them as URL query params.
|
|
663
|
+
const uiId = randomUUID();
|
|
664
|
+
const query = new URLSearchParams({
|
|
665
|
+
mode,
|
|
666
|
+
client_id: MANAGER_CLIENT_ID,
|
|
667
|
+
ui_id: uiId,
|
|
668
|
+
}).toString();
|
|
669
|
+
await managerFetch(`/v2/manager/queue/update_all?${query}`, {
|
|
444
670
|
method: "POST",
|
|
445
|
-
body: { mode, client_id: MANAGER_CLIENT_ID },
|
|
446
671
|
});
|
|
447
672
|
status = await runManagerQueue();
|
|
448
673
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node-management.js","sourceRoot":"","sources":["../../src/services/node-management.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"node-management.js","sourceRoot":"","sources":["../../src/services/node-management.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "comfyui-mcp",
|
|
3
|
-
"version": "0.20.
|
|
3
|
+
"version": "0.20.8",
|
|
4
4
|
"mcpName": "io.github.artokun/comfyui-mcp",
|
|
5
5
|
"description": "MCP server + autonomous AI agent for ComfyUI — drive your live graph in natural language from a sidebar agent on Claude OR ChatGPT (your own subscription, no API key). Generate images, video & audio, author and run workflows, manage models and custom nodes. Also a Claude Code plugin with skills, slash commands, and installer packs.",
|
|
6
6
|
"homepage": "https://comfyui-mcp.artokun.io/docs",
|