OpenBMB/ChatDev · error · ValueError
Unsupported node type: {node_type}
Error message
Unsupported node type: {node_type} What it means
create_executor looks up node_type in the registry of node registrations (iter_node_registrations()); an unknown type has no builder and raises ValueError.
Source
Thrown at runtime/node/executor/factory.py:56
) -> NodeExecutor:
"""Create an executor for the requested node type.
Args:
node_type: Registered node type name
context: Shared execution context
subgraphs: Mapping of subgraph nodes (used by Subgraph executors)
Returns:
Executor instance for the requested type
Raises:
ValueError: If the node type is not supported
"""
subgraphs = subgraphs or {}
registrations = iter_node_registrations()
if node_type not in registrations:
raise ValueError(f"Unsupported node type: {node_type}")
return registrations[node_type].build_executor(context, subgraphs=subgraphs)
View on GitHub (pinned to 4fb2db0ea9)
Solutions
- Print sorted(iter_node_registrations().keys()) and fix node_type to a registered value
- Import/register your custom node registration before creating executors
- Upgrade the runtime to the version that supports the node type
Example fix
# before
create_executor(ctx, node_with_type('Agnet'))
# after
create_executor(ctx, node_with_type('agent')) Defensive patterns
Strategy: validation
Validate before calling
from runtime.node.executor.factory import iter_node_registrations
if node.node_type not in iter_node_registrations():
raise ValueError(f'unknown type {node.node_type}; known: {sorted(iter_node_registrations())}') Type guard
def is_supported_node_type(t: str) -> bool:
return t in iter_node_registrations() Prevention
- Validate workflow node types at load time
- Import custom node registration modules at app startup
When it happens
Trigger: Calling create_executor with node.node_type not among registered types, e.g. a typo like 'agnt' or a custom type whose registration module was never imported.
Common situations: Loading a saved workflow from a newer runtime version with new node types into an older runtime; custom node plugins not registered at startup; serialized typo in node_type.
Related errors
- unsupported memory store type '{store_type}'
- unsupported node type '{node_type}'
- Entry '{name}' is not a BaseConfig subclass
- tooling.type must be one of {list(iter_tooling_type_registra
- Edge condition type '{name}' already registered
AI-assisted analysis of OpenBMB/ChatDev@4fb2db0ea9 (2026-08-27).
Data as JSON: /api/errors/6f06dd1de5d4cc39.
Report an issue: GitHub.