Not in the top 1,000 by GitHub stars

SlavaSexton/ComfyUI-Agent-Kit

One ComfyUI skill for every AI coding agent (Claude Code, Codex, Gemini CLI, Qwen Code): drives a local ComfyUI end to end. 75 model prompt recipes, 581 templates, plus standalone Seedance, Krea and MiniMax H3 skills. Hardware-aware selection, workflow building, multi-shot video, ControlNet, HDR. By Chronicle of Brothers.

History

Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.

View weekly changes

claude-code/skills/comfyui/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

74f5b0bbd87b → 74f5b0bbd87b

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 74f5b0bbd87b

No earlier version was observed for comparison.

Compare on GitHub

claude-code/skills/krea/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

74f5b0bbd87b → 74f5b0bbd87b

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 74f5b0bbd87b

No earlier version was observed for comparison.

Compare on GitHub

claude-code/skills/minimax-h3/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

74f5b0bbd87b → 74f5b0bbd87b

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 74f5b0bbd87b

No earlier version was observed for comparison.

Compare on GitHub

claude-code/skills/seedance/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

74f5b0bbd87b → 74f5b0bbd87b

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 74f5b0bbd87b

No earlier version was observed for comparison.

Compare on GitHub

shared/comfyui/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

74f5b0bbd87b → 74f5b0bbd87b

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 74f5b0bbd87b

No earlier version was observed for comparison.

Compare on GitHub

shared/krea/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

74f5b0bbd87b → 74f5b0bbd87b

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 74f5b0bbd87b

No earlier version was observed for comparison.

Compare on GitHub

shared/minimax-h3/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

74f5b0bbd87b → 74f5b0bbd87b

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 74f5b0bbd87b

No earlier version was observed for comparison.

Compare on GitHub

shared/seedance/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Instructions only

74f5b0bbd87b → 74f5b0bbd87b

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → 74f5b0bbd87b

No earlier version was observed for comparison.

Compare on GitHub

View on GitHubAdd to my skills

Verified commit 74f5b0bbd87b1c4ca0cd95dea169cdcae4b9af9d

git clone --filter=blob:none --no-checkout https://github.com/SlavaSexton/ComfyUI-Agent-Kit.git .hotskills/slavasexton-comfyui-agent-kit && git -C .hotskills/slavasexton-comfyui-agent-kit checkout --detach 74f5b0bbd87b1c4ca0cd95dea169cdcae4b9af9d # Copy each selected skill directory from .hotskills/slavasexton-comfyui-agent-kit into .claude/skills/<skill-name>/
git clone --filter=blob:none --no-checkout https://github.com/SlavaSexton/ComfyUI-Agent-Kit.git .hotskills/slavasexton-comfyui-agent-kit && git -C .hotskills/slavasexton-comfyui-agent-kit checkout --detach 74f5b0bbd87b1c4ca0cd95dea169cdcae4b9af9d # Copy each selected skill directory from .hotskills/slavasexton-comfyui-agent-kit into .agents/skills/<skill-name>/
117GitHub stars
4stars in 7 days
8skills in this repository
1commit in 30 days

Heat

4.0
  • Star growth, last 7 daysNot available
  • Star growth, last 24 hoursNot available
  • Rank movement, last 7 daysNot available
  • Commits, last 30 daysNot available
  • Accounts asking about it through MCP, last 7 daysNot available
  • Hot votes this weekNot available

Heat never changes the order by stars, and sponsorship never touches it. How heat works

Stars over time

Oct 25, 2026Nov 5, 2026117

30-day change not yet available: not enough history.

Individual skills in this repository

How it works

comfyui

When your agent uses it

Drive a local ComfyUI install for image, video, and audio generation via its HTTP API. Use WHENEVER generating, rendering, or editing images/video/audio/hero assets with ComfyUI, Z-Image, Ideogram, FLUX, LTX, Wan, or when building, parameterizing, or running ComfyUI workflows. Covers the API client, workflow JSON format, model patterns, dual/multi-GPU placement, the MCP driver, in-graph Claude nodes, and VRAM coordination.

What it loads into context

Frontmatter

117 tokens

Always available to the agent

SKILL.md

12,851 tokens

When the skill is activated

Reference documents

245,917 tokens

Loaded on request

Token counts are estimates. Scripts run separately; they are not counted as reference context.

The playbook

  1. Files in this kit (pull the right one on demand)
  2. Your machine
  3. The four layers (what this kit installs)
  4. The client (no extra deps, stdlib only)
  5. Workflow JSON (API format)
  6. Template library (the SOURCE OF TRUTH, mix and match)
  7. Compose a NEW workflow from pieces (assemble + wire it correctly)
  8. Shared workflows + model shootout (pick the best model for a look)
  9. Staying current (new models and workflows)
  10. Per-model prompting (the mega-brain): READ before prompting a named model
  11. In-graph Claude nodes (Layer 3): pick the right one
  12. Build a workflow AND show it in the owner's GUI (bidirectional bridge)
  13. Lay the graph out cleanly (structured blocks, no overlap)
  14. Collapse a stage into one reusable node (Subgraphs)
  15. Creator-level depth: strengths, real limits, and advanced sequence work
  16. Where models live, and how to download one (DETECT, do not assume)
  17. Pick a model variant that fits THIS machine (hardware-aware, recommend before downloading)
  18. Using multiple GPUs (it is NOT like a layer-split LLM server)
  19. VRAM coordination (CRITICAL gotcha)
  20. NEVER restart Comfy Desktop via the MCP (CRITICAL gotcha)
  21. Start ComfyUI yourself when it is down (auto-start the server)
  22. Session protocol (ask how to start, and SAVE so the owner can find it later)
  23. Procedure (do this each time)

