Skip to content

Update Comfy Blueprint#13371

Open
comfyui-wiki wants to merge 20 commits intomasterfrom
Import-blueprint
Open

Update Comfy Blueprint#13371
comfyui-wiki wants to merge 20 commits intomasterfrom
Import-blueprint

Conversation

@comfyui-wiki
Copy link
Copy Markdown
Member

@comfyui-wiki comfyui-wiki commented Apr 12, 2026

Summary

This PR adds a collection of new subgraph blueprints and fixes a naming issue in existing ones.

New Blueprints Added

Text to Image

  • Text to Image (Flux.1 Dev)
image
  • Text to Image (Flux.1 Krea Dev)
image
  • Text to Image (NetaYume Lumina)
image
  • Text to Image (Qwen-Image)
image
  • Text to Image (Qwen-Image 2512)
image
  • Text to Layers (Qwen-Image-Layered)

Image Editing & Inpainting

  • Image Edit (FireRed Image Edit 1.1)
image
  • Image Edit (LongCat Image Edit)
image
  • Image Inpainting (Flux.1 Fill Dev)
image

Image to Video / First-Last-Frame

  • Image to Video (LTX-2.3)
image
  • First-Last-Frame to Video (LTX-2.3)
image
  • Text to Video (LTX-2.3)
image

Image Processing

  • Crop Images 2x2
  • Crop Images 3x3
image

Bug Fix

  • Remove the local tag prefix from subgraph names in 5 existing blueprints (Depth to Image, Depth to Video, Image Edit Flux.2 Klein, Image Inpainting Qwen, Image Outpainting Qwen) to fix incorrect naming.

@comfyui-wiki comfyui-wiki changed the title New Subgraph Blueprints Update Comfy Blueprint Apr 12, 2026
@comfyui-wiki comfyui-wiki marked this pull request as ready for review April 12, 2026 12:36
@coderabbitai
Copy link
Copy Markdown

coderabbitai bot commented Apr 12, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 01d7f403-5fa7-4468-8349-d2fcdfb4933a

📥 Commits

Reviewing files that changed from the base of the PR and between 4cc0032 and c017dc7.

📒 Files selected for processing (2)
  • blueprints/Image to Layers(Qwen-Image-Layered).json
  • blueprints/Text to Image (NetaYume Lumina).json
🚧 Files skipped from review as they are similar to previous changes (1)
  • blueprints/Text to Image (NetaYume Lumina).json

📝 Walkthrough

Walkthrough

This pull request adds numerous ComfyUI blueprint JSON files (including Crop Images 2x2, Crop Images 3x3, multiple Image Edit and Image Inpainting/Outpainting variants, and several Text-to-Image workflows such as Flux, Krea, NetaYume, and Qwen variants). It also updates existing blueprints: several subgraph names had a leading "local-" removed, trailing newlines were trimmed, the Depth-to-Image/Video name fields were adjusted, and the Image to Layers blueprint received metadata/node/link/layout updates (IDs, widget proxies, and link mappings). New blueprints expose subgraph inputs/outputs and include full node/link definitions and metadata.

🚥 Pre-merge checks | ✅ 2 | ❌ 1

❌ Failed checks (1 inconclusive)

