<h1 align="center">
<a href="https://prompts.chat">
<img src="./asset/banner.png" alt="ComfyUI Skills Banner">
Loading actions...
<a href="https://prompts.chat">
TypeScript and ESLint rules that MUST be followed when creating, modifying, or reviewing any file under apps/frontend/, including .ts, .tsx, .js, and .jsx files. Also apply when discussing frontend linting, type safety, or ESLint configuration.
risks
Agent-friendly ComfyUI workflow skills for OpenClaw, Hermes Agent, Codex, Claude Code, and other agents.
Use this project to turn ComfyUI workflows into callable skills with an agent-friendly CLI as the primary interface, plus a visual Web UI for easier configuration and testing.
🎬 Demo Video · 📘 Docs · 🧭 Quick Start · ⌨️ CLI · 🖥️ Web UI · 🛰️ Multi-Server
ComfyUI Skills for OpenClaw is an agent-friendly bridge that turns ComfyUI workflows into callable skills for AI agents.
Instead of asking an agent to manipulate raw ComfyUI graphs, this project gives each workflow a clean, controlled interface through a CLI and schema-based parameter mapping. It works with OpenClaw, Hermes Agent, Codex, Claude Code, and any agent that can run shell commands. Compatible with the agentskills.io open standard.
Use it when you want to import existing ComfyUI workflows, expose only the parameters that matter, run them from chat or agent tasks, and manage everything through one consistent workflow layer.
| Best for | What you get |
|---|---|
| OpenClaw, Codex, Claude Code, and Hermes Agent users | A ComfyUI workflow layer that agents can call safely |
| Existing ComfyUI workflow owners | A clean way to reuse exported workflows without exposing the full graph |
| Multi-machine setups | One namespace for local and remote ComfyUI servers |
| Users who want visual setup and testing | An optional Web UI for configuring, previewing, and validating workflows before agents use them |
| Capability | Why it matters |
|---|---|
| Agent-friendly CLI | Designed for agents, not just humans. It provides a cleaner and more reliable interface than working directly with raw ComfyUI graphs or lower-level ComfyUI interaction patterns. |
| Schema-based parameter mapping | Expose only the fields you want the agent to control, with clear aliases, types, and descriptions. |
| ComfyUI workflow import | Import workflow JSON files, auto-detect formats, and generate the mapping layer needed for agent use. |
| Multi-server routing | Manage local and remote ComfyUI servers under one namespace and route jobs to the right machine. |
| Dependency management | Check missing nodes and models before execution and install supported dependencies through the CLI. |
| Optional Web UI | A visual layer for configuration and testing. It does not replace the CLI, and agent-facing actions still map to the same CLI workflow. |
Get ComfyUI Skills running in a few minutes.
Before you start, make sure you have:
Choose the directory that matches your agent environment.
cd ~/.openclaw/workspace/skills
git clone https://github.com/HuangYuChuh/ComfyUI_Skills_OpenClaw.git comfyui-skill-openclaw
cd comfyui-skill-openclaw
cd ~/.claude/skills
git clone https://github.com/HuangYuChuh/ComfyUI_Skills_OpenClaw.git comfyui-skill
cd comfyui-skill
cd ~/.codex/skills
git clone https://github.com/HuangYuChuh/ComfyUI_Skills_OpenClaw.git comfyui-skill
cd comfyui-skill
cd ~/.hermes/skills/creative
git clone https://github.com/HuangYuChuh/ComfyUI_Skills_OpenClaw.git comfyui-skill-openclaw
cd comfyui-skill-openclaw
Or install via Hermes CLI (once the PR is merged):
hermes skills install comfyui-skill-openclaw
cp config.example.json config.json
pipx install comfyui-skill-cli
Or:
pip install comfyui-skill-cli
If you already have the CLI installed, upgrade it with:
# If you installed it with pipx
pipx upgrade comfyui-skill-cli
# If you installed it with pip
python3 -m pip install -U comfyui-skill-cli
comfyui-skill server status
comfyui-skill list
comfyui-skill workflow import /absolute/path/to/my-workflow.json
comfyui-skill deps check local/my-workflow
comfyui-skill run local/my-workflow --args '{"prompt": "a white cat"}'
For manual CLI imports, the recommended approach is to pass the workflow JSON as an absolute path. That avoids path ambiguity and keeps the storage model simple.
For example:
comfyui-skill workflow import /Users/yourname/Downloads/my-workflow.json
After import, the CLI stores the normalized workflow and schema under data/<server_id>/<workflow_id>/, for example data/local/my-workflow/workflow.json and data/local/my-workflow/schema.json.
This is also the formal layout used by the Web UI and by Agent/OpenClaw-driven imports:
data/<server_id>/<workflow_id>/
workflow.json
schema.json
history/
At this point, the CLI will read your local config.json, discover available workflows, and execute them through your ComfyUI server.
If you prefer a visual setup and testing flow, see the Web UI section below.
Choose the path that matches how you want to use the project.
Use this path if you want OpenClaw to discover and execute ComfyUI workflows as skills.
~/.openclaw/workspace/skillscomfyui-skill-cliconfig.jsonUse this path if you want coding agents to call ComfyUI workflows through shell commands.
comfyui-skill list--argsUse this path if you want a visual interface for configuration, inspection, and testing. See the Web UI section below for launch instructions and details.
Use this path if you want direct control over config.json, workflow.json, and schema.json.
config.json{
"servers": [
{
"id": "local",
"name": "Local",
"url": "http://127.0.0.1:8188",
"enabled": true,
"output_dir": "./outputs"
}
],
"default_server": "local"
}
data/local/my-workflow/
workflow.json # ComfyUI API-format export
schema.json # Parameter mapping
schema.json{
"description": "My workflow",
"enabled": true,
"parameters": {
"prompt": {
"node_id": 10,
"field": "prompt",
"required": true,
"type": "string",
"description": "Prompt text"
}
}
}
Beyond the commands shown in Quick Start, here are additional operations you may need:
comfyui-skill info local/txt2img
comfyui-skill submit local/txt2img --args '{"prompt": "a white cat"}'
comfyui-skill status <prompt_id>
comfyui-skill server list
comfyui-skill server add --id remote --url http://10.0.0.1:8188
For the full CLI reference, run comfyui-skill --help or see ComfyUI Skill CLI.
To work reliably with this project, each workflow should meet these requirements.
Save Image.schema.json mapping so the agent can work with a clean parameter interface.If you use comfyui-skill workflow import, the CLI can help generate the required mapping and check dependencies before execution.
This project is designed to work with more than one ComfyUI server.
You can keep multiple local or remote ComfyUI instances under one configuration and route workflows by namespace. This is useful when different machines serve different purposes, such as lightweight local testing, larger GPU jobs, or model-specific environments.
Examples:
comfyui-skill server add --id local --url http://127.0.0.1:8188
comfyui-skill server add --id remote-a100 --url http://10.0.0.20:8188
comfyui-skill server list
Workflows are addressed with the format:
<server_id>/<workflow_id>
For example:
local/txt2img
remote-a100/sdxl-base
Both servers and workflows support enable and disable switches, so agents only see workflows that are currently available.
You can also move settings between machines with:
comfyui-skill config export --output ./backup.json
comfyui-skill config import ./backup.json --dry-run
comfyui-skill config import ./backup.json
A local web interface is available for visual configuration and testing. It is optional, and it exists to make setup, inspection, and validation easier. The skill itself is still designed for agents to use through the CLI.
./ui/run_ui.sh # macOS/Linux
# or: ui\run_ui.bat # Windows
The launch scripts create a project .venv when needed and install UI dependencies into that virtual environment. No global Web UI dependency install is required.
Visit http://localhost:18189.
Everything the Web UI configures maps back to the same underlying CLI-driven workflow. It is a visual companion for setup and testing, not a separate execution model.
Frontend source lives in a separate repository.
/promptThe workflow payload or one of the injected parameter values is invalid.
Check:
The workflow may be missing a valid output node such as Save Image.
Check that:
config.json is correctRun:
comfyui-skill deps check <workflow_id>
Then install supported dependencies if needed.
Recent highlights:
run, submit, status, import, deps) now go through a standalone CLI tool; legacy Python scripts have been removed.submit and status, image upload, import preview, and execution history.See CHANGELOG.md for the full release history.
Contributions are welcome! Please read CONTRIBUTING.md before submitting a PR.