Extensions/YAW Settings Importer
ComfyUI Extension

YAW Settings Importer

Import settings between YAW Wan, Bernini, MiniMax H3, LTX and Krea workflows, with branch-aware mapping and a per-setting report.

By boobkake22·Created about a month ago·Updated a day ago· 0
boobkake22/ComfyUI-YAWSettingsImporter
Nodes
On cloudLocal install
Stars0
Updateda day ago
Readme

YAW Settings Importer

Drop a YAW workflow onto a helper node to reuse its settings in your current ComfyUI workflow. The node has no connections and never runs generation.

Supported inputs: workflow JSON, or a ComfyUI-saved PNG/WebP containing an embedded workflow. For videos, use the paired workflow image. API-format prompt JSON lacks the titles and writable widget layout needed for importing; the shared metadata extractor can read API prompts, but the drop node requires a full workflow.

Install

From your ComfyUI custom_nodes directory:

git clone https://github.com/boobkake22/ComfyUI-YAWSettingsImporter.git

Restart ComfyUI and refresh the browser. Add YAW Settings Importer (drop a workflow here) from sampling / Sampling Planner / Helpers. No extra Python packages, models, API keys or GPU resources are needed by the importer itself. Your workflow's node packs still need to be installed; Power LoRA imports use rgthree's loader widget API.

Drop a file on the node's dashed square. The checked settings apply to the current root graph, with a report showing copied and skipped fields. Click the square to reopen that report. Use ComfyUI undo or reload your saved workflow to revert an import. Save your workflow before trying a new family mapping.

Workflow coverage

| Family | Imported settings | | --- | --- | | Wan v0.39 native/MoE/WanVideo/SmoothMix → v0.50 SamplingPlanner | Prompts, High/Low LoRAs, step budgets, accelerated/base CFG, sampler/scheduler, shift, plan selectors and duration; missing equivalents are reported | | Wan v0.50 / Bernini v0.50 | Existing plan mapping, High/Low LoRAs; Bernini reference/video tasks are reported separately from the plan's task | | MiniMax H3 v0.50b / v0.51 (Turbo and base) | Positive prompt, main LoRAs, active sampler/scheduler/steps and duration; Turbo/base switches follow their live branch | | LTX 2.3 v0.50 | Prompts, main/upscale LoRAs, active sampler/CFG/steps or manual sigma schedule and duration | | Krea 2 v0.50 | Prompts, main LoRAs and active standard sampler/scheduler/steps/CFG; T2I/Edit task recognition |

The final YAW_H3_T2V+I2V_v0_51.json and YAW_H3_R2V_v0_51.json templates, plus the earlier v0.51 beta, are included as sanitized regression fixtures. Tests cover Turbo on/off, T2V, start-frame/end-frame I2V, R2V detection, and imports between the final templates and into v0.50b/both v0.51 sampling branches. Importing settings between T2V/I2V and R2V keeps the target's generation mode and reference media inputs; it reports the task mismatch for manual selection.

Prompts, LoRAs, sampler settings and task are checked by default. Seed and accelerator_lora are off by default. accelerator_lora covers LightX2V, H3 Turbo and matching distilled acceleration loaders. Names and strengths are copied only when a unique compatible loader exists; linked strength controls are reported for manual review. Older workflows retain the checkbox value; the legacy lightx2v request option is still accepted.

Modern-family imports write the active target controls. They do not switch Turbo, Basic/Advanced, upscale or DMD preset groups; differing presets are reported. A manual sigma schedule copies when the target also uses one; it cannot be converted automatically into a named scheduler or step budget. Single/main and upscale LoRA roles stay separate. LoRA rows are not transferred between different recognized model families.

Task changes automate T2V/I2V groups, including H3's I2V-only group and optional end-image group. Reference, source-video and image-edit mode changes require manual selection; they never silently map to T2V. Nested subgraphs are not supported as import targets. The current templates' top-level settings remain usable even if unrelated post-processing is inside a subgraph.

Reports and safeguards

  • Linked selectors take precedence over stale sampler widget defaults.
  • Muted branches do not supply settings; bypassed transforms forward their inputs.
  • LoRA on/off state, zero strengths and secondary strengths are preserved.
  • Missing or ambiguous controls are skipped with a reason. Unknown workflows without titled prompt anchors produce no patches.
  • An import is refused if you edit or replace the graph while its request runs.
  • Unsupported dropdown values retain the target value. An incompatible or failing rgthree row factory keeps/restores the existing rows.
  • A Wan plan shift override can remain bypassed; the report calls that out.

Development and keeping the Scheduler in sync

python3 -m unittest discover -s tests -v
node --test tests/frontend.test.mjs
# Optional read-only check of the actual current template checkout:
python3 scripts/check-workflows.py ../comfyui-wan

Python 3.10+ is supported. The frontend tests use Node 22+. Core tests run without ComfyUI, a GPU or another repository. Sanitized structural fixtures cover old Wan and the current H3, LTX, Krea and Bernini templates; they are test data, not generation workflows. CI runs Python 3.10, 3.12 and 3.13.

This repository owns extract_comfy.py and yaw_graph.py. CivitAI-Scheduler vendors these exact files and the shared extraction contract tests/fixtures. The Scheduler keeps its CivitAI field conversion in extract_json.py. After changing extraction here, run from the Scheduler checkout:

python3 scripts/sync-extractor.py --sync --source ../ComfyUI-YAWSettingsImporter
python3 scripts/sync-extractor.py --check --source ../ComfyUI-YAWSettingsImporter
pnpm test
pnpm typecheck
pnpm build

The Scheduler's normal tests verify the pinned file hashes and execute the same extraction contracts. Its default check works without a sibling checkout; the explicit --source check also detects drift against this repository. There is no runtime dependency between the two projects.

Apache-2.0 licensed. See RELEASE.md for the public release process.