DARASK Prompt Cell
Build a prompt, not a wall of text — Cartesian cells for every combination
- prev
- prev_2
- prev_3
- prev_4
- prev_5
- prev_6
- prev_7
- prev_8
- prev_9
- prev_10
- prev_11
- prev_12
- prev_13
- prev_14
- prev_15
- prev_16
- set
- count
- preview
If you've ever hand-written forty prompt variants because you wanted every combination of a few costumes, poses and lighting setups, the DARASK Prompt Cell is the tool that ends that. It's one box of text where each non-empty line is a variant, and when you chain cells together the pack expands the whole chain as a Cartesian product: a 2-line quality cell × a 4-line costume cell × a 3-line pose cell × a 2-line lighting cell is 48 prompts, generated for you. It's prompt engineering as a spreadsheet - the same impulse as A1111-style wildcard batching, but with the combinations explicit and inspectable before you queue.
How the modes work
- Cartesian (all combos) - default. Every line is an alternative; output = upstream × line count.
- Concat (all lines as one) - joins all lines with
separatorinto a single fragment. This is the mode for your "always-on" quality/character block, because those lines are not alternatives - they all belong in every prompt. - Random pick one - picks one line per run from a
seed. - Fixed index - locks to one line with
index.
Details that make it actually usable: lines starting with # are comments and get stripped; an empty line is a deliberate no-op variant - it passes the upstream prompt through unchanged, which is how you express "add X, or add Y, or add nothing." enabled = false skips the cell entirely (an A/B toggle without rewiring), and label is free text that shows up as a header in the preview. Outputs: set (the custom DARASK_PROMPT_SET you chain downstream), count (the running pattern count as an INT), and preview (the first 8 assembled prompts as text, great wired into a Show Text).
Wiring rules that save you an afternoon
The prev input is dynamic - connect one upstream and another empty slot appears, up to 16. That's for fan-out: the README is emphatic that you should let your graph branch outward and only merge at the output node. Merging multiple branches into a middle cell multiplies that cell's variants against every branch, which either explodes your count or makes per-branch tweaks impossible. The pattern it recommends: common head cells → fan out to per-scene cells → each leaf straight into the Output node.
Install
ComfyUI Manager → search DARASK → install, restart. No models, no dependencies. It's a pure-text node; the heavy lifting comes when you connect its set output to the DARASK Prompt Cell Output node, which is where the CLIP encoding and batch magic happens.
One habit worth building early: keep the head cell on Concat, not Cartesian. A six-line quality block left in Cartesian multiplies every downstream pattern by six - usually not what you meant.
Inputs (23)
| Name | Type | Default | Description |
|---|---|---|---|
| text | STRING | — | |
| separator | STRING | , | — |
| mode | COMBO | Cartesian (all combos) | 4 options: Cartesian (all combos), Concat (all lines as one), Random pick one, Fixed index |
| enabled | BOOLEAN | true | — |
| prevopt | DARASK_PROMPT_SET | — | |
| prev_2opt | DARASK_PROMPT_SET | — | |
| prev_3opt | DARASK_PROMPT_SET | — | |
| prev_4opt | DARASK_PROMPT_SET | — | |
| prev_5opt | DARASK_PROMPT_SET | — | |
| prev_6opt | DARASK_PROMPT_SET | — | |
| prev_7opt | DARASK_PROMPT_SET | — | |
| prev_8opt | DARASK_PROMPT_SET | — | |
| prev_9opt | DARASK_PROMPT_SET | — | |
| prev_10opt | DARASK_PROMPT_SET | — | |
| prev_11opt | DARASK_PROMPT_SET | — | |
| prev_12opt | DARASK_PROMPT_SET | — | |
| prev_13opt | DARASK_PROMPT_SET | — | |
| prev_14opt | DARASK_PROMPT_SET | — | |
| prev_15opt | DARASK_PROMPT_SET | — | |
| prev_16opt | DARASK_PROMPT_SET | — | |
| labelopt | STRING | — | |
| indexopt | INT | 00–4096 | — |
| seedopt | INT | 00–18446744073709550000 | — |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| set | DARASK_PROMPT_SET | — |
| count | INT | — |
| preview | STRING | — |