Nodes/comfyui-kisekae/๐Ÿ‘˜ Kisekae Load Preset
ComfyUI Node

๐Ÿ‘˜ Kisekae Load Preset

Where every character in this pack begins

By KagejitsuยทCreated 11 days agoยทUpdated 10 days agoยท 0
๐Ÿ‘˜ Kisekae Load Preset
  • char
  • char
โ—„preset(none)โ–บ
โ—„modereplaceโ–บ

Everyone who gets into this hobby builds some version of a prompt library. The reddit threads asking "how do you manage your frequently used prompt templates" fill up with DIY answers - a folder of .txt snippets, an image drag-in trick where the PNG's embedded workflow is the preset, a wildcard file with one entry per character. They all solve storage. None of them solve composition: which parts of the stored thing to reuse, and what replaces what.

๐Ÿ‘˜ Kisekae Load Preset is the entry point to the pack's answer. One node, one dropdown of your presets, and a mode that decides how the preset interacts with a character that's already in the chain.

How it works

It takes the optional char input and returns a char, so it can start a chain or sit in the middle of one. The mode is the whole node:

  • replace - the result is exactly the preset. Sections and the global negative are cleared first, so nothing from upstream survives. This is the mode for "start the graph with this character".
  • overlay - the preset's sections replace whole sections of the incoming character; sections the preset doesn't define are kept. Character name comes along too.
  • merge - the preset's fields replace individual fields. A scene preset that sets head.expression changes the expression and leaves the eyes alone. LoRAs are appended to the section's list, and negatives are merged tag-wise rather than replacing.

merge is the mode that makes the pack feel like a pipeline instead of a dropdown: a character preset + a scene preset + a style preset, each layered on, each easy to swap. replace is how the README's quick start gets a character in three nodes.

Two things that are easy to miss. First, presets reference each other, and Load Preset resolves those references - a character whose outfit is {"$ref": "outfits/school-uniform"} arrives with the outfit section resolved, so changing that outfit file changes every character wearing it. Reference chains are followed up to a depth limit, and a loop (a โ†’ b โ†’ a) is reported with the full chain rather than hanging the queue. Second, preset has no tooltip because there's nothing to explain; the list is your presets plus the read-only shipped examples/โ€ฆ. (none) passes the character through untouched, which makes it a safe no-op while you're wiring.

The inputs and outputs

| Input | What it does | |---|---| | preset | The preset to load. (none) is a pass-through. | | mode | replace, overlay or merge, as above. | | char (optional) | The character to apply onto. Empty starts a new one. |

One output: char.

The node also fingerprints the preset files it reads and re-runs when they change, so editing a preset JSON and re-queueing shows the new text instead of a stale cached prompt. That alone is worth more than it sounds if you've ever fought a prompt node that cached on you.

Install

ComfyUI Manager โ†’ search kisekae (Registry name comfyui-kisekae), or:

cd ComfyUI/custom_nodes
git clone https://github.com/Kagejitsu/comfyui-kisekae

Restart ComfyUI. No Python dependencies - the pack declares none, which is unusual for a node pack this size and means it can't break your environment. Presets live in ComfyUI/user/default/kisekae/presets/; the shipped examples/โ€ฆ are read-only and survive updates. Press R in ComfyUI after adding or editing preset files so the dropdowns rebuild.

Common issues

I picked a character and got an empty prompt. Load Preset only builds a character; you need Kisekae Prompt at the end to render text. Nothing reaches CLIP before that.

Everything upstream vanished. That's replace doing its job. Switch to merge if you're stacking onto an existing character.

A section of my preset didn't apply. Check the reference resolves - a $ref to a preset that moved is an error, not a silent no-op, and it'll show up on the node. Kisekae Debug JSON in sources view names the preset file each field came from.

My new preset isn't in the dropdown. Press R. Also check the file ends in .json and lives inside the preset folder - paths outside it are refused, and anything under presets/.trash/ is ignored on purpose.

Two Load Preset nodes, one character, confusing result. Order matters: the second node operates on the first node's output. In merge, later fields win. That's how you override a single thing from a preset without editing it.

Categorykisekae

Inputs (3)

NameTypeDefaultDescription
presetCOMBO(none)7 options: (none), examples/characters/aoi, examples/characters/ren, examples/outfits/maid, examples/outfits/school-uniform, examples/outfits/shrine, +1
modeCOMBOreplace3 options: replace, overlay, merge
charoptKISEKAE_CHARโ€”

Outputs (1)

NameTypeDescription
charKISEKAE_CHARโ€”