Comfy-Org / Comfy-Org/ComfyUI_frontend

Simplify subgraphs ( no input / output nodes )

Open
#5,917 3 comments 0 reactions 0 assignees View on GitHub
area:subgraph enhancement
Dominant language
TypeScript
Stars
2k
Forks
704
Avg merge
1d 8h
Merged PRs (30d)
512

Description

### Is there an existing issue for this?

- [x] I have searched the existing issues and checked the recent builds/commits

### What problem are you experiencing?

Input / output nodes make subgraphs more complex than what they need to be.

### When does this problem occur?

When subgraphs have inputs / outputs from multiple nodes, the subgraph gets very cluttered, easily.

### How often do you encounter this problem?

Multiple times per day

### How much does this problem affect your workflow?

Causes moderate inconvenience

### Current workarounds

_No response_

### Ideas for solutions (Optional)

For me, the main advantage of the input / output nodes is to change the order of input / output slots, in the subgraph node.
But the current method is not very easy, and users have asked for a better way ( https://github.com/Comfy-Org/ComfyUI_frontend/issues/4195 ).

Now we just got a new menu to edit promoted widgets, that allows click and drag to change widget order ( https://github.com/Comfy-Org/ComfyUI_frontend/pull/5826 ).

So, we could have similar menus to "promote" input / output slots to the main graph.
And when this happens, the slot could have a different design:

- We could have a slot design that matches promoted widgets ( maybe a blue color would work better here ).

![Image](https://github.com/user-attachments/assets/81c36200-116e-43b0-b98a-4481b2fcbfdf)

- Or a completely new design

![Image](https://github.com/user-attachments/assets/518a54d4-818b-4130-af42-0cbe48912adb)

---

**Additional details:**

- Only free inputs in the subgraph would show up in the "promotable" inputs list.
But all outputs could be shown in the "promotable" outputs list.

- We could still drag wires to make connections to promoted input slots ( and they would be "de-promoted" automatically ).
But promoted outputs could still be connected to other nodes in the subgraph ( and keep the promoted status ).

- We could also change names directly from the new menu ( https://github.com/Comfy-Org/ComfyUI_frontend/issues/5914 )

- We could have a right click option to `promote slot`.
In this case, when we "promote" a connected input slot, the wire would be disconnected automatically.

![Image](https://github.com/user-attachments/assets/52fe2647-4cb2-4dbf-8a3c-3cbab5ba6c2f)

### Additional context

_No response_

┆Issue is synchronized with this [Notion page](https://www.notion.so/Issue-5917-Simplify-subgraphs-no-input-output-nodes-2826d73d365081659485dd55ed4d677e) by [Unito](https://www.unito.io)

Contributor guide

Open the contributing guide

Research direction

Start by reviewing related issue #4195 and PR #5826, then trace the existing subgraph and promoted-widget interactions. Clarify the promotion, connection, ordering, naming, and visual-design rules before implementation; done should leave subgraphs usable without unnecessary input/output nodes while preserving the described connection behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
design, frontend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.