Saya Image Auto Phase Controller
A GO button with zero inputs and zero wires in
- status
- checkpoint
- vram
- message
SayaImagePhaseController is the oddest node in this pack, because it has nothing on it. No inputs, no widgets, and its four string outputs are diagnostics you'll probably never wire anywhere. The real "GO" button lives in the browser. What this node does is be that button's anchor point.
Here's the setup it belongs to. alphaziod/saya-comfy-couple-plus ships an automated "6-pass" image pipeline - base generation, hires, refiner, pre-detail upscale, detailers, final upscale - where each pass is meant to be its own isolated ComfyUI prompt run so each loads its own checkpoint and frees VRAM between phases. You don't run that by hand six times. The pack bundles a custom web extension (web/image_phase_controller.js) that tags workflow nodes with a saya_phase property, and when you hit GO it walks the phases: for each pass it enables only that phase's nodes, mutes the rest, rolls a fresh seed into the node marked as your master seed, queues the run, and when the phase's STOP node reports complete it waits two seconds and queues the next one.
This node slots in as the visible controller of that whole dance. Drop it into a graph and evaluate, and it returns an IDLE snapshot: status (JSON with the current phase name and what's on disk for it), vram (JSON with the GPU's allocated/reserved bytes, read without forcing GPU init), checkpoint (empty at idle), and message - which, if you read it, is French: the author is francophone, and a lot of the pack's internal strings are. It deliberately loads nothing. The IS_CHANGED method returns NaN so ComfyUI re-runs it on every graph evaluation - the same always-dirty trick every "clock" node uses - which is how the status refresh stays live.
Which brings the honest advice: do not drop this into a normal workflow and expect anything. It has no model, latent, or conditioning path, and it only talks to its own frontend plus nodes that carry its saya_phase property tags. Used that way it's a tiny status widget, and its only real job is being the "one-click" controller of the author's auto template. If you're copying that template, the pieces it expects alongside it are non-trivial: the phase LOAD/STOP nodes, a node tagged as master seed (the frontend throws "Master Seed introuvable dans le workflow" if there isn't one), a review node for after phase 1, and outside packs like rgthree and WLSH that the demo graph references. Install only this pack and the full auto workflow will show missing nodes.
Install it the same way as everything in the pack: ComfyUI Manager, search saya-comfy-couple-plus, or:
cd ComfyUI/custom_nodes
git clone https://github.com/alphaziod/saya-comfy-couple-plus
then restart ComfyUI. No model files, no heavy deps beyond numpy/Pillow. If GO does nothing after an update, the usual suspects are a stale browser tab (the web/ extension needs a hard reload) and workflow nodes that lost their phase tags when you edited them.
The pack is explicitly work-in-progress, so treat the auto-sequence behavior as subject to change - back up any workflow that depends on it before pulling updates. If you just want a fancy run counter, there are simpler nodes. If you're building a multi-pass pipeline where each phase must own its VRAM, this is the conductor.
Inputs (0)
No inputs
Outputs (4)
| Name | Type | Description |
|---|---|---|
| status | STRING | — |
| checkpoint | STRING | — |
| vram | STRING | — |
| message | STRING | — |