Nodes/noEmbryo nodes/PromptTermList 1 /noEmbryo
ComfyUI Node

PromptTermList 1 /noEmbryo

Your reusable prompt terms, one dropdown away

By noembryo·Created 3 years ago·Updated about 17 hours ago· 36
PromptTermList 1 /noEmbryo
    • Term
    terms
    text
    strength1.00
    store_inputfalse

    Remembering good prompt terms is the worst. You know "RAW photograph" or "Kodak Portra 400" are worth adding, but typing them every time - or worse, keeping them straight across a dozen workflows - is exactly the kind of friction that makes you skip them. PromptTermList 1 is the first of six sibling nodes in the noEmbryo pack that turn your favorite prompt fragments into a dropdown. Pick a label, get the full term injected into your prompt. That's the whole loop, and it works.

    The author built these back in late 2023 after getting annoyed that pythongosssss's Preset Text nodes all shared one database - he wanted six independent term libraries he could dedicate to different jobs. So the six nodes (PromptTermList 1 through 6) each have their own JSON file and their own dropdown, completely separate. One for photography terms, one for lighting, one for quality tags - whatever buckets you want.

    How it works

    Each node reads a JSON file of label / value pairs from the pack's TermLists/ folder - PromptTermList 1 uses TermList1.json, PromptTermList 2 uses TermList2.json, and so on. The dropdown (terms) shows the labels; the Term output emits the corresponding value string when you run the graph. The None label is always there if you want no stored term.

    The included TermList1.json already ships with a photography term set - "RAW photograph", "Polaroid photograph", "Gothic painting", a whole category system with -- section headers. It's a genuinely decent starting point for SD 1.5-style tag prompting.

    The inputs that matter

    • terms - the dropdown. Your label pick.
    • strength - applies ComfyUI's parenthesis weight format to the term, so at 1.3 your term comes out as (masterpiece:1.3) instead of flat masterpiece. Range 0.05–2.0.
    • text - two jobs: add new terms to the library, or append custom text after the selected term.
    • store_input - the switch that decides which job text does. Off = the text just gets appended to the output. On = the text is parsed as a new term and saved to the JSON file.

    To save a new term, connect a text box with:

    label=My Style
    value=masterpiece, artful and cozy
    

    flip store_input on, run once, refresh the page, and "My Style" appears in the dropdown. Leave value= empty to delete a label.

    Install and the honest warning

    ComfyUI Manager → search "noEmbryo", or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/noembryo/ComfyUI-noEmbryo.git
    

    Restart. The pack creates the six TermList*.json files automatically on first run - no models, no dependencies.

    Here's the honest warning: the author calls these obsolete. The README says flat out that Json Prompt Loader (also in this pack) mostly replaces them, and that they're kept around for compatibility. PromptTermList has one thing the newer node doesn't - the strength weighting - but for building a real prompt library, JsonPromptLoader's cleaner file model is the better bet. If you're starting fresh, go there. If you already love this dropdown flow, PromptTermList 1 is a perfectly fine way to organize one term category, just don't expect it to gain new features.

    CategorynoEmbryo/Term Nodes

    Inputs (4)

    NameTypeDefaultDescription
    termsCOMBOChoose a term from the TermList with the corresponding number
    textoptSTRINGInput text to store in the TermList Use the format: label=... ... value=.... .... ...
    strengthoptFLOAT1.000.05–2Controls how much the image is allowed to change. 0.0 = almost no change 1.0 = maximum creativity
    store_inputoptBOOLEANfalseStore the input text in the TermList Use the format: label=... ... value=.... .... ...

    Outputs (1)

    NameTypeDescription
    TermSTRING