Agent skill

Comfyui Node Update

by espennilsen in espennilsen/pi

Write and improve documentation for ComfyUI nodes in per-node JSON files.

MITAuto-check passedAI & LLM Engineering

Install Comfyui Node Update

skills CLI
$ npx skills add espennilsen/pi --skill comfyui-node-update -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install espennilsen/pi comfyui-node-update --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/espennilsen/pi.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/comfyui-node-update .claude/skills/comfyui-node-update && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
comfyui-node-update
GitHub stars
122
Token cost
~3.2k tokens
SKILL.md length
1,283 words
Files
1
Skills in repo
36
Repo updated
First seen
Licence
MIT

At a glance

Write and improve documentation for ComfyUI nodes in per-node JSON files.

  • Works in 3 steps: Ask — Confirm ComfyUI is running and up… → Extract — Pull fresh node data from the… → Enrich — Write documentation for new nodes
  • Asked to document nodes
  • SKILL.md covers File Structure, Content Fields to Write, Writing Standards and How to Use Embedded Docs, plus 4 more sections
  • Calls rg, python3 and git

What it does

Comfyui Node Update is an agent skill from espennilsen/pi. Write and improve documentation for ComfyUI nodes in per-node JSON files. Use when asked to document nodes, write node descriptions, add tips to nodes, improve node docs, enrich node content, fill in empty node descriptions, or batch-write documentation for new/updated nodes. Also triggers on "write docs for nodes", "document the new nodes", "improve node tips", "fill in node descriptions", "enrich nodes", "node content pass", "update nodes", "sync comfyui nodes", "new comfyui version", or "node enrichment".

Its SKILL.md is about 3.2k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in AI & LLM Engineering, covering Diffusion and image models. It works with ComfyUI. The licence is MIT.

When your agent uses it

  • Asked to document nodes
  • Write node descriptions
  • Add tips to nodes
  • Improve node docs

Example prompts

  • “write docs for nodes”
  • “document the new nodes”
  • “improve node tips”
  • “/comfyui-node-update”

Requirements

  • Python 3

Workflow steps

3 steps, taken from the step headings in SKILL.md.

  1. Ask — Confirm ComfyUI is running and up to date
  2. Extract — Pull fresh node data from the running instance
  3. Enrich — Write documentation for new nodes

What it can do on your machine

Read from SKILL.md and the folder at commit 79d019b. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • rg
    • python3
    • git
    • pip
    • pnpm

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use git, pip and pnpm, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Comfyui Node Update loads about 3.2k tokens when it runs. Until then it costs about 133 tokens; SKILL.md has 1,283 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~133
When it runs · the whole SKILL.md, loaded when a task matches
~3.2k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from espennilsen/pi at commit 79d019b, republished under its MIT licence (© espennilsen). 1,283 words, ~3,186 tokens.

Download SKILL.mdSave it as .claude/skills/comfyui-node-update/SKILL.md (or your agent's skills folder).
name
comfyui-node-update
description
Write and improve documentation for ComfyUI nodes in per-node JSON files. Use when asked to document nodes, write node descriptions, add tips to nodes, improve node docs, enrich node content, fill in empty node descriptions, or batch-write documentation for new/updated nodes. Also triggers on "write docs for nodes", "document the new nodes", "improve node tips", "fill in node descriptions", "enrich nodes", "node content pass", "update nodes", "sync comfyui nodes", "new comfyui version", or "node enrichment".

Node Documentation Writer

Write original, beginner-friendly documentation for ComfyUI nodes. Each node is stored as an individual JSON file. Use the embedded docs as a reference source but always rewrite content — never copy-paste.

File Structure

Node data is split into per-node JSON files organized by section and category:

text
src/data/nodes/
  _metadata.json                              — metadata + schema_version
  comfy_nodes/<category>/<NodeName>.json      — core ComfyUI nodes (511)
  partner_nodes/<category>/<NodeName>.json    — API/partner nodes (203)
  subgraph_blueprints/<category>/<Name>.json  — subgraph blueprints (65)
  extensions/<category>/<NodeName>.json       — extension nodes (1)

The top-level directories (comfy_nodes, partner_nodes, subgraph_blueprints, extensions) match the tree pane sections. Below that, the category path matches the node's category field with spaces replaced by hyphens.

Key files
  • Per-node data: src/data/nodes/<section>/<category>/<NodeName>.json
  • Metadata: src/data/nodes/_metadata.json
  • Export data: exports/comfyui_nodes_*.json (structural source of truth)
  • Embedded docs: embedded-docs/comfyui_embedded_docs/docs/<NodeName>/en.md (reference only)
  • Update plan: exports/NODE_UPDATE_PLAN.md (progress tracking)
  • Extraction script: scripts/extract-comfyui-nodes.sh (pulls from running ComfyUI)
  • Import script: scripts/import-new-nodes.sh (creates skeletal files, updates metadata)
Finding a node file

To locate a node's JSON file:

bash
find src/data/nodes -name 'KSampler.json'
# → src/data/nodes/comfy_nodes/sampling/KSampler.json

To search across all nodes:

bash
rg '"documentation_complete": false' src/data/nodes/ -l

Content Fields to Write

For each node, write these fields:

FieldWhat to writeLength
descriptionTechnical but clear explanation of what the node does50–200 chars
beginner_descriptionPlain-language explanation for someone new to ComfyUI100–400 chars
tips.general_tipsPractical advice any user should know2–5 tips
tips.beginner_tips"Start here" guidance with specific values and settings2–4 tips
tips.advanced_tipsPower-user techniques, edge cases, combo strategies1–4 tips (skip for simple nodes)
use_casesConcrete scenarios with context2–4 use cases
common_errorsReal problems users hit, with actionable fixes1–4 errors
complexity_level"beginner", "intermediate", or "advanced"—
documentation_completeSet true when all content fields are filled—

Writing Standards

Voice & Audience
  • Write for people learning ComfyUI, not ML researchers
  • Use active voice: "Connect to VAE Decode" not "Should be connected to"
  • Explain WHY, not just WHAT: "Lower CFG (4–6) gives the model more creative freedom" not "CFG controls guidance strength"
  • Use analogies for complex concepts: "Think of it like adjusting the contrast on a photo" not "Modifies the latent tensor distribution"
description

One or two sentences. Technical but accessible. State what the node does and its role in a workflow.

Good: "Loads a Stable Diffusion checkpoint file containing the model weights, text encoder, and VAE needed for image generation."

Bad: "Checkpoint loader node." (too short, says nothing) Bad: Copy-pasting the export's description field verbatim.

beginner_description

Explain the node as if the reader has used ComfyUI for a week. Avoid jargon or explain it inline. Say what it does in practical terms.

Good: "This node loads the AI model that generates your images. Think of it as picking which artist you want to work with — different checkpoints produce different styles, from photorealistic to anime to oil paintings."

Bad: "Loads checkpoint files for diffusion model inference." (jargon) Bad: Repeating description with slightly different words.

tips

Each tip must be specific and actionable. Include concrete values, settings, node names, or workflows.

Good tip: "Start with euler sampler, 25 steps, CFG 7.5 — this works reliably for most models and gives good results in about 10 seconds."

Bad tip: "Experiment with different settings to find what works best." (vague, unhelpful)

Good tip: "For Flux models, set CFG to 1.0 and use the FluxGuidance node instead — Flux uses guidance differently than SD 1.5 or SDXL."

Bad tip: "Different models may require different settings." (obvious)

use_cases

Use an array of objects with scenario and context:

json
[
  {
    "scenario": "Text-to-image generation",
    "context": "The most common workflow — connect Empty Latent Image as input with denoise 1.0 to generate from scratch"
  }
]
common_errors

Use an array of objects with symptom and solution:

json
[
  {
    "symptom": "Black or completely blank images",
    "solution": "CFG scale too high (>15). Lower to 7–9 range. Also check that model, VAE, and conditioning are all connected."
  }
]

How to Use Embedded Docs

The embedded docs at embedded-docs/comfyui_embedded_docs/docs/<NodeName>/en.md are a reference source, not a template.

  1. Read the embedded doc to understand what the node does
  2. Read the input/output tables to understand parameters
  3. Note any tips, notes, or gotchas mentioned
  4. Write your own content — informed by the doc but in your own words
  5. Strip any "AI-generated" disclaimer lines

What to extract from embedded docs:

  • Technical understanding of what the node does
  • Parameter ranges, defaults, and constraints
  • Specific tips or warnings the doc mentions
  • How the node fits into workflows

What NOT to do:

  • Copy the intro paragraph as beginner_description
  • Copy input/output tables as tips
  • Use the same phrasing or structure

Node Update Workflow (ComfyUI Version Upgrade)

When a new ComfyUI version is available and you need to sync node data, follow this workflow end-to-end. The process has three phases: ask, extract, enrich.

Golden rule: Never use a stale extraction file. Always ask the user first.

Phase 1: Ask — Confirm ComfyUI is running and up to date

Always start here. Never use a stale extraction file.

Ask the user: "Is ComfyUI running and updated? Or do you need to update it first?"

If the user needs to update, first ask them for the ComfyUI repository path (or tell them to set COMFYUI_DIR). Then give these copy-paste commands:

bash
cd <COMFYUI_DIR>
git pull
pip install -r requirements.txt
./start.sh

Say: "Run these and tell me when ComfyUI is running." Then wait. Do not proceed until the user confirms.

Show full SKILL.md (514 more words)Show less
Phase 2: Extract — Pull fresh node data from the running instance

Only after the user confirms ComfyUI is running:

  1. Run extraction:
    bash
    ./scripts/extract-comfyui-nodes.sh
  2. Run import (creates skeletal files for new nodes, removes old ones, updates metadata):
    bash
    ./scripts/import-new-nodes.sh
  3. Report the delta to the user (new/removed/total counts)
Phase 3: Enrich — Write documentation for new nodes

Find nodes with documentation_complete: false and enrich them using parallel subagents grouped by section:

bash
# Check how many need enrichment
rg '"documentation_complete": false' src/data/nodes/ -l | wc -l

Dispatch 3 parallel subagents (one per section):

  • comfy_nodes: Read embedded docs at embedded-docs/comfyui_embedded_docs/docs/<NodeName>/en.md if available, write all content fields
  • partner_nodes: API nodes — always mention API key requirement, cloud processing, costs
  • subgraph_blueprints: Workflow templates — emphasize ready-to-use nature, customization tips

After enrichment:

  1. Verify: rg '"documentation_complete": false' src/data/nodes/ -l | wc -l → should be 0
  2. Build: pnpm run build
  3. Update exports/NODE_UPDATE_PLAN.md with the version history entry

Workflow

Batch documenting nodes

When asked to document a set of nodes (e.g. "document the new audio nodes"):

  1. Find target nodes: find src/data/nodes -name '*.json' -path '*audio*'
  2. Group nodes by category for context
  3. For each node: a. Read the per-node JSON file b. Read the embedded doc if it exists: embedded-docs/comfyui_embedded_docs/docs/<NodeName>/en.md c. Read the export entry for structural context: check exports/comfyui_nodes_*.json d. Write all content fields e. Set documentation_complete: true
  4. Write updated JSON back to the same per-node file (edit in place)
  5. Update progress in exports/NODE_UPDATE_PLAN.md if relevant
Improving existing nodes

When asked to improve node docs:

  1. Identify nodes with weak content:
    • documentation_complete: false
    • Empty beginner_description
    • Generic tips like "Experiment with settings"
    • Empty use_cases or common_errors
    • description under 50 chars
  2. Rewrite weak fields following the standards above
  3. Keep existing good content — don't rewrite what's already well-written
Quality check

To find nodes needing work:

bash
# Incomplete nodes
rg '"documentation_complete": false' src/data/nodes/ -l | wc -l

# Nodes where beginner_description copies description
python3 -c "
import json, os
for root, dirs, files in os.walk('src/data/nodes'):
    for f in files:
        if not f.endswith('.json') or f == '_metadata.json': continue
        path = os.path.join(root, f)
        try:
            with open(path) as fh: d = json.load(fh)
        except json.JSONDecodeError:
            print(f'BAD_JSON: {path}')
            continue
        except UnicodeDecodeError:
            continue
        desc = d.get('description','')
        bdesc = d.get('beginner_description','')
        if desc and desc == bdesc:
            print(f'LAZY: {d.get(\"name\",f)}  ({path})')
"

# Nodes missing tips
python3 -c "
import json, os
for root, dirs, files in os.walk('src/data/nodes'):
    for f in files:
        if not f.endswith('.json') or f == '_metadata.json': continue
        path = os.path.join(root, f)
        try:
            with open(os.path.join(root, f)) as fh: d = json.load(fh)
        except json.JSONDecodeError:
            print(f'BAD_JSON: {path}')
            continue
        except UnicodeDecodeError:
            continue
        if not d.get('tips',{}).get('general_tips'):
            print(d.get('name', f))
"

Category-Specific Guidance

API nodes (api node/...) — found in partner_nodes/
  • Always mention: requires API key, uses cloud processing, may have costs
  • Note the provider and what type of media it handles
  • Mention rate limits or size restrictions if the embedded doc says
  • Don't write advanced_tips unless there's something genuinely advanced
Dataset nodes (dataset/...)
  • Explain how it fits into a training data pipeline
  • Mention what formats it accepts/produces
  • Note batch processing behavior
Sampling nodes (sampling/...)
  • Explain what the sampler/scheduler does in practical terms
  • Give recommended starting values
  • Note which models it works best with
  • Compare to common alternatives (euler vs dpm++ etc.)
Latent nodes (latent/...)
  • Always mention: "Connect to VAE Decode to see the result as an image"
  • Explain the latent space concept briefly for beginners
  • Note resolution requirements if applicable
Audio nodes (audio/...)
  • Explain the audio format requirements
  • Note sample rate / channel constraints
  • Describe how it fits into audio workflows

Subagent Usage

For large batches (50+ nodes), use parallel subagents grouped by category. Each subagent gets a category batch and writes docs for all nodes in that group. This keeps context focused and produces more consistent output within a category.

Coordination: The subagents should write their results to per-node JSON files (different files per node, so no write conflicts) rather than editing a single shared plan file. A single coordinator agent can update exports/NODE_UPDATE_PLAN.md after all workers complete.

© espennilsen, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in skills/comfyui-node-update of espennilsen/pi.

Open the folder on GitHubat commit 79d019b

Compare with similar skills

Comfyui Node Update next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Comfyui Node Update compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Comfyui Node Update this skillespennilsen/pi122—~3.2kAutomated safety check: PassMIT
Comfyui AnimatoolShiroEirin/comfyui-good-anima476—~4.6kAutomated safety check: PassGPL-3.0
Comfyui Agent Skill MieMieMieeeee/comfyui-agent-skill116—~3.9kAutomated safety check: PassApache-2.0
Importing SubgraphsComfy-Org/workflow_templates1.3k—~1.5kAutomated safety check: PassMIT
Comfyui Node Addernixified-ai/flake841—~806Automated safety check: PassAGPL-3.0
Managing BundlesComfy-Org/workflow_templates1.3k—~1.2kAutomated safety check: PassMIT

Similar skills

  • Comfyui Animatool

    ShiroEirin/comfyui-good-anima

    Route ALL Anima image generation: validate Danbooru hard anchors, form visual brief, assemble English prompts and args, then load comfyui-manager for workflow execution.

    476 GitHub stars~4.6k tokensUpdated 3 mo ago
    AI & LLM EngineeringAuto-check passed
  • Comfyui Agent Skill Mie

    MieMieeeee/comfyui-agent-skill

    Agent skill for running registered ComfyUI workflows through a stable CLI, and for importing a user's own ComfyUI workflow into their private registry after review.

    116 GitHub stars~3.9k tokensUpdated 3 days ago
    AI & LLM EngineeringAuto-check passed
  • Importing Subgraphs

    Comfy-Org/workflow_templates

    Imports and registers subgraph blueprints into the ComfyUI workflowtemplates repository.

    1.3k GitHub stars~1.5k tokensUpdated today
    AI & LLM EngineeringAuto-check passed
  • Comfyui Node Adder

    nixified-ai/flake

    Adds new custom nodes to the ComfyUI Nix project, including npins fetching, dependency resolution in package.nix, disabling impure pip installs, and verifying the Nix build.

    841 GitHub stars~806 tokensUpdated today
    AI & LLM EngineeringAuto-check passed
  • Managing Bundles

    Comfy-Org/workflow_templates

    Manages template bundles, categories, and ordering in the ComfyUI template repository.

    1.3k GitHub stars~1.2k tokensUpdated today
    AI & LLM EngineeringAuto-check passed
  • Headroom

    momori777/Artemis

    SmartCrusher + CCR context compression — crunch large JSON arrays, tool outputs, and search results to save tokens.

    377 GitHub stars~562 tokensUpdated 7 days ago
    AI & LLM EngineeringAuto-check passed

More from espennilsen/pi

All 36 skills in this repo
  • GitHub

    espennilsen/pi

    Interact with GitHub repos, PRs, issues, CI, and notifications via the pi-github extension commands and gh CLI.

    122 GitHub stars~1k tokensUpdated 16 days ago
    Auto-check passed
  • Skill Creator

    espennilsen/pi

    Create, review, and improve skills for Pi agents. An agent skill from espennilsen/pi.

    122 GitHub stars~2.1k tokensUpdated 16 days ago
    Auto-check passed
  • Dry Code Review

    espennilsen/pi

    Perform a comprehensive DRY (Don't Repeat Yourself) code review on a codebase.

    122 GitHub stars~1.7k tokensUpdated 16 days ago
    Auto-check passed
  • Extract Design System

    espennilsen/pi

    Reverse-engineer a design system from a live website (public URL or localhost).

    122 GitHub stars~2k tokensUpdated 16 days ago
    Auto-check passed
  • PDF Reader

    espennilsen/pi

    Read and extract content from PDF files — text, tables, metadata, and images.

    122 GitHub stars~1.6k tokensUpdated 16 days ago
    Auto-check passed
  • Google Workspace

    espennilsen/pi

    Manage Google Workspace via the gws CLI — Drive, Gmail, Sheets, Docs, Slides, People, Chat, Meet, Forms, and cross-service workflows.

    122 GitHub stars~3.4k tokensUpdated 16 days ago
    Auto-check passed

Works with

Questions about Comfyui Node Update

What does Comfyui Node Update do?

Write and improve documentation for ComfyUI nodes in per-node JSON files. Comfyui Node Update is an agent skill from espennilsen/pi. Write and improve documentation for ComfyUI nodes in per-node JSON files.

When should I use Comfyui Node Update?

Comfyui Node Update fits situations like: asked to document nodes; write node descriptions; add tips to nodes; improve node docs.

How do I install Comfyui Node Update in Claude Code?

Run `npx skills add espennilsen/pi --skill comfyui-node-update -a claude-code`. Or copy the skill folder (skills/comfyui-node-update in espennilsen/pi) into .claude/skills/comfyui-node-update in your project. Claude Code loads it when a task matches its description.

How do I install Comfyui Node Update in Codex?

Run `npx skills add espennilsen/pi --skill comfyui-node-update -a codex`. Or copy the skill folder (skills/comfyui-node-update in espennilsen/pi) into .agents/skills/comfyui-node-update in your project. Codex loads it when a task matches its description.

Can I use Comfyui Node Update in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add espennilsen/pi --skill comfyui-node-update -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/comfyui-node-update, .gemini/skills/comfyui-node-update, .github/skills/comfyui-node-update and .opencode/skills/comfyui-node-update in your project.

What does Comfyui Node Update need to run?

Going by SKILL.md and its folder, Comfyui Node Update needs the command-line tools its instructions call (rg, python3, git, pip and pnpm). Our summary lists: Python 3.

Does Comfyui Node Update access the network?

SKILL.md contains no URLs. Its commands use git and pip, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Comfyui Node Update safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Comfyui Node Update use?

Comfyui Node Update is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Comfyui Node Update use?

About 3.2k tokens (SKILL.md is roughly 13k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Comfyui Node Update?

Skills that share tags, products or a category with Comfyui Node Update: Comfyui Animatool (ShiroEirin/comfyui-good-anima, 476 stars), Comfyui Agent Skill Mie (MieMieeeee/comfyui-agent-skill, 116 stars), Importing Subgraphs (Comfy-Org/workflow_templates, 1.3k stars) and Comfyui Node Adder (nixified-ai/flake, 841 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Comfyui Node Update?

espennilsen (a GitHub user) maintains it in espennilsen/pi, which has 122 GitHub stars. The repository holds 36 skills in this directory. The repository was last updated on September 21, 2026.

Source: espennilsen/pi on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.