π Clothes
Random outfit tags from a single seed
- STRING
Clothes dresses the character. It generates a random outfit - the booru tags for garments and how they're worn - and passes it out as a string for the rest of your scene to use. Like its sibling Character, it has exactly one control: a seed. No dropdown for "school uniform" versus "swimsuit," no per-garment toggles. You roll, you look, you keep or reroll.
It belongs to the ComfyUI Scene Composer pack by taches, a small collection of nodes that procedurally build NSFW anime scene prompts by splitting each concern into its own node. Composition frames the shot, Action sets the pose, Character picks the person - and Clothes handles the wardrobe. It's the node-graph version of a wildcard file full of outfit tags: instead of ComfyUI grabbing a random line from a .txt, this node rolls one for you.
How it works
There's no model and no network call. The node stores curated outfit-tag lists internally, and your seed deterministically selects and formats them into a comma-separated booru-tag string. Deterministic is the operative word - a seed always yields the same outfit, so the node is really a numbered catalog you browse by changing the seed. Batch a few, pick the one you like, lock the seed.
Because there's no way to request a specific garment, the intended use is variety: let it surprise you, and when it lands on something good, fix the seed so it stays. If you need precise control over clothing, this node isn't it - you'd write those tags yourself and feed them in downstream.
The one input that matters
- seed - the whole interface. An integer; each value maps to a different random outfit. Attach it to a seed/primitive node to increment through options, or pin it once you've found a look worth keeping.
The single output is a STRING of outfit tags, designed to plug into the clothes input of the Scene node. Scene merges it with the composition, action, character, and environment fragments into one prompt, which then flows to a CLIP Text Encode for generation. Nothing exotic - it's a string joining a bigger string.
The model context
Every tag this pack emits is a booru tag, and the pack's default quality preamble (on Composition) is Pony Diffusion V6 XL's score_9, score_8_up, score_7_up, source_anime string. So Clothes is written for an SDXL anime checkpoint - Pony, or the Illustrious/NoobAI family. Those models know an enormous vocabulary of clothing tags, which is exactly why a random outfit generator works at all. On Flux or the newer LLM-encoded models the same tags mostly do nothing, because those read prose rather than tag lists. Get the model right or none of this lands.
Installing it
Clothes arrives with the full pack:
- ComfyUI Manager - search ComfyUI Scene Composer, install, restart. Or import the repo's
workflow.jsonand click Install Missing Nodes. - Comfy Registry CLI -
comfy node registry-install comfyui-scene-composer. - Manual -
cd ComfyUI/custom_nodes && git clone https://github.com/taches-ai/comfyui-scene-composer, thenpip install -r requirements.txt, then restart.
No model downloads come with the pack - the nodes are pure text - but you need a Pony or Illustrious checkpoint to render. And from the README: v0.3.x moved to ComfyUI's subgraph system, so old workflows are expected to break; build from the repo's current workflow.json.
Common issues
The usual snag is expecting control the node doesn't have. If you want a particular outfit rather than a random one, don't fight Clothes - feed Scene's clothes input your own tag string instead. If the random outfit keeps contradicting the scene (a full winter coat in an explicit Action roll, say), that's the independent-seed problem every generator node here shares: pin the seeds that agree and reroll only the one you're unhappy with. And since this is an obscure single-author pack with next to no community footprint, the reference for how Clothes fits the graph is the author's full NSFW workflow on CivitAI (model 579396) - lift that wiring rather than guessing at it.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| seed | INT | 00β18446744073709550000 | β |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| STRING | STRING | β |