Skip to main content

ComfyUI Skill CLI — Agent-friendly workflow management

Project description

ComfyUI Skill CLI

Agent-friendly command-line tool for managing and executing ComfyUI workflow skills.

Any AI agent that can run shell commands (Claude Code, Codex, OpenClaw, etc.) can use ComfyUI through this CLI.

PyPI License Python 3.10+ GitHub stars

Install · Quick Start · Commands · For AI Agents

English · 简体中文 · 繁體中文 · 日本語 · 한국어 · Español


Why comfyui-skill?

Capability Why it matters
Agent-native Structured JSON output, pipe-friendly, designed for AI agents to call
Zero config Reads config.json and data/ from the current directory, no setup needed
Full lifecycle Discover, import, execute, cancel, manage workflows and dependencies in one tool
Multi-server Manage multiple ComfyUI instances, route jobs to different hardware
Model discovery Inspect model folders and available model names directly from the target server
Workflow fleet management Import, enable, disable, delete, and migrate multiple workflows across machines
Error guidance Common failures (OOM, unauthorized, missing models) return actionable hints

Install

pipx install comfyui-skill-cli

Or with pip:

pip install comfyui-skill-cli

Update

pipx upgrade comfyui-skill-cli

Development Mode

git clone https://github.com/HuangYuChuh/ComfyUI_Skill_CLI.git
cd ComfyUI_Skill_CLI
pipx install -e .

Quick Start

# 1. Go to your ComfyUI Skills project directory
cd /path/to/your-skills-project

# 2. Check server status
comfyui-skill server status

# 3. List available workflows
comfyui-skill list

# 4. Execute a workflow
comfyui-skill run local/txt2img --args '{"prompt": "a white cat"}'

Every command supports --json for structured output.

ID Convention

Workflows are addressed as <server_id>/<workflow_id>:

comfyui-skill run local/txt2img          # explicit server
comfyui-skill run txt2img                # uses default server
comfyui-skill run txt2img -s my_server   # override with --server flag

Commands

Workflow Discovery & Execution

Command Description
comfyui-skill list List all available workflows with parameters
comfyui-skill info <id> Show workflow details and parameter schema
comfyui-skill run <id> --args '{...}' Execute a workflow (blocking, real-time WebSocket streaming)
comfyui-skill run <id> --validate Validate workflow without executing
comfyui-skill submit <id> --args '{...}' Submit a workflow (non-blocking)
comfyui-skill status <prompt_id> Check execution status and show discovered results
comfyui-skill cancel <prompt_id> Cancel a running or queued job
comfyui-skill upload <file> Upload a file to ComfyUI for use in workflows
comfyui-skill upload <file> --mask Upload a mask image for inpainting workflows
comfyui-skill upload --from-output <prompt_id> Chain a previous run's output as input for the next workflow

Queue & Resource Management

Command Description
comfyui-skill queue list Show running and pending jobs
comfyui-skill queue clear Clear all pending jobs
comfyui-skill queue delete <prompt_id>... Remove specific jobs from queue
comfyui-skill free Release GPU memory and unload models
comfyui-skill free --models Unload models only
comfyui-skill free --memory Free cached memory only

Node & Model Discovery

Command Description
comfyui-skill nodes list List all available ComfyUI nodes by category
comfyui-skill nodes info <class> Show node input/output schema
comfyui-skill nodes search <query> Search nodes by name or category
comfyui-skill models list List all available model folders
comfyui-skill models list <folder> List models in a specific folder (e.g., checkpoints, loras)

Workflow Management

Command Description
comfyui-skill workflow import <path> Import workflow (auto-detect format, auto-generate schema)
comfyui-skill workflow import --from-server Import one or more workflows from ComfyUI server userdata
comfyui-skill workflow enable <id> Enable a workflow
comfyui-skill workflow disable <id> Disable a workflow
comfyui-skill workflow delete <id> Delete a workflow

Server Management

Command Description
comfyui-skill server list List all configured servers
comfyui-skill server status Check if ComfyUI server is online
comfyui-skill server stats Show VRAM, RAM, GPU info (--all for multi-server)
comfyui-skill server add --id <id> --url <url> Add a new server
comfyui-skill server enable/disable <id> Toggle server availability
comfyui-skill server remove <id> Remove a server

Dependency Management

Command Description
comfyui-skill deps check <id> Check missing custom nodes and models
comfyui-skill deps install <id> --all Auto-detect and install all missing deps
comfyui-skill deps install <id> --repos '[...]' Install specific custom nodes
comfyui-skill deps install <id> --models Install missing models via Manager

Configuration & History

