Lex Darlog (DRL)
eac870324c
__gen_default_texture() for reused texture-init code
2026-02-26 03:45:20 -03:00
Lex Darlog (DRL)
f35dda630f
small cleanup/bugfixes - from IDE warnings
2026-02-26 03:44:28 -03:00
Lex Darlog (DRL)
b285831a62
GLRender class - to decouple context from rendering methods
2026-02-26 02:55:31 -03:00
Lex Darlog (DRL)
8d45d2c90c
global gl -> GLContext.GL
2026-02-23 02:43:32 -03:00
Lex Darlog (DRL)
1b2604d3a8
_render_shader_batch() -> to GLContext method (part 2: remove)
2026-02-23 02:43:32 -03:00
Lex Darlog (DRL)
562f4ef48c
_render_shader_batch() -> to GLContext method (part 1: add)
2026-02-23 02:43:32 -03:00
Lex Darlog (DRL)
c9442a21a7
_create_program() -> to GLContext method
2026-02-23 02:43:32 -03:00
Lex Darlog (DRL)
2b63d8c26a
_compile_shader() -> to GLContext method
2026-02-23 02:43:31 -03:00
Lex Darlog (DRL)
0a99f6828f
change separator-comment lines
2026-02-23 02:43:31 -03:00
Lex Darlog (DRL)
d2d750d9c4
globals -> concrete backend attribs
2026-02-23 01:39:03 -03:00
Lex Darlog (DRL)
40fa050d3b
turn all backend-init functions into static class methods
2026-02-23 00:12:51 -03:00
Lex Darlog (DRL)
d097f7b023
singleton factory: actual implementation
2026-02-22 22:44:47 -03:00
Lex Darlog (DRL)
f241bfca81
GLContext singleton factory: scaffolding concrete classes
2026-02-22 22:44:47 -03:00
Lex Darlog (DRL)
c1877d3e4a
GLContext: extract __init_try_backend() (readability + try-return)
2026-02-22 22:44:01 -03:00
Lex Darlog (DRL)
d57bf9decb
gl, glfw, EGL declaration - to the top of the module
2026-02-22 21:24:31 -03:00
Christian Byrne
ee72752162
Add category to Normalized Attention Guidance node ( #12565 )
2026-02-21 19:51:21 -05:00
pythongosssss
602b2505a4
add support for pyopengl < 3.1.4 where the size parameter does not exist ( #12555 )
2026-02-21 06:14:57 -08:00
Christian Byrne
04a55d5019
fix: swap essentials_category from CLIPTextEncode to PrimitiveStringMultiline ( #12553 )
...
Remove CLIPTextEncode from Basics essentials category and add
PrimitiveStringMultiline (String Multiline) in its place.
Amp-Thread-ID: https://ampcode.com/threads/T-019c7efb-d916-7244-8c43-77b615ba0622
Co-authored-by: Jedrzej Kosinski <kosinkadink1@gmail.com>
2026-02-20 23:46:46 -08:00
Christian Byrne
5fb8f06495
feat: add essential subgraph blueprints ( #12552 )
...
Add 24 non-cloud essential blueprints from comfyui-wiki/Subgraph-Blueprints.
These cover common workflows: text/image/video generation, editing,
inpainting, outpainting, upscaling, depth maps, pose, captioning, and more.
Cloud-only blueprints (5) are excluded and will be added once
client-side distribution filtering lands.
Amp-Thread-ID: https://ampcode.com/threads/T-019c6f43-6212-7308-bea6-bfc35a486cbf
2026-02-20 23:40:13 -08:00
pythongosssss
96d6bd1a4a
Add GLSL shader node using PyOpenGL ( #12148 )
...
* adds support for executing simple glsl shaders
using moderngl package
* tidy
* Support multiple outputs
* Try fix build
* fix casing
* fix line endings
* convert to using PyOpenGL and glfw
* remove cpu support
* tidy
* add additional support for egl & osmesa backends
* fix ci
perf: only read required outputs
* add diagnostics, update mac initialization
* GLSL glueprints + node fixes (#12492 )
* Add image operation blueprints
* Add channels
* Add glow
* brightness/contrast
* hsb
* add glsl shader update system
* shader nit iteration
* add multipass for faster blur
* more fixes
* rebuild blueprints
* print -> logger
* Add edge preserving blur
* fix: move _initialized flag to end of GLContext.__init__
Prevents '_vao' attribute error when init fails partway through
and subsequent calls skip initialization due to early _initialized flag.
* update valid ranges
- threshold 0-100
- step 0+
* fix value ranges
* rebuild node to remove extra inputs
* Fix gamma step
* clamp saturation in colorize instead of wrapping
* Fix crash on 1x1 px images
* rework description
* remove unnecessary f
Co-authored-by: Jedrzej Kosinski <kosinkadink1@gmail.com>
Co-authored-by: Hunter Senft-Grupp <hunter@comfy.org>
2026-02-19 23:22:13 -05:00
comfyanonymous
5f2117528a
Force min length 1 when tokenizing for text generation. ( #12538 )
2026-02-19 22:57:44 -05:00
Christian Byrne
4d172e9ad7
feat: mark 429 widgets as advanced for collapsible UI ( #12197 )
...
* feat: mark 429 widgets as advanced for collapsible UI
Mark widgets as advanced across core, comfy_extras, and comfy_api_nodes
to support the new collapsible advanced inputs section in the frontend.
Changes:
- 267 advanced markers in comfy_extras/
- 162 advanced markers in comfy_api_nodes/
- All files pass python3 -m py_compile verification
Widgets marked advanced (hidden by default):
- Scheduler internals: sigma_max, sigma_min, rho, mu, beta, alpha
- Sampler internals: eta, s_noise, order, rtol, atol, h_init, pcoeff, etc.
- Memory optimization: tile_size, overlap, temporal_size, temporal_overlap
- Pipeline controls: add_noise, start_at_step, end_at_step
- Timing controls: start_percent, end_percent
- Layer selection: stop_at_clip_layer, layers, block_number
- Video encoding: codec, crf, format
- Device/dtype: device, noise_device, dtype, weight_dtype
Widgets kept basic (always visible):
- Core params: strength, steps, cfg, denoise, seed, width, height
- Model selectors: ckpt_name, lora_name, vae_name, sampler_name
- Common controls: upscale_method, crop, batch_size, fps, opacity
Related: frontend PR #11939
Amp-Thread-ID: https://ampcode.com/threads/T-019c1734-6b61-702e-b333-f02c399963fc
* fix: remove advanced=True from DynamicCombo.Input (unsupported)
Amp-Thread-ID: https://ampcode.com/threads/T-019c1734-6b61-702e-b333-f02c399963fc
* fix: address review - un-mark model merge, video, image, and training node widgets as advanced
Per comfyanonymous review:
- Model merge arguments should not be advanced (all 14 model-specific merge classes)
- SaveAnimatedWEBP lossless/quality/method should not be advanced
- SaveWEBM/SaveVideo codec/crf/format should not be advanced
- TrainLoraNode options should not be advanced (7 inputs)
Amp-Thread-ID: https://ampcode.com/threads/T-019c322b-a3a8-71b7-9962-d44573ca6352
* fix: un-mark batch_size and webcam width/height as advanced (should stay basic)
Amp-Thread-ID: https://ampcode.com/threads/T-019c3236-1417-74aa-82a3-bcb365fbe9d1
---------
Co-authored-by: Jedrzej Kosinski <kosinkadink1@gmail.com>
2026-02-19 19:20:02 -08:00
Yourz
5632b2df9d
feat: add essentials_category ( #12357 )
...
* feat: add essentials_category field to node schema
Amp-Thread-ID: https://ampcode.com/threads/T-019c2b25-cd90-7218-9071-03cb46b351b3
* feat: add ESSENTIALS_CATEGORY to core nodes
Marked nodes:
- Basic: LoadImage, SaveImage, LoadVideo, SaveVideo, Load3D, CLIPTextEncode
- Image Tools: ImageScale, ImageInvert, ImageBatch, ImageCrop, ImageRotate, ImageBlur
- Image Tools/Preprocessing: Canny
- Image Generation: LoraLoader
- Audio: LoadAudio, SaveAudio
Amp-Thread-ID: https://ampcode.com/threads/T-019c2b25-cd90-7218-9071-03cb46b351b3
* Add ESSENTIALS_CATEGORY to more nodes
- SaveGLB (Basic)
- GetVideoComponents (Video Tools)
- TencentTextToModelNode, TencentImageToModelNode (3D)
- RecraftRemoveBackgroundNode (Image Tools)
- KlingLipSyncAudioToVideoNode (Video Generation)
- OpenAIChatNode (Text Generation)
- StabilityTextToAudio (Audio)
Amp-Thread-ID: https://ampcode.com/threads/T-019c2b69-81c1-71c3-8096-450a39e20910
* fix: correct essentials category for Canny node
Amp-Thread-ID: https://ampcode.com/threads/T-019c7303-ab53-7341-be76-a5da1f7a657e
Co-authored-by: Amp <amp@ampcode.com>
* refactor: replace essentials_category string literals with constants
Amp-Thread-ID: https://ampcode.com/threads/T-019c7303-ab53-7341-be76-a5da1f7a657e
Co-authored-by: Amp <amp@ampcode.com>
* refactor: revert constants, use string literals for essentials_category
Amp-Thread-ID: https://ampcode.com/threads/T-019c7303-ab53-7341-be76-a5da1f7a657e
Co-authored-by: Amp <amp@ampcode.com>
* fix: update basics
---------
Co-authored-by: bymyself <cbyrne@comfy.org>
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: Jedrzej Kosinski <kosinkadink1@gmail.com>
2026-02-19 19:00:26 -08:00
Jukka Seppänen
6d11cc7354
feat: Add basic text generation support with native models, initially supporting Gemma3 ( #12392 )
2026-02-18 20:49:43 -05:00
comfyanonymous
f262444dd4
Add simple 3 band equalizer node for audio. ( #12519 )
2026-02-18 18:36:35 -05:00
Terry Jia
8ad38d2073
BBox widget ( #11594 )
...
* Boundingbox widget
* code improve
---------
Co-authored-by: Jedrzej Kosinski <kosinkadink1@gmail.com>
Co-authored-by: Christian Byrne <cbyrne@comfy.org>
2026-02-17 17:13:39 -08:00
comfyanonymous
18927538a1
Implement NAG on all the models based on the Flux code. ( #12500 )
...
Use the Normalized Attention Guidance node.
Flux, Flux2, Klein, Chroma, Chroma radiance, Hunyuan Video, etc..
2026-02-16 23:30:34 -05:00
rattus
ecd2a19661
Fix lora Extraction in offload conditions (+ dynamic_vram mode) ( #12479 )
...
* lora_extract: Add a trange
If you bite off more than your GPU can chew, this kinda just hangs.
Give a rough indication of progress counting the weights in a trange.
* lora_extract: Support on-the-fly patching
Use the on-the-fly approach from the regular model saving logic for
lora extraction too. Switch off force_cast_weights accordingly.
This gets extraction working in dynamic vram while also supporting
extraction on GPU offloaded.
2026-02-15 20:28:51 -05:00
Jedrzej Kosinski
596ed68691
Node Replacement API ( #12014 )
2026-02-15 02:12:30 -08:00
rattus
8902907d7a
dynamic_vram: Training fixes ( #12442 )
2026-02-13 15:29:37 -05:00
askmyteapot
e5ae670a40
Update ace15.py to allow min_p sampling ( #12373 )
2026-02-11 20:28:48 -05:00
Kohaku-Blueleaf
cdcf4119b3
[Trainer] training with proper offloading ( #12189 )
...
* Fix bypass dtype/device moving
* Force offloading mode for training
* training context var
* offloading implementation in training node
* fix wrong input type
* Support bypass load lora model, correct adapter/offloading handling
2026-02-10 21:45:19 -05:00
AustinMroz
dbe70b6821
Add a VideoSlice node ( #12107 )
...
* Base TrimVideo implementation
* Raise error if as_trimmed call fails
* Bigger max start_time, tooltips, and formatting
* Count packets unless codec has subframes
* Remove incorrect nested decode
* Add null check for audio streams
* Support non-strict duration
* Added strict_duration bool to node definition
* Empty commit for approval
* Fix duration
* Support 5.1 audio layout on save
---------
Co-authored-by: Jedrzej Kosinski <kosinkadink1@gmail.com>
2026-02-10 14:42:21 -08:00
comfyanonymous
a0302cc6a8
Make tonemap latent work on any dim latents. ( #12363 )
Python Linting / Run Ruff (push) Waiting to run
Python Linting / Run Pylint (push) Waiting to run
Full Comfy CI Workflow Runs / test-stable (12.1, , linux, 3.10, [self-hosted Linux], stable) (push) Waiting to run
Full Comfy CI Workflow Runs / test-stable (12.1, , linux, 3.11, [self-hosted Linux], stable) (push) Waiting to run
Full Comfy CI Workflow Runs / test-stable (12.1, , linux, 3.12, [self-hosted Linux], stable) (push) Waiting to run
Full Comfy CI Workflow Runs / test-unix-nightly (12.1, , linux, 3.11, [self-hosted Linux], nightly) (push) Waiting to run
Execution Tests / test (macos-latest) (push) Waiting to run
Execution Tests / test (ubuntu-latest) (push) Waiting to run
Execution Tests / test (windows-latest) (push) Waiting to run
Test server launches without errors / test (push) Waiting to run
Unit Tests / test (macos-latest) (push) Waiting to run
Unit Tests / test (ubuntu-latest) (push) Waiting to run
Unit Tests / test (windows-2022) (push) Waiting to run
2026-02-08 21:16:40 -05:00
chaObserv
9bf5aa54db
Add search_aliases to sa-solver and seeds-2 node ( #12327 )
2026-02-07 17:38:51 -05:00
Jukka Seppänen
5ff4fdedba
Fix LazyCache ( #12344 )
Python Linting / Run Ruff (push) Waiting to run
Python Linting / Run Pylint (push) Waiting to run
Full Comfy CI Workflow Runs / test-stable (12.1, , linux, 3.10, [self-hosted Linux], stable) (push) Waiting to run
Full Comfy CI Workflow Runs / test-stable (12.1, , linux, 3.11, [self-hosted Linux], stable) (push) Waiting to run
Full Comfy CI Workflow Runs / test-stable (12.1, , linux, 3.12, [self-hosted Linux], stable) (push) Waiting to run
Full Comfy CI Workflow Runs / test-unix-nightly (12.1, , linux, 3.11, [self-hosted Linux], nightly) (push) Waiting to run
Execution Tests / test (macos-latest) (push) Waiting to run
Execution Tests / test (ubuntu-latest) (push) Waiting to run
Execution Tests / test (windows-latest) (push) Waiting to run
Test server launches without errors / test (push) Waiting to run
Unit Tests / test (macos-latest) (push) Waiting to run
Unit Tests / test (ubuntu-latest) (push) Waiting to run
Unit Tests / test (windows-2022) (push) Waiting to run
2026-02-07 11:25:30 -08:00
Jukka Seppänen
a1c101f861
EasyCache: Support LTX2 ( #12231 )
Python Linting / Run Ruff (push) Waiting to run
Python Linting / Run Pylint (push) Waiting to run
Full Comfy CI Workflow Runs / test-stable (12.1, , linux, 3.10, [self-hosted Linux], stable) (push) Waiting to run
Full Comfy CI Workflow Runs / test-stable (12.1, , linux, 3.11, [self-hosted Linux], stable) (push) Waiting to run
Full Comfy CI Workflow Runs / test-stable (12.1, , linux, 3.12, [self-hosted Linux], stable) (push) Waiting to run
Full Comfy CI Workflow Runs / test-unix-nightly (12.1, , linux, 3.11, [self-hosted Linux], nightly) (push) Waiting to run
Execution Tests / test (windows-latest) (push) Waiting to run
Execution Tests / test (macos-latest) (push) Waiting to run
Execution Tests / test (ubuntu-latest) (push) Waiting to run
Test server launches without errors / test (push) Waiting to run
Unit Tests / test (macos-latest) (push) Waiting to run
Unit Tests / test (ubuntu-latest) (push) Waiting to run
Unit Tests / test (windows-2022) (push) Waiting to run
2026-02-06 00:43:09 -05:00
AustinMroz
2b70ab9ad0
Add a Create List node ( #12173 )
Python Linting / Run Ruff (push) Waiting to run
Python Linting / Run Pylint (push) Waiting to run
Full Comfy CI Workflow Runs / test-stable (12.1, , linux, 3.10, [self-hosted Linux], stable) (push) Waiting to run
Full Comfy CI Workflow Runs / test-stable (12.1, , linux, 3.11, [self-hosted Linux], stable) (push) Waiting to run
Full Comfy CI Workflow Runs / test-stable (12.1, , linux, 3.12, [self-hosted Linux], stable) (push) Waiting to run
Full Comfy CI Workflow Runs / test-unix-nightly (12.1, , linux, 3.11, [self-hosted Linux], nightly) (push) Waiting to run
Execution Tests / test (macos-latest) (push) Waiting to run
Execution Tests / test (ubuntu-latest) (push) Waiting to run
Execution Tests / test (windows-latest) (push) Waiting to run
Test server launches without errors / test (push) Waiting to run
Unit Tests / test (macos-latest) (push) Waiting to run
Unit Tests / test (ubuntu-latest) (push) Waiting to run
Unit Tests / test (windows-2022) (push) Waiting to run
Build package / Build Test (3.10) (push) Has been cancelled
Build package / Build Test (3.11) (push) Has been cancelled
Build package / Build Test (3.12) (push) Has been cancelled
Build package / Build Test (3.13) (push) Has been cancelled
Build package / Build Test (3.14) (push) Has been cancelled
2026-02-05 01:18:21 -05:00
comfyanonymous
35183543e0
Add VAE tiled decode node for audio. ( #12299 )
2026-02-05 01:12:04 -05:00
comfyanonymous
6125b80979
Add llm sampling options and make reference audio work on ace step 1.5 ( #12295 )
Python Linting / Run Ruff (push) Waiting to run
Python Linting / Run Pylint (push) Waiting to run
Full Comfy CI Workflow Runs / test-stable (12.1, , linux, 3.10, [self-hosted Linux], stable) (push) Waiting to run
Full Comfy CI Workflow Runs / test-stable (12.1, , linux, 3.11, [self-hosted Linux], stable) (push) Waiting to run
Full Comfy CI Workflow Runs / test-stable (12.1, , linux, 3.12, [self-hosted Linux], stable) (push) Waiting to run
Full Comfy CI Workflow Runs / test-unix-nightly (12.1, , linux, 3.11, [self-hosted Linux], nightly) (push) Waiting to run
Execution Tests / test (macos-latest) (push) Waiting to run
Execution Tests / test (ubuntu-latest) (push) Waiting to run
Execution Tests / test (windows-latest) (push) Waiting to run
Test server launches without errors / test (push) Waiting to run
Unit Tests / test (macos-latest) (push) Waiting to run
Unit Tests / test (ubuntu-latest) (push) Waiting to run
Unit Tests / test (windows-2022) (push) Waiting to run
2026-02-04 21:29:22 -05:00
Alexander Piskun
e77b34dfea
add File3DAny output to Load3D node; extend SaveGLB to accept File3DAny as input ( #12276 )
...
* add File3DAny output to Load3D node; extend SaveGLB node to accept File3DAny as input
* fix(grammar): capitalize letter
2026-02-04 11:35:38 -08:00
Alexander Piskun
fb23935c11
feat(comfy_api): add basic 3D Model file types ( #12129 )
...
* feat(comfy_api): add basic 3D Model file types
* update Tripo nodes to use File3DGLB
* update Rodin3D nodes to use File3DGLB
* address PR review feedback:
- Rename File3D parameter 'path' to 'source'
- Convert File3D.data property to get_data()
- Make .glb extension check case-insensitive in nodes_rodin.py
- Restrict SaveGLB node to only accept File3DGLB
* Fixed a bug in the Meshy Rig and Animation nodes
* Fix backward compatability
2026-02-03 10:31:46 -08:00
comfyanonymous
3c1a1a2df8
Basic support for the ace step 1.5 model. ( #12237 )
2026-02-03 00:06:18 -05:00
rattus
f8acd9c402
Reduce RAM usage, fix VRAM OOMs, and fix Windows shared memory spilling with adaptive model loading ( #11845 )
2026-02-01 01:01:11 -05:00
pythongosssss
8aabe2403e
Add color type and Color to RGB Int node ( #12145 )
...
Full Comfy CI Workflow Runs / test-stable (12.1, , linux, 3.11, [self-hosted Linux], stable) (push) Waiting to run
Unit Tests / test (macos-latest) (push) Waiting to run
Full Comfy CI Workflow Runs / test-stable (12.1, , linux, 3.12, [self-hosted Linux], stable) (push) Waiting to run
Unit Tests / test (ubuntu-latest) (push) Waiting to run
Full Comfy CI Workflow Runs / test-unix-nightly (12.1, , linux, 3.11, [self-hosted Linux], nightly) (push) Waiting to run
Unit Tests / test (windows-2022) (push) Waiting to run
Python Linting / Run Ruff (push) Waiting to run
Execution Tests / test (macos-latest) (push) Waiting to run
Python Linting / Run Pylint (push) Waiting to run
Execution Tests / test (ubuntu-latest) (push) Waiting to run
Execution Tests / test (windows-latest) (push) Waiting to run
Full Comfy CI Workflow Runs / test-stable (12.1, , linux, 3.10, [self-hosted Linux], stable) (push) Waiting to run
Test server launches without errors / test (push) Waiting to run
* add color type and color to rgb int node
* review fix for allowing output
---------
Co-authored-by: Jedrzej Kosinski <kosinkadink1@gmail.com>
2026-01-30 15:01:33 -08:00
comfyanonymous
bbe2c13a70
Make empty hunyuan latent 1.0 work with the 1.5 model. ( #12171 )
Execution Tests / test (macos-latest) (push) Waiting to run
Execution Tests / test (ubuntu-latest) (push) Waiting to run
Execution Tests / test (windows-latest) (push) Waiting to run
Python Linting / Run Ruff (push) Waiting to run
Test server launches without errors / test (push) Waiting to run
Python Linting / Run Pylint (push) Waiting to run
Unit Tests / test (macos-latest) (push) Waiting to run
Full Comfy CI Workflow Runs / test-stable (12.1, , linux, 3.10, [self-hosted Linux], stable) (push) Waiting to run
Unit Tests / test (ubuntu-latest) (push) Waiting to run
Full Comfy CI Workflow Runs / test-stable (12.1, , linux, 3.11, [self-hosted Linux], stable) (push) Waiting to run
Unit Tests / test (windows-2022) (push) Waiting to run
Full Comfy CI Workflow Runs / test-stable (12.1, , linux, 3.12, [self-hosted Linux], stable) (push) Waiting to run
Full Comfy CI Workflow Runs / test-unix-nightly (12.1, , linux, 3.11, [self-hosted Linux], nightly) (push) Waiting to run
2026-01-29 23:52:22 -05:00
Jukka Seppänen
ad53e78f11
Fix Noise_EmptyNoise when using nested latents ( #12089 )
2026-01-26 19:25:00 -05:00
Tavi Halperin
bfe31d0b9d
IC-LoRA: support small grid ( #12074 )
2026-01-26 15:33:19 -05:00
comfyanonymous
26c5bbb875
Move nodes from previous PR into their own file. ( #12066 )
Python Linting / Run Ruff (push) Has been cancelled
Python Linting / Run Pylint (push) Has been cancelled
Full Comfy CI Workflow Runs / test-stable (12.1, , linux, 3.10, [self-hosted Linux], stable) (push) Has been cancelled
Full Comfy CI Workflow Runs / test-stable (12.1, , linux, 3.11, [self-hosted Linux], stable) (push) Has been cancelled
Full Comfy CI Workflow Runs / test-stable (12.1, , linux, 3.12, [self-hosted Linux], stable) (push) Has been cancelled
Full Comfy CI Workflow Runs / test-unix-nightly (12.1, , linux, 3.11, [self-hosted Linux], nightly) (push) Has been cancelled
Execution Tests / test (macos-latest) (push) Has been cancelled
Generate Pydantic Stubs from api.comfy.org / generate-models (push) Has been cancelled
Execution Tests / test (ubuntu-latest) (push) Has been cancelled
Execution Tests / test (windows-latest) (push) Has been cancelled
Test server launches without errors / test (push) Has been cancelled
Unit Tests / test (macos-latest) (push) Has been cancelled
Unit Tests / test (ubuntu-latest) (push) Has been cancelled
Unit Tests / test (windows-2022) (push) Has been cancelled
2026-01-24 23:02:32 -05:00
Kohaku-Blueleaf
a97c98068f
[Weight-adapter/Trainer] Bypass forward mode in Weight adapter system ( #11958 )
...
* Add API of bypass forward module
* bypass implementation
* add bypass fwd into nodes list/trainer
2026-01-24 22:56:22 -05:00