comfyui-mcp 0.41.0 → 0.43.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.
- package/dist/orchestrator/gemini-backend.js +109 -29
- package/dist/orchestrator/gemini-backend.js.map +1 -1
- package/dist/orchestrator/index.js +106 -5
- package/dist/orchestrator/index.js.map +1 -1
- package/dist/orchestrator/panel-agent.js +12 -1
- package/dist/orchestrator/panel-agent.js.map +1 -1
- package/dist/services/ai-toolkit.js +220 -0
- package/dist/services/ai-toolkit.js.map +1 -0
- package/dist/services/training-config.js +138 -0
- package/dist/services/training-config.js.map +1 -0
- package/dist/services/training-jobs.js +654 -0
- package/dist/services/training-jobs.js.map +1 -0
- package/dist/services/workflow-validator.js +4 -0
- package/dist/services/workflow-validator.js.map +1 -1
- package/dist/tools/diagnostics.js +120 -1
- package/dist/tools/diagnostics.js.map +1 -1
- package/dist/tools/index.js +63 -3
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/train.js +187 -0
- package/dist/tools/train.js.map +1 -0
- package/docker/runpod/.gitattributes +8 -0
- package/docker/runpod/Dockerfile +486 -0
- package/docker/runpod/README.md +658 -0
- package/docker/runpod/config.ini +28 -0
- package/docker/runpod/deploy-dockerhub.sh +46 -0
- package/docker/runpod/extra_model_paths.yaml +61 -0
- package/docker/runpod/nginx.conf +124 -0
- package/docker/runpod/post_start.sh +619 -0
- package/docker/runpod/starting.html +47 -0
- package/docker/runpod/test_image.sh +180 -0
- package/docker/runpod/verify_image_remote.py +126 -0
- package/docker/trainer/Dockerfile +69 -0
- package/package.json +2 -1
- package/plugin/skills/train-character-lora/SKILL.md +83 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"training-jobs.js","sourceRoot":"","sources":["../../src/services/training-jobs.ts"],"names":[],"mappings":"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"}
|
|
@@ -43,6 +43,7 @@ export async function validateWorkflow(workflow, options = {}) {
|
|
|
43
43
|
severity: "error",
|
|
44
44
|
node_id: nodeId,
|
|
45
45
|
node_type: classType,
|
|
46
|
+
kind: "missing_node_type",
|
|
46
47
|
message: `Unknown node type "${classType}". This node may not be installed.`,
|
|
47
48
|
});
|
|
48
49
|
continue; // Can't validate inputs without the definition
|
|
@@ -206,6 +207,9 @@ function checkComboValues(nodeId, classType, inputs, issues, objectInfo) {
|
|
|
206
207
|
severity: "error",
|
|
207
208
|
node_id: nodeId,
|
|
208
209
|
node_type: classType,
|
|
210
|
+
kind: isModel ? "missing_model" : "value_not_in_list",
|
|
211
|
+
input: inputName,
|
|
212
|
+
value,
|
|
209
213
|
message: `"${inputName}" = "${value}" is not in the list of valid options (value_not_in_list).${hint}`,
|
|
210
214
|
});
|
|
211
215
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow-validator.js","sourceRoot":"","sources":["../../src/services/workflow-validator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,OAAO,EAAE,kBAAkB,EAAoB,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"workflow-validator.js","sourceRoot":"","sources":["../../src/services/workflow-validator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,25 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
import { getLogs, getHistory, } from "../comfyui/client.js";
|
|
3
|
-
import { selectNewestHistoryEntry } from "../services/history-select.js";
|
|
3
|
+
import { selectNewestHistoryEntry, extractWorkflowGraph } from "../services/history-select.js";
|
|
4
|
+
import { validateWorkflow } from "../services/workflow-validator.js";
|
|
4
5
|
import { errorToToolResult } from "../utils/errors.js";
|
|
6
|
+
function findExecutionError(entry) {
|
|
7
|
+
const msg = (entry.status?.messages ?? []).find((m) => m[0] === "execution_error");
|
|
8
|
+
return msg ? msg[1] : null;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Pick the run to diagnose. An explicit id wins; otherwise prefer the most recent
|
|
12
|
+
* FAILED run over a newer successful one — "why did it fail?" should land on the
|
|
13
|
+
* failure even when the user has since kicked off something that worked.
|
|
14
|
+
*/
|
|
15
|
+
function selectRunToDiagnose(history, promptId) {
|
|
16
|
+
if (promptId)
|
|
17
|
+
return selectNewestHistoryEntry(history, promptId);
|
|
18
|
+
const failed = Object.entries(history).filter(([, e]) => findExecutionError(e));
|
|
19
|
+
if (failed.length > 0)
|
|
20
|
+
return selectNewestHistoryEntry(Object.fromEntries(failed));
|
|
21
|
+
return selectNewestHistoryEntry(history);
|
|
22
|
+
}
|
|
5
23
|
function formatHistoryEntry(promptId, entry) {
|
|
6
24
|
const lines = [];
|
|
7
25
|
const status = entry.status;
|
|
@@ -157,5 +175,106 @@ export function registerDiagnosticsTools(server) {
|
|
|
157
175
|
return errorToToolResult(err);
|
|
158
176
|
}
|
|
159
177
|
});
|
|
178
|
+
server.tool("diagnose_run", "WHY DID MY RENDER FAIL / WHAT'S MISSING? Explains a failed run in ONE call, without needing a canvas — the headless counterpart to the panel's panel_view_errored_nodes (\"why is this red?\"), so mobile/remote sessions get the same answer. Returns: the failed node (id, type) with its `exception_type` + message and a trimmed traceback; **missing_models** (the exact model file that isn't installed and the widget holding it — feed the filename to search_civitai_models/download_model to fix it); **missing_node_types** (node classes this install lacks — feed to search_custom_nodes/install_custom_node); and any other per-input validation errors. Call this whenever a run fails, an enqueue is rejected, or the user asks what's missing — instead of guessing from raw logs. With no prompt_id it diagnoses the most recent FAILED run (falling back to the most recent run). Read-only.", {
|
|
179
|
+
prompt_id: z
|
|
180
|
+
.string()
|
|
181
|
+
.optional()
|
|
182
|
+
.describe("Specific run to diagnose (the prompt_id from enqueue_workflow). Omit to diagnose the most recent FAILED run — preferred over a newer successful one — falling back to the most recent run if nothing failed."),
|
|
183
|
+
}, async (args) => {
|
|
184
|
+
try {
|
|
185
|
+
const history = await getHistory(args.prompt_id);
|
|
186
|
+
const selected = selectRunToDiagnose(history, args.prompt_id);
|
|
187
|
+
if (!selected) {
|
|
188
|
+
return {
|
|
189
|
+
content: [
|
|
190
|
+
{
|
|
191
|
+
type: "text",
|
|
192
|
+
text: args.prompt_id
|
|
193
|
+
? `No history found for prompt ${args.prompt_id}.`
|
|
194
|
+
: "No execution history available — nothing has run yet on this ComfyUI.",
|
|
195
|
+
},
|
|
196
|
+
],
|
|
197
|
+
};
|
|
198
|
+
}
|
|
199
|
+
const [promptId, entry] = selected;
|
|
200
|
+
const lines = [];
|
|
201
|
+
lines.push(`## Diagnosis: ${promptId}`);
|
|
202
|
+
lines.push(`**Status**: ${entry.status?.status_str ?? "unknown"}`);
|
|
203
|
+
// 1. Runtime failure (what actually blew up mid-execution).
|
|
204
|
+
const execError = findExecutionError(entry);
|
|
205
|
+
if (execError) {
|
|
206
|
+
lines.push("");
|
|
207
|
+
lines.push("### Runtime failure");
|
|
208
|
+
lines.push(`**Failed node**: ${execError.node_id ?? "?"} (${execError.node_type ?? "unknown type"})`);
|
|
209
|
+
if (execError.exception_type)
|
|
210
|
+
lines.push(`**Type**: ${execError.exception_type}`);
|
|
211
|
+
if (execError.exception_message) {
|
|
212
|
+
lines.push(`**Message**: ${execError.exception_message}`);
|
|
213
|
+
}
|
|
214
|
+
if (Array.isArray(execError.traceback) && execError.traceback.length > 0) {
|
|
215
|
+
// Tail only — the last frames carry the cause, and a full traceback can
|
|
216
|
+
// be hundreds of lines (this reply goes straight into an agent's context).
|
|
217
|
+
const tail = execError.traceback.slice(-12);
|
|
218
|
+
lines.push("");
|
|
219
|
+
lines.push("```");
|
|
220
|
+
lines.push(tail.join("").trimEnd());
|
|
221
|
+
lines.push("```");
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
else {
|
|
225
|
+
lines.push("");
|
|
226
|
+
lines.push("_No runtime error recorded for this run_ — if the user still sees a problem, it was likely rejected BEFORE execution (see validation below) or the run simply produced an unwanted result.");
|
|
227
|
+
}
|
|
228
|
+
// 2. Re-validate the exact graph that ran, so we can name what's missing.
|
|
229
|
+
// Reuses the same validator behind validate_workflow — the graph is the
|
|
230
|
+
// one ComfyUI recorded, so this reflects what actually executed.
|
|
231
|
+
const graph = extractWorkflowGraph(entry);
|
|
232
|
+
if (!graph) {
|
|
233
|
+
lines.push("");
|
|
234
|
+
lines.push("_This history entry has no recorded graph_, so missing models/nodes can't be checked for it.");
|
|
235
|
+
}
|
|
236
|
+
else {
|
|
237
|
+
const result = await validateWorkflow(graph, { health: false });
|
|
238
|
+
const errors = result.issues.filter((i) => i.severity === "error");
|
|
239
|
+
const missingModels = errors.filter((i) => i.kind === "missing_model");
|
|
240
|
+
const missingNodeTypes = errors.filter((i) => i.kind === "missing_node_type");
|
|
241
|
+
const otherErrors = errors.filter((i) => i.kind !== "missing_model" && i.kind !== "missing_node_type");
|
|
242
|
+
if (missingModels.length > 0) {
|
|
243
|
+
lines.push("");
|
|
244
|
+
lines.push("### Missing models");
|
|
245
|
+
for (const i of missingModels) {
|
|
246
|
+
lines.push(`- **${i.value ?? "(unknown file)"}** — node ${i.node_id} (${i.node_type}), widget \`${i.input ?? "?"}\``);
|
|
247
|
+
}
|
|
248
|
+
lines.push("_Fix_: search_civitai_models / search_models by that filename, then download_model (or download_civitai_model) into the loader's directory.");
|
|
249
|
+
}
|
|
250
|
+
if (missingNodeTypes.length > 0) {
|
|
251
|
+
lines.push("");
|
|
252
|
+
lines.push("### Missing node types (packs this install lacks)");
|
|
253
|
+
const uniq = [...new Set(missingNodeTypes.map((i) => i.node_type))];
|
|
254
|
+
for (const t of uniq)
|
|
255
|
+
lines.push(`- **${t}**`);
|
|
256
|
+
lines.push("_Fix_: search_custom_nodes for the owning pack, install_custom_node, then restart ComfyUI to load it.");
|
|
257
|
+
}
|
|
258
|
+
if (otherErrors.length > 0) {
|
|
259
|
+
lines.push("");
|
|
260
|
+
lines.push("### Validation errors");
|
|
261
|
+
for (const i of otherErrors.slice(0, 20)) {
|
|
262
|
+
lines.push(`- node ${i.node_id} (${i.node_type}): ${i.message}`);
|
|
263
|
+
}
|
|
264
|
+
if (otherErrors.length > 20) {
|
|
265
|
+
lines.push(`- …and ${otherErrors.length - 20} more`);
|
|
266
|
+
}
|
|
267
|
+
}
|
|
268
|
+
if (errors.length === 0) {
|
|
269
|
+
lines.push("");
|
|
270
|
+
lines.push("_The recorded graph validates clean_ — nothing is missing, so the failure was a runtime one (see above), not a setup problem.");
|
|
271
|
+
}
|
|
272
|
+
}
|
|
273
|
+
return { content: [{ type: "text", text: lines.join("\n") }] };
|
|
274
|
+
}
|
|
275
|
+
catch (err) {
|
|
276
|
+
return errorToToolResult(err);
|
|
277
|
+
}
|
|
278
|
+
});
|
|
160
279
|
}
|
|
161
280
|
//# sourceMappingURL=diagnostics.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diagnostics.js","sourceRoot":"","sources":["../../src/tools/diagnostics.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"diagnostics.js","sourceRoot":"","sources":["../../src/tools/diagnostics.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/index.js
CHANGED
|
@@ -52,6 +52,7 @@ import { registerCalculateTools } from "./calculate.js";
|
|
|
52
52
|
import { registerComfyUISettingsTools } from "./comfyui-settings.js";
|
|
53
53
|
import { registerNodeDevTools } from "./node-dev.js";
|
|
54
54
|
import { registerComfyCliTools } from "./comfy-cli.js";
|
|
55
|
+
import { registerTrainTools } from "./train.js";
|
|
55
56
|
import { DefaultsManager } from "../services/defaults-manager.js";
|
|
56
57
|
import { ToolCatalog } from "./catalog.js";
|
|
57
58
|
/**
|
|
@@ -113,14 +114,73 @@ const TOOL_GROUPS = [
|
|
|
113
114
|
["diagnostics", registerCalculateTools],
|
|
114
115
|
["server", registerComfyUISettingsTools],
|
|
115
116
|
["custom-nodes", registerNodeDevTools],
|
|
117
|
+
["training", registerTrainTools],
|
|
116
118
|
];
|
|
119
|
+
// ── Blind content mode (panel issue #90) ────────────────────────────────────
|
|
120
|
+
// When COMFYUI_MCP_BLIND=1 (set on the tool-server spawn by the orchestrator
|
|
121
|
+
// for tabs whose panel Blind toggle is ON), NO tool may deliver image pixels
|
|
122
|
+
// to the model. Enforced MECHANICALLY at the single registration boundary both
|
|
123
|
+
// tool paths share — the live McpServer and the compact-mode ToolCatalog both
|
|
124
|
+
// receive handlers wrapped here — so the guarantee holds for every current and
|
|
125
|
+
// future image-returning tool (get_image, view_image, convert_image, color
|
|
126
|
+
// analysis previews, ...) without per-tool opt-ins.
|
|
127
|
+
const blindMode = () => process.env.COMFYUI_MCP_BLIND === "1";
|
|
128
|
+
function scrubImageBlocks(result) {
|
|
129
|
+
if (!result || typeof result !== "object")
|
|
130
|
+
return result;
|
|
131
|
+
const r = result;
|
|
132
|
+
if (!Array.isArray(r.content))
|
|
133
|
+
return result;
|
|
134
|
+
let scrubbed = 0;
|
|
135
|
+
const content = r.content.map((block) => {
|
|
136
|
+
if (!block || block.type !== "image")
|
|
137
|
+
return block;
|
|
138
|
+
scrubbed++;
|
|
139
|
+
const bytes = typeof block.data === "string" ? Math.round((block.data.length * 3) / 4) : 0;
|
|
140
|
+
const size = bytes ? `${Math.max(1, Math.round(bytes / 1024))} KB, ` : "";
|
|
141
|
+
return {
|
|
142
|
+
type: "text",
|
|
143
|
+
text: `[Blind mode: image withheld (${size}${String(block.mimeType ?? "image")}). ` +
|
|
144
|
+
"The user's Blind setting means you NEVER receive image pixels — work from " +
|
|
145
|
+
"filenames/metadata, and tell the user to inspect the image themselves if it matters.]",
|
|
146
|
+
};
|
|
147
|
+
});
|
|
148
|
+
if (!scrubbed)
|
|
149
|
+
return result;
|
|
150
|
+
return { ...r, content };
|
|
151
|
+
}
|
|
152
|
+
/** Wrap a registrar so every tool handler enforces Blind mode on its RESULT.
|
|
153
|
+
* Works for both the live McpServer and ToolCatalog.asRegistrar() (the compact
|
|
154
|
+
* call_tool router) — each captures/registers the wrapped handler. */
|
|
155
|
+
function withBlindImageGate(server) {
|
|
156
|
+
const orig = server.tool.bind(server);
|
|
157
|
+
const tool = (...args) => {
|
|
158
|
+
const handler = args[args.length - 1];
|
|
159
|
+
if (typeof handler === "function") {
|
|
160
|
+
const wrapped = async (...hargs) => {
|
|
161
|
+
const result = await handler(...hargs);
|
|
162
|
+
return blindMode() ? scrubImageBlocks(result) : result;
|
|
163
|
+
};
|
|
164
|
+
return orig(...args.slice(0, -1), wrapped);
|
|
165
|
+
}
|
|
166
|
+
return orig(...args);
|
|
167
|
+
};
|
|
168
|
+
return new Proxy(server, {
|
|
169
|
+
get(target, prop, receiver) {
|
|
170
|
+
if (prop === "tool")
|
|
171
|
+
return tool;
|
|
172
|
+
return Reflect.get(target, prop, receiver);
|
|
173
|
+
},
|
|
174
|
+
});
|
|
175
|
+
}
|
|
117
176
|
export async function registerAllTools(server) {
|
|
118
177
|
// Hydrate persisted defaults before any tool registration so subsequent
|
|
119
178
|
// tools can consult DefaultsManager.apply() against a fully-resolved view.
|
|
120
179
|
await DefaultsManager.load();
|
|
180
|
+
const gated = withBlindImageGate(server);
|
|
121
181
|
for (const [, register] of TOOL_GROUPS)
|
|
122
|
-
register(
|
|
123
|
-
await registerAutoloadedWorkflows(
|
|
182
|
+
register(gated);
|
|
183
|
+
await registerAutoloadedWorkflows(gated);
|
|
124
184
|
}
|
|
125
185
|
/**
|
|
126
186
|
* Run the same registration pass against a capturing ToolCatalog instead of a
|
|
@@ -130,7 +190,7 @@ export async function registerAllTools(server) {
|
|
|
130
190
|
export async function collectToolCatalog() {
|
|
131
191
|
await DefaultsManager.load();
|
|
132
192
|
const catalog = new ToolCatalog();
|
|
133
|
-
const registrar = catalog.asRegistrar();
|
|
193
|
+
const registrar = withBlindImageGate(catalog.asRegistrar());
|
|
134
194
|
for (const [category, register] of TOOL_GROUPS) {
|
|
135
195
|
catalog.setCategory(category);
|
|
136
196
|
register(registrar);
|
package/dist/tools/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AACrE,OAAO,EAAE,8BAA8B,EAAE,MAAM,yBAAyB,CAAC;AACzE,OAAO,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AACrE,OAAO,EAAE,6BAA6B,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AACrE,OAAO,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AACrE,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AACrE,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AACrE,OAAO,EAAE,6BAA6B,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,EAAE,8BAA8B,EAAE,MAAM,yBAAyB,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,4BAA4B,EAAE,MAAM,wBAAwB,CAAC;AACtE,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,kCAAkC,EAAE,MAAM,2BAA2B,CAAC;AAC/E,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C;;;;GAIG;AACH,MAAM,WAAW,GAAsF;IACrG,CAAC,WAAW,EAAE,qBAAqB,CAAC;IACpC,CAAC,WAAW,EAAE,4BAA4B,CAAC;IAC3C,CAAC,oBAAoB,EAAE,8BAA8B,CAAC;IACtD,CAAC,oBAAoB,EAAE,4BAA4B,CAAC;IACpD,CAAC,oBAAoB,EAAE,6BAA6B,CAAC;IACrD,CAAC,WAAW,EAAE,4BAA4B,CAAC;IAC3C,CAAC,cAAc,EAAE,2BAA2B,CAAC;IAC7C,CAAC,QAAQ,EAAE,4BAA4B,CAAC;IACxC,CAAC,eAAe,EAAE,2BAA2B,CAAC;IAC9C,CAAC,aAAa,EAAE,wBAAwB,CAAC;IACzC,CAAC,oBAAoB,EAAE,4BAA4B,CAAC;IACpD,CAAC,WAAW,EAAE,wBAAwB,CAAC;IACvC,CAAC,QAAQ,EAAE,2BAA2B,CAAC;IACvC,CAAC,eAAe,EAAE,4BAA4B,CAAC;IAC/C,CAAC,QAAQ,EAAE,6BAA6B,CAAC;IACzC,CAAC,YAAY,EAAE,8BAA8B,CAAC;IAC9C,CAAC,eAAe,EAAE,kBAAkB,CAAC;IACrC,CAAC,eAAe,EAAE,qBAAqB,CAAC;IACxC,CAAC,YAAY,EAAE,yBAAyB,CAAC;IACzC,CAAC,YAAY,EAAE,yBAAyB,CAAC;IACzC,CAAC,YAAY,EAAE,yBAAyB,CAAC;IACzC,CAAC,YAAY,EAAE,4BAA4B,CAAC;IAC5C,CAAC,YAAY,EAAE,wBAAwB,CAAC;IACxC,CAAC,YAAY,EAAE,kCAAkC,CAAC;IAClD,CAAC,oBAAoB,EAAE,wBAAwB,CAAC;IAChD,CAAC,cAAc,EAAE,0BAA0B,CAAC;IAC5C,CAAC,cAAc,EAAE,uBAAuB,CAAC;IACzC,CAAC,cAAc,EAAE,2BAA2B,CAAC;IAC7C,CAAC,aAAa,EAAE,wBAAwB,CAAC;IACzC,CAAC,WAAW,EAAE,yBAAyB,CAAC;IACxC,CAAC,QAAQ,EAAE,2BAA2B,CAAC;IACvC,CAAC,QAAQ,EAAE,0BAA0B,CAAC;IACtC,CAAC,QAAQ,EAAE,wBAAwB,CAAC;IACpC,CAAC,QAAQ,EAAE,0BAA0B,CAAC;IACtC,CAAC,oBAAoB,EAAE,2BAA2B,CAAC;IACnD,CAAC,QAAQ,EAAE,uBAAuB,CAAC;IACnC,CAAC,QAAQ,EAAE,yBAAyB,CAAC;IACrC,CAAC,YAAY,EAAE,qBAAqB,CAAC;IACrC,CAAC,QAAQ,EAAE,0BAA0B,CAAC;IACtC,CAAC,cAAc,EAAE,0BAA0B,CAAC;IAC5C,CAAC,cAAc,EAAE,uBAAuB,CAAC;IACzC,CAAC,QAAQ,EAAE,qBAAqB,CAAC;IACjC,CAAC,eAAe,EAAE,yBAAyB,CAAC;IAC5C,CAAC,eAAe,EAAE,0BAA0B,CAAC;IAC7C,CAAC,eAAe,EAAE,0BAA0B,CAAC;IAC7C,CAAC,aAAa,EAAE,wBAAwB,CAAC;IACzC,CAAC,oBAAoB,EAAE,yBAAyB,CAAC;IACjD,CAAC,eAAe,EAAE,yBAAyB,CAAC;IAC5C,CAAC,QAAQ,EAAE,yBAAyB,CAAC;IACrC,CAAC,QAAQ,EAAE,uBAAuB,CAAC;IACnC,CAAC,aAAa,EAAE,sBAAsB,CAAC;IACvC,CAAC,QAAQ,EAAE,4BAA4B,CAAC;IACxC,CAAC,cAAc,EAAE,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,187 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { fileURLToPath } from "node:url";
|
|
3
|
+
import { existsSync } from "node:fs";
|
|
4
|
+
import { join } from "node:path";
|
|
5
|
+
import { buildTrainerImage, dockerAvailable, trainerDoctor, trainerImageExists, TRAINER_IMAGE, } from "../services/ai-toolkit.js";
|
|
6
|
+
import { DEFAULT_PARAMS } from "../services/training-config.js";
|
|
7
|
+
import { cancelJob, getJob, hfCacheRoot, listJobs, prepareDataset, startTrainingJob, trainingRoot, } from "../services/training-jobs.js";
|
|
8
|
+
import { errorToToolResult } from "../utils/errors.js";
|
|
9
|
+
import { isRemoteMode } from "../config.js";
|
|
10
|
+
function textEnvelope(envelope) {
|
|
11
|
+
const failed = typeof envelope === "object" && envelope !== null && "ok" in envelope && envelope.ok === false;
|
|
12
|
+
return {
|
|
13
|
+
...(failed ? { isError: true } : {}),
|
|
14
|
+
content: [{ type: "text", text: JSON.stringify(envelope, null, 2) }],
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
/** Package root — dist/tools/train.js → ../../ (ships docker/trainer). */
|
|
18
|
+
function packageRoot() {
|
|
19
|
+
return fileURLToPath(new URL("../../", import.meta.url));
|
|
20
|
+
}
|
|
21
|
+
function trainerContextDir() {
|
|
22
|
+
return join(packageRoot(), "docker", "trainer");
|
|
23
|
+
}
|
|
24
|
+
const paramsSchema = z
|
|
25
|
+
.object({
|
|
26
|
+
steps: z.number().int().min(1).optional().describe("Total training steps (200 = smoke test, 1500-3000 real)."),
|
|
27
|
+
lr: z.number().positive().optional().describe("Learning rate."),
|
|
28
|
+
rank: z.number().int().min(1).optional().describe("LoRA rank (16 simple, 16-32 detailed)."),
|
|
29
|
+
resolution: z.array(z.number().int().positive()).min(1).optional().describe("Resolution buckets, e.g. [512,768,1024]."),
|
|
30
|
+
batchSize: z.number().int().min(1).optional(),
|
|
31
|
+
saveEvery: z.number().int().min(1).optional().describe("Checkpoint cadence (steps)."),
|
|
32
|
+
sampleEvery: z.number().int().min(1).optional().describe("Sample-image cadence (steps)."),
|
|
33
|
+
quantize: z.boolean().optional().describe("8-bit mixed precision — needed to fit Flux on 24GB."),
|
|
34
|
+
})
|
|
35
|
+
.optional();
|
|
36
|
+
export function registerTrainTools(server) {
|
|
37
|
+
server.tool("train_list_flows", "List the LoRA training flows and base models the local trainer supports (phase 1: character LoRA on FLUX.1-dev), with the default training params. Read-only — call this first to see what train_start accepts.", {}, async () => {
|
|
38
|
+
try {
|
|
39
|
+
return textEnvelope({
|
|
40
|
+
ok: true,
|
|
41
|
+
flows: [
|
|
42
|
+
{
|
|
43
|
+
id: "character",
|
|
44
|
+
kind: "image",
|
|
45
|
+
description: "Character/identity LoRA from ~10-30 images with captions + a unique trigger word.",
|
|
46
|
+
models: [
|
|
47
|
+
{
|
|
48
|
+
id: "flux1-dev",
|
|
49
|
+
hfRepo: "black-forest-labs/FLUX.1-dev",
|
|
50
|
+
vram: "24GB with quantize=true (RTX 4090 class)",
|
|
51
|
+
notes: "Proven character-consistency base (ai-toolkit presets tuned for it).",
|
|
52
|
+
},
|
|
53
|
+
],
|
|
54
|
+
},
|
|
55
|
+
],
|
|
56
|
+
defaultParams: DEFAULT_PARAMS,
|
|
57
|
+
image: TRAINER_IMAGE,
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
catch (error) {
|
|
61
|
+
return errorToToolResult(error);
|
|
62
|
+
}
|
|
63
|
+
});
|
|
64
|
+
server.tool("train_prepare_dataset", "Stage training images + captions into a dataset dir the trainer consumes. Each item is an image path with an optional caption (a missing caption falls back to defaultCaption — typically the trigger word). Returns the datasetPath to pass to train_start. Character LoRA guidance: 10-30 varied images; caption what changes between images, keep the trigger word constant.", {
|
|
65
|
+
name: z.string().min(1).describe("Dataset name (becomes the staging dir name)."),
|
|
66
|
+
items: z
|
|
67
|
+
.array(z.object({
|
|
68
|
+
path: z.string().min(1).describe("Absolute path to a source image (png/jpg/jpeg/webp)."),
|
|
69
|
+
caption: z.string().optional().describe("Caption for this image."),
|
|
70
|
+
}))
|
|
71
|
+
.min(1),
|
|
72
|
+
defaultCaption: z.string().optional().describe("Fallback caption for items without one — usually the trigger word."),
|
|
73
|
+
}, async (args) => {
|
|
74
|
+
try {
|
|
75
|
+
const prepared = await prepareDataset({ name: args.name, items: args.items, defaultCaption: args.defaultCaption });
|
|
76
|
+
return textEnvelope({ ok: true, ...prepared });
|
|
77
|
+
}
|
|
78
|
+
catch (error) {
|
|
79
|
+
return errorToToolResult(error);
|
|
80
|
+
}
|
|
81
|
+
});
|
|
82
|
+
server.tool("train_start", "Start a LoRA training job in the GPU trainer container: builds the ai-toolkit config, launches `docker run --gpus all`, and returns a job id for train_status/train_cancel. Long-running — this returns immediately; poll train_status for step/loss/samples. On completion the LoRA is copied into ComfyUI models/loras/ and added to the LoRA catalog automatically. Run train_doctor first if unsure the image/docker/GPU are ready.", {
|
|
83
|
+
name: z.string().min(1).describe("Job name — becomes the output .safetensors basename (e.g. 'aria_character')."),
|
|
84
|
+
flow: z.enum(["character"]).optional().default("character"),
|
|
85
|
+
model: z.enum(["flux1-dev"]).optional().default("flux1-dev"),
|
|
86
|
+
datasetPath: z.string().min(1).describe("Dataset dir from train_prepare_dataset (images + same-basename .txt captions)."),
|
|
87
|
+
trigger: z.string().optional().describe("Unique trigger word (e.g. 'ohwx person') — injected as trigger_word and usable in prompts."),
|
|
88
|
+
params: paramsSchema,
|
|
89
|
+
device: z.string().optional().describe("GPU selector, default cuda:0."),
|
|
90
|
+
}, async (args) => {
|
|
91
|
+
try {
|
|
92
|
+
if (!(await dockerAvailable())) {
|
|
93
|
+
return textEnvelope({ ok: false, error: { code: "no_docker", message: "Docker daemon not reachable — start Docker Desktop / the docker engine, then re-run. See train_doctor." } });
|
|
94
|
+
}
|
|
95
|
+
if (!(await trainerImageExists())) {
|
|
96
|
+
return textEnvelope({ ok: false, error: { code: "no_image", message: `Trainer image ${TRAINER_IMAGE} not built yet — run train_build_image once (several minutes), then re-run train_start.` } });
|
|
97
|
+
}
|
|
98
|
+
const job = await startTrainingJob({
|
|
99
|
+
name: args.name,
|
|
100
|
+
flow: args.flow,
|
|
101
|
+
model: args.model,
|
|
102
|
+
datasetPath: args.datasetPath,
|
|
103
|
+
trigger: args.trigger,
|
|
104
|
+
params: args.params,
|
|
105
|
+
device: args.device,
|
|
106
|
+
});
|
|
107
|
+
return textEnvelope({ ok: true, job });
|
|
108
|
+
}
|
|
109
|
+
catch (error) {
|
|
110
|
+
return errorToToolResult(error);
|
|
111
|
+
}
|
|
112
|
+
});
|
|
113
|
+
server.tool("train_status", "Check training progress: pass an id for one job (step/total, loss, recent samples, log tail, result paths when done) or omit for all jobs newest-first.", {
|
|
114
|
+
id: z.string().optional().describe("Job id from train_start. Omit to list all jobs."),
|
|
115
|
+
}, async (args) => {
|
|
116
|
+
try {
|
|
117
|
+
if (args.id) {
|
|
118
|
+
const job = await getJob(args.id);
|
|
119
|
+
if (!job)
|
|
120
|
+
throw new Error(`no training job ${args.id}`);
|
|
121
|
+
return textEnvelope({ ok: true, job });
|
|
122
|
+
}
|
|
123
|
+
const jobs = await listJobs();
|
|
124
|
+
return textEnvelope({ ok: true, count: jobs.length, jobs });
|
|
125
|
+
}
|
|
126
|
+
catch (error) {
|
|
127
|
+
return errorToToolResult(error);
|
|
128
|
+
}
|
|
129
|
+
});
|
|
130
|
+
server.tool("train_cancel", "Stop a running training job (docker stop) and mark it cancelled. Checkpoints already saved stay in the job's output dir; no LoRA is handed off to models/loras. Returns ok:false when the container could not be confirmed stopped (the job reverts to running).", {
|
|
131
|
+
id: z.string().min(1).describe("Job id from train_start."),
|
|
132
|
+
}, async (args) => {
|
|
133
|
+
try {
|
|
134
|
+
const job = await cancelJob(args.id);
|
|
135
|
+
// A failed cancel returns the job as RUNNING with an error — that must
|
|
136
|
+
// not surface as a successful cancellation (codex finding): clients
|
|
137
|
+
// keying on the envelope/isError would think the GPU is free.
|
|
138
|
+
if (job.status !== "cancelled") {
|
|
139
|
+
return textEnvelope({ ok: false, error: { code: "cancel_failed", message: job.error ?? `job is ${job.status}` }, job });
|
|
140
|
+
}
|
|
141
|
+
return textEnvelope({ ok: true, job });
|
|
142
|
+
}
|
|
143
|
+
catch (error) {
|
|
144
|
+
return errorToToolResult(error);
|
|
145
|
+
}
|
|
146
|
+
});
|
|
147
|
+
server.tool("train_build_image", `Build the headless GPU trainer image (${TRAINER_IMAGE}) from docker/trainer/Dockerfile — one-time, several minutes (CUDA + torch + ai-toolkit). Requires a reachable docker daemon. aiToolkitRef pins the ai-toolkit commit/tag for reproducibility.`, {
|
|
148
|
+
aiToolkitRef: z.string().optional().describe("ai-toolkit git ref (commit/tag) to build against. Default: the Dockerfile's pinned ref."),
|
|
149
|
+
}, async (args) => {
|
|
150
|
+
try {
|
|
151
|
+
if (!(await dockerAvailable())) {
|
|
152
|
+
return textEnvelope({ ok: false, error: { code: "no_docker", message: "Docker daemon not reachable — start Docker Desktop / the docker engine first." } });
|
|
153
|
+
}
|
|
154
|
+
const contextDir = trainerContextDir();
|
|
155
|
+
if (!existsSync(join(contextDir, "Dockerfile"))) {
|
|
156
|
+
return textEnvelope({ ok: false, error: { code: "no_dockerfile", message: `Trainer Dockerfile not found at ${contextDir} — the docker/ dir may not be shipped in this install.` } });
|
|
157
|
+
}
|
|
158
|
+
const result = await buildTrainerImage({ contextDir, aiToolkitRef: args.aiToolkitRef });
|
|
159
|
+
return textEnvelope(result);
|
|
160
|
+
}
|
|
161
|
+
catch (error) {
|
|
162
|
+
return errorToToolResult(error);
|
|
163
|
+
}
|
|
164
|
+
});
|
|
165
|
+
server.tool("train_doctor", "Preflight the local trainer: docker daemon reachable, `--gpus all` GPU passthrough working (NVIDIA Container Toolkit), trainer image built. Returns per-check booleans + setup hints. Also reports the training data root and whether HF_TOKEN is set (needed to download FLUX.1-dev on first run).", {}, async () => {
|
|
166
|
+
try {
|
|
167
|
+
const doctor = await trainerDoctor();
|
|
168
|
+
return textEnvelope({
|
|
169
|
+
...doctor,
|
|
170
|
+
data: {
|
|
171
|
+
...doctor.data,
|
|
172
|
+
trainingRoot: trainingRoot(),
|
|
173
|
+
hfCache: hfCacheRoot(),
|
|
174
|
+
hfTokenSet: !!process.env.HF_TOKEN?.trim(),
|
|
175
|
+
// Dataset staging + the LoRA handoff need a LOCAL ComfyUI filesystem
|
|
176
|
+
// on this MCP's machine — false in remote mode, so panel/mobile can
|
|
177
|
+
// warn before a doomed launch instead of failing at staging.
|
|
178
|
+
localFs: !isRemoteMode(),
|
|
179
|
+
},
|
|
180
|
+
});
|
|
181
|
+
}
|
|
182
|
+
catch (error) {
|
|
183
|
+
return errorToToolResult(error);
|
|
184
|
+
}
|
|
185
|
+
});
|
|
186
|
+
}
|
|
187
|
+
//# sourceMappingURL=train.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"train.js","sourceRoot":"","sources":["../../src/tools/train.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
# These files are consumed inside a Linux container (or by nginx/bash), so they
|
|
2
|
+
# MUST keep LF line endings even when checked out on Windows (autocrlf=true).
|
|
3
|
+
*.sh text eol=lf
|
|
4
|
+
*.conf text eol=lf
|
|
5
|
+
*.ini text eol=lf
|
|
6
|
+
*.html text eol=lf
|
|
7
|
+
*.yaml text eol=lf
|
|
8
|
+
Dockerfile text eol=lf
|