Image Model Guide
FLUX 3 Image: composition, editing and API pricing
Generate an image, arrange its elements with boxes, then edit one detail. A practical FLUX 3 Image guide for Hermes Agent and OpenClaw users.
What FLUX 3 Image changes
The BFL model page emphasises composition control and repeated edits: place objects with boxes, combine references, then change a selected element. A social post calling it “the strongest” or “better than GPT Image 2.5” is not an independent benchmark. This guide focuses on the documented workflow.
The overview lists up to ten reference images and output resolutions through 4K. Use it for a product photograph, a poster with deliberate spacing, or a sequence of edits where the approved composition matters.
Start in BFL Playground
- Open BFL Playground, sign in and select FLUX 3 Image. Check the displayed cost before generating.
- Describe the subject, framing and lighting. Start with a small draft.
- For an edit, supply the source image and name the one change. Add boxes when placement matters.
- Compare the edited image with the source, including text, product labels, shadows and edges. Save the approved result before the next edit.
Direct API: submit, poll and save
Create your own key and fund your account in the BFL dashboard. Set BFL_API_KEY in your server's environment. The following text-to-image request submits one draft; it has not been run as a paid test for this guide.
curl --fail-with-body https://api.bfl.ai/v1/flux-3-image \
-H "x-key: $BFL_API_KEY" \
-H "Content-Type: application/json" \
--data '{
"prompt": "A ceramic teal mug on a pale oak desk, soft morning light, editorial product photograph, no text.",
"aspect_ratio": "4:3",
"resolution": "1k",
"grounding": false
}'Read the returned polling_url, then request that exact URL with the same x-key header while status is Pending, Reasoning or Generating. Stop on Ready or a terminal failure; bound polling with a timeout. On success, download result.sample within one hour. Do not forward the API-key header to the image download URL.
grounding: false disables the model's search step for this invented scene. The API schema uses images, aspect_ratio and resolution; older endpoint fields such as seed, width and input_image are rejected. An HTTP 422 response names invalid fields.
Place objects with bounding boxes
Append the following original layout to prompt, using aspect_ratio: "1:1". Each bbox is [top, left, bottom, right] on a 0–1000 grid. Boxes belong inside the prompt, not in a separate request parameter. See the bounding-box tutorial.
A square stationery advertisement: a teal notebook <notebook_1>
on a cream background <background_1>, with the title <title_1> above it.
[
{"id":"background_1","bbox":[0,0,1000,1000],"desc":"Plain cream background"},
{"id":"title_1","bbox":[70,100,230,900],"desc":"Dark teal text reading \"MAKE SPACE\""},
{"id":"notebook_1","bbox":[300,250,900,750],"desc":"Closed teal notebook, photographed from above"}
]Keep the frame ratio consistent with the layout. Give each text line enough space. Boxes guide the object's position and size; they are not clipping masks.
Edit one image or combine references
For a simple edit, add your source URL or base64 image in images and change the instruction, for example: “Change only the notebook cover to coral. Preserve the title, desk and camera angle.” For multiple references, say “image 1 supplies the room; image 2 supplies the chair.” Their order follows the array; auto aspect ratio follows the first image. The editing guide explains this route.
For structured edits, the box rows use from, src_bbox and tgt_bbox instead of generation's bbox. The first source is ref_image_0. Matching source/target boxes anchor an element; a different target moves it. Read the full tutorial before converting a layout into an edit. Shadows and nearby lighting may change even outside the requested region.
BFL API prices
| Resolution | Published price / image |
|---|---|
| 768sq | $0.041 |
| 1k | $0.048 |
| 2k | $0.100 |
| 4k | $0.607 |
These are BFL's documented direct API rates, checked October 4. Read the request's returned cost and current billing page; another provider may charge differently. Twenty 1K requests calculate to $0.96 at this rate. Each new edit is another request.
Hermes first, then OpenClaw: current integration limits
Self-hosted Hermes: the built-in fal catalogue and image tool currently lack a FLUX 3 entry. Use a separate server-side BFL client, then expose it through a custom tool or skill that submits, polls and saves. Set a spending limit and verify the client independently before letting an agent repeat calls.
On a recent self-hosted Hermes installation, the OpenRouter image provider discovers models live. The OpenRouter image catalogue now lists black-forest-labs/flux-3-image. With your own funded OpenRouter key configured, use hermes tools → Image Generation → OpenRouter and select that ID. The documented configuration in ~/.hermes/config.yaml is:
image_gen:
provider: openrouter
model: black-forest-labs/flux-3-image
openrouter:
resolution: 1KThis combines verified provider discovery with a verified catalogue ID; we have not executed a FLUX 3 generation through Hermes. Confirm your installed version exposes this provider and inspect one bounded request before relying on editing or box preservation. The BFL price table above does not quote OpenRouter billing.
Self-hosted OpenClaw: the generic fal adapter is not evidence of FLUX 3 compatibility. Its older request and edit conventions differ from the FLUX 3 generation and editing schemas. A custom BFL client is the documented API route here; do not paste a guessed chat-model configuration.
Recent upstream OpenClaw also documents an OpenRouter image provider. With your own OPENROUTER_API_KEY, the corresponding image-model configuration below is a candidate for a bounded text-to-image test, not a verified FLUX 3 integration. Merge it into openclaw.json only if your installed version supports these documented fields:
{
"agents": {
"defaults": {
"mediaModels": {
"image": { "primary": "openrouter/black-forest-labs/flux-3-image" }
}
}
}
}Managed hosting, both frameworks: the Image menu can show live provider listings, but a listed name does not verify generation, reference uploads or box edits. FLUX 3 is not a curated preset we have verified end to end. Use Playground or your own API client today; see the general image guide for supported hosted workflows.
Sources checked October 4, 2026: BFL's model, generation, editing, boxes, schema and pricing pages linked above, plus the current upstream framework adapters. API examples were checked against documentation; no paid generation or independent quality comparison was performed.
FLUX 3 Image FAQ
Does FLUX 3 Image work on Hermes Agent?
Recent self-hosted Hermes supports live OpenRouter image discovery, whose catalogue lists FLUX 3. This route has not been tested here. The built-in fal catalogue does not list FLUX 3; a custom BFL API tool is another route. Managed hosting support remains unverified.
Can I select it on managed OpenClaw or Hermes?
End-to-end FLUX 3 support in the hosted Image picker has not been verified. A provider listing alone does not prove the runtime sends the correct request. Use BFL Playground or the direct API for the workflow described here.
Does every edit preserve the rest of the image exactly?
BFL says pixels outside edited boxes usually remain unchanged, but shadows, reflections and nearby lighting can change. Boxes guide placement rather than act as hard clipping masks; compare the result with the source.
Is FLUX 3 Image free or open source?
BFL API requests are paid. BFL advertises commercial weight licensing through its sales team; that does not establish a public free weight download or a permissive open-source licence.