Check name Status Explanation Resolution
Title check ❓ Inconclusive The title 'Update Comfy Blueprint' is vague and generic, using non-descriptive terms that don't convey meaningful information about the specific changes made. Revise title to be more specific, such as 'Add text-to-image and image editing blueprints plus fix naming in existing blueprints' to better reflect the changeset scope.
✅ Passed checks (2 passed)
Check name Status Explanation
Description check ✅ Passed The description clearly relates to the changeset, detailing new blueprints added (text-to-image, image editing, image processing, video generation) and bug fixes (removing 'local' prefix from naming).
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 7

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@blueprints/Crop` Images 2x2.json:
- Around line 283-285: The current crop split logic uses INT(a/b) for both tile
sizes and offsets (seen in the widget expressions like "a/b"), which truncates
odd dimensions and can produce zero-size tiles; change it so the first tile uses
floor(dim/2) (or INT(dim/2)) but compute the right/bottom tile size as remainder
(dim - first_tile) and set offsets to 0 and first_tile, and clamp sizes to at
least 1 to avoid zero-size crops; update the corresponding expressions where
INT(a/b) is used for both size and offset (including the other occurrences
mentioned) to this remainder-based approach.

In `@blueprints/Crop` Images 3x3.json:
- Around line 384-386: Replace the truncated-third expressions ("a/b" and "2*a")
used to derive crop coordinates with explicit boundary computation from the
original image dimensions: compute x0=0, x1=Math.floor(W/3), x2=x1*2, and set
tile widths as w0=x1-x0, w1=x2-x1, w2=W-x2 (and similarly y0=0,
y1=Math.floor(H/3), y2=y1*2 with heights h0,h1,h2 by difference) so every pixel
is covered; update the code that emits the "widgets_values" (the places using
"a/b") to use these computed x/y boundaries and widths/heights, and apply the
same change to the other occurrences noted (lines referenced in the comment).

In `@blueprints/Image` Edit (FireRed Image Edit 1.1).json:
- Around line 858-866: The "outputs" array for the Switch (Steps) node contains
a nonexistent link id 344 alongside the valid 345, making the blueprint
inconsistent; remove the invalid id 344 from the outputs list so it only
references 345 (i.e., edit the outputs entry that currently lists [344, 345] and
change it to [345]) to restore correct graph wiring for the Switch (Steps)
output.

In `@blueprints/Image` Edit (LongCat Image Edit).json:
- Around line 268-276: The outputs entry for the IMAGE output contains a
duplicated link id in the linkIds array (the object with "id":
"0a288e93-c03f-4805-80f3-4e320a6a492e", "name": "IMAGE"); remove the repeated 20
so linkIds only includes a single 20 and ensure any serializer or exporter for
outputs deduplicates link IDs to prevent stale connection metadata from being
saved.

In `@blueprints/Text` to Image (Qwen-Image 2512).json:
- Around line 1225-1233: Remove the stray edge 347 from the turbo-steps path so
the 4-step value is only driven by the Switch (steps) link 371: delete the "347"
entry from the outputs/links arrays where present and remove any routing that
connects link 347 into KSampler.seed, leaving only link 371 feeding
KSampler.seed; ensure no other metadata still references link 347 in the
turbo-steps/Switch (steps)/KSampler.seed wiring.

In `@blueprints/Text` to Image (Qwen-Image).json:
- Around line 1419-1422: The "Original Settings" branch's non-turbo path
currently sets "widgets_values": [20, "fixed"] but the note says original
Qwen-Image uses 50 steps; update the blueprint so the non-turbo branch uses 50
steps instead of 20 (change the "widgets_values" array from 20 to 50) in both
occurrences (the one shown and the duplicate referenced) so disabling turbo
produces the documented baseline; look for the "Original Settings" branch and
the "widgets_values" arrays to make the edits.
- Around line 87-95: The exported boolean input for enable_turbo_mode is
currently using name: "value" which exposes the wrong key downstream; update the
JSON entries where label is "enable_turbo_mode" (the object with "type":
"BOOLEAN" and its "widget" sub-object) to set both "name" fields to
"enable_turbo_mode" instead of "value" so the input is exported under the
correct key; ensure you change both occurrences referenced in the diff (the
top-level "name" and the nested "widget"."name") and repeat the same fix for the
second block around lines 297–309.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 9177f79e-0e61-4ebe-8a2a-450f0239014c

📥 Commits

Reviewing files that changed from the base of the PR and between 31283d2 and 8a183b2.

📒 Files selected for processing (18)
  • blueprints/Crop Images 2x2.json
  • blueprints/Crop Images 3x3.json
  • blueprints/Depth to Image (Z-Image-Turbo).json
  • blueprints/Depth to Video (ltx 2.0).json
  • blueprints/First-Last-Frame to Video (LTX-2.3).json
  • blueprints/Image Edit (FireRed Image Edit 1.1).json
  • blueprints/Image Edit (Flux.2 Klein 4B).json
  • blueprints/Image Edit (LongCat Image Edit).json
  • blueprints/Image Inpainting (Flux.1 Fill Dev).json
  • blueprints/Image Inpainting (Qwen-image).json
  • blueprints/Image Outpainting (Qwen-Image).json
  • blueprints/Image to Video (LTX-2.3).json
  • blueprints/Text to Image (Flux.1 Dev).json
  • blueprints/Text to Image (Flux.1 Krea Dev).json
  • blueprints/Text to Image (NetaYume Lumina).json
  • blueprints/Text to Image (Qwen-Image 2512).json
  • blueprints/Text to Image (Qwen-Image).json
  • blueprints/Text to Video (LTX-2.3).json

Comment thread blueprints/Crop Images 2x2.json
Comment thread blueprints/Crop Images 3x3.json
Comment thread blueprints/Image Edit (FireRed Image Edit 1.1).json
Comment thread blueprints/Image Edit (LongCat Image Edit).json
Comment on lines +1225 to +1233
"outputs": [
{
"localized_name": "INT",
"name": "INT",
"type": "INT",
"links": [
347,
354
]
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major

Remove the stray 347 edge from the turbo-steps path.

Lines 1225-1233 still advertise link 347, and Lines 1789-1795 route it into KSampler.seed even though seed is already driven by link 371. That leaves the blueprint with conflicting edge metadata and can produce broken or misleading wiring after load/save. Keep the 4-step value flowing only through Switch (steps).

🛠️ Suggested cleanup
@@
               {
                 "localized_name": "INT",
                 "name": "INT",
                 "type": "INT",
                 "links": [
-                  347,
                   354
                 ]
               }
@@
-          {
-            "id": 347,
-            "origin_id": 257,
-            "origin_slot": 0,
-            "target_id": 253,
-            "target_slot": 4,
-            "type": "INT"
-          },

Also applies to: 1789-1795

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@blueprints/Text` to Image (Qwen-Image 2512).json around lines 1225 - 1233,
Remove the stray edge 347 from the turbo-steps path so the 4-step value is only
driven by the Switch (steps) link 371: delete the "347" entry from the
outputs/links arrays where present and remove any routing that connects link 347
into KSampler.seed, leaving only link 371 feeding KSampler.seed; ensure no other
metadata still references link 347 in the turbo-steps/Switch
(steps)/KSampler.seed wiring.

