Nodes/ComfyUI Archon Nodes/Prompt Tag Assembler
ComfyUI Node

Prompt Tag Assembler

The node that turns tag chaos into a proper prompt, in the order your model was trained on

By esbe1175·Created 6 months ago·Updated 6 months ago· 1
Prompt Tag Assembler
    • prompt
    metamasterpiece, year 2025, new
    ratingsafe
    person_count
    character
    series
    artist
    general

    Anime models have opinions about prompt order. The Danbooru-trained family - Illustrious, NoobAI, Pony - was trained on tag lists, and it reads them in a specific order: quality and meta tags first, then how many people, then who they are, then what series they're from, then the artist, and general content tags last. Anima's model card spells out that exact sequence, and people who ignore it leave quality on the table. PromptTagAssembler exists so you never hand-assemble that order again.

    It's the finishing step in this pack's pipeline. The Booru Roulette node throws categorized tag streams at you; this is the node that takes those streams plus anything you want to add, and produces the single comma-joined string you wire into CLIPTextEncode. You can also feed it plain hand-written lists - it's just a smarter prompt builder.

    How it works

    Seven inputs in, one prompt out, and the mechanics are where it earns its keep:

    • meta (default masterpiece, year 2025, new) - quality and metadata tags, always first.
    • rating (default safe) - the content-rating token.
    • person_count - optional; a count like 1girl or 2boys.
    • character, series, artist, general - the rest of the taxonomy, in that canonical order.

    Under the hood it splits every field on commas, then normalizes each tag the way your model wants: underscores become spaces (the community's evergreen "always replace underscores or results get worse" rule, which applies on Anima just as much as Illustrious), and parentheses get escaped so a character name like (OC) doesn't accidentally read as an attention weight. Artist tags get an @ prefix - the convention NoobAI and Anima trained on, where @artistname is a distinct style token.

    The genuinely clever bit: it detects person-count tags inside general and hoists them into the person_count slot automatically. So if a Booru Roulette post hands you 1girl buried in a 40-tag general list, it's pulled out, deduplicated against any manual count you typed, and placed in the right section. You don't have to strip it yourself.

    What comes out

    One output: prompt, a STRING with all the non-empty sections joined in order. Wire it into CLIPTextEncode and you're done. If you want this node to shine, feed character, series, artist, general, and rating straight from BooruRouletteNode's outputs - and flip that node's anima_rating_format on, which remaps its rating output (generalsafe, questionablensfw) so it drops into this node in Anima's vocabulary.

    Installing it

    Same pack as the others, one install gets all five. ComfyUI Manager → "Archon Nodes", or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/esbe1175/comfyui-archon-nodes
    pip install -r ComfyUI/custom_nodes/comfyui-archon-nodes/requirements.txt
    

    Restart, and it lives under Archon/Prompt. Pure Python, no models, no downloads.

    Gotchas

    • It's dumb string assembly, not a language model. It won't write your prompt for you; it organizes tags you already have. Don't feed it prose and expect a coherent sentence.
    • Attention weights won't survive it. Because the node escapes parentheses, a (long hair:1.2) weight gets turned into a literal tag. If you weight things, add your weights downstream, after this node - or accept that this pack's philosophy is plain tag lists, which is honestly how most anime prompting works anyway.
    • Order is non-negotiable here - that's the feature. If you deliberately want to bury an artist tag later in the prompt, this node fights you, because it always puts artist before general. For 95% of cases that's what you want anyway.

    If your workflow already runs on clean hand-typed prompts, you may not need it. But if you're pulling prompts from live booru sources or combining character, series, and artist streams, it's the difference between a prompt you fight with and one that just works.

    CategoryArchon/Prompt

    Inputs (7)

    NameTypeDefaultDescription
    metaSTRINGmasterpiece, year 2025, new
    ratingSTRINGsafe
    person_countSTRING
    characterSTRING
    seriesSTRING
    artistSTRING
    generalSTRING

    Outputs (1)

    NameTypeDescription
    promptSTRING