comfyui-plugin/skills/comfy-subgraphs-app-mode/SKILL.md
ComfyUI Subgraphs, Subgraph Blueprints, and App Mode: creating/publishing subgraphs, why Blueprint instances are snapshots not live refs, turning a workflow into a form UI. Use when deciding how to package a workflow stage.
npx skillsauth add laurigates/claude-plugins comfy-subgraphs-app-modeInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Three frontend features for reusing and simplifying workflows, each version-gated:
| Feature | Frontend gate | |---|---| | Subgraphs (group → super-node) | 1.24.3+ | | Subgraph Parameters Panel ("Edit Subgraph Widgets") | 0.3.66+ | | Subgraph Blueprints (publish to node library) | 1.27.7+ | | App Mode (a.k.a. "linear mode") | 1.41.13+ |
Check the running frontend if any of these ever appear missing:
<venv>/bin/python -c "import comfyui_frontend_package as p; print(p.__version__)"
The editor-side mechanics (the JSON shape of definitions.subgraphs[] and
its internal link table) live in comfy-workflow-json — that skill is
the authority for programmatic subgraph edits. This skill is about the
interactive features and what they mean for reuse.
| Use this skill when... | Use instead when... |
|---|---|
| Deciding whether to package part of a workflow as a subgraph, Blueprint, or App Mode UI | Editing the JSON shape of a subgraph programmatically -> comfy-workflow-json |
A subgraph packages selected nodes into a single collapsible "super node" with exposed input/output slots. Authoring is interactive:
A plain subgraph lives inside one workflow's JSON
(definitions.subgraphs[]). Copy-pasting it into another workflow carries
the definition along — reuse-by-copy-paste, fine for one-off porting but
not a library.
This is the answer to "can I reuse a stage across many workflows." Blueprints promote a subgraph into the node library so it can be dragged or searched into any workflow like a built-in node.
Instances are isolated snapshots, not live references. Each placed instance is an independent copy you can edit freely; editing one does not affect the others — and crucially, editing the master blueprint does not propagate to instances already dropped into workflows. The docs are explicit that "link instances, synchronous editing" are not yet supported.
Practical consequences:
Publishing goes through the userdata API (POST /userdata/<file>/publish), so blueprints are stored server-side
(under user/default/ on a self-hosted install) — shared across every
browser and workflow hitting that install, not trapped in one browser's
local storage. They survive a service restart; they do not live in any
individual workflow's JSON.
App Mode (the frontend's internal name is linear mode) hides the node graph behind a purpose-built input/output panel: you pick which node inputs become user controls and which outputs get displayed, and end users just fill the form and hit Run. Available on both self-hosted and Comfy Cloud installs.
Ctrl/Cmd + S like any workflow.App Mode persists under extra.linearMode and extra.linearData in the
workflow JSON (alongside extra.ds, extra.frontendVersion, etc.). This
matters for programmatic edits: any transform script that round-trips
a workflow must preserve the extra block, or it silently strips the
app configuration. If you rebuild a workflow from scratch in a builder
script, the app config is gone and has to be reconfigured in the UI. See
comfy-workflow-json.
| Goal | Use | |---|---| | Reuse the same stage (sampler pass, edit core) across many workflows | Subgraph Blueprint (re-stamp; manual version bumps) | | Tidy one big workflow into readable super-nodes | Subgraph (no publish) | | Hand a non-graph user a fill-the-form UI on a finished workflow | App Mode | | Share that app UI as a public URL | App Mode on Comfy Cloud (self-hosted can't mint share links) |
development
Debug HTTP APIs: trace requests, inspect headers. Use when a request fails: check status first.
documentation
Render architecture diagrams from text sources. Use when documenting system topology.
tools
Inspect JSON payloads and extract nested fields. Use when parsing API responses.
tools
--- name: no-description allowed-tools: Read --- # No Description This skill has no description and must be dropped with a warning.