Scripts executed separately

  • comfy_client.py
  • tools/check_updates.py
  • tools/fetch_workflow.py
  • tools/gen_quick_index.py
  • tools/node_inventory.py
  • workflow_layout.py
  • ../../../shared/tools/fetch_workflow.py

Files

  • ../../../.claude-plugin/marketplace.jsonasset779 bytes
  • ../../.claude-plugin/plugin.jsonasset501 bytes
  • ADVANCED.mddoc36,053 bytes
  • AGENTS.mddoc2,926 bytes
  • BOOTSTRAP.mddoc4,208 bytes
  • BUILDING_NODES.mddoc19,511 bytes
  • EXAMPLE_WORKFLOWS.mddoc2,354 bytes
  • KIJAI.mddoc46,923 bytes
  • KNOWN_ISSUES.mddoc21,869 bytes
  • LAYERS.mddoc5,322 bytes
  • LTX2_TRAINING.mddoc3,991 bytes
  • MODELS.mddoc10,073 bytes
  • MODELS/audio.mddoc10,313 bytes
  • MODELS/image-api.mddoc27,285 bytes
  • MODELS/image-edit.mddoc7,960 bytes
  • MODELS/image-open-more.mddoc20,226 bytes
  • MODELS/image-open.mddoc24,334 bytes
  • MODELS/niche.mddoc12,598 bytes
  • MODELS/three-d.mddoc3,347 bytes
  • MODELS/utility.mddoc11,238 bytes
  • MODELS/video-api.mddoc56,557 bytes
  • MODELS/video-open.mddoc57,528 bytes
  • MODEL_INDEX.mddoc7,594 bytes
  • NODES.mddoc3,152 bytes
  • NODE_LIBRARY/_INDEX.mddoc7,513 bytes
  • NODE_LIBRARY/_INVENTORY.mddoc12,878 bytes
  • NODE_LIBRARY/_SCHEMA.mddoc4,971 bytes
  • NODE_LIBRARY/advanced.mddoc44,496 bytes
  • NODE_LIBRARY/audio.mddoc11,437 bytes
  • NODE_LIBRARY/color-and-transform.mddoc3,315 bytes
  • NODE_LIBRARY/conditioning-1.mddoc43,096 bytes
  • NODE_LIBRARY/conditioning-2.mddoc39,790 bytes
  • NODE_LIBRARY/core.mddoc9,580 bytes
  • NODE_LIBRARY/custom-author.mddoc9,211 bytes
  • NODE_LIBRARY/experimental.mddoc18,021 bytes
  • NODE_LIBRARY/image-1.mddoc33,348 bytes
  • NODE_LIBRARY/image-2.mddoc25,653 bytes
  • NODE_LIBRARY/latent.mddoc32,179 bytes
  • NODE_LIBRARY/loaders.mddoc18,058 bytes
  • NODE_LIBRARY/ocio.mddoc25,984 bytes
  • NODE_LIBRARY/radiance.mddoc15,022 bytes
  • NODE_LIBRARY/samplers.mddoc33,819 bytes
  • NODE_LIBRARY/smart-upscaler.mddoc16,439 bytes
  • NODE_LIBRARY/text.mddoc17,703 bytes
  • NODE_LIBRARY/three-d.mddoc28,417 bytes
  • NODE_LIBRARY/training.mddoc7,042 bytes
  • NODE_LIBRARY/utilities.mddoc23,178 bytes
  • NODE_LIBRARY/video.mddoc16,311 bytes
  • SKILL.mdcore49,157 bytes
  • SKILL.mdcore49,157 bytes
  • SKILL.mdcore49,157 bytes
  • SKILL.mdcore49,157 bytes
  • SKILL.mdcore49,157 bytes
  • SKILL.mdcore49,157 bytes
  • SKILL.mdcore49,157 bytes
  • SKILL.mdcore49,157 bytes
  • SKILL.mdcore49,157 bytes
  • SKILL.mdcore49,157 bytes
  • SKILL.mdcore49,157 bytes
  • SKILL.mdcore49,157 bytes
  • SKILL.mdcore49,157 bytes
  • SKILL.mdcore49,157 bytes
  • SKILL.mdcore49,157 bytes
  • SKILL.mdcore49,157 bytes
  • SKILL.mdcore49,157 bytes
  • SKILL.mdcore49,157 bytes
  • SKILL.mdcore49,157 bytes
  • SKILL.mdcore49,157 bytes
  • SKILL.mdcore49,157 bytes
  • SKILL.mdcore49,157 bytes
  • SKILL.mdcore49,157 bytes
  • SKILL.mdcore49,157 bytes
  • SKILL.mdcore49,157 bytes
  • SKILL.mdcore49,157 bytes
  • SKILL.mdcore49,157 bytes
  • SKILL.mdcore49,157 bytes
  • SKILL.mdcore49,157 bytes
  • SKILL.mdcore49,157 bytes
  • SKILL.mdcore49,157 bytes
  • SKILL.mdcore49,157 bytes
  • SKILL.mdcore49,157 bytes
  • SKILL.mdcore49,157 bytes
  • SKILL.mdcore49,157 bytes
  • SKILL.mdcore49,157 bytes
  • SKILL.mdcore49,157 bytes
  • TASKS.mddoc8,374 bytes
  • UPDATING.mddoc2,731 bytes
  • comfy_client.pyruns4,367 bytes
  • machine.mddoc2,153 bytes
  • tools/check_updates.pyruns5,888 bytes
  • tools/fetch_workflow.pyruns1,420 bytes
  • tools/gen_quick_index.pyruns4,264 bytes
  • tools/node_inventory.pyruns6,023 bytes
  • workflow_layout.pyruns11,989 bytes
  • ../../../shared/tools/fetch_workflow.pyruns1,420 bytes