Comment on lines +87 to +95
{
"label": "enable_turbo_mode",
"name": "value",
"type": "BOOLEAN",
"widget": {
"name": "value"
},
"link": null
}
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

🧩 Analysis chain

🌐 Web query:

In ComfyUI subgraph/workflow JSON, is an exported input identified downstream by its namefield or itslabelfield? For a BOOLEAN input withname: "value"andlabel: "enable_turbo_mode", which identifier is exposed to other workflows and API consumers?

💡 Result:

In ComfyUI subgraph/workflow JSON, exported inputs are identified downstream by their name field, not the label field. The name serves as the canonical/internal identifier used for connections, API prompts, and external interfaces, while label is for UI display only. For a BOOLEAN input with name: "value" and label: "enable_turbo_mode", the identifier exposed to other workflows (via links/connections) and API consumers (in the prompt JSON as node_id.inputs.value) is "value". This is evidenced by ComfyUI workflow JSON schema where node inputs use "name" for identification (docs.comfy.org/specs/workflow_json), node definition JSON using "name" for inputs (docs.comfy.org/specs/nodedef_json), and GitHub issues confirming that renaming updates label but external interface uses original/canonical name like "value" or "positive" (github.com/Comfy-Org/ComfyUI_frontend/issues/7832). In older versions, custom labels didn't propagate; even when fixed for display, the programmatic identifier remains the name.

Citations:


Rename the exported boolean input from value to enable_turbo_mode.

The input is exposed downstream with name: "value" rather than the intended enable_turbo_mode. Update the name field in both locations (lines 87–95 and 297–309) to match the label.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@blueprints/Text` to Image (Qwen-Image).json around lines 87 - 95, The
exported boolean input for enable_turbo_mode is currently using name: "value"
which exposes the wrong key downstream; update the JSON entries where label is
"enable_turbo_mode" (the object with "type": "BOOLEAN" and its "widget"
sub-object) to set both "name" fields to "enable_turbo_mode" instead of "value"
so the input is exported under the correct key; ensure you change both
occurrences referenced in the diff (the top-level "name" and the nested
"widget"."name") and repeat the same fix for the second block around lines
297–309.

Comment on lines +1419 to +1422
"widgets_values": [
20,
"fixed"
]
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

The “Original Settings” branch doesn’t match the note.

The non-turbo path still feeds 20 steps, but the note says the original Qwen-Image setting is 50 steps. As written, disabling turbo mode does not produce the documented baseline unless the user edits the blueprint manually.

Also applies to: 1549-1550

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@blueprints/Text` to Image (Qwen-Image).json around lines 1419 - 1422, The
"Original Settings" branch's non-turbo path currently sets "widgets_values":
[20, "fixed"] but the note says original Qwen-Image uses 50 steps; update the
blueprint so the non-turbo branch uses 50 steps instead of 20 (change the
"widgets_values" array from 20 to 50) in both occurrences (the one shown and the
duplicate referenced) so disabling turbo produces the documented baseline; look
for the "Original Settings" branch and the "widgets_values" arrays to make the
edits.

@comfyui-wiki comfyui-wiki changed the title Update Comfy Blueprint [Draft]Update Comfy Blueprint Apr 13, 2026
@comfyui-wiki comfyui-wiki changed the title [Draft]Update Comfy Blueprint Update Comfy Blueprint Apr 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant