16 Commits
Author SHA1 Message Date
Çağan Kiraz 773a83703f feat(api): add flux 3 image klein node
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.
2026-10-17 15:29:01 +03:00
Çağan Kiraz 057248fa3a feat: add flux 3 image node and poll the returned polling_url
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.
2026-10-02 00:53:35 +03:00
Çağan Kiraz 10d9805f70 feat: add deblur, video edit and video upscale nodes
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.
2026-09-26 19:06:02 +03:00
Çağan Kiraz 013fdd19bc fix: remove leaked api key from flux 3 video workflow
The FluxConfig_BFL node in the example workflow was saved with a real
x_key widget value and pushed in 7bbc4cc. The key must be treated as
compromised and rotated in the BFL dashboard; this commit clears the
widget so the tracked example matches the other workflows.
2026-08-06 15:11:26 +03:00
Çağan Kiraz 7bbc4cc03e docs: add flux 3 video example workflow and vto v2 group
New BFL-API-flux-3-video.json covers all three modes: t2v straight to
SaveVideo, i2v fed by Flux3Keyframes, and v2v fed by LoadVideo through
VideoToBase64. The tools workflow gains a Flux Virtual Try-On v2 group
mirroring the v1 setup; remaining churn in that file is ComfyUI
frontend metadata (aux_id -> cnr_id, node order/positions) and the
outpaint mode widget value written by the current node schema.
2026-08-06 13:01:17 +03:00
Çağan Kiraz 76e8085b70 feat: add flux virtual try-on node
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.
2026-06-01 22:08:42 +03:00
Çağan Kiraz 42654d6e56 feat: add flux erase and outpaint tool nodes
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
2026-05-25 17:50:35 +03:00
Çağan Kiraz 20b17b5652 feat: add preview nodes 2026-03-25 19:00:33 +03:00
Çağan Kiraz f7da9a7a31 feat: Updated for flux2 api 2026-02-22 01:16:21 +03:00
Çağan Kiraz bcf8af770d feat: Added config node 2025-08-28 22:27:45 +03:00
Çağan Kiraz c422e0861c update: workflows 2025-06-08 03:50:20 +03:00
Çağan Kiraz 064d3f7655 add: Kontext model 2025-05-31 14:43:02 +03:00
Çağan Kiraz 893323bde9 update: workflow 2024-11-27 19:22:47 +03:00
Çağan Kiraz 774f680428 update: BFL-API-tools workflow 2024-11-27 02:20:35 +03:00
Çağan Kiraz 120433f8ec add: BFL-API-tools workflow 2024-11-24 22:13:19 +03:00
Çağan Kiraz 9ff8e1e4c2 add: workflow 2024-11-08 01:44:12 +03:00