Read SKILL.md

# ComfyUI: driving the local install

Use this whenever the task involves generating or rendering images, video, or audio with ComfyUI, or
building/running a ComfyUI workflow. Read it first, then act.

## Files in this kit (pull the right one on demand)

Only this SKILL.md auto-loads; everything else is read when relevant, so route to it instead of leaving it unread.
**Two layouts, same files:** in the INSTALLED skill everything sits flat next to this file, so `docs/TASKS.md`
below means `TASKS.md` here and `docs/NODE_LIBRARY/ocio.md` means `NODE_LIBRARY/ocio.md`; likewise a script the docs
name under `shared/tools/` in the repo sits in `tools/` next to this file once installed. In the repo those prefixes are
literal. If a path does not resolve, drop the `docs/` and look next to this file before concluding the
file is missing.
View the complete source on GitHub

Skills included

  • comfyui
  • krea
  • minimax-h3
  • seedance
  • comfyui
  • krea
  • minimax-h3
  • seedance

Repository facts

License
Apache-2.0
Created
Jun 20, 2026
Last pushed
Nov 2, 2026
Forks
18
Open issues
2
Project activity
Active

Before you install

Network or broad shell

Automated signals, not a guarantee

Checked Nov 6, 2026

Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.

Show 122 notes
  • claude-code/skills/comfyui/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • claude-code/skills/comfyui/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • claude-code/skills/comfyui/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • claude-code/skills/comfyui/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • claude-code/skills/comfyui/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • claude-code/skills/comfyui/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • claude-code/skills/comfyui/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • claude-code/skills/comfyui/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • claude-code/skills/comfyui/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • claude-code/skills/comfyui/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • claude-code/skills/comfyui/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • claude-code/skills/comfyui/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • claude-code/skills/comfyui/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • claude-code/skills/comfyui/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • claude-code/skills/comfyui/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • claude-code/skills/comfyui/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • claude-code/skills/comfyui/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • claude-code/skills/comfyui/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • claude-code/skills/comfyui/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • claude-code/skills/comfyui/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
Show all 182 signals by file

.claude-plugin/marketplace.json

  • Network accessline 4
    "owner": {     "name": "AI VFX NEWS",     "url": "https://aivfxnews.com/"
  • Network accessline 5
    "name": "AI VFX NEWS",     "url": "https://aivfxnews.com/"   },
  • Network accessline 6
    "url": "https://aivfxnews.com/"
  • Network accessline 11
    "source": "./claude-code",       "description": "Drive a LOCAL ComfyUI (your GPU, no cloud, no account) end to end: 75 model prompt recipes, hardware-aware model selection, workflow building, multi-shot video, the comfyui-mcp driver, plus a
  • Network accessline 12
    "description": "Drive a LOCAL ComfyUI (your GPU, no cloud, no account) end to end: 75 model prompt recipes, hardware-aware model selection, workflow building, multi-shot video, the comfyui-mcp driver, plus a standalone Seedance skill for By
  • Network accessline 13
    "homepage": "https://github.com/SlavaSexton/ComfyUI-Agent-Kit"

claude-code/.claude-plugin/plugin.json

  • Network accessline 5
    "author": {     "name": "AI VFX NEWS",     "url": "https://aivfxnews.com/"
  • Network accessline 6
    "name": "AI VFX NEWS",     "url": "https://aivfxnews.com/"   },
  • Network accessline 7
    "url": "https://aivfxnews.com/"
  • Network accessline 8
    },   "homepage": "https://github.com/SlavaSexton/ComfyUI-Agent-Kit" }
  • Network accessline 9
    "homepage": "https://github.com/SlavaSexton/ComfyUI-Agent-Kit"

claude-code/skills/comfyui/ADVANCED.md

  • Network accessline 126
    | ComfyUI-RMBG (hub) | github.com/1038lab/ComfyUI-RMBG | bundles RMBG2/BEN2/BiRefNet/SDMatte/SAM2-3 | GPL-3.0 | | LayerStyle (edge refine) | github.com/chflame163/ComfyUI_LayerStyle | MaskEdgeUltraDetailV2 ViTMatte refine | MIT | | RMBG-2.0
  • Network accessline 127
    | LayerStyle (edge refine) | github.com/chflame163/ComfyUI_LayerStyle | MaskEdgeUltraDetailV2 ViTMatte refine | MIT | | RMBG-2.0 | huggingface.co/briaai/RMBG-2.0 | soft-alpha segmenter | CC BY-NC (NONCOMMERCIAL) | | MatAnyone / MatAnyone2 |
  • Network accessline 128
    | RMBG-2.0 | huggingface.co/briaai/RMBG-2.0 | soft-alpha segmenter | CC BY-NC (NONCOMMERCIAL) |

