ComfyUI-Manager icon indicating copy to clipboard operation
ComfyUI-Manager copied to clipboard

Proposed feature feedback: find unused nodepacks

Open jfcantu opened this issue 5 months ago • 1 comments

Hey folks,

I have a feature I've been working on, and before I put too much more work into it, I'd like to solicit feedback and confirm that this is something the team would indeed want to incorporate - as well as get feedback/guidance on implementation and on my approach.

Proposed feature

The ability for CM to review the ComfyUI workflows in your user directory, determine what nodes/nodepacks they use, and report nodepacks not used by any workflow.

Proposed implementation

  • Registering a new API route with the CM server (/customnode/get_node_types_in_workflows), which returns an array of JSON objects, identifying the workflow file (by relative path) and containing a list of unique nodes in that workflow file (including cnr_id and aux_id, if present.)
    • Currently, I'm doing this via local filesystem operations, but could possibly do it via ComfyUI server API operations as well.
  • Adding a new front-end dialog to ComfyUI-Manager to display the nodepacks.
    • The majority of processing would take place on the front-end, with the CM API returning the list of workflows and nodes in use, and the front-end doing the work of resolving nodes to nodepacks and calculating which ones are in use.
    • Note: Since some of the above functionality (node/nodepack resolution) currently lives in the custom nodes manager, rather than duplicating code across, I'm inclined to break that functionality out from the custom nodes manager and move it into a separate .js file that both the node usage analyzer and the custom nodes manager can use.

Outcome and future improvements

Initially, I'd just want to know what nodes I'm not using. Afterwards, maybe look into more detailed reporting (i.e., report on how heavily a nodepack is used by different workflows.)

Thanks for reading - I welcome your input!


Backstory:

I'm a relative n00b to Stable Diffusion and ComfyUI, so in the process of learning, I installed a zillion different nodepacks as I was running various tutorial workflows. I now have some understanding of what I'm doing, and what nodes I generally use and don't use - but now I have 70 (!) nodepacks installed, and I have very little idea which of them I'm actually using. Not to mention some of the node-packs have overlapping functionality, so I'd like to try and figure out which of my workflows might be using a single node that exists in another nodepack that I'm using more heavily.

jfcantu avatar Aug 24 '25 18:08 jfcantu

Currently, information about installed nodepacks is delivered to the front via /customnode/installed, and whether they are being used in a workflow is calculated on the front end.

ltdrdata avatar Aug 27 '25 16:08 ltdrdata