YAW Settings Importer
Import settings between YAW Wan, Bernini, MiniMax H3, LTX and Krea workflows, with branch-aware mapping and a per-setting report.
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.