Nodes/RF Nodes/To string (BOOL)
ComfyUI Node

To string (BOOL)

Get 'True' and 'False' out of the wire and into your notes

By foxtrot-roger·Created 3 years ago·Updated 2 years ago· 2
To string (BOOL)
  • 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.
CategoryRF

Inputs (1)

NameTypeDefaultDescription
valueBOOL

Outputs (1)

NameTypeDescription
STRINGSTRING