Symbiotica Order Specs
One Order Wire That Carries an Entire Event's Assets
- order
Symbiotica Order Specs is the node that turns "project + month + feature" into a single, self-contained order wire. Every other node in the order pipeline - the Auto Packer, Order Assets, Asset Focus, Dataset Reference, the Prompt Recipe - hangs off this one wire. It's the spine of the pipeline: once you've built a lane that eats an order, switching which event you're rendering is a dropdown change on this node and nothing else.
The mental model: where Order Read gives you the whole month's worth of events, Order Specs picks one event and flattens it into the flat asset list every consumer reads. The value it emits carries the event's assets, their client reference paths, the catalog root, and the order's identity (project + month + feature) - so downstream nodes can re-find the same event later. It's the node you'll wire into almost everything, which is why the pack calls it "Feed it to the Auto Packer (and any task-prompt/task-image taps)."
How it works
Give it a project_path, a month, and a feature, and it does exactly what Order Read does internally - parse the xlsx, read the refs folder - but instead of returning events, it selects one event and builds the ORDER payload: a flat, de-duplicated asset list (named assets only), grouped template data, reference paths, and the source: "order" marker that tells the pack this came from an order rather than the asset library.
The strictness that runs through this whole pipeline shows up here too:
- A blank
featuremeans "the order's first event." Explicitly typing a feature the order doesn't hold raises - it refuses to quietly render a different event than the one requested. - If you leave
monthblank, it reads the first month the project has. Name one it doesn't have and it raises.
There's a small nicety: the feature field also accepts the "Feature - Event Name" combo label format the UI shows, alongside the bare feature value saved in workflows.
The inputs and output
Three string inputs, that's it:
project_path- the client project folder (the one withorders/andreference-assets/).month- which month's order to read.feature- which event to build; empty = the first event.
One output: order (SYMBIOTICA_ORDER). It's a custom wire type - you can't read it as text, you wire it onward. It flows into Order Assets, Asset Focus, the Auto Packer, Dataset Reference, Client Examples, the Order Tracker, basically everything downstream.
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 keys, no models, no cloud - pure local parsing, zero cost per run.
Common issues
- "no order file" - project path isn't pointing at the folder containing
orders/. - "event X has no named assets" - the order's events exist but the one you picked has no named asset rows. The error lists the available features so you can fix the pick.
- Rendering the wrong event silently - that's the blank-feature fallback doing its job. If you meant a specific event, type it; a blank field means "first event."
- Node output won't re-run - the pack fingerprints inputs (path, file mtime, refs folder listing) so re-queueing picks up a changed xlsx. If you edited the spreadsheet and it didn't re-read, change an input to bust the fingerprint.
One honest caveat: none of this makes sense without the pipeline around it. If you don't have a monthly game-asset order in xlsx form, Order Specs is a solution to a problem you don't have. If you do, it's the difference between wiring a new lane per event and changing a dropdown.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| project_path | STRING | The client project folder — the one that contains orders/ and reference-assets/ | |
| month | STRING | Which month's order to read | |
| feature | STRING | Which event to build (empty = the order's first event) |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| order | SYMBIOTICA_ORDER | — |