Higgsfield Image Edit (Direct API)
Instruct-edit any image with Seedream 4 — turn a photo into 'rainy night, cinematic' in one prompt
- image
- image
- cache_key
- info
Ever have a shot that's almost right - the lighting's flat, it's raining when it shouldn't be, or you want the same product photo on a different background? Higgsfield Image Edit is the pack's answer: drop in an image, write what you want changed, and ByteDance's Seedream 4 Edit model rewrites the picture to match your instruction. No masking, no inpainting pass, no local GPU grinding. Just one prompt box and a per-generation charge.
It's the least flexible node in the pack - there's exactly one model behind it, and the dropdown doesn't even pretend otherwise - but what it does, it does well. This is the "instruct edit" school of image manipulation: the model looks at the whole frame and regenerates it to satisfy your text, which makes it great for style swaps, weather changes, background replacement, and quick product-shot polish.
How it works
The mechanism is the same bridge as the rest of the pack: your IMAGE tensor gets uploaded to Higgsfield (as a JPEG), the node sends your edit prompt alongside the image URL via higgsfield_client.subscribe(), and once the job finishes it downloads the edited image and hands it back as a fresh IMAGE tensor. All the actual editing happens in the cloud on Seedream 4 Edit; your machine is just the front door.
That means the same rules apply as the pack's other nodes: it's paid per successful generation, and it's a hosted, moderated service - rejected or NSFW requests aren't charged, but everything else is real money.
Inputs and outputs
The required trio:
- image - what you're editing. Feed it from any node that outputs an
IMAGE. - prompt - the instruction. This is where instruct-edit models shine or fail, so phrase it as a transformation: "make it night, add rain, cinematic lighting" beats "darker." The more concrete the change, the better the result.
- model - one choice,
bytedance/seedream/v4/edit. Don't go hunting for more; that's the whole catalog.
Optional api_key and auto_save (defaults on, saving to the output folder) round it out. Outputs are the familiar pack trio: image (the edited result, wire it to a preview or save), cache_key (the deterministic fingerprint for ComfyUI-API-Optimizer's Hash Vault), and info (a status string with the model, timing, and saved filename).
The honest expectations
Instruction-following edit models are a different beast from local inpainting, and it's worth knowing the difference before you pay. A masked local inpaint holds everything outside the mask exactly as-is; Seedream 4 Edit reinterprets the whole frame, so "change the shirt to red" can wander into changing more than you asked. That's the trade: you get whole-scene coherence without fiddling with masks, but you lose pixel-level control, and retries cost money. If you need surgical edits, a local inpainting node is still the tool; if you want "make this photo feel like a movie still," this is the one.
Install
Standard pack install, nothing node-specific:
cd ComfyUI/custom_nodes
git clone https://github.com/jeremieLouvaert/ComfyUI-Higgsfield-Direct.git
pip install -r ComfyUI-Higgsfield-Direct/requirements.txt
Or ComfyUI Manager → search "Higgsfield". You'll need a key from cloud.higgsfield.ai, delivered via the higgsfield_api_key.txt file in your ComfyUI root, an HF_KEY environment variable, or the node's api_key input. Restart and everything's under AKURATE/Higgsfield.
If you run it and get nothing, it's almost always the key: the node throws a clear error listing all four ways to provide one, so it's self-diagnosing. After that, the only real advice is the boring kind - proofread your edit prompt before you click, because at per-generation pricing, the "oops" tax is on you.
Inputs (5)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | — | |
| prompt | STRING | — | |
| model | COMBO | bytedance/seedream/v4/edit | 1 options: bytedance/seedream/v4/edit |
| api_keyopt | STRING | — | |
| auto_saveopt | BOOLEAN | true | — |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | — |
| cache_key | STRING | — |
| info | STRING | — |