GALIAIS-Nodes Prompt Profile
Package Identity, Outfit, Pose and More as One Object
- 项目配置
- DB
- 提示词档案
- 档案JSON
The pain this node solves is the one every character artist knows: you have a character - the name, the look, the outfit, the pose vocabulary - and you're sick of re-typing it into every new workflow. Prompt Profile turns that character into a single reusable object. You fill in the profile once, wire its output into the rest of the pack, and the character travels with you.
It's a data-carrier node, not a text emitter: its main output is a GALIAIS_NODES_PROMPT_PROFILE object that other nodes in the pack can consume, plus a JSON dump for inspection.
How it works
The inputs are organized like a character sheet, all Chinese labels:
- 名称 (name), 角色 (character), 作品 (copyright/series), 画师 (artist) - the identity block.
- 主体 (subject), 身体 (body), 脸发眼 (face/hair/eyes), 服装 (outfit), 姿态 (pose), 场景 (scene), 风格 (style) - the appearance and setting block.
- 自然语言 (natural language) - room for a prose description, useful for models that want sentences.
- 负面 (negative) - the character's own negative tokens, if any.
Two optional inputs matter for consistency: 项目配置 (project config) and DB. The node normalizes the artist tag against the dictionary if a DB is present (an artist who doesn't resolve gets flagged), and it inherits the DB path and other defaults from a project config if you wire one in.
Outputs: 提示词档案 (the profile object - the thing you wire into consuming nodes) and 档案JSON (a JSON snapshot for viewing or saving).
Installing it
It's part of the GALIAIS-Nodes pack:
cd ComfyUI/custom_nodes
git clone https://github.com/GALIAIS/GALIAIS-Nodes.git
Restart ComfyUI, or install via ComfyUI Manager ("GALIAIS-Nodes"). No Python dependencies; works standalone, better with a DB and project config wired in.
Where it earns its keep
The value is consistency over time. Keep one Prompt Profile per main character, and when a new workflow starts, drop the profile in, wire it up, and the identity, outfit, and pose vocabulary come along. That's the character-consistency habit the KB pushes: the fixed parts of a character (identity, face, outfit) stay fixed across renders, and only the variable parts (pose, scene, expression) change per image. The honest caveat is the ecosystem reality: on Danbooru-trained SDXL models, a well-known character resolves from its name tag alone - the profile is most valuable for original characters whose identity you have to spell out every time. And note the profile is a bundle, not a composer: it doesn't emit a finished prompt by itself, so pair it with a composer node or the Prompt Builder to actually render from it. One node per character, and your prompt library starts to feel like a casting call instead of a wall of text.
Inputs (15)
| Name | Type | Default | Description |
|---|---|---|---|
| 名称 | STRING | — | |
| 角色 | STRING | — | |
| 作品 | STRING | — | |
| 画师 | STRING | — | |
| 主体 | STRING | — | |
| 身体 | STRING | — | |
| 脸发眼 | STRING | — | |
| 服装 | STRING | — | |
| 姿态 | STRING | — | |
| 场景 | STRING | — | |
| 风格 | STRING | — | |
| 自然语言 | STRING | — | |
| 负面 | STRING | — | |
| 项目配置opt | GALIAIS_NODES_PROJECT_CONFIG | — | |
| DBopt | GALIAIS_NODES_DANBOORU_DB | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| 提示词档案 | GALIAIS_NODES_PROMPT_PROFILE | — |
| 档案JSON | STRING | — |