claude-code/skills/comfyui/AGENTS.md

  • Network accessline 29
    {   "env": {     "ANTHROPIC_BASE_URL": "https://api.z.ai/api/anthropic",
  • Network accessline 30
    [Credential-related source omitted]
  • Network accessline 31
    "ANTHROPIC_BASE_URL": "https://api.z.ai/api/anthropic",
  • Access to secretsline 32
    [Credential-related source omitted]
  • Network accessline 38
    `claude` adapter already covers GLM**: install it for `claude` and run GLM through Claude Code; nothing GLM-specific to build. (If instead you run GLM via Cline / OpenCode / Roo with z.ai's OpenAI-compatible endpoint `https://api.z.ai/api/c
  • Network accessline 39
    to build. (If instead you run GLM via Cline / OpenCode / Roo with z.ai's OpenAI-compatible endpoint `https://api.z.ai/api/coding/paas/v4`, register `comfyui-mcp` in that tool's own MCP settings; the knowledge in `shared/comfyui/SKILL.md` st
  • Network accessline 40
    `https://api.z.ai/api/coding/paas/v4`, register `comfyui-mcp` in that tool's own MCP settings; the knowledge in

claude-code/skills/comfyui/BOOTSTRAP.md

  • Access to secretsline 41
    [Credential-related source omitted]

claude-code/skills/comfyui/EXAMPLE_WORKFLOWS.md

  • Network accessline 7
    python shared/tools/fetch_workflow.py <hash> <outdir> # equivalently: GET https://comfy.org/workflows/download/<hash>.json
  • Network accessline 8
    # equivalently: GET https://comfy.org/workflows/download/<hash>.json

claude-code/skills/comfyui/LTX2_TRAINING.md

  • Access to secretsline 46
    [Credential-related source omitted]
  • Network accessline 53
    git clone https://github.com/Lightricks/LTX-2 && cd LTX-2

claude-code/skills/comfyui/MODELS/video-open.md

  • Network accessline 518
    cross-shot consistency a prompt or the Ingredients IC-LoRA does not give, mention they can train a LoRA and offer   the setup (one offer, not a nag). Full guide + the offer trigger: `docs/LTX2_TRAINING.md`. - **Source:** https://ltx.io/blog
  • Network accessline 520
    - **Source:** https://ltx.io/blog/ltx-2-3-prompt-guide (official prompt guide) ; docs.comfy.org/tutorials/video/ltx/ltx-2-3 ; huggingface.co/Lightricks/LTX-2.3 ; github.com/Lightricks/ComfyUI-LTXVideo.

claude-code/skills/comfyui/NODES.md

  • Access to secretsline 11
    [Credential-related source omitted]
  • Access to secretsline 17
    [Credential-related source omitted]

claude-code/skills/comfyui/NODE_LIBRARY/custom-author.md

  • Access to secretsline 42
    [Credential-related source omitted]

claude-code/skills/comfyui/NODE_LIBRARY/image-2.md

  • Network accessline 7
    ### LoadImage  (display: "Load Image") - **pack / source:** core ComfyUI (`nodes`) | https://github.com/comfyanonymous/ComfyUI
  • Network accessline 8
    - **pack / source:** core ComfyUI (`nodes`) | https://github.com/comfyanonymous/ComfyUI
  • Network accessline 22
    ### PreviewImage  (display: "Preview Image") - **pack / source:** core ComfyUI (`nodes`) | https://github.com/comfyanonymous/ComfyUI
  • Network accessline 23
    - **pack / source:** core ComfyUI (`nodes`) | https://github.com/comfyanonymous/ComfyUI
  • Network accessline 38
    ### SaveAnimatedWEBP  (display: "Save Animated WEBP") - **pack / source:** core ComfyUI (`comfy_extras.nodes_images`) | https://github.com/comfyanonymous/ComfyUI
  • Network accessline 39
    - **pack / source:** core ComfyUI (`comfy_extras.nodes_images`) | https://github.com/comfyanonymous/ComfyUI
  • Network accessline 56
    ### SaveSVGNode  (display: "Save SVG") - **pack / source:** core ComfyUI (`comfy_extras.nodes_images`) | https://github.com/comfyanonymous/ComfyUI
  • Network accessline 57
    - **pack / source:** core ComfyUI (`comfy_extras.nodes_images`) | https://github.com/comfyanonymous/ComfyUI
  • Network accessline 70
    ### ResizeImageMaskNode  (display: "Resize Image/Mask") - **pack / source:** core ComfyUI (`comfy_extras.nodes_post_processing`) | https://github.com/comfyanonymous/ComfyUI
  • Network accessline 71
    - **pack / source:** core ComfyUI (`comfy_extras.nodes_post_processing`) | https://github.com/comfyanonymous/ComfyUI
  • Network accessline 86
    ### ResizeAndPadImage  (display: "Resize And Pad Image") - **pack / source:** core ComfyUI (`comfy_extras.nodes_images`) | https://github.com/comfyanonymous/ComfyUI
  • Network accessline 87
    - **pack / source:** core ComfyUI (`comfy_extras.nodes_images`) | https://github.com/comfyanonymous/ComfyUI
  • Network accessline 104
    ### RepeatImageBatch  (display: "Repeat Image Batch") - **pack / source:** core ComfyUI (`comfy_extras.nodes_images`) | https://github.com/comfyanonymous/ComfyUI
  • Network accessline 105
    - **pack / source:** core ComfyUI (`comfy_extras.nodes_images`) | https://github.com/comfyanonymous/ComfyUI
  • Network accessline 119
    ### SolidMask  (display: "Create Solid Mask") - **pack / source:** core ComfyUI (`comfy_extras.nodes_mask`) | https://github.com/comfyanonymous/ComfyUI
  • Network accessline 120
    - **pack / source:** core ComfyUI (`comfy_extras.nodes_mask`) | https://github.com/comfyanonymous/ComfyUI
  • Network accessline 135
    ### MaskComposite  (display: "Combine Masks") - **pack / source:** core ComfyUI (`comfy_extras.nodes_mask`) | https://github.com/comfyanonymous/ComfyUI
  • Network accessline 136
    - **pack / source:** core ComfyUI (`comfy_extras.nodes_mask`) | https://github.com/comfyanonymous/ComfyUI
  • Network accessline 153
    ### ThresholdMask  (display: "Threshold Mask") - **pack / source:** core ComfyUI (`comfy_extras.nodes_mask`) | https://github.com/comfyanonymous/ComfyUI
  • Network accessline 154
    - **pack / source:** core ComfyUI (`comfy_extras.nodes_mask`) | https://github.com/comfyanonymous/ComfyUI
  • Network accessline 168
    ### MaskToImage  (display: "Convert Mask to Image") - **pack / source:** core ComfyUI (`comfy_extras.nodes_mask`) | https://github.com/comfyanonymous/ComfyUI
  • Network accessline 169
    - **pack / source:** core ComfyUI (`comfy_extras.nodes_mask`) | https://github.com/comfyanonymous/ComfyUI
  • Network accessline 182
    ### JoinImageWithAlpha  (display: "Join Image with Alpha") - **pack / source:** core ComfyUI (`comfy_extras.nodes_compositing`) | https://github.com/comfyanonymous/ComfyUI
  • Network accessline 183
    - **pack / source:** core ComfyUI (`comfy_extras.nodes_compositing`) | https://github.com/comfyanonymous/ComfyUI
  • Network accessline 197
    ### MaskPreview  (display: "Preview Mask") - **pack / source:** core ComfyUI (`comfy_extras.nodes_mask`) | https://github.com/comfyanonymous/ComfyUI
  • Network accessline 198
    - **pack / source:** core ComfyUI (`comfy_extras.nodes_mask`) | https://github.com/comfyanonymous/ComfyUI

claude-code/skills/comfyui/NODE_LIBRARY/ocio.md

  • Network accessline 3
    **Eleven** OpenColorIO nodes we build and maintain, modelled 1:1 on The Foundry Nuke's node set. Pack: **`ComfyUI-OCIO`**, author **Slava Sexton** (https://github.com/SlavaSexton/ComfyUI-OCIO), MIT, **released v1.3.0
  • Network accessline 4
    **`ComfyUI-OCIO`**, author **Slava Sexton** (https://github.com/SlavaSexton/ComfyUI-OCIO), MIT, **released v1.3.0
  • Network accessline 119
    **Install:** `git clone https://github.com/SlavaSexton/ComfyUI-OCIO` into `custom_nodes`, then

claude-code/skills/comfyui/NODE_LIBRARY/radiance.md

  • Dangerous shell operationline 107
    **`@PromptServer.instance.routes.post('/radiance/terminal')`** that `exec()`s into a persistent namespace on a

claude-code/skills/comfyui/SKILL.md

  • Network accessline 170
    Beyond the named template library, ComfyHub hosts thousands of community-shared workflows at `comfy.org/workflows/<hash>`. Any ComfyHub share downloads as plain JSON from a predictable URL: `https://comfy.org/workflows/download/<hash>.json`
  • Network accessline 171
    `comfy.org/workflows/<hash>`. Any ComfyHub share downloads as plain JSON from a predictable URL: `https://comfy.org/workflows/download/<hash>.json`. So you can grab any shared workflow on demand, then read or run it. Helper: `python shared/
  • Network accessline 172
    `https://comfy.org/workflows/download/<hash>.json`. So you can grab any shared workflow on demand, then read or run
  • Network accessline 193
    ComfyUI ships new models constantly, and they land in the template library first. To see what is new: `git pull` the templates clone and regenerate the quick index (`gen_quick_index.py`), then DIFF the model list (names not seen before = ne
  • Network accessline 194
    the templates clone and regenerate the quick index (`gen_quick_index.py`), then DIFF the model list (names not seen before = new models / new templates). Also read the announcements RSS at `https://blog.comfy.org/feed`. The kit ships `share
  • Network accessline 195
    before = new models / new templates). Also read the announcements RSS at `https://blog.comfy.org/feed`. The kit
  • Access to secretsline 252
    [Credential-related source omitted]
  • Access to secretsline 256
    [Credential-related source omitted]
  • Network accessline 342
    **How to download (Desktop-safe):** - Direct download is most reliable: `curl -fL -C - -o "<root>/<type>/<filename>" "<url>"`. Use the official
  • Network accessline 343
    - Direct download is most reliable: `curl -fL -C - -o "<root>/<type>/<filename>" "<url>"`. Use the official
  • Network accessline 461
    - **Showing the owner the running server:** the headless server already serves the full ComfyUI web UI at   `http://127.0.0.1:8188`. To let the owner SEE the canvas or what you built, tell them to open that URL in a
  • Network accessline 462
    `http://127.0.0.1:8188`. To let the owner SEE the canvas or what you built, tell them to open that URL in a
  • Network accessline 474
    **Starting (ask first when ComfyUI is down).** If :8188 is already up, just use it (the owner has ComfyUI open, or a server runs) and do NOT start another. If it is down, ASK once: "open ComfyUI yourself and I connect, or should I start the
  • Network accessline 475
    a server runs) and do NOT start another. If it is down, ASK once: "open ComfyUI yourself and I connect, or should I start the server headless (you peek at `http://127.0.0.1:8188` in a browser)?" Follow their choice; if they say "just auto-s
  • Network accessline 476
    start the server headless (you peek at `http://127.0.0.1:8188` in a browser)?" Follow their choice; if they say

claude-code/skills/comfyui/UPDATING.md

  • Network accessline 10
    templates instantly. - **blog.comfy.org/feed**: RSS of announcements (day-0 model support, "wrapped" recaps, releases). Verified   working (`https://blog.comfy.org/feed`).
  • Network accessline 11
    - **blog.comfy.org/feed**: RSS of announcements (day-0 model support, "wrapped" recaps, releases). Verified   working (`https://blog.comfy.org/feed`). - *(optional)* GitHub release feeds for ComfyUI core and node packs: `<repo>/releases.ato
  • Network accessline 12
    working (`https://blog.comfy.org/feed`).

claude-code/skills/comfyui/comfy_client.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 7
    ComfyUI Desktop serves the API at http://127.0.0.1:8188 by default.
  • Access to secretsline 22
    [Credential-related source omitted]
  • Network accessline 25
    def _get(path):     with urllib.request.urlopen(f"http://{HOST}{path}", timeout=15) as r:
  • Network accessline 26
    with urllib.request.urlopen(f"http://{HOST}{path}", timeout=15) as r:
  • Network accessline 30
    def _post(path, payload):     req = urllib.request.Request(
  • Network accessline 31
    req = urllib.request.Request(
  • Network accessline 32
    f"http://{HOST}{path}",
  • Network accessline 34
    headers={"Content-Type": "application/json"},     )     with urllib.request.urlopen(req, timeout=30) as r:
  • Network accessline 35
    )     with urllib.request.urlopen(req, timeout=30) as r:         return json.load(r)
  • Network accessline 36
    with urllib.request.urlopen(req, timeout=30) as r:
  • Network accessline 89
    "type": item.get("type", "output"),                 })                 with urllib.request.urlopen(f"http://{HOST}/view?{q}", timeout=120) as r:
  • Network accessline 90
    })                 with urllib.request.urlopen(f"http://{HOST}/view?{q}", timeout=120) as r:                     data = r.read()
  • Network accessline 91
    with urllib.request.urlopen(f"http://{HOST}/view?{q}", timeout=120) as r:

claude-code/skills/comfyui/machine.md

  • Network accessline 12
    - **ComfyUI**: `<Desktop or source install>`, core path `<detect>`, API at **`http://127.0.0.1:8188`**

claude-code/skills/comfyui/tools/check_updates.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 30
    BLOG_FEED = "https://blog.comfy.org/feed"
  • Network accessline 56
    def _blog(n=8):     try:         req = urllib.request.Request(BLOG_FEED, headers={"User-Agent": "comfyui-agent-kit"})
  • Network accessline 57
    try:         req = urllib.request.Request(BLOG_FEED, headers={"User-Agent": "comfyui-agent-kit"})         with urllib.request.urlopen(req, timeout=30) as r:
  • Network accessline 58
    req = urllib.request.Request(BLOG_FEED, headers={"User-Agent": "comfyui-agent-kit"})
  • Network accessline 59
    with urllib.request.urlopen(req, timeout=30) as r:
  • Access to secretsline 145
    [Credential-related source omitted]

claude-code/skills/comfyui/tools/fetch_workflow.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 4
    ComfyHub serves every shared workflow's graph at a predictable URL derived from its hash:     https://comfy.org/workflows/download/<hash>.json
  • Network accessline 5
    https://comfy.org/workflows/download/<hash>.json
  • Network accessline 19
    BASE = "https://comfy.org/workflows/download/{h}.json?filename={h}"
  • Network accessline 22
    def fetch(h, outdir="."):
  • Network accessline 23
    h = h.strip().split("-")[0]                      # accept "<hash>-<hash>" form     url = BASE.format(h=h)     req = urllib.request.Request(url, headers={"User-Agent": "comfyui-agent-kit"})
  • Network accessline 24
    url = BASE.format(h=h)     req = urllib.request.Request(url, headers={"User-Agent": "comfyui-agent-kit"})     with urllib.request.urlopen(req, timeout=60) as r:
  • Network accessline 25
    req = urllib.request.Request(url, headers={"User-Agent": "comfyui-agent-kit"})
  • Network accessline 26
    with urllib.request.urlopen(req, timeout=60) as r:
  • Network accessline 37
    print(__doc__)         raise SystemExit(2)     out = fetch(sys.argv[1], sys.argv[2] if len(sys.argv) > 2 else ".")
  • Network accessline 38
    raise SystemExit(2)     out = fetch(sys.argv[1], sys.argv[2] if len(sys.argv) > 2 else ".")     print("saved:", out, f"({os.path.getsize(out)} bytes)")
  • Network accessline 39
    out = fetch(sys.argv[1], sys.argv[2] if len(sys.argv) > 2 else ".")

claude-code/skills/comfyui/tools/gen_quick_index.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Access to secretsline 85
    [Credential-related source omitted]

claude-code/skills/comfyui/tools/node_inventory.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 13
    Config via env (sensible defaults below):     COMFY_URL              default http://127.0.0.1:8188
  • Network accessline 14
    COMFY_URL              default http://127.0.0.1:8188
  • Network accessline 20
    [Credential-related source omitted]
  • Access to secretsline 20
    [Credential-related source omitted]
  • Access to secretsline 21
    [Credential-related source omitted]
  • Access to secretsline 24
    [Credential-related source omitted]
  • Network accessline 58
    oi = json.load(urllib.request.urlopen(COMFY_URL + "/object_info", timeout=60))
  • Access to secretsline 64
    [Credential-related source omitted]

claude-code/skills/comfyui/workflow_layout.py

  • Executable scriptline 1
    #!/usr/bin/env python3

shared/comfyui/MODELS/video-open.md

  • Network accessline 518
    cross-shot consistency a prompt or the Ingredients IC-LoRA does not give, mention they can train a LoRA and offer   the setup (one offer, not a nag). Full guide + the offer trigger: `docs/LTX2_TRAINING.md`. - **Source:** https://ltx.io/blog
  • Network accessline 520
    - **Source:** https://ltx.io/blog/ltx-2-3-prompt-guide (official prompt guide) ; docs.comfy.org/tutorials/video/ltx/ltx-2-3 ; huggingface.co/Lightricks/LTX-2.3 ; github.com/Lightricks/ComfyUI-LTXVideo.

shared/comfyui/SKILL.md

  • Network accessline 170
    Beyond the named template library, ComfyHub hosts thousands of community-shared workflows at `comfy.org/workflows/<hash>`. Any ComfyHub share downloads as plain JSON from a predictable URL: `https://comfy.org/workflows/download/<hash>.json`
  • Network accessline 171
    `comfy.org/workflows/<hash>`. Any ComfyHub share downloads as plain JSON from a predictable URL: `https://comfy.org/workflows/download/<hash>.json`. So you can grab any shared workflow on demand, then read or run it. Helper: `python shared/
  • Network accessline 172
    `https://comfy.org/workflows/download/<hash>.json`. So you can grab any shared workflow on demand, then read or run
  • Network accessline 193
    ComfyUI ships new models constantly, and they land in the template library first. To see what is new: `git pull` the templates clone and regenerate the quick index (`gen_quick_index.py`), then DIFF the model list (names not seen before = ne
  • Network accessline 194
    the templates clone and regenerate the quick index (`gen_quick_index.py`), then DIFF the model list (names not seen before = new models / new templates). Also read the announcements RSS at `https://blog.comfy.org/feed`. The kit ships `share
  • Network accessline 195
    before = new models / new templates). Also read the announcements RSS at `https://blog.comfy.org/feed`. The kit
  • Access to secretsline 252
    [Credential-related source omitted]
  • Access to secretsline 256
    [Credential-related source omitted]
  • Network accessline 342
    **How to download (Desktop-safe):** - Direct download is most reliable: `curl -fL -C - -o "<root>/<type>/<filename>" "<url>"`. Use the official
  • Network accessline 343
    - Direct download is most reliable: `curl -fL -C - -o "<root>/<type>/<filename>" "<url>"`. Use the official
  • Network accessline 461
    - **Showing the owner the running server:** the headless server already serves the full ComfyUI web UI at   `http://127.0.0.1:8188`. To let the owner SEE the canvas or what you built, tell them to open that URL in a
  • Network accessline 462
    `http://127.0.0.1:8188`. To let the owner SEE the canvas or what you built, tell them to open that URL in a
  • Network accessline 474
    **Starting (ask first when ComfyUI is down).** If :8188 is already up, just use it (the owner has ComfyUI open, or a server runs) and do NOT start another. If it is down, ASK once: "open ComfyUI yourself and I connect, or should I start the
  • Network accessline 475
    a server runs) and do NOT start another. If it is down, ASK once: "open ComfyUI yourself and I connect, or should I start the server headless (you peek at `http://127.0.0.1:8188` in a browser)?" Follow their choice; if they say "just auto-s
  • Network accessline 476
    start the server headless (you peek at `http://127.0.0.1:8188` in a browser)?" Follow their choice; if they say

shared/comfyui/comfy_client.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 7
    ComfyUI Desktop serves the API at http://127.0.0.1:8188 by default.
  • Access to secretsline 22
    [Credential-related source omitted]
  • Network accessline 25
    def _get(path):     with urllib.request.urlopen(f"http://{HOST}{path}", timeout=15) as r:
  • Network accessline 26
    with urllib.request.urlopen(f"http://{HOST}{path}", timeout=15) as r:
  • Network accessline 30
    def _post(path, payload):     req = urllib.request.Request(
  • Network accessline 31
    req = urllib.request.Request(
  • Network accessline 32
    f"http://{HOST}{path}",
  • Network accessline 34
    headers={"Content-Type": "application/json"},     )     with urllib.request.urlopen(req, timeout=30) as r:
  • Network accessline 35
    )     with urllib.request.urlopen(req, timeout=30) as r:         return json.load(r)
  • Network accessline 36
    with urllib.request.urlopen(req, timeout=30) as r:
  • Network accessline 89
    "type": item.get("type", "output"),                 })                 with urllib.request.urlopen(f"http://{HOST}/view?{q}", timeout=120) as r:
  • Network accessline 90
    })                 with urllib.request.urlopen(f"http://{HOST}/view?{q}", timeout=120) as r:                     data = r.read()
  • Network accessline 91
    with urllib.request.urlopen(f"http://{HOST}/view?{q}", timeout=120) as r:

