comfyui-mcp 0.49.7 → 0.50.0

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.
Files changed (374) hide show
  1. package/README.md +62 -109
  2. package/dist/comfyui/client.js +52 -9
  3. package/dist/comfyui/client.js.map +1 -1
  4. package/dist/comfyui/cloud-client.js +1 -1
  5. package/dist/comfyui/cloud-client.js.map +1 -1
  6. package/dist/comfyui/json-guard.js +593 -0
  7. package/dist/comfyui/json-guard.js.map +1 -0
  8. package/dist/config.js +57 -4
  9. package/dist/config.js.map +1 -1
  10. package/dist/env-file.js +233 -0
  11. package/dist/env-file.js.map +1 -0
  12. package/dist/index.js +55 -6
  13. package/dist/index.js.map +1 -1
  14. package/dist/orchestrator/agent-backend.js +22 -0
  15. package/dist/orchestrator/agent-backend.js.map +1 -1
  16. package/dist/orchestrator/antigravity-backend.js +2 -2
  17. package/dist/orchestrator/antigravity-backend.js.map +1 -1
  18. package/dist/orchestrator/audio-attachment.js +403 -0
  19. package/dist/orchestrator/audio-attachment.js.map +1 -0
  20. package/dist/orchestrator/call-tool-admission.js +341 -53
  21. package/dist/orchestrator/call-tool-admission.js.map +1 -1
  22. package/dist/orchestrator/claude-backend.js +1 -1
  23. package/dist/orchestrator/grok-backend.js +2 -1
  24. package/dist/orchestrator/grok-backend.js.map +1 -1
  25. package/dist/orchestrator/http-backend-tools.js +14 -0
  26. package/dist/orchestrator/http-backend-tools.js.map +1 -1
  27. package/dist/orchestrator/index.js +890 -797
  28. package/dist/orchestrator/index.js.map +1 -1
  29. package/dist/orchestrator/ollama-backend.js +675 -47
  30. package/dist/orchestrator/ollama-backend.js.map +1 -1
  31. package/dist/orchestrator/panel-agent.js +96 -26
  32. package/dist/orchestrator/panel-agent.js.map +1 -1
  33. package/dist/orchestrator/panel-console-http.js +217 -6
  34. package/dist/orchestrator/panel-console-http.js.map +1 -1
  35. package/dist/orchestrator/panel-tools.js +1612 -128
  36. package/dist/orchestrator/panel-tools.js.map +1 -1
  37. package/dist/orchestrator/session-store.js +322 -314
  38. package/dist/orchestrator/session-store.js.map +1 -1
  39. package/dist/orchestrator/turn-origins.js +457 -0
  40. package/dist/orchestrator/turn-origins.js.map +1 -0
  41. package/dist/services/agent-setup.js +6 -2
  42. package/dist/services/agent-setup.js.map +1 -1
  43. package/dist/services/ai-toolkit.js +32 -12
  44. package/dist/services/ai-toolkit.js.map +1 -1
  45. package/dist/services/api-nodes.js +1 -1
  46. package/dist/services/api-nodes.js.map +1 -1
  47. package/dist/services/asset-reconcile.js +2 -1
  48. package/dist/services/asset-reconcile.js.map +1 -1
  49. package/dist/services/checkpoint-capability.js +217 -0
  50. package/dist/services/checkpoint-capability.js.map +1 -0
  51. package/dist/services/civitai-lookup.js +7 -2
  52. package/dist/services/civitai-lookup.js.map +1 -1
  53. package/dist/services/civitai-resolver.js +7 -2
  54. package/dist/services/civitai-resolver.js.map +1 -1
  55. package/dist/services/code-provider-auth.js +4 -1
  56. package/dist/services/code-provider-auth.js.map +1 -1
  57. package/dist/services/color-analysis.js +8 -2
  58. package/dist/services/color-analysis.js.map +1 -1
  59. package/dist/services/comfy-cli.js +47 -8
  60. package/dist/services/comfy-cli.js.map +1 -1
  61. package/dist/services/comfy-view-ref.js +362 -0
  62. package/dist/services/comfy-view-ref.js.map +1 -0
  63. package/dist/services/crash-log.js +2 -2
  64. package/dist/services/crash-log.js.map +1 -1
  65. package/dist/services/download-cache.js +3 -3
  66. package/dist/services/download-cache.js.map +1 -1
  67. package/dist/services/download-jobs.js +174 -16
  68. package/dist/services/download-jobs.js.map +1 -1
  69. package/dist/services/download-progress.js +30 -3
  70. package/dist/services/download-progress.js.map +1 -1
  71. package/dist/services/env-capabilities.js +172 -11
  72. package/dist/services/env-capabilities.js.map +1 -1
  73. package/dist/services/extra-paths.js +168 -55
  74. package/dist/services/extra-paths.js.map +1 -1
  75. package/dist/services/generate-3d.js +7 -6
  76. package/dist/services/generate-3d.js.map +1 -1
  77. package/dist/services/generate-conditioned.js +5 -5
  78. package/dist/services/generate-conditioned.js.map +1 -1
  79. package/dist/services/generate-image.js +1 -1
  80. package/dist/services/generate-image.js.map +1 -1
  81. package/dist/services/generation-tracker.js +73 -6
  82. package/dist/services/generation-tracker.js.map +1 -1
  83. package/dist/services/graph-query.js +3 -3
  84. package/dist/services/graph-query.js.map +1 -1
  85. package/dist/services/history-select.js +1 -1
  86. package/dist/services/image-convert.js +1 -1
  87. package/dist/services/image-convert.js.map +1 -1
  88. package/dist/services/image-management.js +63 -20
  89. package/dist/services/image-management.js.map +1 -1
  90. package/dist/services/install-comfyui.js +10 -4
  91. package/dist/services/install-comfyui.js.map +1 -1
  92. package/dist/services/job-history.js +3 -3
  93. package/dist/services/job-history.js.map +1 -1
  94. package/dist/services/job-watcher.js +4 -2
  95. package/dist/services/job-watcher.js.map +1 -1
  96. package/dist/services/lora-catalog.js +721 -38
  97. package/dist/services/lora-catalog.js.map +1 -1
  98. package/dist/services/manifest.js +4 -4
  99. package/dist/services/manifest.js.map +1 -1
  100. package/dist/services/missing-models.js +28 -8
  101. package/dist/services/missing-models.js.map +1 -1
  102. package/dist/services/model-resolver.js +160 -66
  103. package/dist/services/model-resolver.js.map +1 -1
  104. package/dist/services/node-authoring.js +9 -5
  105. package/dist/services/node-authoring.js.map +1 -1
  106. package/dist/services/node-dev.js +16 -15
  107. package/dist/services/node-dev.js.map +1 -1
  108. package/dist/services/node-management.js +1100 -102
  109. package/dist/services/node-management.js.map +1 -1
  110. package/dist/services/node-snapshots.js +53 -15
  111. package/dist/services/node-snapshots.js.map +1 -1
  112. package/dist/services/node-verify.js +1 -1
  113. package/dist/services/node-verify.js.map +1 -1
  114. package/dist/services/output-dir.js +368 -14
  115. package/dist/services/output-dir.js.map +1 -1
  116. package/dist/services/panel-installer.js +554 -153
  117. package/dist/services/panel-installer.js.map +1 -1
  118. package/dist/services/panel-pending-cancel.js +32 -32
  119. package/dist/services/panel-pending-cancel.js.map +1 -1
  120. package/dist/services/panel-pin-guard.js +751 -52
  121. package/dist/services/panel-pin-guard.js.map +1 -1
  122. package/dist/services/panel-recovery.js +27 -26
  123. package/dist/services/panel-recovery.js.map +1 -1
  124. package/dist/services/panel-secrets.js +1785 -119
  125. package/dist/services/panel-secrets.js.map +1 -1
  126. package/dist/services/panel-settings.js +32 -3
  127. package/dist/services/panel-settings.js.map +1 -1
  128. package/dist/services/panel-sync.js +5 -5
  129. package/dist/services/panel-sync.js.map +1 -1
  130. package/dist/services/panel-workspace.js +35 -6
  131. package/dist/services/panel-workspace.js.map +1 -1
  132. package/dist/services/process-control.js +679 -63
  133. package/dist/services/process-control.js.map +1 -1
  134. package/dist/services/prompt-overrides.js +4 -0
  135. package/dist/services/prompt-overrides.js.map +1 -1
  136. package/dist/services/queue-manager.js +257 -23
  137. package/dist/services/queue-manager.js.map +1 -1
  138. package/dist/services/registry-client.js +53 -0
  139. package/dist/services/registry-client.js.map +1 -1
  140. package/dist/services/remove-background.js +1 -1
  141. package/dist/services/remove-background.js.map +1 -1
  142. package/dist/services/runpod-client.js +11 -6
  143. package/dist/services/runpod-client.js.map +1 -1
  144. package/dist/services/runpod-ssh.js +4 -4
  145. package/dist/services/runpod-ssh.js.map +1 -1
  146. package/dist/services/runpod-watch.js +2 -2
  147. package/dist/services/self-update.js +1 -1
  148. package/dist/services/self-update.js.map +1 -1
  149. package/dist/services/session-scope.js +105 -0
  150. package/dist/services/session-scope.js.map +1 -0
  151. package/dist/services/slot-compat.js +1 -1
  152. package/dist/services/slot-compat.js.map +1 -1
  153. package/dist/services/storage/azure-blob.js +1 -1
  154. package/dist/services/storage/azure-blob.js.map +1 -1
  155. package/dist/services/storage/s3.js +1 -1
  156. package/dist/services/storage/s3.js.map +1 -1
  157. package/dist/services/test-isolation-guard.js +122 -0
  158. package/dist/services/test-isolation-guard.js.map +1 -0
  159. package/dist/services/tool-mode-policy.js +161 -0
  160. package/dist/services/tool-mode-policy.js.map +1 -0
  161. package/dist/services/train-caption.js +1 -1
  162. package/dist/services/trainer-bootstrap.js +12 -12
  163. package/dist/services/trainer-bootstrap.js.map +1 -1
  164. package/dist/services/training-datasets.js +3 -3
  165. package/dist/services/training-datasets.js.map +1 -1
  166. package/dist/services/training-jobs.js +66 -41
  167. package/dist/services/training-jobs.js.map +1 -1
  168. package/dist/services/ui-bridge.js +393 -26
  169. package/dist/services/ui-bridge.js.map +1 -1
  170. package/dist/services/update-comfyui.js +16 -11
  171. package/dist/services/update-comfyui.js.map +1 -1
  172. package/dist/services/upscale-image.js +1 -1
  173. package/dist/services/upscale-image.js.map +1 -1
  174. package/dist/services/userdata-library.js +150 -0
  175. package/dist/services/userdata-library.js.map +1 -0
  176. package/dist/services/view-image.js +1 -1
  177. package/dist/services/view-image.js.map +1 -1
  178. package/dist/services/workflow-converter.js +1 -1
  179. package/dist/services/workflow-converter.js.map +1 -1
  180. package/dist/services/workflow-deps.js +2 -2
  181. package/dist/services/workflow-deps.js.map +1 -1
  182. package/dist/services/workflow-executor.js +74 -6
  183. package/dist/services/workflow-executor.js.map +1 -1
  184. package/dist/services/workflow-health.js +1 -1
  185. package/dist/services/workflow-health.js.map +1 -1
  186. package/dist/services/workspace-env.js +182 -31
  187. package/dist/services/workspace-env.js.map +1 -1
  188. package/dist/tools/api-nodes.js +94 -56
  189. package/dist/tools/api-nodes.js.map +1 -1
  190. package/dist/tools/assets.js +46 -154
  191. package/dist/tools/assets.js.map +1 -1
  192. package/dist/tools/batches.js +2 -2
  193. package/dist/tools/batches.js.map +1 -1
  194. package/dist/tools/compact.js +106 -0
  195. package/dist/tools/compact.js.map +1 -1
  196. package/dist/tools/defaults.js +137 -40
  197. package/dist/tools/defaults.js.map +1 -1
  198. package/dist/tools/diagnostics.js +151 -121
  199. package/dist/tools/diagnostics.js.map +1 -1
  200. package/dist/tools/extra-paths.js +43 -96
  201. package/dist/tools/extra-paths.js.map +1 -1
  202. package/dist/tools/generate-3d.js +31 -72
  203. package/dist/tools/generate-3d.js.map +1 -1
  204. package/dist/tools/generate-audio.js +30 -140
  205. package/dist/tools/generate-audio.js.map +1 -1
  206. package/dist/tools/generate-conditioned.js +20 -47
  207. package/dist/tools/generate-conditioned.js.map +1 -1
  208. package/dist/tools/generate-image.js +510 -37
  209. package/dist/tools/generate-image.js.map +1 -1
  210. package/dist/tools/generate-video.js +35 -68
  211. package/dist/tools/generate-video.js.map +1 -1
  212. package/dist/tools/generation-tracker.js +92 -112
  213. package/dist/tools/generation-tracker.js.map +1 -1
  214. package/dist/tools/health-check.js +9 -26
  215. package/dist/tools/health-check.js.map +1 -1
  216. package/dist/tools/image-management.js +720 -262
  217. package/dist/tools/image-management.js.map +1 -1
  218. package/dist/tools/index.js +31 -67
  219. package/dist/tools/index.js.map +1 -1
  220. package/dist/tools/install-comfyui.js +179 -29
  221. package/dist/tools/install-comfyui.js.map +1 -1
  222. package/dist/tools/install-panel.js +202 -225
  223. package/dist/tools/install-panel.js.map +1 -1
  224. package/dist/tools/introspect.js +8 -5
  225. package/dist/tools/introspect.js.map +1 -1
  226. package/dist/tools/manager-config.js +19 -43
  227. package/dist/tools/manager-config.js.map +1 -1
  228. package/dist/tools/memory-management.js +29 -21
  229. package/dist/tools/memory-management.js.map +1 -1
  230. package/dist/tools/missing-models.js +64 -51
  231. package/dist/tools/missing-models.js.map +1 -1
  232. package/dist/tools/model-explorer.js +2 -2
  233. package/dist/tools/model-explorer.js.map +1 -1
  234. package/dist/tools/model-extras.js +274 -374
  235. package/dist/tools/model-extras.js.map +1 -1
  236. package/dist/tools/model-management.js +745 -348
  237. package/dist/tools/model-management.js.map +1 -1
  238. package/dist/tools/node-management.js +275 -127
  239. package/dist/tools/node-management.js.map +1 -1
  240. package/dist/tools/node-pack.js +290 -0
  241. package/dist/tools/node-pack.js.map +1 -0
  242. package/dist/tools/node-snapshots.js +1 -1
  243. package/dist/tools/node-snapshots.js.map +1 -1
  244. package/dist/tools/process-control.js +42 -27
  245. package/dist/tools/process-control.js.map +1 -1
  246. package/dist/tools/prompt-director.js +21 -26
  247. package/dist/tools/prompt-director.js.map +1 -1
  248. package/dist/tools/queue-management.js +27 -2
  249. package/dist/tools/queue-management.js.map +1 -1
  250. package/dist/tools/registry-search.js +113 -52
  251. package/dist/tools/registry-search.js.map +1 -1
  252. package/dist/tools/remove-background.js +29 -45
  253. package/dist/tools/remove-background.js.map +1 -1
  254. package/dist/tools/report-issue.js +157 -5
  255. package/dist/tools/report-issue.js.map +1 -1
  256. package/dist/tools/retired-redirect.js +211 -0
  257. package/dist/tools/retired-redirect.js.map +1 -0
  258. package/dist/tools/run-template.js +108 -124
  259. package/dist/tools/run-template.js.map +1 -1
  260. package/dist/tools/runpod.js +441 -348
  261. package/dist/tools/runpod.js.map +1 -1
  262. package/dist/tools/self-update.js +15 -29
  263. package/dist/tools/self-update.js.map +1 -1
  264. package/dist/tools/skills-access.js +565 -273
  265. package/dist/tools/skills-access.js.map +1 -1
  266. package/dist/tools/system-stats.js +99 -0
  267. package/dist/tools/system-stats.js.map +1 -0
  268. package/dist/tools/template-schema.js +128 -91
  269. package/dist/tools/template-schema.js.map +1 -1
  270. package/dist/tools/train.js +482 -346
  271. package/dist/tools/train.js.map +1 -1
  272. package/dist/tools/update-comfyui.js +20 -24
  273. package/dist/tools/update-comfyui.js.map +1 -1
  274. package/dist/tools/upscale-image.js +27 -45
  275. package/dist/tools/upscale-image.js.map +1 -1
  276. package/dist/tools/vocabulary.js +1446 -121
  277. package/dist/tools/vocabulary.js.map +1 -1
  278. package/dist/tools/workflow-compose.js +213 -137
  279. package/dist/tools/workflow-compose.js.map +1 -1
  280. package/dist/tools/workflow-dsl.js +27 -33
  281. package/dist/tools/workflow-dsl.js.map +1 -1
  282. package/dist/tools/workflow-execute.js +191 -96
  283. package/dist/tools/workflow-execute.js.map +1 -1
  284. package/dist/tools/workflow-library.js +639 -453
  285. package/dist/tools/workflow-library.js.map +1 -1
  286. package/dist/tools/workflow-lock.js +100 -105
  287. package/dist/tools/workflow-lock.js.map +1 -1
  288. package/dist/tools/workflow-url.js +84 -102
  289. package/dist/tools/workflow-url.js.map +1 -1
  290. package/dist/tools/workflow-validate.js +70 -73
  291. package/dist/tools/workflow-validate.js.map +1 -1
  292. package/dist/tools/workflow-visualize.js +238 -152
  293. package/dist/tools/workflow-visualize.js.map +1 -1
  294. package/dist/tools/workspace-env.js +11 -11
  295. package/dist/tools/workspace-env.js.map +1 -1
  296. package/dist/transport/cli.js +81 -4
  297. package/dist/transport/cli.js.map +1 -1
  298. package/dist/utils/durable-write.js +73 -0
  299. package/dist/utils/durable-write.js.map +1 -0
  300. package/dist/utils/input-paths.js +1 -1
  301. package/dist/utils/input-paths.js.map +1 -1
  302. package/docker/runpod/Dockerfile +1 -1
  303. package/docker/runpod/README.md +3 -3
  304. package/docker/runpod/deadman_server.py +1 -1
  305. package/docker/runpod/deadman_watch.sh +1 -1
  306. package/docker/runpod/post_start.sh +2 -2
  307. package/docker/trainer/Dockerfile +1 -1
  308. package/docs/design/tool-surface.txt +5 -0
  309. package/package.json +2 -2
  310. package/packs/README.md +1 -1
  311. package/plugin/agents/debugger.md +16 -16
  312. package/plugin/agents/explorer.md +3 -3
  313. package/plugin/agents/optimizer.md +3 -3
  314. package/plugin/agents/researcher.md +5 -5
  315. package/plugin/commands/batch.md +1 -1
  316. package/plugin/commands/compare.md +2 -2
  317. package/plugin/commands/convert.md +8 -8
  318. package/plugin/commands/debug.md +9 -9
  319. package/plugin/commands/director.md +3 -3
  320. package/plugin/commands/gallery.md +2 -2
  321. package/plugin/commands/gen.md +4 -4
  322. package/plugin/commands/install.md +4 -4
  323. package/plugin/commands/node-skill.md +3 -2
  324. package/plugin/commands/recipe.md +4 -4
  325. package/plugin/hooks/hooks.json +1 -1
  326. package/plugin/hooks/save-warning.mjs +39 -12
  327. package/plugin/hooks/vram-check.mjs +2 -2
  328. package/plugin/skills/civitai/SKILL.md +11 -11
  329. package/plugin/skills/color-correction/SKILL.md +12 -12
  330. package/plugin/skills/comfyui-core/SKILL.md +21 -22
  331. package/plugin/skills/comfyui-launch-flags/SKILL.md +6 -6
  332. package/plugin/skills/director/SKILL.md +4 -4
  333. package/plugin/skills/ernie-image/SKILL.md +1 -1
  334. package/plugin/skills/ltx-director/SKILL.md +7 -5
  335. package/plugin/skills/ltxv2-video/SKILL.md +5 -5
  336. package/plugin/skills/model-registry/SKILL.md +6 -6
  337. package/plugin/skills/panel-node-pack-sync/SKILL.md +15 -15
  338. package/plugin/skills/qwen-image-edit/SKILL.md +2 -2
  339. package/plugin/skills/report-bug/SKILL.md +9 -5
  340. package/plugin/skills/train-character-lora/SKILL.md +20 -15
  341. package/plugin/skills/triton-sageattention/SKILL.md +3 -3
  342. package/plugin/skills/troubleshooting/SKILL.md +22 -20
  343. package/plugin/skills/video-extend/SKILL.md +8 -8
  344. package/plugin/skills/video-upscale/SKILL.md +1 -1
  345. package/plugin/skills/wan-flf-video/SKILL.md +5 -5
  346. package/scripts/arena-bestof.mjs +58 -31
  347. package/scripts/arena-probe.mjs +48 -0
  348. package/scripts/arena-report.mjs +258 -0
  349. package/scripts/arena-scenarios.mjs +40 -16
  350. package/scripts/check-tool-vocabulary.mts +108 -0
  351. package/scripts/codex-comfyui-mcp-check.mjs +1 -1
  352. package/scripts/codex-knowledge-parity-smoke.mjs +18 -15
  353. package/scripts/gen-tool-docs.ts +71 -67
  354. package/scripts/llm-arena.mjs +66 -32
  355. package/scripts/slice-pipeline.mjs +2 -2
  356. package/scripts/tool-doc-examples.ts +656 -248
  357. package/dist/tools/color-analysis.js +0 -49
  358. package/dist/tools/color-analysis.js.map +0 -1
  359. package/dist/tools/comfyui-settings.js +0 -68
  360. package/dist/tools/comfyui-settings.js.map +0 -1
  361. package/dist/tools/image-convert.js +0 -58
  362. package/dist/tools/image-convert.js.map +0 -1
  363. package/dist/tools/node-authoring.js +0 -102
  364. package/dist/tools/node-authoring.js.map +0 -1
  365. package/dist/tools/node-dev.js +0 -217
  366. package/dist/tools/node-dev.js.map +0 -1
  367. package/dist/tools/node-verify.js +0 -42
  368. package/dist/tools/node-verify.js.map +0 -1
  369. package/dist/tools/skill-generator.js +0 -55
  370. package/dist/tools/skill-generator.js.map +0 -1
  371. package/dist/tools/storage-upload.js +0 -57
  372. package/dist/tools/storage-upload.js.map +0 -1
  373. package/dist/tools/workflow-deps.js +0 -111
  374. package/dist/tools/workflow-deps.js.map +0 -1
