WeiLin Prompt Editor
WeiLin Prompt Editor (WeiLinPromptUIWithoutLora) — ComfyUI Node Guide
- opt_text
- opt_clip
- STRING
- CONDITIONING
- CLIP
If you came from Automatic1111 or Forge and used Physton's "Prompt All-in-One" extension there, you probably missed it the day you switched to ComfyUI. This node - and the pack it ships in, WeiLin-Comfyui-Tools - is the closest thing ComfyUI has to that. It swaps the plain multiline text box everyone uses for a prompt (the one on a stock CLIP Text Encode) for a full tag-management UI: click-to-add tags organized into your own categories, Danbooru autocomplete, one-click translation, favorites, history, and a template-driven random-tag generator, all living inside one node.
"Without Lora" is the operative word here. WeiLin's pack ships a sibling node, WeiLinPromptUI, that bakes a full LoRA stack manager into the same box. This one strips that panel out entirely. If you're already happy loading LoRAs some other way - a plain LoraLoader, rgthree's Power Lora Loader, whatever - you don't want a second LoRA system bolted onto your prompt node fighting for attention. This is the version for that: smaller on the canvas, one job, done well.
How it works. Double-click the node (or use its floating-ball shortcut) and the pack's editor panel opens over the graph. You build your prompt by clicking tags instead of typing comma-separated strings from memory - the tag manager groups them, the Danbooru search autocompletes as you type, and there's a translate button so you can write in your own language and get back booru-appropriate English tags. Whatever you assemble gets written into the node's positive widget, which is what actually executes. Everything else is UI sugar around that one field.
Inputs that matter. positive is the real prompt text, required, and it's the thing the fancy editor is writing into - you can also just type into it directly and skip the UI entirely if you already know your tags. auto_random is a checkbox for the pack's random-tag feature: pair it with random_template (optional) and instead of a fixed prompt, the node assembles a fresh combination from your template every time the graph runs - good for batch variety without hand-editing anything between queues. opt_text takes a wildcard input, so you can wire a STRING in from elsewhere in your graph - another prompt node, a caption model, whatever produced text upstream - and WeiLin folds it into the final assembled prompt. opt_clip is where you plug in your checkpoint's CLIP if you want this node to also do the encoding for you.
Outputs. STRING is the final assembled prompt text, useful if you want to inspect it or feed it somewhere unusual. CONDITIONING only shows up populated if you wired opt_clip in - that's the node doing the CLIP encode internally so you can skip a separate CLIP Text Encode node. CLIP is a straight passthrough of whatever you fed opt_clip, so you can keep chaining without rewiring your CLIP source. It's also flagged as an output node, meaning ComfyUI runs it even if nothing downstream depends on it - makes sense, since half of what it's doing (updating its own tag history, etc.) has nothing to do with what you wire its outputs into.
Install. Easiest path is ComfyUI Manager - search "WeiLin-Comfyui-Tools" and install. Manually: cd ComfyUI/custom_nodes && git clone https://github.com/weilin9999/WeiLin-Comfyui-Tools, then restart ComfyUI. No model downloads required for this node specifically - the pack carries its own tag and Danbooru database, and there's nothing here that touches your checkpoints folder.
Where people get tripped up. The pack adds its own backend API routes on top of ComfyUI's server for the tag/history/translation features, so after installing or updating it, do a real restart rather than a Manager "reload" - a reload doesn't reliably pick up new server routes. There was also a documented bug where a node with auto_random on would still fire even when disconnected or unused; it's been patched, but the author's own standing advice is to switch the toggle off on any copy of this node sitting idle in your graph so it doesn't do work you didn't ask for. And a fair warning if you're coming straight from the Physton extension expecting parity: some users have found the tag-editor UI here takes more clicks to do the same thing, and it doesn't cover textual-inversion embeddings the way the webui original does. It's a genuinely capable editor, just don't expect a 1:1 clone. Support runs mainly through the author's QQ group rather than GitHub issues, which is worth knowing if English-language help is what you're after.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| positive | STRING | — | |
| auto_random | BOOLEAN | false | — |
| temp_stropt | STRING | — | |
| random_templateopt | STRING | — | |
| opt_textopt | * | — | |
| opt_clipopt | CLIP | — |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| STRING | STRING | — |
| CONDITIONING | CONDITIONING | — |
| CLIP | CLIP | — |