Setup
guaardvark/guaardvark
Connect this agent to a running Guaardvark (self-hosted AI studio) and check what it can do right now.
Keep the ComfyUI sidebar panel node-pack (comfyui-agent-panel) in step with the orchestrator after comfyui-mcp updates.
$ npx skills add artokun/comfyui-mcp --skill panel-node-pack-sync -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install artokun/comfyui-mcp panel-node-pack-sync --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/artokun/comfyui-mcp.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugin/skills/panel-node-pack-sync .claude/skills/panel-node-pack-sync && 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 "panel-node-pack-sync" agent skill from https://github.com/artokun/comfyui-mcp/tree/main/plugin/skills/panel-node-pack-sync into .claude/skills/panel-node-pack-sync/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "panel-node-pack-sync", 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/artokun/comfyui-mcp/tree/main/plugin/skills/panel-node-pack-syncType 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 artokun/comfyui-mcp --skill panel-node-pack-sync -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install artokun/comfyui-mcp panel-node-pack-sync --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/artokun/comfyui-mcp.git skills-src && mkdir -p .agents/skills && cp -r skills-src/plugin/skills/panel-node-pack-sync .agents/skills/panel-node-pack-sync && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "panel-node-pack-sync" agent skill from https://github.com/artokun/comfyui-mcp/tree/main/plugin/skills/panel-node-pack-sync into .agents/skills/panel-node-pack-sync/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "panel-node-pack-sync", 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 artokun/comfyui-mcp --skill panel-node-pack-sync -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install artokun/comfyui-mcp panel-node-pack-sync --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/artokun/comfyui-mcp.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/plugin/skills/panel-node-pack-sync .cursor/skills/panel-node-pack-sync && 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 "panel-node-pack-sync" agent skill from https://github.com/artokun/comfyui-mcp/tree/main/plugin/skills/panel-node-pack-sync into .cursor/skills/panel-node-pack-sync/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "panel-node-pack-sync", 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/artokun/comfyui-mcp.git --path plugin/skills/panel-node-pack-sync--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 artokun/comfyui-mcp --skill panel-node-pack-sync -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install artokun/comfyui-mcp panel-node-pack-sync --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/artokun/comfyui-mcp.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/plugin/skills/panel-node-pack-sync .gemini/skills/panel-node-pack-sync && 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 "panel-node-pack-sync" agent skill from https://github.com/artokun/comfyui-mcp/tree/main/plugin/skills/panel-node-pack-sync into .gemini/skills/panel-node-pack-sync/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "panel-node-pack-sync", 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 artokun/comfyui-mcp panel-node-pack-syncInstalls 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 artokun/comfyui-mcp --skill panel-node-pack-sync -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/artokun/comfyui-mcp.git skills-src && mkdir -p .github/skills && cp -r skills-src/plugin/skills/panel-node-pack-sync .github/skills/panel-node-pack-sync && 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 "panel-node-pack-sync" agent skill from https://github.com/artokun/comfyui-mcp/tree/main/plugin/skills/panel-node-pack-sync into .github/skills/panel-node-pack-sync/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "panel-node-pack-sync", 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 artokun/comfyui-mcp --skill panel-node-pack-sync -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install artokun/comfyui-mcp panel-node-pack-sync --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/artokun/comfyui-mcp.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/plugin/skills/panel-node-pack-sync .opencode/skills/panel-node-pack-sync && 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 "panel-node-pack-sync" agent skill from https://github.com/artokun/comfyui-mcp/tree/main/plugin/skills/panel-node-pack-sync into .opencode/skills/panel-node-pack-sync/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "panel-node-pack-sync", 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.
panel-node-pack-syncKeep the ComfyUI sidebar panel node-pack (comfyui-agent-panel) in step with the orchestrator after comfyui-mcp updates.
Panel Node Pack Sync is an agent skill from artokun/comfyui-mcp. Keep the ComfyUI sidebar panel node-pack (comfyui-agent-panel) in step with the orchestrator after comfyui-mcp updates. Use this whenever the orchestrator was just updated (installcomfyui (action:"selfupdate"), npm i -g comfyui-mcp, a new version in the ENVIRONMENT line), when a panel/bridge command fails in a way that smells like version drift ("panel is too old", a graph/ui command the panel doesn't implement, a feature that works in the docs but not in the sidebar), or when the user asks to update/pin/unpin…
Its SKILL.md is about 2.9k 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 and MCP servers. It works with ComfyUI, Model Context Protocol and npm. The repository describes itself as: Local-first, agent-native control plane for ComfyUI — MCP server + sidebar agent that generates images, video & audio, authors and runs workflows, and edits your live graph in… The licence is MIT.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 6ad6fc0. 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:
gitnpmFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use git and npm, 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.
Panel Node Pack Sync loads about 2.9k tokens when it runs. Until then it costs about 225 tokens; SKILL.md has 1,520 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 noted patterns worth knowing about, such as sudo or a known installer.
in their environment or `~/.comfyui-mcp/.env` and restartAutomated 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 artokun/comfyui-mcp at commit 6ad6fc0, republished under its MIT licence (© artokun). 1,520 words, ~2,914 tokens.
.claude/skills/panel-node-pack-sync/SKILL.md (or your agent's skills folder).The orchestrator (comfyui-mcp, from npm) and the sidebar panel
(comfyui-agent-panel on the Comfy Registry, repo comfyui-mcp-panel) ship
separately. Updating one does not update the other. A new orchestrator
driving an old panel fails in confusing ways, such as a bridge command the panel
doesn't implement or a feature that exists in the docs but not in the sidebar,
and those failures are hard for a user to diagnose. This skill closes that gap.
Never report a sync that did not happen. This whole feature sits on top of
the fabricate-success fixes (#639/#641): ComfyUI-Manager reports its queue
"drained" even when it never enqueued anything, and a .bak-style copy in
custom_nodes can shadow the real panel in the browser. So the only version
you may ever tell the user is the one read back from disk after the fact.
If the tool throws, the sync FAILED. Say so plainly. Do not soften it, do not
retry it into a success, do not report the version you intended to install.
Never move a pinned user. A pin is a promise. If the user pinned the panel, you warn and stop. You do not unpin for them, you do not "just this once", you do not sync anyway because the new version is obviously better. Offer to clear the pin, and act only if they say yes.
install_comfyui(action:'panel', panel_action:'status')This never errors. Read these fields:
| Field | Meaning |
|---|---|
installedVersion | The panel version on disk (from its pyproject.toml). |
sync.requiredPanelVersion | The highest panel version this orchestrator build needs. |
sync.decision | What to do — the whole decision is made for you (Step 2). |
sync.summary | Plain-language explanation, safe to paraphrase to the user. |
pin | The active pin: { pinned, version, source: "env"|"settings", reason }. |
shadows | .bak-style copies that shadow the real panel in the browser. |
isDevSymlink | A developer's symlinked checkout — never ours to modify. |
Do not compute the comparison yourself. sync.decision already accounts for the
pin, shadow copies, dev symlinks, remote/cloud mode, and unreadable versions.
sync.decisiondecision | What it means | What you do |
|---|---|---|
meets-floor | Panel clears the minimum the orchestrator needs. It is not a statement that a newer panel does not exist — nothing on this path knows the newest published version, and most panel fixes ship without raising the floor (#806). | Nothing, unless the user is chasing a bug. Say "meets the minimum (X ≥ Y)", never "up to date". If they are debugging, add that a newer panel may carry the fix and that the latest is published in the pack's pyproject.toml. |
sync | Behind, not pinned, nothing ambiguous. | Step 3 — sync it. |
pinned-warn | Behind, but pinned. | Step 4 — warn only. Do not sync. |
blocked | A shadow copy, or a pin we couldn't read. | Step 5 — get it unblocked first. |
unknown | The installed version isn't comparable (nightly, dev, unreadable) and nothing is pinned. | Report it, don't guess. Offer a deliberate install_comfyui(action:'panel', panel_action:'update') and let the user decide. (If they were pinned you'd have got pinned-warn instead, so unknown never means "quietly ignore a pin".) |
dev-install | Symlinked dev checkout. | Tell them to git pull their own checkout. Change nothing. |
not-applicable | Remote/cloud, or no local ComfyUI. | Explain the panel is managed on the ComfyUI host. |
decision: "sync")install_comfyui(action:'panel', panel_action:'sync')That single call re-checks the decision at execution time (the pin may have been set a second ago), runs the update through the hardened, verified path, and re-reads the pack from disk afterwards. Read the result:
synced: true → it moved. Report verifiedVersion, the version observed
on disk after the op, not the one we asked for. Then tell the user
ComfyUI must be RESTARTED to load it (restartRequired: true); this
never auto-restarts. Now read stillBehind, which is tri-state:false → the panel provably meets what the orchestrator needs. Done.true → the update applied but did not close the gap. Say so; do not
round it up to "you're current now".null → it landed, but the resulting version (e.g. nightly) can't be
compared, so whether the mismatch is fixed is unknown. Say exactly that.
null is not false. Never report it as "you're fine".synced: false → nothing was changed. decision says why (pinned-warn,
meets-floor, blocked, …). This is a normal outcome, not a failure.For a user who is on Comfy Desktop, restart via the Manager reboot endpoint rather than killing the process.
decision: "pinned-warn") — WARN, DO NOT SYNCThe user deliberately held the panel where it is. Tell them three things and then stop:
requiredPanelVersion).pin.source).Your orchestrator (comfyui-mcp 0.48.32) expects panel 0.11.28+, and you're on 0.11.3. You've pinned the panel to 0.11.3, so I haven't changed anything. Want me to clear the pin and update? I'd unpin and then sync; ComfyUI needs a restart afterwards.
Only if they say yes:
install_comfyui(action:'panel', panel_action:'unpin') # clears the persisted pin
install_comfyui(action:'panel', panel_action:'sync') # then Step 3If pin.source is "env", unpin cannot clear it, because the pin comes
from the COMFYUI_MCP_PANEL_PIN environment variable. Tell the user to unset it
(or set it to off) in their environment or ~/.comfyui-mcp/.env and restart
the orchestrator. Do not edit their environment for them, and do not report them
as unpinned. install_comfyui(action:'panel', panel_action:'unpin') returns the
still-active pin in that case, and its note says exactly this.
shadows non-empty): a dir like
.comfyui-agent-panel.bak-0.11.28 in custom_nodes is also served as a web
extension, and a dot-prefixed name wins by sort order, so the browser may be
loading the old panel no matter what the disk says. Nothing can be verified
until it's gone. Tell the user to move it out of custom_nodes (not only
rename it) and hard-refresh the ComfyUI tab, then re-run Step 1.~/.comfyui-mcp/panel-settings.json exists but couldn't be
parsed, so we cannot prove the user isn't pinned, and we refuse to move them
on a guess. Ask them to fix or delete that file (or set
COMFYUI_MCP_PANEL_PIN=off), then re-run Step 1.If the user wants to stay on their current panel (they're mid-project, a newer panel regressed something, they're testing):
install_comfyui(action:'panel')(action='pin', version='<installedVersion from status>', reason='<why>')version is required. Never invent one. Pass the installedVersion from
Step 1 to pin them where they already are. A pin records intent only. It does
not change what is installed.
While it's set, everything that could move the panel refuses, not only
install_comfyui(action:'panel'). The panel is an ordinary custom node pack, so the generic node
tools are a second door into the same operation, and they are guarded too:
install_custom_node / install_custom_node (action: "update") / install_custom_node (action: "reinstall")
targeting the panel by any spelling: the registry id, the repo name, or a
git URL including ref-carrying forms like …/comfyui-mcp-panel.git@v0.11.28
and …/comfyui-mcp-panel/tree/main. These also route through the verified
path automatically, so the version they report is re-read from disk like
sync's.id="all", and install_comfyui (action:"update_all"). A bulk update moves the panel along with
everything else. ComfyUI-Manager can't update everything-except-one-pack, so
while pinned these refuse outright. If the user wants the rest updated, either
unpin first or update the other packs individually by id. Say that plainly
rather than quietly unpinning to make all work.install_custom_node (action: "fix"), panel_install_node and panel_update_node refuse a
panel target outright, pinned or not. They report success as soon as the
ComfyUI-Manager queue drains, which proves nothing, and there's no verified
equivalent to route them into. Use install_comfyui(action:'panel') instead; don't work around
the refusal.Prefer install_comfyui(action:'panel') throughout. It's the one with status, sync and the
pin.
install_comfyui (action:"self_update"), a fresh npm i -g, or a
version in the ENVIRONMENT line that's newer than last you saw).graph_*/ui_* command the panel doesn't implement, a
documented sidebar feature that isn't there.Be proportionate. This is a one-line check. If decision is meets-floor and the
user didn't ask, don't narrate it. Carry on with what they wanted.
The exception is a user who is DEBUGGING the panel. meets-floor is exactly the
state that hides a shipped fix behind an unchanged floor, so there it is worth the
sentence.
verifiedVersion (re-read from disk), never the target version,
never nightly.© artokun, 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 plugin/skills/panel-node-pack-sync of artokun/comfyui-mcp.
Open the folder on GitHubat commit 6ad6fc0
Panel Node Pack Sync 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 |
|---|---|---|---|---|---|---|
| Panel Node Pack Sync this skillartokun/comfyui-mcp | 795 | — | ~2.9k | Automated safety check: Notes | MIT | |
| Setupguaardvark/guaardvark | 255 | 1 repos | ~1.2k | Automated safety check: Pass | MIT | |
| ComfyComfy-Org/comfy-skills | 219 | — | ~1.4k | Automated safety check: Pass | MIT | |
| Workflow Assistantfilliptm/ComfyUI_FL-MCP | 127 | — | ~3.6k | Automated safety check: Pass | MIT | |
| Managing MCP IndexComfy-Org/workflow_templates | 1.3k | — | ~1.9k | Automated safety check: Notes | MIT | |
| Comfyui Skill OpenclawHuangYuChuh/ComfyUI_Skills_OpenClaw | 411 | — | ~2.7k | Automated safety check: Pass | Apache-2.0 |
guaardvark/guaardvark
Connect this agent to a running Guaardvark (self-hosted AI studio) and check what it can do right now.
Comfy-Org/comfy-skills
Generate images, video, audio, and 3D with Comfy Cloud — search hundreds of models and workflow templates, run custom ComfyUI workflows, and manage generation jobs through the hosted Comfy Cloud MCP…
filliptm/ComfyUI_FL-MCP
A skill your agent uses when working with ComfyUI workflows through FL-MCP or similar MCP tools: inspect, explain, create, edit, debug, compact, validate, queue, screenshot, or organize node graphs…
Comfy-Org/workflow_templates
Builds and maintains templates/index.mcp.json for Comfy Cloud MCP tools.
HuangYuChuh/ComfyUI_Skills_OpenClaw
Run registered ComfyUI workflows through the fast comfyui-skill CLI, and use the official local Comfy MCP for live template, node, model, validation, and orchestration capabilities.
breaking-brake/cc-wf-studio
Guides edits to cc-wf-studio's workflow schema so AI agents generate better workflows, treating schema text as prompt engineering rather than validation.
artokun/comfyui-mcp
Train custom LoRAs with ostris AI-Toolkit. An agent skill from artokun/comfyui-mcp.
artokun/comfyui-mcp
Anime/illustration text-to-image (ANIMA 1.0, ~2B Cosmos DiT).
artokun/comfyui-mcp
Discover Civitai models with the BUILT-IN downloadmodel action:"searchcivitai" and install/generate them locally.
artokun/comfyui-mcp
Diagnose and fix video/image color OBJECTIVELY with the getimage (action:"analyzecolor") tool (scopes/stats such as black/white points, contrast, saturation, clipping, cast) instead of eyeballing a…
artokun/comfyui-mcp
Authoring ComfyUI v2 frontend extensions with @comfyorg/extension-api, covering defineNode/defineExtension/defineWidget, shell UI (sidebar tabs, commands, hotkeys), typed events, and handles.
artokun/comfyui-mcp
Pick the right ComfyUI startup flags for VRAM, attention, caching, and speed.
Works with
Categories
Keep the ComfyUI sidebar panel node-pack (comfyui-agent-panel) in step with the orchestrator after comfyui-mcp updates. Panel Node Pack Sync is an agent skill from artokun/comfyui-mcp. Keep the ComfyUI sidebar panel node-pack (comfyui-agent-panel) in step with the orchestrator after comfyui-mcp updates.
Panel Node Pack Sync fits situations like: asks to update/pin/unpin the panel; tasks that involve Diffusion and image models; tasks that involve MCP servers.
Run `npx skills add artokun/comfyui-mcp --skill panel-node-pack-sync -a claude-code`. Or copy the skill folder (plugin/skills/panel-node-pack-sync in artokun/comfyui-mcp) into .claude/skills/panel-node-pack-sync in your project. Claude Code loads it when a task matches its description.
Run `npx skills add artokun/comfyui-mcp --skill panel-node-pack-sync -a codex`. Or copy the skill folder (plugin/skills/panel-node-pack-sync in artokun/comfyui-mcp) into .agents/skills/panel-node-pack-sync 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 artokun/comfyui-mcp --skill panel-node-pack-sync -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/panel-node-pack-sync, .gemini/skills/panel-node-pack-sync, .github/skills/panel-node-pack-sync and .opencode/skills/panel-node-pack-sync in your project.
Going by SKILL.md and its folder, Panel Node Pack Sync needs the command-line tools its instructions call (git and npm). Our summary lists: Node.js.
SKILL.md contains no URLs. Its commands use git and npm, 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 notes only (mentions a .env file), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.
Panel Node Pack Sync is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.9k tokens (SKILL.md is roughly 12k 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 Panel Node Pack Sync: Setup (guaardvark/guaardvark, 255 stars), Comfy (Comfy-Org/comfy-skills, 219 stars), Workflow Assistant (filliptm/ComfyUI_FL-MCP, 127 stars) and Managing MCP Index (Comfy-Org/workflow_templates, 1.3k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
artokun (a GitHub user) maintains it in artokun/comfyui-mcp, which has 795 GitHub stars. The repository holds 42 skills in this directory. The repository was last updated on October 5, 2026.
Source: artokun/comfyui-mcp on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.