package/README.md CHANGED
@@ -16,7 +16,7 @@ Works on **macOS**, **Linux**, and **Windows**. Auto-detects your ComfyUI instal
16
16
 
17
17
  **Stuck or have a question? [Join the Discord](https://discord.gg/cW9arBhzCu)** — help, model tips, and release announcements.
18
18
 
19
- **151 MCP tools** | **37 AI skills** (Flux · WAN · LTX 2.3 video · Qwen · Z-Image · Ideogram 4 · ERNIE · ANIMA · model registry · Civitai · node authoring · launch/perf flags) | **55 installer packs** | **11 slash commands** | **4 autonomous agents** | **3 hooks**
19
+ **37 MCP tools** | **37 AI skills** (Flux · WAN · LTX 2.3 video · Qwen · Z-Image · Ideogram 4 · ERNIE · ANIMA · model registry · Civitai · node authoring · launch/perf flags) | **55 installer packs** | **11 slash commands** | **4 autonomous agents** | **3 hooks**
20
20
 
21
21
  The plugin ships **expert skills that grow with every release** — model-specific generation guides with curated download URLs, workflow recipes, troubleshooting, and custom-node authoring — so Claude knows the right sampler, CFG, resolution, and model files for each architecture without trial and error.
22
22
 
@@ -147,7 +147,7 @@ This package also ships as a **Claude Code plugin**, providing slash commands, s
147
147
  | Event | Trigger | Action |
148
148
  |-------|---------|--------|
149
149
  | PreToolUse | `enqueue_workflow` | **VRAM watchdog** — checks GPU memory via `/system_stats` and warns if < 1GB free before execution |
150
- | PreToolUse | `stop_comfyui`, `restart_comfyui` | **Save warning** — prompts user to save unsaved workflow changes before stopping ComfyUI |
150
+ | PreToolUse | `restart_comfyui` (actions `stop`/`restart`) | **Save warning** — prompts user to save unsaved workflow changes before stopping ComfyUI |
151
151
  | PostToolUse | Any comfyui tool | **Job completion notify** — checks for completed jobs and injects completion summaries into the conversation |
152
152
 
153
153
  ### Background Scripts
@@ -233,10 +233,11 @@ New tools that give every backend the same expertise and a cost guardrail:
233
233
 
234
234
  | Tool | Description |
235
235
  |------|-------------|
236
- | `list_skills` / `read_skill` | Discover and read bundled model-family + workflow skills — the knowledge Claude loads natively, exposed to any MCP client (e.g. the Codex backend) |
237
- | `list_packs` / `read_pack_workflow` | List one-command installer packs (custom nodes + weights + ready workflow; all local-GPU / free) and read a pack's graph |
238
- | `list_workflow_templates` | List the connected ComfyUI's official workflow templates (the templates package + custom-node-provided templates) |
239
- | `check_workflow_runtime` | Classify a workflow as **local** (your GPU, free) or **api** / **mixed** / **unknown** (hosted API nodes = paid credits) so the agent asks before spending paid API credits |
236
+ | `list_packs` (`action: "skill_list"` / `"skill_read"`) | Discover and read bundled model-family + workflow skills — the knowledge Claude loads natively, exposed to any MCP client (e.g. the Codex backend) |
237
+ | `list_packs` (`action: "list"` / `"read_workflow"`) | List one-command installer packs (custom nodes + weights + ready workflow; all local-GPU / free) and read a pack's graph |
238
+ | `list_packs` (`action: "list_templates"`) | List the connected ComfyUI's custom-node-contributed workflow templates |
239
+ | `list_packs` (`action: "check_runtime"`) | Classify a workflow as **local** (your GPU, free) or **api** / **mixed** / **unknown** (hosted API nodes = paid credits) so the agent asks before spending paid API credits |
240
+ | `list_packs` (`action: "extract_deps"` / `"install_deps"`) | Work out which custom node packs a workflow needs, and install the missing ones through ComfyUI-Manager |
240
241
  | `panel_load_workflow` | (panel tool) Load a full workflow onto the live canvas in one shot — by bundled `pack` name (read server-side, never shuttled through chat) or by graph JSON |
241
242
  | `panel_strip_workflow` / `panel_slice_workflow` | (panel tools) De-virtualize a tangled graph (Get/Set buses, Reroutes, subgraphs, bypass → real connections) or carve one rgthree-toggled pipeline out of a monolith — by `pack`, server-side `path`, or inline graph; for understanding/rebuilding expert workflows without hand-tracing |
242
243
 
@@ -248,44 +249,50 @@ for the port, the capability matrix, and the per-provider "clink" points, and th
248
249
 
249
250
  ## MCP Tools
250
251
 
251
- 151 tools across workflow execution, generation, iteration, composition, models, and more:
252
+ 37 tools across workflow execution, generation, iteration, composition, models, and more:
252
253
 
253
254
  ### Image Generation (high-level)
254
255
 
255
256
  | Tool | Description |
256
257
  |------|-------------|
257
- | `generate_image` | Generate from a text prompt — builds a txt2img workflow, fills unspecified params from your defaults, auto-selects a checkpoint |
258
- | `generate_with_controlnet` | Generate conditioned by a ControlNet image (pose/depth/canny/normal) + prompt |
259
- | `generate_with_ip_adapter` | Generate guided by a reference image's style/subject via IP-Adapter (needs ComfyUI_IPAdapter_plus) |
258
+ | `generate_image` `action: "image"` | Generate from a text prompt — builds a txt2img workflow, fills unspecified params from your defaults, auto-selects a checkpoint |
259
+ | `generate_image` `action: "controlnet"` | Generate conditioned by a ControlNet image (pose/depth/canny/normal) + prompt |
260
+ | `generate_image` `action: "ip_adapter"` | Generate guided by a reference image's style/subject via IP-Adapter (needs ComfyUI_IPAdapter_plus) |
261
+ | `generate_image` `action: "video"` / `"3d"` | Generate a short video clip (LTX-2.3, local GPU) or a 3D model (hosted partner API nodes) from the same one-line entry point |
262
+ | `generate_image` `action: "upscale"` | Post-process an uploaded or staged image with ESRGAN super-resolution |
263
+ | generate_image (action:"remove_background") | Post-process an uploaded or staged image into a transparent BiRefNet cutout |
260
264
 
261
265
  ### Audio Generation (high-level)
262
266
 
263
267
  | Tool | Description |
264
268
  |------|-------------|
265
- | `generate_audio` | Generate audio from a text prompt — supports ACE Step 1.5 (music with lyrics/structure) and Stable Audio 3 (music, instruments, SFX); auto-selects local models |
269
+ | `generate_image` `action: "audio"` | Generate audio from a text prompt — supports ACE Step 1.5 (music with lyrics/structure) and Stable Audio 3 (music, instruments, SFX); auto-selects local models |
266
270
 
267
271
  ### Assets & Iteration
268
272
 
269
273
  | Tool | Description |
270
274
  |------|-------------|
271
- | `view_image` | Return a generated asset's bytes as an inline image so the agent can see the result |
272
- | `analyze_color` | Palette / contrast / color statistics for a generated image (dominant colors, average + luminance stats, contrast checks) so the agent can reason about color without a vision round-trip |
273
- | `regenerate` | Re-run the workflow that produced an `asset_id`, with optional parameter overrides |
274
- | `list_assets` | Browse recently generated assets (newest-first) by `asset_id` |
275
- | `get_asset_metadata` | Full provenance for an asset, including the originating workflow |
275
+ | `get_image (action:"view")` | Return a generated asset's bytes as an inline image so the agent can see the result |
276
+ | `get_image (action:"analyze_color")` | Palette / contrast / color statistics for a generated image (dominant colors, average + luminance stats, contrast checks) so the agent can reason about color without a vision round-trip |
277
+ | generate_image (action:"regenerate") | Re-run the workflow that produced an `asset_id`, with optional parameter overrides |
278
+ | `get_image (action:"list_assets")` | Browse recently generated assets (newest-first) by `asset_id` |
279
+ | `get_image (action:"asset_metadata")` | Full provenance for an asset, including the originating workflow |
276
280
 
277
281
  ### Defaults
278
282
 
279
283
  | Tool | Description |
280
284
  |------|-------------|
281
- | `get_defaults` | Show merged generation defaults with per-source attribution |
282
- | `set_defaults` | Update runtime defaults; `persist: true` writes the config file |
285
+ | `get_defaults` `action:"get"` | Show merged generation defaults with per-source attribution |
286
+ | `get_defaults` `action:"set"` | Update runtime defaults; `persist: true` writes the config file |
287
+ | `get_defaults` `action:"get_ui"` / `action:"set_ui"` | Read/write ComfyUI's OWN frontend UI settings (the `Comfy.*` ids) — a separate store from the generation defaults above |
283
288
 
284
289
  ### Workflow Execution
285
290
 
286
291
  | Tool | Description |
287
292
  |------|-------------|
288
- | `enqueue_workflow` | Submit a workflow (API format JSON) — returns `prompt_id` immediately, non-blocking |
293
+ | `enqueue_workflow` `action: "enqueue"` | Submit a workflow (API format JSON) — returns `prompt_id` immediately, non-blocking |
294
+ | `enqueue_workflow` `action: "rerun"` / `"run_url"` / `"template_schema"` | Re-run a past generation, or read/run a shared workflow from a URL, or inspect a bundled template's overridable slots |
295
+ | enqueue_workflow (action:"run_template") | One-shot: resolve a bundled pack's expert graph, apply `<nodeId>.<widget>` overrides, and enqueue it |
289
296
  | `queue` | One action-parameterized tool for the execution queue: `list` (running + pending), `status` (one job by prompt ID), `get_workflow` (a pending job's full payload), `move`/`edit` (requeue a pending job front/back, patched or replaced, with a new prompt ID), `cancel` (interrupt the running job — escalates interrupt → verify → `/free`, reports WEDGED if it won't die; `clear_pending: true` also drops all pending), `cancel_queued`, `clear` |
290
297
  | `get_system_stats` | Get system info — GPU, VRAM, Python version, OS |
291
298
 
@@ -293,66 +300,47 @@ for the port, the capability matrix, and the per-provider "clink" points, and th
293
300
 
294
301
  | Tool | Description |
295
302
  |------|-------------|
296
- | `visualize_workflow` | Convert a workflow to a Mermaid flowchart with nodes grouped by category |
297
- | `mermaid_to_workflow` | Convert a Mermaid diagram back to executable workflow JSON |
303
+ | `visualize_workflow` | One action-parameterized tool for rendering and converting a workflow you pass in: `render` (Mermaid flowchart, nodes grouped by category), `render_hierarchical` (the same graph sectioned — overview, one section in detail, a listing, or an AI-oriented summary), `mermaid` (a Mermaid diagram back to executable workflow JSON), `to_dsl`/`from_dsl` (the compact, losslessly round-tripping authoring DSL) |
298
304
 
299
305
  ### Workflow Composition
300
306
 
301
307
  | Tool | Description |
302
308
  |------|-------------|
303
- | `create_workflow` | Generate a workflow from templates: `txt2img`, `img2img`, `upscale`, `inpaint`, `controlnet`, `ip_adapter`, `ace_step_15`, `stable_audio_3` |
304
- | `modify_workflow` | Apply operations: `set_input`, `add_node`, `remove_node`, `connect`, `insert_between` |
305
- | `get_node_info` | Query available node types from ComfyUI's `/object_info` endpoint |
306
-
307
- ### Workflow Validation
308
-
309
- | Tool | Description |
310
- |------|-------------|
311
- | `validate_workflow` | Dry-run validation — checks missing nodes, broken connections, invalid output indices, missing model files |
309
+ | `create_workflow` | One action-parameterized tool for authoring: `create` (from templates: `txt2img`, `img2img`, `upscale`, `inpaint`, `controlnet`, `ip_adapter`, `ace_step_15`, `stable_audio_3`), `modify` (operations: `set_input`, `add_node`, `remove_node`, `connect`, `insert_between`), `validate` (dry-run — missing nodes, broken connections, invalid output indices, missing model files), `node_info` (query available node types from ComfyUI's `/object_info` endpoint) |
312
310
 
313
311
  ### Workflow Library
314
312
 
315
313
  | Tool | Description |
316
314
  |------|-------------|
317
- | `list_workflows` | List saved workflows from ComfyUI's user library |
318
- | `get_workflow` | Load a specific saved workflow by filename |
319
- | `strip_workflow` | **De-virtualize** any workflow (absolute path, library filename, or inline graph) — resolve GetNode/SetNode buses, Reroutes, subgraph defs, and bypassed nodes into real connections and return the flat graph. Reads ANY path server-side, so it loads ad-hoc/expert workflows the cached library can't. |
320
- | `slice_workflow` | **Un-chunk** a toggle-template monolith — slice ONE rgthree Fast-Groups-Bypass-toggled pipeline out into a standalone activated graph (seed from the named groups' output nodes, backward-closure, un-bypass). Pair with `strip_workflow` to then flatten the buses. |
321
- | `save_workflow` | Save a workflow to the ComfyUI user library |
315
+ | `get_workflow` | One action-parameterized tool for READING a saved workflow file: `list` (the user library, subfolders included), `get` (one workflow's JSON by filename), `analyze` (a structured summary instead of raw JSON), `query` (filter/traverse/aggregate a big graph without dumping it), `strip` (**de-virtualize** any workflow from an absolute path, library filename, or inline graph — resolve GetNode/SetNode buses, Reroutes, subgraph defs, and bypassed nodes into real connections and return the flat graph; reads ANY path server-side, so it loads ad-hoc/expert workflows the cached library can't), `slice` (**un-chunk** a toggle-template monolith — one rgthree Fast-Groups-Bypass-toggled pipeline out into a standalone activated graph; pair with `strip` to then flatten the buses), `from_image` (the workflow ComfyUI embedded in a PNG), `prompt_director` (Prompt Director's sanitized runtime state) |
316
+ | `save_workflow` | One action-parameterized tool for WRITING to the library: `save` (store a workflow overwrites a same-filename file), `lock` (record a provenance lock: SHA-256 per model, git commit per node pack), `verify_lock` (report drift against that lock) |
322
317
 
323
318
  ### Image Management
324
319
 
325
320
  | Tool | Description |
326
321
  |------|-------------|
327
322
  | `upload_image` | Copy a local image into ComfyUI's `input/` directory for img2img, inpaint, or ControlNet |
328
- | `workflow_from_image` | Extract embedded workflow metadata from a ComfyUI-generated PNG (reads `prompt` and `workflow` tEXt chunks) |
329
- | `list_output_images` | Browse recently generated images **and videos** from the output directory, sorted newest-first — recurses into subfolders (e.g. SaveVideo's `output/video/…`) and returns each result's `subfolder` |
323
+ | `get_image (action:"list_outputs")` | Browse recently generated images **and videos** from the output directory, sorted newest-first recurses into subfolders (e.g. SaveVideo's `output/video/…`) and returns each result's `subfolder` |
330
324
 
331
325
  ### Model Management
332
326
 
333
327
  | Tool | Description |
334
328
  |------|-------------|
335
- | `search_models` | Search HuggingFace for compatible models (checkpoints, LoRAs, VAEs, etc.) |
336
- | `download_model` | Download a model from a URL to the correct ComfyUI subdirectory |
337
- | `list_local_models` | List installed models by type: checkpoints, loras, vae, upscale_models, controlnet, embeddings, clip, unet, diffusion_models, text_encoders |
338
- | `list_extra_paths` | View standalone or Desktop ComfyUI extra search-path config |
339
- | `add_extra_path` | Add a model/custom_nodes search path to the extra paths YAML |
340
- | `remove_extra_path` | Remove a stored extra search path from the extra paths YAML |
329
+ | `download_model` | Find and fetch model weights, and track the transfers. `action`: `download` (from a URL, into the correct ComfyUI subdirectory), `status`, `cancel`, `search` (HuggingFace), `search_civitai`, `search_creators`, `download_civitai`, `resolve_missing` |
330
+ | `list_local_models` | What is installed, and where ComfyUI looks. `action`: `list` (installed models by type: checkpoints, loras, vae, upscale_models, controlnet, embeddings, clip, unet, diffusion_models, text_encoders), `remove` (**deletes a model file**), `embeddings`, `list_paths`, `add_path`, `remove_path` (the last three view/edit the extra search-path YAML) |
341
331
 
342
332
  ### Memory Management
343
333
 
344
334
  | Tool | Description |
345
335
  |------|-------------|
346
336
  | `clear_vram` | Free GPU VRAM by unloading cached models — calls ComfyUI's `/free` endpoint, reports before/after stats |
347
- | `get_embeddings` | List installed textual inversion embeddings |
348
337
 
349
338
  ### Registry & Discovery
350
339
 
351
340
  | Tool | Description |
352
341
  |------|-------------|
353
- | `search_custom_nodes` | Search the ComfyUI Registry for custom node packs by keyword |
354
- | `get_node_pack_details` | Get full details of a custom node pack (description, author, nodes, install info) |
355
- | `generate_node_skill` | Generate a Claude skill `.md` file from a Registry ID or GitHub URL |
342
+ | `search_custom_nodes` | Search the ComfyUI Registry for node packs by keyword (`action: "search"`), or get one pack's full details (`action: "details"`) |
343
+ | `list_packs` (`action: "generate_skill"`) | Generate a Claude skill `.md` file from a Registry ID or GitHub URL |
356
344
  | `comfy_cli` | Search actual loaded node classes through official `comfy nodes search` (action:"search_nodes") |
357
345
 
358
346
  ### Official comfy-cli
@@ -367,23 +355,24 @@ Install [comfy-cli](https://docs.comfy.org/comfy-cli/getting-started#install-cli
367
355
 
368
356
  | Tool | Description |
369
357
  |------|-------------|
370
- | `get_logs` | Get ComfyUI server logs with optional keyword filter (e.g., `error`, `warning`, a node name) |
371
- | `get_history` | Get execution history with full error details, Python tracebacks, timing, and cached node info |
358
+ | `get_system_stats (action:"logs")` | Get ComfyUI server logs with optional keyword filter (e.g., `error`, `warning`, a node name) |
359
+ | `get_history` `action: "list"` | Get execution history with full error details, Python tracebacks, timing, and cached node info |
360
+ | `get_history` `action: "diagnose"` | Explain a FAILED run in one call — the failed node and traceback PLUS the missing models (file + widget) and missing node types |
372
361
 
373
362
  ### Process Control
374
363
 
375
364
  | Tool | Description |
376
365
  |------|-------------|
377
- | `stop_comfyui` | Stop the running ComfyUI process (saves PID and launch args for restart) |
378
- | `start_comfyui` | Start ComfyUI using info saved from a previous stop |
379
- | `restart_comfyui` | Stop and restart ComfyUI, preserving all launch arguments |
366
+ | `restart_comfyui` `action:"restart"` | Stop and restart ComfyUI, preserving all launch arguments |
367
+ | `restart_comfyui` `action:"stop"` | Stop the running ComfyUI process (saves PID and launch args for restart) |
368
+ | `restart_comfyui` `action:"start"` | Start ComfyUI using info saved from a previous stop |
380
369
 
381
370
  ### Generation Tracker
382
371
 
383
372
  | Tool | Description |
384
373
  |------|-------------|
385
- | `suggest_settings` | Suggest proven sampler/scheduler/steps/CFG settings from local generation history — query by model family, LoRA hash, or text search |
386
- | `generation_stats` | Show local generation tracking statistics — total runs, unique combos, breakdown by model family |
374
+ | `get_history` `action: "suggest"` | Suggest proven sampler/scheduler/steps/CFG settings from local generation history — query by model family, LoRA hash, or text search |
375
+ | `get_history` `action: "stats"` | Show local generation tracking statistics — total runs, unique combos, breakdown by model family |
387
376
 
388
377
  Every `enqueue_workflow` call automatically logs settings to a local SQLite database (`generations.db`). Same settings combos get a `reuse_count` bump instead of duplicates, creating a natural popularity signal. Models and LoRAs are identified by content hash (AutoV2 / SHA256), not filenames — so renamed files still group together.
389
378
 
@@ -601,7 +590,7 @@ npx -y comfyui-mcp@latest --comfyui-url http://localhost:8188 --force-remote
601
590
  | `COMFYUI_PYTHON` | `python` | Python interpreter used by legacy git-clone dependency fallbacks. Point it at your ComfyUI venv's Python when needed. |
602
591
  | `COMFYUI_MCP_BRIDGE_HOST` | `127.0.0.1` | Panel-bridge bind host. Set `0.0.0.0` (or a LAN IP) to run the orchestrator on a 24/7 server and connect panels from other machines — **requires a token** (below); the orchestrator prints a ready-to-paste `ws://…/?token=…` Bridge URL. |
603
592
  | `COMFYUI_MCP_BRIDGE_TOKEN` | *(generated when needed)* | Shared secret gating every bridge connection (checked constant-time on the WS upgrade). Mandatory for a non-loopback `COMFYUI_MCP_BRIDGE_HOST`; pin it so the Bridge URL survives restarts. Never logged beyond the startup banner. |
604
- | `COMFYUI_MCP_DATA_DIR` | `~/.comfyui-mcp` | Base dir for per-instance data (the `generations.db` used by `suggest_settings`) when there's no local `COMFYUI_PATH` (remote/cloud/undetected). Scoped per target under `instances/<host_port>/`. |
593
+ | `COMFYUI_MCP_DATA_DIR` | `~/.comfyui-mcp` | Base dir for per-instance data (the `generations.db` behind `get_history` `action: "suggest"`) when there's no local `COMFYUI_PATH` (remote/cloud/undetected). Scoped per target under `instances/<host_port>/`. |
605
594
  | `COMFYUI_API_KEY` | | Comfy Cloud API key. When set, **cloud mode** is active and the server talks to `cloud.comfy.org`. Never logged. |
606
595
  | `COMFYUI_CLOUD_URL` | `https://cloud.comfy.org` | Override the Comfy Cloud endpoint (testing/staging). |
607
596
  | `COMFYUI_AUTH_TOKEN` | | Generic auth token for a **self-hosted ComfyUI behind a reverse proxy / API gateway** (distinct from Comfy Cloud). When set, attached to every ComfyUI request. Never logged. |
@@ -610,7 +599,7 @@ npx -y comfyui-mcp@latest --comfyui-url http://localhost:8188 --force-remote
610
599
  | `CIVITAI_API_TOKEN` | | CivitAI API token for model downloads |
611
600
  | `HUGGINGFACE_TOKEN` | | HuggingFace token for higher API rate limits |
612
601
  | `GITHUB_TOKEN` | | GitHub token for skill generation (avoids rate limits) |
613
- | `REGISTRY_ACCESS_TOKEN` | | Comfy Registry API key for `publish_custom_node` (env-only, never logged) |
602
+ | `REGISTRY_ACCESS_TOKEN` | | Comfy Registry API key for `node_pack` (`action: "publish"`) (env-only, never logged) |
614
603
  | `COMFYUI_DOWNLOAD_CACHE_DIR` | `~/.comfyui-mcp/cache` | Content-addressed model-download cache (dedup + concurrent coalescing) |
615
604
  | `COMFYUI_LRU_CACHE_SIZE_GB` | `0` | Cap the download cache in GB; `0` disables LRU eviction |
616
605
  | `COMFYUI_STARTUP_CHECK_INTERVAL_S` / `…_MAX_TRIES` | `1` / `20` | Readiness-probe interval + max tries when starting a local ComfyUI |
@@ -675,44 +664,7 @@ per-harness setup, troubleshooting:
675
664
  | Flag | Env | Default | Description |
676
665
  |------|-----|---------|-------------|
677
666
  | `setup <agent>` | | | Write the comfyui entry into hermes / openclaw / copilot config, then exit |
678
- | `--full` / `--tool-mode full` | `COMFYUI_MCP_TOOL_MODE=full` | `compact` | Opt into the full ~200-schema surface; the default compact mode registers 3 meta-tools instead |
679
-
680
- ### Other agents & local LLMs (Hermes, OpenClaw, Copilot CLI, Ollama)
681
-
682
- comfyui-mcp has **first-class support for non-Claude harnesses**. One command
683
- writes the server entry into the harness's own config (merging, not
684
- clobbering):
685
-
686
- ```bash
687
- npx -y comfyui-mcp setup hermes # → ~/.hermes/config.yaml (compact by default)
688
- npx -y comfyui-mcp setup openclaw # → ~/.openclaw/openclaw.json (compact by default)
689
- npx -y comfyui-mcp setup copilot # → ~/.copilot/mcp-config.json (full by default)
690
- # flags: --compact | --full, --comfyui-url <url>, --dry-run
691
- ```
692
-
693
- **Model requirements**: tool calling is a hard requirement (no tool calling =
694
- doesn't work). Thinking and vision are strongly recommended — without
695
- thinking, multi-step tool chains degrade; without vision the agent can
696
- generate but can't see its own outputs.
697
-
698
- **Compact tool mode is the default**: the server registers 3 meta-tools
699
- (`list_tools` → `describe_tool` → `call_tool`) instead of the full ~200-schema
700
- surface (~200 KB / ~50k tokens per `tools/list`), pulling schemas into context
701
- one tool at a time. Frontier-model harnesses opt back into the full surface
702
- with `--full` / `COMFYUI_MCP_TOOL_MODE=full`. **Run it locally
703
- for free with our fine-tuned models**: `ollama pull artokun/gemma4-comfyui-mcp:e4b`
704
- (also `:e2b` for ~2 GB VRAM, `:12b` for ~8 GB) — Gemma 4 QLoRA-trained on 1,055
705
- server-verified trajectories over the full comfyui-mcp tool surface, and the
706
- panel's Ollama default. Stock `gemma4:*`/`qwen3:4b` also validated end-to-end
707
- (`npm run test:local-llm`); gemma3 has no native tool calling and is
708
- unsupported. Full guide — hosted-model guidance (DeepSeek/MiMo/GLM class),
709
- per-harness setup, troubleshooting:
710
- **[Local LLMs & other agents](https://comfyui-mcp.artokun.io/docs/local-llms)**.
711
-
712
- | Flag | Env | Default | Description |
713
- |------|-----|---------|-------------|
714
- | `setup <agent>` | | | Write the comfyui entry into hermes / openclaw / copilot config, then exit |
715
- | `--full` / `--tool-mode full` | `COMFYUI_MCP_TOOL_MODE=full` | `compact` | Opt into the full ~200-schema surface; the default compact mode registers 3 meta-tools instead |
667
+ | `--compact` / `--tool-mode compact` | `COMFYUI_MCP_TOOL_MODE=compact` | `full` | Opt into the 3 meta-tools (`list_tools` / `describe_tool` / `call_tool`) instead of the direct surface recommended for small local models. `--full` is still accepted and is now a no-op |
716
668
 
717
669
  ### Remote ComfyUI
718
670
 
@@ -839,8 +791,8 @@ src/
839
791
  workflow-validator.ts # Dry-run validation (missing nodes, models, connections)
840
792
  image-management.ts # Upload images, extract PNG metadata, list outputs
841
793
  mermaid-converter.ts # Workflow → Mermaid diagram
842
- workflow-converter.ts # UI → API: de-virtualize Get/Set buses + Reroutes, expand subgraphs, resolve bypass (powers strip_workflow)
843
- workflow-slicer.ts # sliceWorkflow() — rgthree Fast-Groups-Bypass pipeline un-chunker (shared by the CLI + slice_workflow)
794
+ workflow-converter.ts # UI → API: de-virtualize Get/Set buses + Reroutes, expand subgraphs, resolve bypass (powers get_workflow's strip action)
795
+ workflow-slicer.ts # sliceWorkflow() — rgthree Fast-Groups-Bypass pipeline un-chunker (shared by the CLI + get_workflow's slice action)
844
796
  mermaid-parser.ts # Mermaid diagram → Workflow
845
797
  model-resolver.ts # HuggingFace search, local models, downloads
846
798
  generation-tracker.ts # SQLite generation log, settings dedup, stats
@@ -852,18 +804,19 @@ src/
852
804
  skill-generator.ts # Generate node pack skill docs
853
805
  tools/ # MCP tool registration (one file per group)
854
806
  workflow-execute.ts # enqueue_workflow, get_system_stats
855
- workflow-visualize.ts # visualize_workflow, mermaid_to_workflow
856
- workflow-compose.ts # create_workflow, modify_workflow, get_node_info
857
- workflow-validate.ts # validate_workflow
858
- workflow-library.ts # list_workflows, get_workflow, strip_workflow, slice_workflow, save_workflow
859
- image-management.ts # upload_image, workflow_from_image, list_output_images
860
- model-management.ts # search_models, download_model, list_local_models
861
- memory-management.ts # clear_vram, get_embeddings
862
- registry-search.ts # search_custom_nodes, get_node_pack_details
863
- skill-generator.ts # generate_node_skill
864
- generation-tracker.ts # suggest_settings, generation_stats
865
- diagnostics.ts # get_logs, get_history
866
- process-control.ts # stop_comfyui, start_comfyui, restart_comfyui
807
+ workflow-visualize.ts # visualize_workflow (render/render_hierarchical/mermaid/to_dsl/from_dsl)
808
+ workflow-compose.ts # create_workflow (create/modify/validate/node_info)
809
+ workflow-validate.ts # the validate action's body
810
+ workflow-library.ts # get_workflow (8 read actions), save_workflow (save/lock/verify_lock)
811
+ image-management.ts # get_image (7 read actions), upload_image (5 write actions)
812
+ model-management.ts # download_model, list_local_models (the two consolidated model tools)
813
+ memory-management.ts # clear_vram
814
+ registry-search.ts # search_custom_nodes (search/details)
815
+ node-management.ts # install_custom_node (install/update/fix/uninstall/enable/disable/list/…)
816
+ node-pack.ts # node_pack (scaffold/verify/publish/read/write/patch/git/…)
817
+ generation-tracker.ts # the get_history suggest/stats jobs
818
+ diagnostics.ts # get_system_stats (action:"logs"), get_history
819
+ process-control.ts # restart_comfyui (restart/start/stop)
867
820
  index.ts # Registers all tool groups
868
821
  utils/
869
822
  errors.ts # Custom error hierarchy with MCP integration
@@ -918,7 +871,7 @@ This is informational — the server uses the first one found. Set `COMFYUI_PATH
918
871
  For HuggingFace gated models, set `HUGGINGFACE_TOKEN`. For CivitAI, set `CIVITAI_API_TOKEN`.
919
872
 
920
873
  **Workflow execution errors**
921
- Use `/comfy:debug` to automatically diagnose failures. Or use `get_history` / `get_logs` directly to see detailed error messages including Python tracebacks from ComfyUI.
874
+ Use `/comfy:debug` to automatically diagnose failures. Or use `get_history` (`action: "diagnose"`) / `get_system_stats (action:"logs")` directly to see detailed error messages including Python tracebacks from ComfyUI.
922
875
 
923
876
  **Out of memory (OOM)**
924
877
  Use `clear_vram` to free GPU memory before running large workflows. The VRAM watchdog hook will warn you automatically if memory is critically low. See the **troubleshooting** skill for model-specific VRAM estimates.
@@ -3,6 +3,7 @@ import { config, getComfyUIApiHost, getComfyUIBasePath, getComfyUIBaseUrl, isClo
3
3
  import { logger } from "../utils/logger.js";
4
4
  import { ComfyUIError, ConnectionError, WorkflowExecutionError } from "../utils/errors.js";
5
5
  import { comfyuiFetch } from "./fetch.js";
6
+ import { fetchComfyJson, looksLikeHtmlParsedAsJson, redactErrorMessage, rethrowWithJsonDiagnosis, } from "./json-guard.js";
6
7
  import * as cloudClient from "./cloud-client.js";
7
8
  // Functions that fundamentally require a local ComfyUI process (WebSocket-bound
8
9
  // session, local `client.fetchApi` paths, etc.) throw via this guard when the
@@ -95,11 +96,31 @@ export async function ensureConnected() {
95
96
  }
96
97
  }
97
98
  }
99
+ /** True when a decoded /system_stats body has the recognizable ComfyUI shape (a
100
+ * `system` object and/or a `devices` array). A bare 2xx carrying an API
101
+ * gateway's own JSON envelope is NOT ComfyUI and must not be handed on as
102
+ * stats — the same predicate the panel's reboot certification uses. */
103
+ function looksLikeSystemStats(body) {
104
+ if (!body || typeof body !== "object")
105
+ return false;
106
+ const b = body;
107
+ return (b.system != null && typeof b.system === "object") || Array.isArray(b.devices);
108
+ }
98
109
  export async function getSystemStats() {
99
110
  if (isCloudMode())
100
111
  return cloudClient.getSystemStats();
101
- const client = getClient();
102
- const stats = await client.getSystemStats();
112
+ requireLocalMode("getSystemStats");
113
+ // Fetched directly (not via the client library) so a non-JSON answer can be
114
+ // DIAGNOSED rather than surfacing as "Unexpected token '<', "<!DOCTYPE "..."
115
+ // (#828). comfyuiFetch carries the same auth headers the library would, and
116
+ // getComfyUIBaseUrl() carries the same path prefix, so a proxied/prefixed
117
+ // remote resolves identically.
118
+ const url = `${getComfyUIBaseUrl()}/system_stats`;
119
+ const stats = await fetchComfyJson(url, {
120
+ init: { signal: AbortSignal.timeout(15000) },
121
+ expectShape: looksLikeSystemStats,
122
+ shapeHint: "a ComfyUI /system_stats document (it has no `system` object and no `devices` array)",
123
+ });
103
124
  return stats;
104
125
  }
105
126
  // /object_info is large (~MBs) and slow (300-800 ms) but only changes when
@@ -107,8 +128,8 @@ export async function getSystemStats() {
107
128
  // bounded FRESHNESS WINDOW rather than the whole process lifetime: an out-of-band
108
129
  // ComfyUI restart/install (Desktop Manager reboot, a manual restart, a node pack
109
130
  // installed outside an mcp tool) never calls resetObjectInfoCache(), so a
110
- // lifetime cache serves the PRE-restart schema forever — get_node_info /
111
- // check_workflow_runtime / validate_workflow all report the new nodes as unknown
131
+ // lifetime cache serves the PRE-restart schema forever — create_workflow's
132
+ // node_info and validate actions, and list_packs (action:"check_runtime"), all report the new nodes as unknown
112
133
  // (#528). A TTL bounds that staleness: within the window we serve the cached
113
134
  // snapshot (so a burst of validations stays ~0.5 s, the perf win flagged by
114
135
  // josephoibrahim/comfy-cozy), and the FIRST call after the window does a single
@@ -183,11 +204,32 @@ export async function getObjectInfo() {
183
204
  // before giving up — this is exactly the reconnect the caller expects.
184
205
  // Only reset if OUR client is still current: a concurrent reset may have
185
206
  // already installed a newer client we must not close.
207
+ // The library's parse errors QUOTE the body they choked on, and a gateway
208
+ // that reflects the request can have put our ComfyUI credential in that
209
+ // body — so this message goes through the same redaction as any body text
210
+ // before it reaches the log (codex gate, round 5, finding 5).
186
211
  logger.warn("getObjectInfo failed; resetting client and retrying once", {
187
- error: err instanceof Error ? err.message : String(err),
212
+ error: redactErrorMessage(err),
188
213
  });
189
214
  resetClientIfCurrent(startClient);
190
- return commit((await getClient().getNodeDefs()));
215
+ try {
216
+ return commit((await getClient().getNodeDefs()));
217
+ }
218
+ catch (retryErr) {
219
+ // The client library parses JSON itself, so an HTML body reaches us as a
220
+ // bare "Unexpected token '<'" naming neither the URL nor the responder
221
+ // (#828). Re-probe the endpoint ONCE to say what actually answered; if
222
+ // the probe is inconclusive the original error is rethrown untouched —
223
+ // an unproven cause must never be presented as the cause.
224
+ //
225
+ // Report whichever attempt PROVED a non-JSON answer. When the first
226
+ // request got HTML and the retry merely hit a transport blip, surfacing
227
+ // only the retry would downgrade a known #828 diagnosis to "server
228
+ // unavailable" and send the user to check whether ComfyUI is running
229
+ // (codex gate, round 8, finding 2).
230
+ const toReport = looksLikeHtmlParsedAsJson(retryErr) ? retryErr : looksLikeHtmlParsedAsJson(err) ? err : retryErr;
231
+ return await rethrowWithJsonDiagnosis(toReport, `${getComfyUIBaseUrl()}/object_info`);
232
+ }
191
233
  }
192
234
  })();
193
235
  objectInfoInflight = inflight;
@@ -244,7 +286,7 @@ export async function backfillObjectInfo(objectInfo, nodeTypes) {
244
286
  // case, namespace prefix, or display-vs-class name (#404,
245
287
  // `DetectorForNSFW`). Honor whatever key(s) ComfyUI actually returns
246
288
  // rather than narrowing to an exact `def[t]` match (which silently
247
- // dropped the node and made get_node_info report "no match" for a node
289
+ // dropped the node and made the node_info lookup report "no match" for a node
248
290
  // the server clearly registers). Prefer the exact key when present,
249
291
  // otherwise merge every returned definition.
250
292
  if (def[t]) {
@@ -547,7 +589,8 @@ export async function getLogs() {
547
589
  * POST /settings/{id} → persist one setting (JSON body is the raw value)
548
590
  *
549
591
  * These are the ComfyUI *frontend* UI settings (`Comfy.*` ids) and are entirely
550
- * unrelated to our own get_defaults/set_defaults SQLite store. Local and remote
592
+ * unrelated to our own generation-defaults store, which `get_defaults` reads and
593
+ * writes with action:"get"/"set". Local and remote
551
594
  * (`--comfyui-url`) both work over plain REST and inherit `comfyuiFetch` auth
552
595
  * headers. Comfy Cloud exposes no per-user settings store, so these throw
553
596
  * CLOUD_UNSUPPORTED via `requireLocalMode`.
@@ -650,7 +693,7 @@ export async function fetchImage(filename, type = "output", subfolder = "") {
650
693
  (res.status === 404
651
694
  ? `No such file in the ComfyUI ${type} directory` +
652
695
  (subfolder ? ` under subfolder "${subfolder}"` : "") +
653
- `. Check the filename/subfolder (e.g. via list_output_images or get_history).`
696
+ `. Check the filename/subfolder (e.g. via get_image (action:"list_outputs") or get_history).`
654
697
  : `The ComfyUI server rejected the request.`), res.status === 404 ? "IMAGE_NOT_FOUND" : "VIEW_ERROR", { status: res.status, filename, type, subfolder });
655
698
  }
656
699
  const contentType = res.headers.get("content-type") ?? "image/png";
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/comfyui/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/comfyui/client.ts"],"names":[],"mappings":"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"}
@@ -122,7 +122,7 @@ export async function getJobStatus(promptId) {
122
122
  return (await res.json());
123
123
  }
124
124
  export async function getObjectInfo() {
125
- throw new ComfyUIError("get_node_info (object_info) is not available in Comfy Cloud mode.", "CLOUD_UNSUPPORTED");
125
+ throw new ComfyUIError("create_workflow (action:\"node_info\"), which reads /object_info, is not available in Comfy Cloud mode.", "CLOUD_UNSUPPORTED");
126
126
  }
127
127
  const COMMON_SAMPLERS = [
128
128
  "euler", "euler_ancestral", "heun", "heunpp2", "dpm_2", "dpm_2_ancestral",
@@ -1 +1 @@
1
- {"version":3,"file":"cloud-client.js","sourceRoot":"","sources":["../../src/comfyui/cloud-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cloud-client.js","sourceRoot":"","sources":["../../src/comfyui/cloud-client.ts"],"names":[],"mappings":"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"}