Comfy-Org / Comfy-Org/ComfyUI_frontend

Custom node import failures only show “IMPORT FAILED” with no error context

Open
#7,733 3 comments 2 reactions 0 assignees View on GitHub
area:manager Custom Node
Dominant language
TypeScript
Stars
2k
Forks
699
Avg merge
1d 7h
Merged PRs (30d)
490

Description

### Custom Node Testing

- [x] I have tried disabling custom nodes and the issue persists (see [how to disable custom nodes](https://docs.comfy.org/troubleshooting/custom-node-issues#step-1%3A-test-with-all-custom-nodes-disabled) if you need help)

### Expected Behavior

When a custom node fails to import, ComfyUI should report *why* the import
failed (at least the exception type and message) in the import summary.

Example:
(IMPORT FAILED: ModuleNotFoundError: No module named 'xyz')

The full traceback can still be logged for deeper debugging.

### Actual Behavior

When a custom node fails to import, the “Import times for custom nodes”
section only shows:

(IMPORT FAILED)

No exception type or error message is shown next to the failing module.
This makes diagnosing broken custom nodes difficult, especially when
many nodes are loading.

### Steps to Reproduce

1. Start ComfyUI with at least one custom node that fails to import
(e.g. missing dependency, syntax error, invalid import).
2. Launch ComfyUI normally.
3. Observe the startup logs under:

“Import times for custom nodes”

4. Note that the failing node only reports:
(IMPORT FAILED)
with no error context.

### Debug Logs

```powershell
Import times for custom nodes:
0.0 seconds: %USER\@comfyorgcomfyui-electron\resources\ComfyUI\custom_nodes\websocket_image_save.py
0.0 seconds (IMPORT FAILED): %PKG\custom_nodes\comfy_remote_workflow_saver
0.0 seconds: %PKG\custom_nodes\comfy_remote_dispatcher
```

### Other

This is a diagnostics / UX bug rather than a feature request.

The exception already exists internally but is not surfaced in the import
summary, forcing users to manually correlate failures with log output.

I’ve attached a small, surgical patch that:
- Captures the exception raised during custom node import
- Displays a concise one-line failure reason inline
- Logs the full traceback once for immediate diagnosis

If maintainers are okay with the approach, I’m happy to open a PR.

[custom_node_import_diagnostics.patch](https://github.com/user-attachments/files/24278691/custom_node_import_diagnostics.patch)

After the fix it will look like this
```bash
0.0 seconds (IMPORT FAILED: ImportError: attempted relative import beyond top-level package):
custom_nodes/comfy_remote_io

Custom node import traceback for custom_nodes/comfy_remote_io:
Traceback (most recent call last):
File "nodes.py", line 2155, in load_custom_node
module_spec.loader.exec_module(module)
File "custom_nodes/comfy_remote_io/__init__.py", line 2, in
from .nodes.cremote_image_loader import CREMOTE_ImageLoader, CREMOTE_LiveImage
File "custom_nodes/comfy_remote_io/nodes/cremote_image_loader.py", line 14, in
from ...utils.color import list_ocio_colorspaces
ImportError: attempted relative import beyond top-level package

---

*This issue is transferred from: https://github.com/comfyanonymous/ComfyUI/issues/11454*

Original issue was created by @cmyoussef at 2025-12-21T13:12:25.000Z

**Original Comments:**

@mdkdy:

New innovative manager fails to install custom node requirements and then just prints enigmatic "install failed". But wait, it looks so modern because it has big thumbnails that does nothing but clutter.

Good that manual install works.

@femto-coder:

Not sure why this would be labled frontend, 

Just running the server, will require the custom-nodes to be loaded, if there is an issue with a node, we will not know why it's failing

┆Issue is synchronized with this [Notion page](https://www.notion.so/Issue-7733-Custom-node-import-failures-only-show-IMPORT-FAILED-with-no-error-context-2d16d73d365081338cdcc3c75206fb0d) by [Unito](https://www.unito.io)

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.