Symbiotica Event Specs
Pick One Event Out of the Order and Get Its Full Spec
- events
- event spec
Symbiotica Event Specs sits one step after Order Read and one step before the heavy rendering. Where Order Read hands you the whole month's worth of events, this node lets you pick one - by the order's Feature column, like "QE 2" - and emits that event's complete spec: its template groups, each group's category and canvas, and the per-asset client prompts and reference files. Think of it as the "what exactly am I working on today" node, and the pack positions it as the reader that feeds the Template Builder.
If you're following the pipeline's natural flow, the distinction to hold onto is: Order Read → events → Event Specs → one event spec, versus Order Specs → one order wire. They're two ways into similar territory - Event Specs works from the raw parsed events value and gives you the template-group view of a single event; Order Specs works from project/month/feature directly and gives you the flat asset list every consumer reads. Event Specs is the one you want when the work is organized around template groups (canvas + category per group), which is the Template Builder's input shape.
How it works
Wire the events output from Order Read into this node, type a feature name, and it pulls the matching event out of the parsed order, resolves its spec (template groups with per-asset records), and emits the whole thing as an EVENT_SPEC wire. It also pushes a JSON preview to the UI, so you can actually read what the event contains - which template groups, categories, canvases, and how many assets each group holds - without digging into the raw value.
The same anti-silent-substitution rule as the rest of the pipeline applies: a feature name that matches nothing raises a readable error listing the available features, rather than quietly returning some other event.
The inputs and output
events- the required wire from Symbiotica Order Read (SYMBIOTICA_ORDER_EVENTS).feature- the event to work on, e.g. "QE 2". Empty means the order's first event.
The output is event spec (SYMBIOTICA_EVENT_SPEC) - a custom wire type, not readable as text. Feed it to the Template Builder (which composes the template sheet) or use it as the definition of what this run is about. The node is marked as an output node, so it can be queued on its own - handy for "I just want to see this event's spec" without firing a render.
Install
ComfyUI Manager → search Symbiotica → install, or:
cd ComfyUI/custom_nodes
git clone https://github.com/symbiotica-ai/comfyui-nodes.git symbiotica
pip install -r symbiotica/requirements.txt
Restart ComfyUI. No API keys, no model downloads, zero cloud cost - it's local JSON plumbing over the parsed order.
Common issues
- "Feature not found" - the name doesn't match the order's Feature column. The error lists what the order actually holds, so copy from there.
- Empty spec - the event parsed but has no template groups or named assets. Same class of problem as Order Specs' "no named assets" - check the spreadsheet's structure.
- Nothing changes when you re-queue - the pack fingerprints inputs; if the underlying xlsx changed and the node didn't re-read, nudge an input to bust the cache.
The honest take: Event Specs is only useful inside this specific pipeline, and only if your orders come shaped the way the pack expects. For anyone running that shape it's the cleanest "which event am I building" switch in the pack - a dropdown that re-scopes the entire downstream lane.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| events | SYMBIOTICA_ORDER_EVENTS | — | |
| feature | STRING | Event to work on (the order's Feature column, e.g. "QE 2") |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| event spec | SYMBIOTICA_EVENT_SPEC | — |