Get Setting
Read ComfyUI's UI settings straight into your graph
- value
Get Setting reads a value out of ComfyUI's workflow settings snapshot and hands it to your graph as a node output. You know those UI-level settings - link render mode, canvas options, user preferences - that live in the frontend and never seemed to be something a node could see? This node makes them visible.
It's a small but genuinely clever utility, filed under ovum/utils in the comfy-ovum pack. Where Get Environment Variable reads the server process's environment, this one reads the workflow's embedded settings - the same workflow.settings / workflow.extra.settings snapshot that gets baked into a PNG when you save a workflow. That distinction matters: the settings travel with the workflow file itself, so this is how you make a graph respond to UI state without inventing wires.
How it works
The frontend populates a setting combo with the available setting keys. When you pick one, the backend pulls the workflow settings from the prompt and returns the current value. A couple of details that matter:
- It prefers
workflow.settingswhen present, falling back toworkflow.extra.settingsfrom the PNG blob. - The output type is
*, so it flexes to whatever the setting actually is - an integer, a string, a dict. - If the key doesn't exist, you get
None, not a crash. - An
IS_CHANGEDfingerprint makes the node re-evaluate when the setting value changes on the frontend, so it stays fresh rather than serving a cached stale value.
Inputs and outputs
- setting (
COMBO) - the key to read; options are populated by the frontend. - value_out (
STRING, optional, read-only) - a multiline text view of the resolved value for quick inspection. The tooltip describes it exactly: "Read-only value from settings object." - Output: value (
*) - the actual setting value.
Why you'd actually use it
- Conditional UI-aware behavior. Branch on a UI setting with
IfElseOvum- e.g. "if link render mode is X, do Y." - Reading user preferences into the graph without hard-coding them as widgets.
- Cross-workflow consistency. Since settings travel with the workflow, a workflow saved and re-shared carries its behavior along.
It's in the same pack as the author's other environment-bridge nodes, and the author - known in the community for the AMD/ROCm PyTorch wheels guide and a ComfyUI "spotlight" launcher - clearly enjoys this kind of graph-UI plumbing. Get Setting is one of the nicer examples of it.
Installing it
Part of sfinktah/comfy-ovum:
cd ComfyUI/custom_nodes
git clone https://github.com/sfinktah/comfy-ovum
or search comfy-ovum in ComfyUI Manager, then restart. No models.
Gotchas
The settings list depends on the frontend snapshot actually containing the key, so on some setups the combo can look sparse until the workflow has been saved/loaded once. And remember it reads only - nothing here writes a setting back, so pair it with environment-variable nodes if you need to push values out as well. If a key is missing you get None rather than an error, which is friendly but easy to mistake for an empty string.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| setting | COMBO | — | |
| value_outopt | STRING | Read-only value from settings object. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| value | * | — |