BFL released FLUX 3 Image Klein (POST /v1/flux-3-image-klein) on
2026-10-15. It takes the same prompt, references, resolution and
aspect ratio as Flux 3 Image, so the node subclasses Flux3Image and
adds what Klein accepts on top: seed, steps, output_format, exact
width x height and a 0-7 safety_tolerance, without grounding.
The Flux 3 Image example workflow gets two bypassed Klein groups
(text to image, edit by URL); existing groups are untouched.
FLUX 3 Image (flux-3-image) generates and edits from one prompt, with
up to ten references and bounding boxes. The endpoint rejects seed,
output_format and webhooks, and 4k renders can take minutes, so the
node polls up to 120 attempts and keeps the result lossless.
BFL requires polling the polling_url returned at submit: it points at
the region holding the task, and FLUX 3 Image returns a regional one.
post_request now returns a TaskId carrying it and get_result polls it
for every node, falling back to get_result?id= only when it is absent.
A failed task reported as HTTP 503 with a terminal status now stops at
once instead of polling until the timeout.
Adds an example workflow and documents the polling behavior.
Bring the package in line with the current BFL API reference:
flux-tools/deblur-v1, video-edit-v1 and video-upscale-v1 had no
node. The video nodes reuse BaseFlux3Video via a URL_PATH attribute.
Existing nodes gain API fields: qhd/uhd on Flux 3 Video,
disable_pup on Flux 2 Max/Pro/Pro Preview, safety_tolerance and
disable_pup on Outpaint. New widgets are appended so saved
workflows keep their values.
Fixes found while testing on ComfyUI 0.37.0:
- V2V offered 16-20 s; BFL caps continuation at 15 s
- draft with a non-hd resolution was rejected; send hd
- Flux 2 width/height defaulted to 0 below min 64, so every
fresh Flux 2 node failed validation
- the finetune example needed ShowText|pysssss; use core
Preview as Text and drop the unused group-node template
Terminal polling statuses now log BFL's details (Moderation
Reasons). Example workflows gain Deblur, Video Edit and Video
Upscale groups.
README gains the three Flux 3 Video rows at the top of the generation
table plus the Flux 3 Keyframes, Video to Base64 and VTO v2 entries.
CHANGELOG gets an Unreleased section covering the new nodes and the
Reasoning/Generating polling fix.
Wrap the new BFL flux-tools/vto-v1 endpoint as FluxVirtualTryOn,
following the erase/outpaint tool-node pattern: base64 string
person/garment inputs, a required prompt, and optional
seed/webhook/config over the shared BaseFlux post -> poll path. Update
the README node table and add two virtual try-on groups to the tools
example workflow.
adds FluxErase (POST flux-tools/erase-v1) and FluxOutpaint
(POST flux-tools/outpainting-v1) in a new nodes/flux_tools.py
module. these wrap the two new BFL tool endpoints from May 2026.
also:
- ImageToBase64_BFL gains an image_format dropdown (jpeg / png) so
masks can be encoded losslessly
- BaseFlux.generate_image moves check_multiple_of_32 inside the
try/except so non-multiple-of-32 dims return a blank image
instead of crashing the workflow
- bump version to 1.1.0; start CHANGELOG.md fresh at 1.1.0