ComfyUI Node

TagPipeOut

Unpack a TAGSET into six strings by key

By sugarkwork·Created 2 years ago·Updated 6 months ago· 89
TagPipeOut
  • tagsets
  • value1
  • value2
  • value3
  • value4
  • value5
  • value6
key1
key2
key3
key4
key5
key6

TagPipeOut is the read side of this pack's TAGSET pipe system. TagPipeIn bundles up to six key/value strings into one dict; TagPipeOut takes that dict back apart, letting you pull out up to six values by key and route each to its own destination. If TagPipeIn is the envelope, this is the letter opener.

The wiring is: tagsets (the TAGSET) in, plus up to six keyN fields you type. For each key you name, the corresponding valueN output emits that key's string. Keys you don't ask for stay unused; keys that don't exist in the set return an empty string rather than erroring.

The pattern it supports

The reason you'd go TAGSET → TagPipeOut instead of just keeping six loose wires is graph hygiene. Bundle a prompt set in one place - positive, negative, loras, seed_tags, whatever - ship it down one wire through a subgraph or a stretch of nodes, and unpack it exactly where each value is needed. Change a value upstream and you edit one node, not six connections.

Because every key field is plain text on the node, you can also use TagPipeOut as a fixed "extract these six known fields" contract for a shared workflow. The keys are case-sensitive and matched literally, so Positivepositive - pick a convention and stick to it, or every read comes back empty.

Two things worth knowing

First, missing keys give you "", not a warning. If a workflow expects a key that was never set, the downstream string is silently empty - the same quiet-failure style as the rest of this pack, and equally easy to trip over. Second, TagPipeOut reads but never modifies: the TAGSET you pass in comes out functionally unchanged on your wire (it's a dict read via .get()), so multiple TagPipeOuts can read the same set.

Honestly, for most people the one-key version (TagPipeOutOne) covers 80% of the need - you rarely need six simultaneous extractions. Use TagPipeOut when you genuinely fan out to several consumers; use the single-key sibling when you just need one value back out.

Install

Same pack, same steps: ComfyUI Manager search "comfyui_tag_filter", or

cd ComfyUI/custom_nodes
git clone https://github.com/sugarkwork/comfyui_tag_fillter

Restart. No dependencies, no model downloads. It's a .get() with extra ports - about as simple as a custom node gets, and it composes cleanly with TagPipeIn, TagPipeUpdate, and TagPipeMerge if you're building a self-contained tag-pipeline inside this pack.

Categorytext

Inputs (7)

NameTypeDefaultDescription
tagsetsTAGSET
key1STRING
key2STRING
key3STRING
key4STRING
key5STRING
key6STRING

Outputs (6)

NameTypeDescription
value1STRING
value2STRING
value3STRING
value4STRING
value5STRING
value6STRING