shared/comfyui/machine.md

  • Network accessline 12
    - **ComfyUI**: `<Desktop or source install>`, core path `<detect>`, API at **`http://127.0.0.1:8188`**

shared/comfyui/workflow_layout.py

  • Executable scriptline 1
    #!/usr/bin/env python3

shared/tools/fetch_workflow.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 4
    ComfyHub serves every shared workflow's graph at a predictable URL derived from its hash:     https://comfy.org/workflows/download/<hash>.json
  • Network accessline 4
    ComfyHub serves every shared workflow's graph at a predictable URL derived from its hash:     https://comfy.org/workflows/download/<hash>.json
  • Network accessline 5
    https://comfy.org/workflows/download/<hash>.json
  • Network accessline 5
    https://comfy.org/workflows/download/<hash>.json
  • Network accessline 19
    BASE = "https://comfy.org/workflows/download/{h}.json?filename={h}"
  • Network accessline 19
    BASE = "https://comfy.org/workflows/download/{h}.json?filename={h}"
  • Network accessline 22
    def fetch(h, outdir="."):
  • Network accessline 22
    def fetch(h, outdir="."):
  • Network accessline 23
    h = h.strip().split("-")[0]                      # accept "<hash>-<hash>" form     url = BASE.format(h=h)     req = urllib.request.Request(url, headers={"User-Agent": "comfyui-agent-kit"})
  • Network accessline 23
    h = h.strip().split("-")[0]                      # accept "<hash>-<hash>" form     url = BASE.format(h=h)     req = urllib.request.Request(url, headers={"User-Agent": "comfyui-agent-kit"})
  • Network accessline 24
    url = BASE.format(h=h)     req = urllib.request.Request(url, headers={"User-Agent": "comfyui-agent-kit"})     with urllib.request.urlopen(req, timeout=60) as r:
  • Network accessline 24
    url = BASE.format(h=h)     req = urllib.request.Request(url, headers={"User-Agent": "comfyui-agent-kit"})     with urllib.request.urlopen(req, timeout=60) as r:
  • Network accessline 25
    req = urllib.request.Request(url, headers={"User-Agent": "comfyui-agent-kit"})
  • Network accessline 25
    req = urllib.request.Request(url, headers={"User-Agent": "comfyui-agent-kit"})
  • Network accessline 26
    with urllib.request.urlopen(req, timeout=60) as r:
  • Network accessline 26
    with urllib.request.urlopen(req, timeout=60) as r:
  • Network accessline 37
    print(__doc__)         raise SystemExit(2)     out = fetch(sys.argv[1], sys.argv[2] if len(sys.argv) > 2 else ".")
  • Network accessline 37
    print(__doc__)         raise SystemExit(2)     out = fetch(sys.argv[1], sys.argv[2] if len(sys.argv) > 2 else ".")
  • Network accessline 38
    raise SystemExit(2)     out = fetch(sys.argv[1], sys.argv[2] if len(sys.argv) > 2 else ".")     print("saved:", out, f"({os.path.getsize(out)} bytes)")
  • Network accessline 38
    raise SystemExit(2)     out = fetch(sys.argv[1], sys.argv[2] if len(sys.argv) > 2 else ".")     print("saved:", out, f"({os.path.getsize(out)} bytes)")
  • Network accessline 39
    out = fetch(sys.argv[1], sys.argv[2] if len(sys.argv) > 2 else ".")
  • Network accessline 39
    out = fetch(sys.argv[1], sys.argv[2] if len(sys.argv) > 2 else ".")

How the signals fit together

Facts from a static read of the files at the pinned commit. They describe what the code does, not why.

Some files could not be read; the facts below still hold.

Signal confidence: 171 facts

and 121 more

Works with

Agent compatibility, from the files in this repository
AgentStatusEvidenceInstall to
Claude CodeNativeManifest .claude-plugin/marketplace.json.claude/skills/<skill-name>/
CodexNativeManifest claude-code/skills/comfyui/AGENTS.md.agents/skills/<skill-name>/
CursorCompatibleStandard SKILL.md claude-code/skills/comfyui/SKILL.md.cursor/skills/<skill-name>/
Gemini CLICompatibleStandard SKILL.md claude-code/skills/comfyui/SKILL.md.gemini/skills/<skill-name>/
GitHub CopilotCompatibleStandard SKILL.md claude-code/skills/comfyui/SKILL.md.github/skills/<skill-name>/
OpenCodeCompatibleStandard SKILL.md claude-code/skills/comfyui/SKILL.md.opencode/skills/<skill-name>/
  • Native The repository ships a manifest, folder or frontmatter field for this agent.
  • Compatible A standard SKILL.md that this agent can read.
  • Unknown No evidence either way.

Derived automatically from paths, manifests and frontmatter. Not tested on each agent.