Prompt Embedding Fixer
Name from gluing itself to your prompt
- STRING
This is the simplest node in the whole pack, and it does one thing: it guarantees whitespace around every embedding:name mention in your text. That's it. A couple of regex passes that add a space before and after any embedding:... token that's missing one.
Why would you need that? Because ComfyUI's tokenizer resolves embedding:name as a whitespace-delimited token, and the embedding: prefix gets detected wherever it appears. Jam it against another word - photorealisticembedding:neg, which is exactly what you get when a wildcard or dynamic prompt stitches text together - and the reference runs into the word, so the name can't be resolved as a file. The fixer splits that apart: photorealisticembedding:neg becomes photorealistic embedding:neg, and 1girl,embedding:neg becomes 1girl, embedding:neg, with the reference cleanly isolated before the tokenizer ever sees it.
Fair warning on the limits: it only handles spacing. If you write embedding:neg:0.8 A1111-style or glue a comma onto the name yourself, the comma and colon stay part of the name - the node won't re-parse those for you.
When it's actually useful
If you hand-type your prompts and your embeddings work, you don't need this. Where it earns its keep:
- You're pasting prompts from elsewhere - CivitAI descriptions, old A1111 exports, someone's shared workflow - where
embedding:references are glued to a neighboring word or a comma. - You're using dynamic prompts or wildcard expansion that stitches
embedding:nameinto a string without bothering about spacing. - You want a belt-and-braces stage in a reusable template so embedding references always arrive at the text encoder well-formed.
How to use it
One input, one output:
- text (multiline) - in.
- STRING - out.
It's not an output node, so this one wires normally: put it between your prompt source and a text encoder, or anywhere you're massaging prompt text before encoding. It touches nothing except whitespace around embedding: tokens, so it's safe to leave in a workflow permanently.
Honestly, if the embedding in question is genuinely incompatible with your model (say, an SDXL CLIP file on a Qwen3 encoder), spacing won't save you - the fixer only fixes parsing, not architecture. But for the far more common case of a valid file with a mangled reference, it's the difference between an embedding that resolves and one that quietly does nothing.
Installing
Part of silveroxides/ComfyUI_EmbeddingToolkit - no dependencies, no model downloads, nothing to configure. Via ComfyUI Manager (search "ComfyUI_EmbeddingToolkit") or:
cd ComfyUI/custom_nodes
git clone https://github.com/silveroxides/ComfyUI_EmbeddingToolkit
Restart ComfyUI and it shows up under EmbeddingToolkit/Utils. It's the kind of node you install once, forget about, and are quietly grateful for the day a pasted prompt stops resolving.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| text | STRING | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| STRING | STRING | — |