Nodes/AQnodes for ComfyUI/AQ_CoverPrompt
ComfyUI Node

AQ_CoverPrompt

Turn half-baked album-cover ideas into a full prompt (with a free negative prompt)

By 2frames·Created about a year ago·Updated 6 months ago· 1
AQ_CoverPrompt
    • prompt
    • negative_prompt
    cover_prompt
    title
    tagline
    headline
    tags
    keyscaleC major
    stylecinematic photo
    aspect_ratio16:9 YouTube
    template_override

    The name is honest and slightly boring: this node builds prompts. Give it rough art direction and the text you want on the cover, and it hands you a ready-to-use positive prompt plus a decent hardcoded negative prompt. No API, no model, no key - it's a fancy string template, and that's exactly the right tool for the job.

    It's part of this pack's music pipeline. The sibling acestep nodes (AQ_Gemini_acstep15, AQ_OpenAI_acstep15) produce a coverImage art-direction string, and this is the thing that turns that raw description into something an image model can actually draw. But it stands alone fine: YouTube thumbnail, album art, poster, any "put legible text on an image" job.

    How it works

    The mechanism is dead simple: the node reads a Markdown template (prompts/cover.md inside the pack) and fills in your inputs with Python's .format(). What makes it good is the template, not the code. It's a carefully written "stunning album cover" spec that tells the model the style, the exact format (16:9 YouTube is described as "1280x720 thumbnail, readable at 320px"), the art direction, and - the part most prompts botch - that the title, tagline, and headline are text to render into the image, in a high-contrast typeface. The negative prompt is a fixed string covering text errors, distorted letters, watermarks, logos, anatomy, bad lighting, oversaturation. It's a genuinely serviceable default, better than the empty one most people run.

    The inputs that matter

    • cover_prompt - your art direction, multiline. "Neon-drenched rooftop at midnight" goes here.
    • title, tagline, headline - the three text elements to bake into the art. Headline is the dominant text, tagline the small subtitle.
    • tags - genre/mood context ("deep house, nocturnal, analog warmth").
    • keyscale - 34 musical keys (default C major). It's a mood hint for the template's "genre & mood" section, not a technical instruction.
    • style - 7 presets, default cinematic photo; also digital illustration, oil painting, neon art, minimalist, watercolor, 3D render.
    • aspect_ratio - 16:9 YouTube, 1:1 Square, or 4:5 Portrait.
    • template_override (optional) - paste your own template.

    Outputs

    Both are STRINGs: prompt and negative_prompt. Wire them into the positive and negative conditioning of whatever text-to-image model you're using.

    Install

    It ships in AQnodes, so:

    cd ComfyUI/custom_nodes
    git clone https://github.com/2frames/ComfyUI-AQnodes
    cd ComfyUI-AQnodes
    pip install -r requirements.txt
    

    or just search "AQnodes" in ComfyUI Manager, then restart. Note the requirements file is a kitchen sink (transformers, qwen-vl-utils, insightface, onnxruntime-gpu, google-genai…) - overkill for a node that just formats text, but the pack imports everything at startup, so installing all of it is the safe path.

    Gotchas

    template_override must keep every {placeholder} the original template had, or you'll get a KeyError at run time. And remember that image models garble text - the template's "readable at thumbnail size" instruction helps, but it won't save you on a weak model; keep the title short. For this kind of work, text-rendering quality is 90% of the outcome, so pick a model that's good at it.

    CategoryAquasite/LLM

    Inputs (9)

    NameTypeDefaultDescription
    cover_promptSTRING
    titleSTRING
    taglineSTRING
    headlineSTRING
    tagsSTRING
    keyscaleCOMBOC major34 options: C major, C# major, Db major, D major, D# major, Eb major, +28
    styleCOMBOcinematic photo7 options: cinematic photo, digital illustration, oil painting, neon art, minimalist, watercolor, +1
    aspect_ratioCOMBO16:9 YouTube3 options: 16:9 YouTube, 1:1 Square, 4:5 Portrait
    template_overrideoptSTRING

    Outputs (2)

    NameTypeDescription
    promptSTRING
    negative_promptSTRING