ComfyUI Node

is absolute

Absolute or relative? Ask the node instead of squinting

By StableLlama·Created about a year ago·Updated 4 days ago· 48
is absolute
    • is absolute
    path

    Basic data handling: PathIsAbsolute ("is absolute") tells you whether a path starts at the filesystem root (C:\... on Windows, /... on Unix) or is relative to wherever ComfyUI is running. One path in, one BOOLEAN out. It's a check, not a transformation - the path passes through unchanged.

    So when do you actually need this? The honest answer is: less often than the fancier path nodes, but it's the piece that makes auto-adapting workflows possible. If you're building a graph that accepts a path from an external source - a config file, a prompt input, a text file read by PathLoadStringFile - you don't control whether that path is absolute or relative. Branch on is absolute and you can join the relative case onto PathGetCwd (or PathInputDir) before it reaches a loader, while passing the absolute case straight through. It's the node that lets a workflow accept either and behave sensibly with both.

    How it works

    Direct call to Python's os.path.isabs(path). The important nuance is that "absolute" is a format question, not a does it exist question. The node does not touch the disk - it never checks whether the path exists or resolves. So C:\definitely\not\here.png still returns True, and ../relative.png returns False, regardless of what's actually on the drive. That's exactly what you want for this kind of branching: existence is a separate question for PathExists.

    Also worth knowing: a path like images\foo.png with no drive or leading slash is relative on both platforms, and a bare filename like foo.png is relative too. If you're ever unsure what your input will look like, this is the node that removes the guesswork.

    Inputs and outputs

    • path (STRING, default "") - the path to inspect. Note os.path.isabs("") is False, so an empty string counts as relative.
    • is absolute (BOOLEAN) - True if the path starts at the root, False otherwise.

    Installing it

    Part of Basic data handling, the dependency-free pack. ComfyUI Manager → search "Basic data handling" → install → restart. Manual:

    cd ComfyUI/custom_nodes
    git clone https://github.com/StableLlama/ComfyUI-basic_data_handling
    

    Restart after. No models, no pip.

    Gotchas

    There aren't many ways to misuse this one, but pair it with PathGetCwd for the "make it absolute" step - this node only tells you whether, it doesn't convert. And remember the empty-string case returns False, which can look like a bug if you're feeding in an unset string input. It's a small, single-purpose check, and it earns its place the moment a workflow starts accepting paths from somewhere other than your fingers.

    CategoryBasic/Path

    Inputs (1)

    NameTypeDefaultDescription
    pathSTRING

    Outputs (1)

    NameTypeDescription
    is absoluteBOOLEAN