ComfyUI Node
Symbiotica Prompt Block
One block of the prompt book, edited on the canvas — a shared rule, an image-model block, or an asset type. Several of these side by side ARE the book, laid out like the string-literal graphs they replace, except a save here lands in <project>/prompts/ where every queue reads it. Wire the Prompt Book's `project_path` output in, and chain block to block through `project` so one wire feeds the row. Wire a Prompt Recipe's `text_N` into `text_in` and Asset Focus's `category` in, and this becomes a window onto that recipe's slot: the asset picks the block, you read it, edit it and pass it on.
Symbiotica Prompt Block
- project_path
- text
◄project_path►
◄block►
◄slot1►
◄category—►
◄text_in—►
Categorysymbiotica/pipeline
Inputs (5)
| Name | Type | Default | Description |
|---|---|---|---|
| project_path | STRING | Client project folder holding the prompt book. Wire the Prompt Book's `project` output, or a neighbouring block's `project` passthrough. | |
| block | STRING | Which block this node edits: a type block (Chair.md), a shared rule (_rules/02-inputs.md) or an image block (_image/01-image-model.md). The panel's picker fills this in. Ignored while `category` is wired — then the recipe names the block. | |
| slot | COMBO | 1 | Which slot of the category's recipe this node edits. Set for you when `text_in` comes from a Prompt Recipe — wiring `text_3` in makes this 3. |
| categoryopt | STRING | Wire Asset Focus's `category` here and this node edits whatever `_recipes/<category>.json` names in `slot` — switch asset type and the block on screen follows, with nothing to pick. | |
| text_inopt | STRING | Wire the Prompt Recipe's `text_N` here to preview and edit that prompt. With no `category` wired it is the old chain input instead: the previous block's `text`, which this node appends its own block to. |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| project_path | STRING | Passthrough of the project, so blocks chain on one wire instead of fanning every node back to the book. |
| text | STRING | This node's block, ready for the LLM. Chained (no `category` wired) it is everything so far: text_in plus this block, blank-line separated, so the LAST block in a row carries the whole prompt. |