Text Dictionary New
The node that starts WAS's whole dictionary family
Every other node in WAS's dictionary toolkit assumes a dictionary already exists somewhere in your graph. Text Dictionary New is where that assumption becomes true - per the README, it does exactly what it says: "create a new dictionary." It's the starting node, not a fancy one.
Why you'd want a dictionary at all
If your workflow is one prompt and one output, you don't need this. Where it earns its place is once you're assembling a prompt (or a filename, or any bundle of related text) out of labeled parts instead of one long string you keep hand-editing. Build {"subject": "a fox", "style": "watercolor", "lighting": "golden hour"} once, and the rest of the graph can pull subject here and lighting there instead of you scrolling through a monolithic text box hunting for the phrase you want to change. It's structured data in a tool that's otherwise all wires and strings.
Once you have that dictionary object, the rest of the family takes over: Text Dictionary Update merges another one into it, Text Dictionary Keys lists what's in it, Text Dictionary Get pulls a single value back out as a string, and Text Dictionary To Text dumps the whole thing to readable text if you want to save or inspect it. None of those work without something like this node making the first one.
How it works
It constructs a DICT-type object - the same object the rest of WAS's dictionary nodes read and write - from whatever key/value pairs you give it on the node itself. That's the mechanism: you're building a dictionary by hand, entry by entry, directly in the graph, rather than parsing one out of loaded text (that's Text Dictionary Convert's job) or merging two existing ones (Text Dictionary Update).
The inputs and outputs that matter
I don't have a formal schema in front of me for the exact key/value fields this node exposes, so treat the shape as "however many key/value pairs the node gives you to fill in on the canvas," not a confirmed field count. What's certain from the README and the rest of the family: what comes out the other side is a single DICT object, ready to plug straight into Text Dictionary Update, Text Dictionary Get, or Text Dictionary Keys.
How to install it
Comes bundled with WAS Node Suite - no separate download.
ComfyUI Manager: search "WAS Node Suite," install, restart.
Manually:
cd ComfyUI/custom_nodes
git clone https://github.com/WASasquatch/was-node-suite-comfyui
then install requirements.txt against your ComfyUI Python and restart. No model, no GPU - pure string/data handling.
Common issues & troubleshooting
Downstream nodes reject the output. Make sure you're wiring the DICT output into a node that actually expects a dictionary (Get, Keys, Update, To Text) - plugging it into a plain text input won't work, since it isn't a string until you explicitly convert it with Text Dictionary To Text.
A key you set here isn't showing up later. If you're also running the dictionary through Text Dictionary Update downstream, remember merges can overwrite keys that collide - check the merge order if a value looks wrong rather than assuming this node dropped it.
Whole pack fails to load. The standard WAS gotcha: it's been unmaintained since December 2023, and a ComfyUI update can leave its pinned dependencies out of sync, throwing "Import Failed" for every WAS node at once, this one included. Reinstall requirements.txt against your actual ComfyUI Python interpreter and restart.
Inputs (0)
No inputs
Outputs (0)
No outputs