comfyui-mcp 0.52.206-beta.3 → 0.52.206-beta.5
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/chatgpt-oauth-backend.js +122 -15
- package/dist/orchestrator/chatgpt-oauth-backend.js.map +1 -1
- package/dist/orchestrator/index.js +33 -4
- package/dist/orchestrator/index.js.map +1 -1
- package/dist/orchestrator/model-defaults.js +77 -0
- package/dist/orchestrator/model-defaults.js.map +1 -0
- package/dist/orchestrator/ollama-backend.js +98 -6
- package/dist/orchestrator/ollama-backend.js.map +1 -1
- package/dist/orchestrator/panel-agent.js +30 -0
- package/dist/orchestrator/panel-agent.js.map +1 -1
- package/package.json +7 -7
|
@@ -28,29 +28,100 @@ const MAX_TOOL_ROUNDS = 32;
|
|
|
28
28
|
function msgOf(err) {
|
|
29
29
|
return errorText(err);
|
|
30
30
|
}
|
|
31
|
-
/** Codex model slugs (gpt
|
|
31
|
+
/** Codex model slugs (gpt-*, codex-*) — not Claude panel ids.
|
|
32
|
+
*
|
|
33
|
+
* Its job is to keep a CLAUDE id the panel pushes (claude-opus-5) from being sent
|
|
34
|
+
* to ChatGPT, not to decide which ChatGPT generation is current. It used to be
|
|
35
|
+
* `/^gpt-5/`, which made `setModel` silently ignore every gpt-6 pick: no error,
|
|
36
|
+
* the model just never changed. `gpt-oss` is excluded because it is an
|
|
37
|
+
* open-weight model served by Ollama, matching ollama-backend's classifier. */
|
|
32
38
|
export function isChatGptModel(id) {
|
|
33
39
|
const m = id.trim().toLowerCase();
|
|
34
|
-
return /^gpt-
|
|
40
|
+
return /^gpt-(?!oss)/.test(m) || m.startsWith("codex") || m.includes("codex");
|
|
35
41
|
}
|
|
36
42
|
function codexModelsCachePath(home = homedir()) {
|
|
37
43
|
const root = process.env.CODEX_HOME || join(home, ".codex");
|
|
38
44
|
return join(root, "models_cache.json");
|
|
39
45
|
}
|
|
40
|
-
async function
|
|
46
|
+
export async function loadCodexModels(home = homedir()) {
|
|
41
47
|
const path = codexModelsCachePath(home);
|
|
42
48
|
if (!existsSync(path))
|
|
43
49
|
return [];
|
|
44
50
|
try {
|
|
45
51
|
const raw = JSON.parse(await readFile(path, "utf8"));
|
|
46
|
-
const
|
|
47
|
-
const
|
|
48
|
-
|
|
52
|
+
const seen = new Set();
|
|
53
|
+
const out = [];
|
|
54
|
+
for (const m of [...(raw.models ?? []), ...(raw.data ?? [])]) {
|
|
55
|
+
const id = m.id ?? m.slug ?? m.name;
|
|
56
|
+
if (!id || seen.has(id))
|
|
57
|
+
continue;
|
|
58
|
+
seen.add(id);
|
|
59
|
+
out.push({
|
|
60
|
+
id,
|
|
61
|
+
...(m.display_name ? { label: m.display_name } : {}),
|
|
62
|
+
...(typeof m.visibility === "string" ? { visibility: m.visibility } : {}),
|
|
63
|
+
...(typeof m.priority === "number" ? { priority: m.priority } : {}),
|
|
64
|
+
...(m.upgrade?.model
|
|
65
|
+
? { upgrade: { model: m.upgrade.model, ...(m.upgrade.retirement_at ? { retirementAt: m.upgrade.retirement_at } : {}) } }
|
|
66
|
+
: {}),
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
return out;
|
|
49
70
|
}
|
|
50
71
|
catch {
|
|
51
72
|
return [];
|
|
52
73
|
}
|
|
53
74
|
}
|
|
75
|
+
/** True when the cache carries the server's catalog (current Codex). A bare-id
|
|
76
|
+
* cache from an older Codex has none of these, and falls back to the 5.6 floor. */
|
|
77
|
+
function hasCatalogMetadata(entries) {
|
|
78
|
+
return entries.some((e) => e.visibility !== undefined || e.priority !== undefined);
|
|
79
|
+
}
|
|
80
|
+
/** gpt-<major>[.<minor>] → [major, minor]; null for unversioned ids (gpt-reserve, codex-*). */
|
|
81
|
+
function gptVersion(id) {
|
|
82
|
+
const m = /^gpt-(\d+)(?:\.(\d+))?/.exec(id.trim().toLowerCase());
|
|
83
|
+
return m ? [Number(m[1]), Number(m[2] ?? 0)] : null;
|
|
84
|
+
}
|
|
85
|
+
/** At or above the 2026-07-20 deprecation floor (gpt-5.6). A FLOOR, not a pin:
|
|
86
|
+
* every newer generation passes. */
|
|
87
|
+
function atLeastGpt56(id) {
|
|
88
|
+
const v = gptVersion(id);
|
|
89
|
+
return !!v && (v[0] > 5 || (v[0] === 5 && v[1] >= 6));
|
|
90
|
+
}
|
|
91
|
+
/** What the server offers for a picker, in the server's own order. */
|
|
92
|
+
function listedByPriority(entries) {
|
|
93
|
+
return entries
|
|
94
|
+
.filter((e) => e.visibility !== "hide")
|
|
95
|
+
.sort((a, b) => (a.priority ?? Number.MAX_SAFE_INTEGER) - (b.priority ?? Number.MAX_SAFE_INTEGER));
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* The ChatGPT model a session starts on when the user named none: the Codex
|
|
99
|
+
* catalog's top-ranked listed model (priority 1).
|
|
100
|
+
*
|
|
101
|
+
* A baked id here goes stale the day a generation ships — gpt-5.6-luna was still
|
|
102
|
+
* the default after the catalog described it as an "Older fast and efficient
|
|
103
|
+
* model". The catalog is per-account and refreshed by the Codex CLI, so its top
|
|
104
|
+
* pick is both current and something this account can use. An explicit
|
|
105
|
+
* COMFYUI_MCP_CHATGPT_MODEL always wins, and a cache without catalog metadata
|
|
106
|
+
* (older Codex) falls back to the baked default, so nothing gets worse offline.
|
|
107
|
+
*/
|
|
108
|
+
export async function resolveChatGptDefaultModel(home = homedir()) {
|
|
109
|
+
const explicit = process.env.COMFYUI_MCP_CHATGPT_MODEL?.trim();
|
|
110
|
+
if (explicit)
|
|
111
|
+
return explicit;
|
|
112
|
+
const entries = await loadCodexModels(home);
|
|
113
|
+
if (!hasCatalogMetadata(entries))
|
|
114
|
+
return CHATGPT_DEFAULT_MODEL;
|
|
115
|
+
return listedByPriority(entries)[0]?.id ?? CHATGPT_DEFAULT_MODEL;
|
|
116
|
+
}
|
|
117
|
+
function isRetired(entry, now = Date.now()) {
|
|
118
|
+
if (!entry?.upgrade)
|
|
119
|
+
return false;
|
|
120
|
+
const at = entry.upgrade.retirementAt ? Date.parse(entry.upgrade.retirementAt) : NaN;
|
|
121
|
+
// An upgrade notice with no (or an unparseable) date is treated as retired:
|
|
122
|
+
// the server is saying "move", and keeping the user on it is the riskier side.
|
|
123
|
+
return Number.isNaN(at) || now >= at;
|
|
124
|
+
}
|
|
54
125
|
function toResponsesTools(tools) {
|
|
55
126
|
return tools.map((t) => {
|
|
56
127
|
const fn = (t.function ?? t);
|
|
@@ -422,20 +493,56 @@ export class ChatGptOAuthBackend extends OllamaBackend {
|
|
|
422
493
|
this.model = model;
|
|
423
494
|
}
|
|
424
495
|
async listModels() {
|
|
425
|
-
const
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
496
|
+
const entries = await loadCodexModels();
|
|
497
|
+
return hasCatalogMetadata(entries) ? this.listFromCatalog(entries) : this.listFromBareIds(entries);
|
|
498
|
+
}
|
|
499
|
+
/**
|
|
500
|
+
* Current Codex: follow the server's own catalog.
|
|
501
|
+
*
|
|
502
|
+
* This replaces a hardcoded "GPT-5.6-only" policy that was meant to hide OLDER
|
|
503
|
+
* models but was written as "show only gpt-5.6*", so it hid NEWER ones too:
|
|
504
|
+
* gpt-6-astra and gpt-6.1-sol sat in a fresh cache and never reached the picker,
|
|
505
|
+
* and a gen-6 pick was force-migrated back to 5.6 as "deprecated". The catalog
|
|
506
|
+
* already says everything that policy guessed at — what to list (`visibility`),
|
|
507
|
+
* in what order (`priority`), and what is being retired and its replacement
|
|
508
|
+
* (`upgrade`) — so a new generation needs no code change here.
|
|
509
|
+
*/
|
|
510
|
+
listFromCatalog(entries) {
|
|
511
|
+
const byId = new Map(entries.map((e) => [e.id, e]));
|
|
512
|
+
const listed = listedByPriority(entries);
|
|
513
|
+
const active = byId.get(this.model);
|
|
514
|
+
// Migrate the ACTIVE model only on a real signal. Re-inserting a dead model at
|
|
515
|
+
// the head kept it selected and 400ing every turn (codex review), so:
|
|
516
|
+
// • retired per the server's own notice -> its named replacement;
|
|
517
|
+
// • absent from the catalog entirely -> the catalog's top-ranked model.
|
|
518
|
+
// A HIDDEN model is not dead (the user or env chose it deliberately), and a
|
|
519
|
+
// model with an upgrade notice still works until its retirement date.
|
|
520
|
+
let target;
|
|
521
|
+
if (isRetired(active))
|
|
522
|
+
target = active?.upgrade?.model;
|
|
523
|
+
else if (!active && listed.length)
|
|
524
|
+
target = listed[0].id;
|
|
525
|
+
if (target && target !== this.model) {
|
|
526
|
+
logger.info(`[chatgpt-oauth-backend] active model ${this.model} is retired or unavailable — migrating to ${target}`);
|
|
527
|
+
this.model = target;
|
|
528
|
+
}
|
|
529
|
+
const head = byId.get(this.model);
|
|
530
|
+
const rest = listed.filter((e) => e.id !== this.model).slice(0, 40);
|
|
531
|
+
return [{ id: this.model, label: head?.label ?? this.model }, ...rest.map((e) => ({ id: e.id, label: e.label ?? e.id }))];
|
|
532
|
+
}
|
|
533
|
+
/** Older Codex wrote bare ids with no catalog metadata. Keep the 2026-07-20
|
|
534
|
+
* deprecation, but as a floor: hide what is OLDER than gpt-5.6 when anything
|
|
535
|
+
* at or above it exists, and let every newer generation through. A cache with
|
|
536
|
+
* nothing at or above the floor keeps its full list, so older plans never brick. */
|
|
537
|
+
listFromBareIds(entries) {
|
|
538
|
+
const cached = entries.map((e) => e.id);
|
|
539
|
+
const fam = cached.filter(atLeastGpt56);
|
|
429
540
|
const ids = fam.length
|
|
430
541
|
? fam
|
|
431
542
|
: cached.length
|
|
432
543
|
? cached
|
|
433
544
|
: ["gpt-5.6-sol", "gpt-5.6-terra", CHATGPT_DEFAULT_MODEL];
|
|
434
|
-
|
|
435
|
-
// default) must not be re-inserted at the head of the filtered list — that
|
|
436
|
-
// kept it selected and 400ing every turn (codex review). Migrate the
|
|
437
|
-
// instance to the family default instead so the next turn works.
|
|
438
|
-
if (fam.length && this.model && !this.model.startsWith("gpt-5.6")) {
|
|
545
|
+
if (fam.length && this.model && !atLeastGpt56(this.model)) {
|
|
439
546
|
logger.info(`[chatgpt-oauth-backend] active model ${this.model} is deprecated — migrating to ${CHATGPT_DEFAULT_MODEL}`);
|
|
440
547
|
this.model = ids.includes(CHATGPT_DEFAULT_MODEL) ? CHATGPT_DEFAULT_MODEL : ids[0];
|
|
441
548
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chatgpt-oauth-backend.js","sourceRoot":"","sources":["../../src/orchestrator/chatgpt-oauth-backend.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"chatgpt-oauth-backend.js","sourceRoot":"","sources":["../../src/orchestrator/chatgpt-oauth-backend.ts"],"names":[],"mappings":"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"}
|
|
@@ -110,7 +110,8 @@ import { PiBackend } from "./pi-backend.js";
|
|
|
110
110
|
import { GrokBackend, GROK_DEFAULT_MODEL } from "./grok-backend.js";
|
|
111
111
|
import { QwenBackend, QWEN_DEFAULT_MODEL } from "./qwen-backend.js";
|
|
112
112
|
import { OllamaBackend, OLLAMA_SYSTEM_PROMPT } from "./ollama-backend.js";
|
|
113
|
-
import { ChatGptOAuthBackend, CHATGPT_DEFAULT_MODEL } from "./chatgpt-oauth-backend.js";
|
|
113
|
+
import { ChatGptOAuthBackend, CHATGPT_DEFAULT_MODEL, resolveChatGptDefaultModel } from "./chatgpt-oauth-backend.js";
|
|
114
|
+
import { pickTopClaudeModel } from "./model-defaults.js";
|
|
114
115
|
import { KimiBackend } from "./kimi-backend.js";
|
|
115
116
|
import { OPENAI_KEY_PROVIDER_IDS, openAiKeyProvider, simpleKeyProvider, openAiKeyProviderModel, } from "../services/openai-provider-registry.js";
|
|
116
117
|
import { resolveOpenAiKeyCredentials } from "../services/code-provider-auth.js";
|
|
@@ -1153,6 +1154,9 @@ export async function runPanelOrchestrator() {
|
|
|
1153
1154
|
? { COMFYUI_MCP_FORCE_REMOTE: "1" }
|
|
1154
1155
|
: {};
|
|
1155
1156
|
const model = process.env.COMFYUI_MCP_PANEL_MODEL ?? "claude-opus-5";
|
|
1157
|
+
// Unset = "first rank": the probe below adopts the newest Opus the account
|
|
1158
|
+
// advertises, and `model` is only the fallback until it answers. Set = pinned.
|
|
1159
|
+
const claudeModelExplicit = !!process.env.COMFYUI_MCP_PANEL_MODEL?.trim();
|
|
1156
1160
|
const envEffort = process.env.COMFYUI_MCP_PANEL_EFFORT;
|
|
1157
1161
|
const effort = isEffort(envEffort) ? envEffort : undefined;
|
|
1158
1162
|
// Single-port multi-provider: ONE orchestrator on ONE bridge port serves ALL
|
|
@@ -1349,7 +1353,13 @@ export async function runPanelOrchestrator() {
|
|
|
1349
1353
|
}
|
|
1350
1354
|
const persistedAgent = getAgentSettings();
|
|
1351
1355
|
let ollamaModel = process.env.COMFYUI_MCP_OLLAMA_MODEL ?? persistedAgent.ollama?.model ?? "artokun/gemma4-comfyui-mcp:e4b";
|
|
1352
|
-
|
|
1356
|
+
// First rank: the Codex catalog's top-ranked model unless one is pinned in env.
|
|
1357
|
+
// Resolved once here so the backend, the ready banner and the picker's "current"
|
|
1358
|
+
// all name the same model.
|
|
1359
|
+
const chatgptModel = await resolveChatGptDefaultModel();
|
|
1360
|
+
if (!process.env.COMFYUI_MCP_CHATGPT_MODEL?.trim() && chatgptModel !== CHATGPT_DEFAULT_MODEL) {
|
|
1361
|
+
logger.info(`[panel-orchestrator] chatgpt default model → ${chatgptModel} (top of the Codex catalog)`);
|
|
1362
|
+
}
|
|
1353
1363
|
// kimi keeps a local model var (its bespoke KimiBackend takes it). glm/moonshot
|
|
1354
1364
|
// read their model straight from the registry via the shared factory, so no
|
|
1355
1365
|
// per-provider model var is needed for them anymore. All three still resolve to
|
|
@@ -3398,6 +3408,15 @@ export async function runPanelOrchestrator() {
|
|
|
3398
3408
|
p = probe.then((list) => {
|
|
3399
3409
|
if (!list.length)
|
|
3400
3410
|
modelsByBackend.delete(backend); // don't cache a failed probe
|
|
3411
|
+
// First-rank Claude default: adopt the newest Opus this account advertises.
|
|
3412
|
+
if (backend === "claude" && !claudeModelExplicit && list.length) {
|
|
3413
|
+
const top = pickTopClaudeModel(list);
|
|
3414
|
+
if (top && top !== manager.defaultModel) {
|
|
3415
|
+
void manager.adoptDefaultModel(top, (key) => backendOf(key) === "claude").then((switched) => {
|
|
3416
|
+
logger.info(`[panel-orchestrator] claude default model → ${top} (newest advertised Opus)${switched.length ? `; switched ${switched.length} live tab(s) at their next turn` : ""}`);
|
|
3417
|
+
});
|
|
3418
|
+
}
|
|
3419
|
+
}
|
|
3401
3420
|
// LM Studio / llama.cpp ship no sane hardcoded default (the model is
|
|
3402
3421
|
// whatever the user downloaded/launched) — adopt the server's first
|
|
3403
3422
|
// offering when unset. llama-server serves exactly one model, so this
|
|
@@ -3445,6 +3464,13 @@ export async function runPanelOrchestrator() {
|
|
|
3445
3464
|
}
|
|
3446
3465
|
return p;
|
|
3447
3466
|
}
|
|
3467
|
+
// First-rank Claude default: probe at startup rather than at the first hello, so
|
|
3468
|
+
// a tab opened right away spawns on the adopted model instead of racing the probe
|
|
3469
|
+
// on the fallback. Only when Claude is the default backend and no model is pinned
|
|
3470
|
+
// (other users would pay for a Claude subprocess they never use). A failed probe
|
|
3471
|
+
// is not cached, so the hello path still retries.
|
|
3472
|
+
if (defaultBackend === "claude" && !claudeModelExplicit)
|
|
3473
|
+
void ensureModels("claude");
|
|
3448
3474
|
// The model to highlight as "current" for a backend: the panel's configured
|
|
3449
3475
|
// model for claude; the env override (or account default = the list's own
|
|
3450
3476
|
// current) for codex/gemini.
|
|
@@ -3478,7 +3504,10 @@ export async function runPanelOrchestrator() {
|
|
|
3478
3504
|
return openAiKeyProviderModel(reg); // glm / kimi / moonshot
|
|
3479
3505
|
if (backend === "copilot")
|
|
3480
3506
|
return copilotModel;
|
|
3481
|
-
|
|
3507
|
+
// The manager's LIVE default, not the startup `model`: once the probe adopts the
|
|
3508
|
+
// account's top-ranked Claude, the picker's "current" and the agent identity
|
|
3509
|
+
// stamp must name it, not the fallback it replaced.
|
|
3510
|
+
return manager.defaultModel;
|
|
3482
3511
|
}
|
|
3483
3512
|
/**
|
|
3484
3513
|
* Publish WHICH LLM is driving an agent, so report_issue can stamp it into the
|
|
@@ -4210,7 +4239,7 @@ export async function runPanelOrchestrator() {
|
|
|
4210
4239
|
? (openrouterModel ?? models[0].value ?? "OpenRouter")
|
|
4211
4240
|
: isCp
|
|
4212
4241
|
? (copilotModel ?? models[0].value ?? "Copilot")
|
|
4213
|
-
:
|
|
4242
|
+
: manager.defaultModel;
|
|
4214
4243
|
// llama.cpp launch gotchas (issue #161): a reachable server can still
|
|
4215
4244
|
// be useless for us — tool calling needs --jinja (rejected requests),
|
|
4216
4245
|
// and a launch-time -c under ~16K silently truncates the tool payload.
|