APNext Interaction
Add people-doing-things detail to a prompt from category banks
- prompt
- random
InteractionPromptNode (APNext Interaction) is an offline prompt builder focused on one thing: what the people in your image are doing. It appends action and interaction phrases to your base prompt from big curated banks - solo gestures, couple dynamics, group activities, crowd scenes. No API, no key, no model; just string assembly. It's part of the pack's Auto Prompter family, and it's the one you reach for when your subjects keep coming out standing there stiffly and you want them adjusting a tie, arguing, or celebrating instead.
How it works
The node holds JSON lists of interaction phrases by category and stitches your picks onto your prompt with the separator (default ,). Each dropdown offers None, Random, Multiple Random, or a specific choice:
individual_interactions(300+ options) - solo gestures: "adjusts glasses on nose," "applies chapstick to lips."detailed_individual_interactions(~200) - little multi-beat sequences: "adjusts a tie, looks in the mirror, and then nods in satisfaction."couple_interactionsandcouple_negative- two-person dynamics, warm ("bonding," "being intimate") and hostile ("bickering," "blaming each other").group_interactionsandcrowd_interactions- scene-scale activities ("attending a festival," "battling supernatural forces").
seed makes random rolls repeatable; attributes pulls in extra descriptors. Two outputs - prompt (your base plus the picks) and random (a randomized selection) - into your text encode.
The Random / Multiple Random settings are the real value here: batch a dozen images with a fixed subject and let the interaction roll each time, and you get natural variety without writing each pose by hand.
Where it shines, and where it doesn't
Action phrasing is one of the bits of prompting that transferred cleanly to modern models - "a woman laughing while adjusting her hat" is a concrete instruction any LLM-encoded model reads well, and it reads fine as a natural-language clause on Flux or Z-Image and as a tag-ish fragment on SDXL. So this node ages better than the pure quality-keyword banks in the sibling Keywords node.
The caveat is prompt adherence. Modern models follow instructions hard, so stacking three contradictory interactions ("arguing" + "bonding" + "being rejected") on one subject produces incoherent output - some models will literally try to do all of it and give you body horror. Pick one interaction that fits the scene.
Installing it
ComfyUI Manager: search comfyui_dagthomas, install, restart. Or clone and pip install -r requirements.txt. Note this node needs none of the pack's LLM dependencies - it's pure string work, so it runs regardless of whether the API nodes can reach anything.
Common issues
Phrases don't match the number of subjects. couple_interactions and crowd_interactions assume two people or a crowd. Put them on a solo portrait and the model either ignores them or invents extra people. Match the bank to your subject count.
Contradictory actions = mush. Multiple Random across several banks can hand one person incompatible actions. On high-adherence models that backfires - keep it to one clear interaction per subject.
Nothing changed. Every dropdown left at None means nothing gets appended. Set at least one to a value or to Random.
Inputs (11)
| Name | Type | Default | Description |
|---|---|---|---|
| prompt | STRING | — | |
| separator | STRING | , | — |
| stringopt | STRING | — | |
| seedopt | INT | 00–18446744073709550000 | — |
| attributesopt | BOOLEAN | false | — |
| couple_interactionsopt | COMBO | None | 52 options: None, Random, Multiple Random, Adoring someone, Argument, Assistance, +46 |
| crowd_interactionsopt | COMBO | None | 47 options: None, Random, Multiple Random, Attending a concert, Attending a festival, Attending a march, +41 |
| detailed_individual_interactionsopt | COMBO | None | 197 options: None, Random, Multiple Random, Adjusts a tie, looks in the mirror, and then nods in satisfaction, Adjusts glasses, squints at something in the distance, then nods in understanding, Adjusts hat, looks in the mirror, and then nods in satisfaction, +191 |
| individual_interactionsopt | COMBO | None | 306 options: None, Random, Multiple Random, adjusts a hat on head, adjusts a tie, adjusts backpack straps, +300 |
| couple_negativeopt | COMBO | None | 53 options: None, Random, Multiple Random, Accusing each other, Bickering with each other, Blaming each other, +47 |
| group_interactionsopt | COMBO | None | 53 options: None, Random, Multiple Random, Attempting to break a world record, Attending a high school reunion, Battling supernatural forces, +47 |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| prompt | STRING | — |
| random | STRING | — |