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.
Write and improve documentation for ComfyUI nodes in per-node JSON files.
$ npx skills add espennilsen/pi --skill comfyui-node-update -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install espennilsen/pi comfyui-node-update --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ 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-srcUse ~/.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/
Install the "comfyui-node-update" agent skill from https://github.com/espennilsen/pi/tree/main/skills/comfyui-node-update into .claude/skills/comfyui-node-update/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "comfyui-node-update", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/espennilsen/pi/tree/main/skills/comfyui-node-updateType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add espennilsen/pi --skill comfyui-node-update -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install espennilsen/pi comfyui-node-update --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/espennilsen/pi.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/comfyui-node-update .agents/skills/comfyui-node-update && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "comfyui-node-update" agent skill from https://github.com/espennilsen/pi/tree/main/skills/comfyui-node-update into .agents/skills/comfyui-node-update/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "comfyui-node-update", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add espennilsen/pi --skill comfyui-node-update -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install espennilsen/pi comfyui-node-update --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/espennilsen/pi.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/comfyui-node-update .cursor/skills/comfyui-node-update && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "comfyui-node-update" agent skill from https://github.com/espennilsen/pi/tree/main/skills/comfyui-node-update into .cursor/skills/comfyui-node-update/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "comfyui-node-update", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/espennilsen/pi.git --path skills/comfyui-node-update--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add espennilsen/pi --skill comfyui-node-update -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install espennilsen/pi comfyui-node-update --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/espennilsen/pi.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/comfyui-node-update .gemini/skills/comfyui-node-update && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "comfyui-node-update" agent skill from https://github.com/espennilsen/pi/tree/main/skills/comfyui-node-update into .gemini/skills/comfyui-node-update/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "comfyui-node-update", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install espennilsen/pi comfyui-node-updateInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add espennilsen/pi --skill comfyui-node-update -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/espennilsen/pi.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/comfyui-node-update .github/skills/comfyui-node-update && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "comfyui-node-update" agent skill from https://github.com/espennilsen/pi/tree/main/skills/comfyui-node-update into .github/skills/comfyui-node-update/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "comfyui-node-update", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add espennilsen/pi --skill comfyui-node-update -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install espennilsen/pi comfyui-node-update --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/espennilsen/pi.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/comfyui-node-update .opencode/skills/comfyui-node-update && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "comfyui-node-update" agent skill from https://github.com/espennilsen/pi/tree/main/skills/comfyui-node-update into .opencode/skills/comfyui-node-update/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "comfyui-node-update", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
comfyui-node-updateWrite 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. 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.
3 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 79d019b. It shows what the files ask for, not the result of running them.
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.
Shell commands in SKILL.md call:
rgpython3gitpippnpmFrom the folder's file list and the shell code blocks in SKILL.md.
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.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
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.
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.
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.
The full file from espennilsen/pi at commit 79d019b, republished under its MIT licence (© espennilsen). 1,283 words, ~3,186 tokens.
.claude/skills/comfyui-node-update/SKILL.md (or your agent's skills folder).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.
Node data is split into per-node JSON files organized by section and category:
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.
src/data/nodes/<section>/<category>/<NodeName>.jsonsrc/data/nodes/_metadata.jsonexports/comfyui_nodes_*.json (structural source of truth)embedded-docs/comfyui_embedded_docs/docs/<NodeName>/en.md (reference only)exports/NODE_UPDATE_PLAN.md (progress tracking)scripts/extract-comfyui-nodes.sh (pulls from running ComfyUI)scripts/import-new-nodes.sh (creates skeletal files, updates metadata)To locate a node's JSON file:
find src/data/nodes -name 'KSampler.json'
# → src/data/nodes/comfy_nodes/sampling/KSampler.jsonTo search across all nodes:
rg '"documentation_complete": false' src/data/nodes/ -lFor each node, write these fields:
| Field | What to write | Length |
|---|---|---|
description | Technical but clear explanation of what the node does | 50–200 chars |
beginner_description | Plain-language explanation for someone new to ComfyUI | 100–400 chars |
tips.general_tips | Practical advice any user should know | 2–5 tips |
tips.beginner_tips | "Start here" guidance with specific values and settings | 2–4 tips |
tips.advanced_tips | Power-user techniques, edge cases, combo strategies | 1–4 tips (skip for simple nodes) |
use_cases | Concrete scenarios with context | 2–4 use cases |
common_errors | Real problems users hit, with actionable fixes | 1–4 errors |
complexity_level | "beginner", "intermediate", or "advanced" | — |
documentation_complete | Set true when all content fields are filled | — |
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.
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.
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 an array of objects with scenario and context:
[
{
"scenario": "Text-to-image generation",
"context": "The most common workflow — connect Empty Latent Image as input with denoise 1.0 to generate from scratch"
}
]Use an array of objects with symptom and solution:
[
{
"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."
}
]The embedded docs at embedded-docs/comfyui_embedded_docs/docs/<NodeName>/en.md
are a reference source, not a template.
What to extract from embedded docs:
What NOT to do:
beginner_descriptionWhen 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.
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:
cd <COMFYUI_DIR>
git pull
pip install -r requirements.txt
./start.shSay: "Run these and tell me when ComfyUI is running." Then wait. Do not proceed until the user confirms.
Only after the user confirms ComfyUI is running:
./scripts/extract-comfyui-nodes.sh./scripts/import-new-nodes.shFind nodes with documentation_complete: false and enrich them using parallel
subagents grouped by section:
# Check how many need enrichment
rg '"documentation_complete": false' src/data/nodes/ -l | wc -lDispatch 3 parallel subagents (one per section):
embedded-docs/comfyui_embedded_docs/docs/<NodeName>/en.md if available, write all content fieldsAfter enrichment:
rg '"documentation_complete": false' src/data/nodes/ -l | wc -l → should be 0pnpm run buildexports/NODE_UPDATE_PLAN.md with the version history entryWhen asked to document a set of nodes (e.g. "document the new audio nodes"):
find src/data/nodes -name '*.json' -path '*audio*'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: trueexports/NODE_UPDATE_PLAN.md if relevantWhen asked to improve node docs:
documentation_complete: falsebeginner_descriptionuse_cases or common_errorsdescription under 50 charsTo find nodes needing work:
# 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))
"api node/...) — found in partner_nodes/dataset/...)sampling/...)latent/...)audio/...)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
Just SKILL.md in skills/comfyui-node-update of espennilsen/pi.
Open the folder on GitHubat commit 79d019b
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.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Comfyui Node Update this skillespennilsen/pi | 122 | — | ~3.2k | Automated safety check: Pass | MIT | |
| Comfyui AnimatoolShiroEirin/comfyui-good-anima | 476 | — | ~4.6k | Automated safety check: Pass | GPL-3.0 | |
| Comfyui Agent Skill MieMieMieeeee/comfyui-agent-skill | 116 | — | ~3.9k | Automated safety check: Pass | Apache-2.0 | |
| Importing SubgraphsComfy-Org/workflow_templates | 1.3k | — | ~1.5k | Automated safety check: Pass | MIT | |
| Comfyui Node Addernixified-ai/flake | 841 | — | ~806 | Automated safety check: Pass | AGPL-3.0 | |
| Managing BundlesComfy-Org/workflow_templates | 1.3k | — | ~1.2k | Automated safety check: Pass | MIT |
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.
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.
Comfy-Org/workflow_templates
Imports and registers subgraph blueprints into the ComfyUI workflowtemplates repository.
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.
Comfy-Org/workflow_templates
Manages template bundles, categories, and ordering in the ComfyUI template repository.
momori777/Artemis
SmartCrusher + CCR context compression — crunch large JSON arrays, tool outputs, and search results to save tokens.
espennilsen/pi
Interact with GitHub repos, PRs, issues, CI, and notifications via the pi-github extension commands and gh CLI.
espennilsen/pi
Create, review, and improve skills for Pi agents. An agent skill from espennilsen/pi.
espennilsen/pi
Perform a comprehensive DRY (Don't Repeat Yourself) code review on a codebase.
espennilsen/pi
Reverse-engineer a design system from a live website (public URL or localhost).
espennilsen/pi
Read and extract content from PDF files — text, tables, metadata, and images.
espennilsen/pi
Manage Google Workspace via the gws CLI — Drive, Gmail, Sheets, Docs, Slides, People, Chat, Meet, Forms, and cross-service workflows.
Works with
Categories
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.
Comfyui Node Update fits situations like: asked to document nodes; write node descriptions; add tips to nodes; improve node docs.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.