Load Random Prompt (52prompts) π²
The node that writes your prompt for you β 20 generators, one seed
- prompt
- generator
- seed
Stuck staring at an empty positive prompt box again? Load Random Prompt (52prompts) π² hands you a finished one instead. Pick one of 20 text generators from a dropdown, hit the π² button, and the node outputs a full prompt as a STRING - ready to wire straight into a CLIP Text Encode. No API key, no account, nothing to download. It's part of the small comfyui-bart-nodes pack, whose whole pitch is "nodes that pick what to load for you," and it shares the pack's nicest habit: the π² button works without executing the graph, and the preview survives saving and reopening the workflow.
How it works
Here's the part that's actually clever. The node has no prompt data of its own - the word lists are 52prompts.com's content. On each generator page, the site loads a standalone .js file from its CDN, and that script holds both the word lists and the sentence templates that turn them into a finished prompt. Scraping the arrays alone would get you half the data, so this node runs the script instead.
It fetches the page, reads the script URL out of it (version-stamped by the CDN, and host-pinned so it can't be pointed at arbitrary code), then executes it with a tiny JavaScript interpreter the pack ships (prompts52/jsmini.py) - not real JavaScript execution. The interpreter covers exactly the subset those 20 files use, with Math.random rewired to a seeded RNG. That wiring is where reproducibility comes from: same seed, same generator, same inputs β same prompt, every time. Anything the interpreter doesn't know raises an error naming the construct rather than silently producing garbage, so if the site ever rewrites a generator, you get a clear message instead of a mangled prompt. Page and script are cached in memory for an hour and requests are throttled, so queueing a batch of fifty fetches the site once.
The inputs that matter
Only three are worth touching on a normal run:
generator- the dropdown of all 20, named after the site's own menu (Prompts,Scenarios - Two Person,Monster Characters,Zodiac Signs,Mermaids, β¦).randomize- on by default. Draws a fresh prompt (and fresh seed) on every Queue Prompt, which is what makes this a cheap idea generator.seed- used only whenrandomizeis off. The seed that actually produced a prompt is written back into this field, so when you hit one you like, fliprandomizeoff and it's locked.
The optional input_1βinput_3 and choice_list fields only appear for generators that ask for something - the scenario generators take character names, Random Choice and Cast of Characters take your own list (one per line). The frontend hides and relabels them per generator, so you never see a field the selected generator ignores.
Outputs: prompt (the text; multi-line for character-sheet style generators), generator, and seed - the seed that actually produced this run's prompt. Wire prompt into a CLIP Text Encode, and you're sampling.
One honest caveat
These generators produce English prose - scenarios, character sheets, questions, hobbies - not booru tag soup. That makes them a much better fit for models whose encoder reads a prompt like a message (Flux, Anima, the newer LLM-encoded checkpoints) than for tag-tuned SDXL/Illustrious checkpoints. And since it's a live-data node, 52prompts.com sees your server's IP on every pick; if your ComfyUI is exposed past localhost, treat the pack's unauthenticated /random_prompts52/* routes like everything else there - VPN or an authenticating reverse proxy.
Install
From ComfyUI Manager, search comfyui-bart-nodes, or:
cd <ComfyUI>/custom_nodes
git clone https://github.com/bartenevve/comfyui-bart-nodes
Then restart ComfyUI. No model files, no heavy dependencies - the pack uses torch, Pillow, aiohttp and numpy, all of which already ship with ComfyUI, and there's no requirements.txt to babysit.
Troubleshooting
- A seed stops reproducing. The word lists are versioned by the site, not by this pack. If 52prompts changes a generator, the same seed can give different text - and the interpreter will tell you loudly if a rewrite outgrows its supported subset.
Random Choicegives nothing. It has no word list of its own; it shuffles yourchoice_list. It's only in the dropdown because it's on the site's menu.- It fails entirely offline. The data lives on the site, so this node is a non-starter on a network-isolated box - unlike the pack's image-loading siblings, there's no offline mode here.
Inputs (8)
| Name | Type | Default | Description |
|---|---|---|---|
| generator | COMBO | Prompts | 20 options: Prompts, Genres, Scenarios - Single Person, Scenarios - Two Person, Scenarios - Three Character, Scenarios - Cast of Characters, +14 |
| randomize | BOOLEAN | true | β |
| seed | INT | 00β18446744073709550000 | β |
| input_1opt | STRING | β | |
| input_2opt | STRING | β | |
| input_3opt | STRING | β | |
| choice_listopt | STRING | β | |
| last_promptopt | STRING | β |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| prompt | STRING | β |
| generator | STRING | β |
| seed | INT | β |