Forbidden Vision 🔧 Rebuilder
The ksampler that also hands you a decoded image
- latent
- model
- positive
- negative
- vae
- LATENT
- IMAGE
Rebuilder is Forbidden Vision's plainest node, and it's meant to be: a basic KSampler with VAE decoding baked in. If you've ever wired up KSampler → VAEDecode → SaveImage a thousand times, this collapses it into one node. No detection models, no auto-downloads, no clever blending - just a sampler that also gives you a picture.
What it does
It takes a latent, a model, and positive/negative conditioning, plus the standard sampling dials: seed, steps (default 10), cfg (default 3), denoise (default 0.28), sampler_name (default euler_ancestral), and scheduler (default sgm_uniform). The pack author's defaults are the ones they use with SDXL-based checkpoints.
Outputs are both LATENT and IMAGE. The catch is that the IMAGE output is only real if you connect the optional vae input - the same arrangement as the Builder. With a VAE wired up, the node samples and decodes in one step; without one, the latent is still valid and the image output is a placeholder.
Why it exists
Honestly? It's the pack's "reduce clutter" node. The README groups Builder and Rebuilder together as "first-pass and second-pass sampling nodes with integrated useful features to reduce clutter." Where the Builder is the first pass (empty latent, resolution presets, CFG scheduling), the Rebuilder is the second - you feed it a latent you've already got and let it refine or rebuild the image with a partial denoise. The default denoise of 0.28 is a sensible "touch up this existing latent" starting point, though it runs 0.01–1.0 if you want a full resample.
The real benefit is workflow economy: one node instead of a three-node chain, and one less wire to route through a VAE decode you're going to do anyway. If you already have a favorite sampler arrangement from core ComfyUI, you're not missing out on capability here - but if you're building a Forbidden Vision workflow and want the whole pack to feel consistent, this slots in as the second pass without any extra thinking. It's a genuine utility, just an unglamorous one.
Inputs (11)
| Name | Type | Default | Description |
|---|---|---|---|
| latent | LATENT | — | |
| model | MODEL | — | |
| positive | CONDITIONING | — | |
| negative | CONDITIONING | — | |
| seed | INT | 00–18446744073709550000 | — |
| steps | INT | 101–100 | — |
| cfg | FLOAT | 3.01–20 | — |
| denoise | FLOAT | 0.280.01–1 | — |
| sampler_name | COMBO | euler_ancestral | 44 options: euler, euler_cfg_pp, euler_ancestral, euler_ancestral_cfg_pp, heun, heunpp2, +38 |
| scheduler | COMBO | sgm_uniform | 9 options: simple, sgm_uniform, karras, exponential, ddim_uniform, beta, +3 |
| vaeopt | VAE | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| LATENT | LATENT | — |
| IMAGE | IMAGE | — |