Command Description
comfyui-skill config export --output <path> Export config and workflows as bundle
comfyui-skill config import <path> Import config bundle (supports --dry-run)
comfyui-skill history list <id> List execution history
comfyui-skill history show <id> <run_id> Show details of a specific run
comfyui-skill jobs list List server-side job history (--status to filter)
comfyui-skill jobs show <prompt_id> Show details of a specific job
comfyui-skill logs show Show recent ComfyUI server logs
comfyui-skill templates list List workflow templates from custom nodes
comfyui-skill templates subgraphs List reusable subgraph components

Global Options

Option Description
--json, -j Force JSON output
--output-format Output format: text, json, stream-json
--server, -s Specify server ID
--dir, -d Specify data directory (default: current directory)
--verbose, -v Verbose output
--no-update-check Skip automatic CLI update check

Output Modes

Mode When Format
Text TTY terminal Rich tables and progress bars
JSON Pipe or --json Single JSON result
Stream JSON --output-format stream-json NDJSON events in real time
Errors Always stderr

Common Management Tasks

Inspect models on a server

comfyui-skill models list
comfyui-skill models list checkpoints
comfyui-skill models list loras

Use this when you need to confirm model names before wiring them into a workflow or schema.

Manage multiple workflows

# Preview workflows available in ComfyUI server userdata
comfyui-skill workflow import --from-server --preview

# Import matching workflows from the server
comfyui-skill workflow import --from-server --name sdxl

# Temporarily disable or re-enable a workflow
comfyui-skill workflow disable local/old-flow
comfyui-skill workflow enable local/old-flow

# Remove a workflow you no longer want to expose
comfyui-skill workflow delete local/old-flow

Move workflow bundles between machines

comfyui-skill config export --output ./bundle.json --portable-only
comfyui-skill config import ./bundle.json --dry-run
comfyui-skill config import ./bundle.json --apply-environment

Use this when you want to migrate many workflows at once instead of re-importing them manually.

Check models and dependencies before running

comfyui-skill deps check local/txt2img
comfyui-skill deps install local/txt2img --models
comfyui-skill deps install local/txt2img --all

For AI Agents

This CLI is designed to be called from SKILL.md definitions. A typical agent workflow:

comfyui-skill server status --json                    # 1. verify server
comfyui-skill list --json                             # 2. discover workflows
comfyui-skill info local/txt2img --json               # 3. check parameters
comfyui-skill run local/txt2img --args '{...}' --json # 4. execute

Workflow chaining (multi-step pipelines)

# Run first workflow
comfyui-skill run local/txt2img --args '{"prompt": "a cat"}' --json

# Chain output into next workflow
comfyui-skill upload --from-output <prompt_id> --json
comfyui-skill run local/upscale --args '{"image": "<uploaded_name>"}' --json

Import and validate

comfyui-skill workflow import ./workflow.json --check-deps --json
comfyui-skill deps install local/my-workflow --all --json

Contributing

Contributions are welcome! Please read the Contributing Guide in the main repository for design principles and PR workflow.

Resources

Built with Typer, the same framework as comfy-cli. Designed to be integrated as a comfy skills subcommand in the future.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

comfyui_skill_cli-0.2.10.tar.gz (43.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

comfyui_skill_cli-0.2.10-py3-none-any.whl (50.1 kB view details)

Uploaded Python 3

File details

Details for the file comfyui_skill_cli-0.2.10.tar.gz.

File metadata

  • Download URL: comfyui_skill_cli-0.2.10.tar.gz
  • Upload date:
  • Size: 43.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.27 {"installer":{"name":"uv","version":"0.9.27","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for comfyui_skill_cli-0.2.10.tar.gz
Algorithm Hash digest
SHA256 29a462ea1e798d5a69c1c10f24449d7afcef05365242155d3f9c886faa59aba4
MD5 d795017ec9334e29abb38154e00ed01e
BLAKE2b-256 1bdaa74fd0cf97fc9575b0a2ff6f3bce998eca701372cf827f89bb11f5f7ef86

See more details on using hashes here.

File details

Details for the file comfyui_skill_cli-0.2.10-py3-none-any.whl.

File metadata

  • Download URL: comfyui_skill_cli-0.2.10-py3-none-any.whl
  • Upload date:
  • Size: 50.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.27 {"installer":{"name":"uv","version":"0.9.27","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for comfyui_skill_cli-0.2.10-py3-none-any.whl
Algorithm Hash digest
SHA256 dd801bbf7ca226c86730edab7ec600e7d430a4f3ae0297fabd1521d9ba739c09
MD5 ae76bdb54ba35837031766a401b316bc
BLAKE2b-256 edfd36aa8a7e235d66756a92b24c8f908763ab572e9791405f4729143dbe5311

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page