π± Artha Gemini Scenery
Build a scene from categories instead of a blank canvas
- image
- scene
- markdown
Artha Gemini Scenery is the set designer of the Artha prompt-assembly system. It takes seven category dropdowns - landscapes, urban, interior, fantasy, futuristic, abstract, and miscellaneous - and turns your picks into a typed ARTHASCENERY object that Artha Gemini Compose uses to write your final image prompt. It's the node for the "where does this happen?" question, and it answers it with curated vocabulary instead of making you compose the scenery from scratch in a prompt box.
It sits alongside Artha Gemini Camera and Artha Gemini Light as one of the three scene-settings nodes feeding Compose. Scenery is the largest of the three - it's the world, not the window onto it.
What you pick
Seven combo boxes, all defaulting to NONE (skip that category):
landscapes, urban, interior, fantasy, futuristic, abstract, miscellaneous.
Each is populated from a compose.json bundled with the pack, so the lists are curated and real - landscapes range across mountains, coastlines, deserts, and forests; urban covers streetscapes, skylines, and alleyways; interior handles rooms, studios, and architecture. Pick one value per category that matters, leave the rest at NONE, and the node assembles the scene object from whatever you chose. You can mix categories freely - a futuristic interior is just "interior" plus "futuristic" - which is exactly what makes this node useful for genre-blend prompts.
Two toggles: use_image switches the node into vision mode - connect an image and it asks Gemini to describe the scene from the photo, returning that description as the scene value instead. That's the only mode that needs an API key; the picker path is local and free. (There's no randomize toggle here, unlike the Camera and Light nodes - a small inconsistency in the pack you'll just live with.)
Outputs and wiring
Two outputs: scene (type ARTHASCENERY), which plugs into Artha Gemini Compose's scene input, and markdown, a plain-text reference sheet of every scenery option in the dropdowns, generated from the same JSON. Route that into a display node and you've got a scenery glossary at a glance.
The gotchas
Same family rules as the rest of the pack. The scene output is a typed object - don't feed the markdown string into Compose's scene input, they're different types. Vision mode costs an API call every run and swallows failures into an empty string with the error printed to the ComfyUI console. And vision mode reads pixels, not metadata: it's guessing what kind of scene the photo shows, which is great for matching a mood and hopeless for exact technical scene analysis. Key resolution is pack-standard - api_key field, then api.json in the pack folder, then GEMINI_API_KEY - and api.json is the version that keeps your key out of shared workflow files.
Install
Shared with the whole π± pack:
cd ComfyUI/custom_nodes
git clone https://github.com/Cyrostar/ComfyUI-Artha-Nodes
cd ComfyUI-Artha-Nodes
pip install -r requirements.txt
Restart ComfyUI, or install "Artha" via ComfyUI Manager. Picker mode needs no key. For vision mode, grab one from Google AI Studio and drop it in the pack's api.json.
Inputs (13)
| Name | Type | Default | Description |
|---|---|---|---|
| landscapes | COMBO | NONE | 14 options: NONE, MOUNTAINS, HILLS, FORESTS, JUNGLES, DESERTS, +8 |
| urban | COMBO | NONE | 7 options: NONE, MODERN CITIES, HISTORICAL TOWNS, VILLAGES, INDUSTRIAL AREAS, FUTURISTIC CITIES, +1 |
| interior | COMBO | NONE | 9 options: NONE, HOMES, APARTMENTS, OFFICES, STUDIOS, LIBRARIES, +3 |
| fantasy | COMBO | NONE | 7 options: NONE, ENCHANTED FORESTS, FLOATING ISLANDS, CASTLES, MAGICAL PORTALS, MYTHICAL UNDERWORLDS, +1 |
| futuristic | COMBO | NONE | 6 options: NONE, SPACE STATIONS, ALIEN PLANETS, CYBERPUNK STREETS, MECH HANGARS, FUTURISTIC LABS |
| abstract | COMBO | NONE | 5 options: NONE, GEOMETRIC WORLDS, SURREAL DREAMSCAPES, OPTICAL ILLUSIONS, COLOR PATTERNS |
| miscellaneous | COMBO | NONE | 6 options: NONE, SPACE, UNDERWATER, WEATHER EVENTS, NIGHT SCENES, SEASONAL |
| api_key | STRING | API key will be visible in plain text. Consider adding your api to the api.json located inside this custom node folder. | |
| model | COMBO | gemini-2.5-flash | 5 options: gemini-2.5-pro, gemini-2.5-flash, gemini-2.5-flash-lite, gemini-2.0-flash, gemini-2.0-flash-lite |
| max_tokens | INT | 50001β8192 | For Gemini models, a token is equivalent to about 4 characters. 100 tokens is equal to about 60β80 English words. |
| temperature | FLOAT | 0.70β2 | A temperature of 0 means only the most likely tokens are selected. Higher values increase randomness. |
| use_image | BOOLEAN | false | β |
| imageopt | IMAGE | β |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| scene | ARTHASCENERY | β |
| markdown | STRING | β |