ComfyUI/comfy_extras
Christian Byrne bbb8864778
add search aliases to all nodes (#12035)
* feat: Add search_aliases field to node schema

Adds `search_aliases` field to improve node discoverability. Users can define alternative search terms for nodes (e.g., "text concat" → StringConcatenate).

Changes:
- Add `search_aliases: list[str]` to V3 Schema
- Add `SEARCH_ALIASES` support for V1 nodes
- Include field in `/object_info` response
- Add aliases to high-priority core nodes

V1 usage:
```python
class MyNode:
    SEARCH_ALIASES = ["alt name", "synonym"]
```

V3 usage:
```python
io.Schema(
    node_id="MyNode",
    search_aliases=["alt name", "synonym"],
    ...
)
```

## Related PRs
- Frontend: Comfy-Org/ComfyUI_frontend#XXXX (draft - merge after this)
- Docs: Comfy-Org/docs#XXXX (draft - merge after stable)

* Propagate search_aliases through V3 Schema.get_v1_info to NodeInfoV1

* feat: add SEARCH_ALIASES for core nodes (#12016)

Add search aliases to 22 core nodes in nodes.py to improve node discoverability:
- Checkpoint/model loaders: CheckpointLoader, DiffusersLoader
- Conditioning nodes: ConditioningAverage, ConditioningSetArea, ConditioningSetMask, ConditioningZeroOut
- Style nodes: StyleModelApply
- Image nodes: LoadImageMask, LoadImageOutput, ImageBatch, ImageInvert, ImagePadForOutpaint
- Latent nodes: LoadLatent, SaveLatent, LatentBlend, LatentComposite, LatentCrop, LatentFlip, LatentFromBatch, LatentUpscale, LatentUpscaleBy, RepeatLatentBatch

* feat: add SEARCH_ALIASES for image, mask, and string nodes (#12017)

Add search aliases to nodes in comfy_extras for better discoverability:
- nodes_mask.py: mask manipulation nodes
- nodes_images.py: image processing nodes
- nodes_post_processing.py: post-processing effect nodes
- nodes_string.py: string manipulation nodes
- nodes_compositing.py: compositing nodes
- nodes_morphology.py: morphological operation nodes
- nodes_latent.py: latent space nodes

Uses search_aliases parameter in io.Schema() for v3 nodes.

* feat: add SEARCH_ALIASES for audio and video nodes (#12018)

Add search aliases to audio and video nodes for better discoverability:
- nodes_audio.py: audio loading, saving, and processing nodes
- nodes_video.py: video loading and processing nodes
- nodes_wan.py: WAN model nodes

Uses search_aliases parameter in io.Schema() for v3 nodes.

* feat: add SEARCH_ALIASES for model and misc nodes (#12019)

Add search aliases to model-related and miscellaneous nodes:
- Model nodes: nodes_model_merging.py, nodes_model_advanced.py, nodes_lora_extract.py
- Sampler nodes: nodes_custom_sampler.py, nodes_align_your_steps.py
- Control nodes: nodes_controlnet.py, nodes_attention_multiply.py, nodes_hooks.py
- Training nodes: nodes_train.py, nodes_dataset.py
- Utility nodes: nodes_logic.py, nodes_canny.py, nodes_differential_diffusion.py
- Architecture-specific: nodes_sd3.py, nodes_pixart.py, nodes_lumina2.py, nodes_kandinsky5.py, nodes_hidream.py, nodes_fresca.py, nodes_hunyuan3d.py
- Media nodes: nodes_load_3d.py, nodes_webcam.py, nodes_preview_any.py, nodes_wanmove.py

Uses search_aliases parameter in io.Schema() for v3 nodes, SEARCH_ALIASES class attribute for legacy nodes.
2026-01-22 18:36:58 -08:00
..
chainner_models Replace print with logging (#6138) 2024-12-20 16:24:55 -05:00
nodes_ace.py v3 nodes (part a) (#9149) 2025-08-21 22:05:36 -04:00
nodes_advanced_samplers.py v3 nodes (part a) (#9149) 2025-08-21 22:05:36 -04:00
nodes_align_your_steps.py add search aliases to all nodes (#12035) 2026-01-22 18:36:58 -08:00
nodes_apg.py New Year ruff cleanup. (#11595) 2026-01-01 22:06:14 -05:00
nodes_attention_multiply.py add search aliases to all nodes (#12035) 2026-01-22 18:36:58 -08:00
nodes_audio_encoder.py convert nodes_audio_encoder.py to V3 schema (#10123) 2025-09-30 23:00:22 -07:00
nodes_audio.py add search aliases to all nodes (#12035) 2026-01-22 18:36:58 -08:00
nodes_camera_trajectory.py convert WanCameraEmbedding node to V3 schema (#9714) 2025-09-12 17:38:12 -04:00
nodes_canny.py add search aliases to all nodes (#12035) 2026-01-22 18:36:58 -08:00
nodes_cfg.py convert CFG nodes to V3 schema (#9717) 2025-09-12 17:39:55 -04:00
nodes_chroma_radiance.py Add support for Chroma Radiance (#9682) 2025-09-13 17:58:43 -04:00
nodes_clip_sdxl.py convert CLIPTextEncodeSDXL nodes to V3 schema (#9716) 2025-09-26 14:15:44 -07:00
nodes_compositing.py add search aliases to all nodes (#12035) 2026-01-22 18:36:58 -08:00
nodes_cond.py convert nodes_cond.py to V3 schema (#9719) 2025-09-12 17:39:30 -04:00
nodes_context_windows.py Context windows fixes and features (#10975) 2025-12-05 12:42:46 -08:00
nodes_controlnet.py add search aliases to all nodes (#12035) 2026-01-22 18:36:58 -08:00
nodes_cosmos.py convert Cosmos nodes to V3 schema (#9721) 2025-09-12 17:38:46 -04:00
nodes_custom_sampler.py add search aliases to all nodes (#12035) 2026-01-22 18:36:58 -08:00
nodes_dataset.py add search aliases to all nodes (#12035) 2026-01-22 18:36:58 -08:00
nodes_differential_diffusion.py add search aliases to all nodes (#12035) 2026-01-22 18:36:58 -08:00
nodes_easycache.py Fix for edge case of EasyCache when conditionings change during a sampling run (like with timestep scheduling) (#12020) 2026-01-21 23:01:35 -05:00
nodes_edit_model.py convert nodes_edit_model.py to V3 schema (#10147) 2025-10-03 13:24:42 -07:00
nodes_eps.py Add TemporalScoreRescaling node (#10351) 2025-10-15 18:12:25 -04:00
nodes_flux.py Support the new qwen edit 2511 reference method. (#11340) 2025-12-15 19:20:34 -05:00
nodes_freelunch.py convert nodes_freelunch.py to the V3 schema (#10904) 2025-12-05 20:22:02 -08:00
nodes_fresca.py add search aliases to all nodes (#12035) 2026-01-22 18:36:58 -08:00
nodes_gits.py convert nodes_gits.py to V3 schema (#9949) 2025-10-01 12:16:59 -07:00
nodes_hidream.py add search aliases to all nodes (#12035) 2026-01-22 18:36:58 -08:00
nodes_hooks.py add search aliases to all nodes (#12035) 2026-01-22 18:36:58 -08:00
nodes_hunyuan3d.py add search aliases to all nodes (#12035) 2026-01-22 18:36:58 -08:00
nodes_hunyuan.py Support the LTXV 2 model. (#11632) 2026-01-05 01:58:59 -05:00
nodes_hypernetwork.py convert nodes_hypernetwork.py to V3 schema (#10583) 2025-11-03 00:21:47 -08:00
nodes_hypertile.py convert nodes_hypertile.py to V3 schema (#10061) 2025-09-27 19:16:22 -07:00
nodes_image_compare.py add node - image compare (#11343) 2026-01-08 21:31:19 -08:00
nodes_images.py add search aliases to all nodes (#12035) 2026-01-22 18:36:58 -08:00
nodes_ip2p.py convert nodes_ip2p.pt to V3 schema (#10097) 2025-10-01 12:20:30 -07:00
nodes_kandinsky5.py add search aliases to all nodes (#12035) 2026-01-22 18:36:58 -08:00
nodes_latent.py add search aliases to all nodes (#12035) 2026-01-22 18:36:58 -08:00
nodes_load_3d.py add search aliases to all nodes (#12035) 2026-01-22 18:36:58 -08:00
nodes_logic.py add search aliases to all nodes (#12035) 2026-01-22 18:36:58 -08:00
nodes_lora_extract.py add search aliases to all nodes (#12035) 2026-01-22 18:36:58 -08:00
nodes_lotus.py convert nodes_lotus.py to V3 schema (#10057) 2025-09-27 19:11:36 -07:00
nodes_lt_audio.py Add device selection for LTXAVTextEncoderLoader (#11700) 2026-01-07 18:39:59 -05:00
nodes_lt_upsampler.py Support the LTXV 2 model. (#11632) 2026-01-05 01:58:59 -05:00
nodes_lt.py Support the LTXV 2 model. (#11632) 2026-01-05 01:58:59 -05:00
nodes_lumina2.py add search aliases to all nodes (#12035) 2026-01-22 18:36:58 -08:00
nodes_mahiro.py Give Mahiro CFG a more appropriate display name (#11580) 2026-01-02 00:37:37 -08:00
nodes_mask.py add search aliases to all nodes (#12035) 2026-01-22 18:36:58 -08:00
nodes_mochi.py convert nodes_mochi.py to V3 schema (#10069) 2025-09-29 12:03:35 -07:00
nodes_model_advanced.py add search aliases to all nodes (#12035) 2026-01-22 18:36:58 -08:00
nodes_model_downscale.py convert nodes_freelunch.py to the V3 schema (#10904) 2025-12-05 20:22:02 -08:00
nodes_model_merging_model_specific.py Qwen Image model merging node. (#9202) 2025-08-06 04:07:04 -04:00
nodes_model_merging.py add search aliases to all nodes (#12035) 2026-01-22 18:36:58 -08:00
nodes_model_patch.py Support Multi/InfiniteTalk (#10179) 2026-01-21 23:09:48 -05:00
nodes_morphology.py add search aliases to all nodes (#12035) 2026-01-22 18:36:58 -08:00
nodes_nop.py Native block swap custom nodes considered harmful. (#10783) 2025-11-18 00:26:44 -05:00
nodes_optimalsteps.py convert nodes_optimalsteps.py to V3 schema (#10074) 2025-10-01 12:18:04 -07:00
nodes_pag.py convert nodes_pag.py to V3 schema (#10080) 2025-10-01 12:18:49 -07:00
nodes_perpneg.py convert nodes_perpneg.py to V3 schema (#10081) 2025-09-29 12:05:28 -07:00
nodes_photomaker.py convert nodes_photomaker.py to V3 schema (#10017) 2025-09-27 02:36:43 -07:00
nodes_pixart.py add search aliases to all nodes (#12035) 2026-01-22 18:36:58 -08:00
nodes_post_processing.py add search aliases to all nodes (#12035) 2026-01-22 18:36:58 -08:00
nodes_preview_any.py add search aliases to all nodes (#12035) 2026-01-22 18:36:58 -08:00
nodes_primitive.py V3 Improvements + DynamicCombo + Autogrow exposed in public API (#11345) 2025-12-30 23:09:55 -05:00
nodes_qwen.py Add node to create empty latents for qwen image layered model. (#11460) 2025-12-21 19:59:40 -05:00
nodes_rebatch.py convert nodes_rebatch.py to V3 schema (#9945) 2025-09-26 14:10:49 -07:00
nodes_rope.py Add a ScaleROPE node. Currently only works on WAN models. (#10559) 2025-10-30 22:11:38 -04:00
nodes_sag.py convert nodes_sag.py to V3 schema (#9940) 2025-09-26 14:13:52 -07:00
nodes_sd3.py add search aliases to all nodes (#12035) 2026-01-22 18:36:58 -08:00
nodes_sdupscale.py convert nodes_sdupscale.py to V3 schema (#9943) 2025-09-26 14:12:38 -07:00
nodes_slg.py convert nodes_sd3.py and nodes_slg.py to V3 schema (#10162) 2025-10-09 15:18:23 -07:00
nodes_stable3d.py convert nodes_stable3d.py to V3 schema (#10204) 2025-10-04 12:33:48 -07:00
nodes_stable_cascade.py convert Stable Cascade nodes to V3 schema (#9373) 2025-08-30 23:19:21 -04:00
nodes_string.py add search aliases to all nodes (#12035) 2026-01-22 18:36:58 -08:00
nodes_tcfg.py convert nodes_tcfg.py to V3 schema (#9942) 2025-09-26 14:13:05 -07:00
nodes_tomesd.py convert nodes_tomesd.py to V3 schema (#10180) 2025-10-03 11:50:38 -07:00
nodes_torch_compile.py Disable guards on transformer_options when torch.compile (#11317) 2025-12-15 16:49:29 -05:00
nodes_train.py add search aliases to all nodes (#12035) 2026-01-22 18:36:58 -08:00
nodes_upscale_model.py feat: Add search_aliases field to node schema (#12010) 2026-01-21 15:36:02 -08:00
nodes_video_model.py Temporal area composition. 2025-03-03 06:50:31 -05:00
nodes_video.py add search aliases to all nodes (#12035) 2026-01-22 18:36:58 -08:00
nodes_wan.py add search aliases to all nodes (#12035) 2026-01-22 18:36:58 -08:00
nodes_wanmove.py add search aliases to all nodes (#12035) 2026-01-22 18:36:58 -08:00
nodes_webcam.py add search aliases to all nodes (#12035) 2026-01-22 18:36:58 -08:00
nodes_zimage.py Support zimage omni base model. (#11979) 2026-01-19 23:17:38 -05:00