To string (BOOL)
Get 'True' and 'False' out of the wire and into your notes
- value
- STRING
Booleans are the only primitive you can't see at all. An INT shows digits, a STRING shows text, but a BOOL on a wire is just a wire - until it hits a node that needs text and can't accept a boolean at all. To string (BOOL) (RF_BoolToString) converts a true/false into the literal strings "True" or "False", which means you can embed a switch's state in a filename, a log line, or a graph note. It's the boolean member of the RF Nodes ToString family, and it's a tiny node with a tiny job that still catches people out.
How it works
str() on a boolean: True → "True", False → "False", with capital letters. That capital-T detail matters more than it sounds - if you stringify a bool and then compare the result to "true" elsewhere, it won't match, because Python prints booleans capitalized.
The inputs that matter
- value - a BOOL,
forceInput, so it must be wired from a node output.
Output: STRING - the boolean as text.
When you'd use it
Self-documenting runs, mostly. Say you have an "upscale" or "face-fix" toggle that changes the pipeline - converting that toggle's state and concatenating it into the output filename gives you upscale_False.png next to upscale_True.png, and the batch is instantly sortable. Or pair it with a Log node: log the stringified bool instead of the raw value if you want it embedded in a longer console line. It's not a node you'll use every day, but when you want a switch's state recorded, it's the only clean way to get it into text.
Installing RF Nodes
No dependencies, no models. Via ComfyUI Manager search "RF Nodes", or:
cd ComfyUI/custom_nodes
git clone https://github.com/foxtrot-roger/comfyui-rf-nodes
Restart ComfyUI; it's under RF in the menu.
Common issues
- "Couldn't I just type the state into the filename?" - Not if the state changes per run based on a computed switch. The point is that it reflects what actually happened, not what you assumed.
- "Capital True/False looks odd in a filename." - It's Python's convention. If you need lowercase, you'd have to replace it afterward - this node doesn't case-format.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| value | BOOL | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| STRING | STRING | — |