calesthio/OpenMontage · error · ComfyUIError
ComfyUI server does not expose {node_class}; update ComfyUI
Error message
ComfyUI server does not expose {node_class}; update ComfyUI and enable Partner Nodes. These are hosted API nodes, not offline models. What it means
Raised by ComfyUIVideoTool when the selected model_family maps to a hosted Partner Node class but the connected ComfyUI server's node registry (checked via client.has_node) does not expose it. Partner Nodes are cloud-backed API nodes shipped in recent ComfyUI releases; an older server or one without them enabled will not have the class.
Source
Thrown at tools/video/comfyui_video.py:503
f"ComfyUI server is running but missing models for {operation}: "
f"{', '.join(missing)}.\n"
f"See data.missing_models for destination hints and download URLs."
),
)
start = time.time()
seed = inputs.get("seed") or ComfyUIClient.random_seed()
output_path = Path(
inputs.get("output_path", f"comfyui_video_{operation}_{seed}.mp4")
)
try:
if custom_workflow:
workflow = self._load_custom_workflow(inputs)
output_node = str(inputs["output_node"])
elif model_family in partner_nodes:
node_class = partner_nodes[model_family]
if not self._client.has_node(node_class):
raise ComfyUIError(
f"ComfyUI server does not expose {node_class}; update ComfyUI "
"and enable Partner Nodes. These are hosted API nodes, not offline models."
)
workflow, output_node = self._build_partner_t2v(
inputs, seed, output_path, model_family
)
elif operation == "image_to_video":
workflow, output_node = self._build_i2v(inputs, seed, output_path)
else:
workflow, output_node = self._build_t2v(inputs, seed, output_path)
provenance = self._workflow_provenance(
inputs, custom_workflow, output_node, operation, workflow, model_family
)
paths = self._client.generate(
workflow,
output_node=output_node,
dest=output_path,View on GitHub (pinned to 95e1c3d0ab)
Solutions
- Update ComfyUI to a release that includes Partner Nodes and restart it, then retry
- Verify the node is actually loaded: GET /object_nodes on the ComfyUI server and grep for the node class named in the message
- Confirm you are pointing at the intended server (check the client's base URL / COMFYUI_URL env)
- If you cannot update, use a local open-weights workflow instead (custom workflow JSON via workflow_path, or the built-in wan i2v/t2v paths)
Example fix
# before comfyui --listen # old install, missing partner nodes # after cd ComfyUI && git pull && pip install -r requirements.txt && python main.py --listen # verify: curl -s http://127.0.0.1:8188/object_nodes | grep -o '"Seedance[^"]*"'
Defensive patterns
Strategy: validation
Validate before calling
node_class = partner_nodes.get(model_family) # or hardcode from docs
if node_class and not comfyui_client.has_node(node_class):
raise SystemExit(
f'ComfyUI at {comfyui_client.base_url} lacks {node_class}; '
'update ComfyUI and enable Partner Nodes, or pick a local-weights family') Type guard
def partner_node_ready(client, family: str, partner_nodes: dict) -> bool:
node = partner_nodes.get(family)
return node is None or client.has_node(node) Try / catch
try:
result = comfyui_video.run(inputs=inputs)
except ComfyUIError as e:
if 'does not expose' in str(e):
# fall back to a local open-weights workflow
inputs['workflow_path'] = 'workflows/wan22-i2v-4step.json'
result = comfyui_video.run(inputs=inputs)
else:
raise Prevention
- Pin and update ComfyUI alongside this tool; partner nodes are version-gated
- Smoke-test /object_nodes after every ComfyUI upgrade
- Keep a local-weights workflow JSON as fallback for air-gapped or old servers
When it happens
Trigger: Selecting a partner-node family (e.g. seedance/minimax via ComfyUI) against a ComfyUI instance built before Partner Nodes existed or with them disabled; connecting to the wrong server (a fresh minimal install); custom forks that renamed or stripped the node classes.
Common situations: Outdated ComfyUI checkout after pulling new tooling code; pointing COMFYUI_URL at a spare local server; ComfyUI updated but launched from a different environment/venv that still has the old version.
Related errors
- Invalid status: {status!r}
- Required environment variable {key!r} is not set
- Error: Node.js is required. Install it from https://nodejs.o
- Error: npm is required but was not found on PATH.
- Error: npx is required but was not found on PATH.
AI-assisted analysis of calesthio/OpenMontage@95e1c3d0ab (2026-08-15).
Data as JSON: /api/errors/e5e279ff8273c054.
Report an issue: GitHub.