From e6646ff39a9ef0f24dd5c0f45b6aa18f3ba6d772 Mon Sep 17 00:00:00 2001 From: Yousef Rafat <81116377+yousef-rafat@users.noreply.github.com> Date: Wed, 24 Jun 2026 18:48:38 +0300 Subject: [PATCH] Simple Seed --- comfy_extras/nodes_seed.py | 41 ++++++++++++++++++++++++++++++++++++++ nodes.py | 1 + 2 files changed, 42 insertions(+) create mode 100644 comfy_extras/nodes_seed.py diff --git a/comfy_extras/nodes_seed.py b/comfy_extras/nodes_seed.py new file mode 100644 index 000000000..02518de01 --- /dev/null +++ b/comfy_extras/nodes_seed.py @@ -0,0 +1,41 @@ +from typing_extensions import override + +from comfy_api.latest import ComfyExtension, io + +class SimpleSeedNode(io.ComfyNode): + @classmethod + @override + def define_schema(cls) -> io.Schema: + return io.Schema( + node_id="SimpleSeedNode", + display_name="Simple Seed", + category="utils/seed", + search_aliases=["seed", "random", "global seed", "master seed"], + inputs=[ + io.Int.Input( + "seed", + default=0, + min=0, + max=0xffffffffffffffff, + control_after_generate=io.ControlAfterGenerate.fixed, + tooltip="Master seed value supplied to all reachable nodes.", + ), + ], + outputs=[ + io.Int.Output(display_name="seed"), + ], + ) + + @classmethod + @override + def execute(cls, seed: int, **kwargs) -> io.NodeOutput: + return io.NodeOutput(seed) + +class SeedExtension(ComfyExtension): + @override + async def get_node_list(self) -> list[type[io.ComfyNode]]: + return [SimpleSeedNode] + + +async def comfy_entrypoint() -> SeedExtension: + return SeedExtension() diff --git a/nodes.py b/nodes.py index 166e02d3d..ad172890d 100644 --- a/nodes.py +++ b/nodes.py @@ -2473,6 +2473,7 @@ async def init_builtin_extra_nodes(): "nodes_gaussian_splat.py", "nodes_triposplat.py", "nodes_depth_anything_3.py", + "nodes_seed.py", ] import_failed = []