* feat(nodes): centralize duplicated settings on Configuration + add tooltips The Scene Analyzer built its own Config from local model_name/temperature/ timeout/system_prompt widgets and ignored the Configuration node entirely, so the analyzer model was set in two disconnected places (bug report #4). - Scene Analyzer: add an optional `config` (COMPILER_CONFIG) input and drop the duplicated model/temperature/timeout widgets. Settings now come from the Configuration node; without one, defaults apply with a 300 s cold-load-friendly timeout. A non-empty `system_prompt` widget still overrides the config. - Knowledge Base Loader: accept an optional `config`; when wired, its KB path and version take precedence over the node's own widgets. - Add tooltips to every input on all six nodes. Docs (docs/nodes.md) updated for the Analyzer/KB Loader input changes. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> * fix(examples): refresh workflow widget values; guard against widget drift The shipped example workflow carried stale positional widget values from before V2 removed prompt_builder.trim_empty_outputs from the Configuration node. ComfyUI stores widgets positionally, so every later value shifted: debug_level received a leftover boolean ("false") and, in older saved workflows, the prompt separator received a boolean ("true") instead of ",". - Rebuild the Configuration node's 21 widget values in the current order. - Update the Analyzer node to the current shape (natural_language + system_prompt; config now arrives via a wired COMPILER_CONFIG input) and wire the Configuration node into it. - Add the KB Loader's version widget value. - New regression test: every example-workflow node's widgets_values length must match the node's current widget count, so this drift cannot recur silently. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> --------- Co-authored-by: kunail0804 <kunail0804@gmail.com> Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
Examples
Ready-to-use examples for Scene Compiler.
Workflow
workflows/scene_compiler_pipeline.json
is a ComfyUI workflow wiring the full pipeline:
Configuration ─┬─▶ Scene Validator ─▶ Resolver ─▶ Category Splitter ─▶ Prompt Builder
├──────────────────────▶ (config) (config) ◀┘
Knowledge Base Loader ─────────────────▶ Resolver (knowledge_base)
Scene Analyzer ─▶ Scene Validator (scene)
Load it in ComfyUI (Load → pick the file). The Scene Analyzer requires a local Ollama instance; the rest of the pipeline runs offline.
Scene JSON examples
Each scenes/*.scene.json is a Scene JSON document (the Analyzer's output form),
and each matching scenes/*.prompts.json is the exact prompt output it compiles
to with the shipped Knowledge Base and default configuration:
| Scene | Highlights |
|---|---|
single_character |
one character, appearance, clothing, environment, camera, lighting |
couple_interaction |
two characters, an interaction, and an expansion (school_uniform → blazer, pleated_skirt) |
The *.prompts.json outputs are verified by tests/test_examples.py. To skip the
Analyzer and compile a Scene JSON directly, feed it through the Validator →
Resolver → Category Splitter → Prompt Builder nodes (or the compiler API).
Note: the workflow JSON is provided as a starting point; verify it loads in your ComfyUI and re-save if ComfyUI adjusts the layout.