Skip to content

feat: add ComfyUI plugin#844

Open
williamxie1989 wants to merge 2 commits intojackwener:mainfrom
williamxie1989:feat/comfyui-plugin
Open

feat: add ComfyUI plugin#844
williamxie1989 wants to merge 2 commits intojackwener:mainfrom
williamxie1989:feat/comfyui-plugin

Conversation

@williamxie1989
Copy link
Copy Markdown
Contributor

Summary

Add comfyui/ plugin to manage ComfyUI servers from the CLI.

Commands

Command Description
comfyui nodes List all registered node types (700+)
comfyui node-info <name> Detailed definition of a node (inputs, types, defaults, constraints)
comfyui search-node <query> Search nodes by keyword
comfyui models [--model_type <type>] List available model files
comfyui system-stats Server status and system information
`comfyui run <json file>`
comfyui queue Queue status (running / pending)
comfyui history [--limit N] Execution history

ComfyUI API Endpoints Used

Endpoint Purpose
/api/object_info List all node definitions
/api/models List model directories
/api/models/<type> List models of a type
/api/system_stats Server information
/prompt Queue a workflow for execution
/api/queue Queue status
/api/history Execution history

Configuration

Configurable via COMFYUI_HOST environment variable (default: http://127.0.0.1:8188).

export COMFYUI_HOST=http://192.168.1.100:8008

Test plan

  • All 8 commands tested against a live ComfyUI server (macOS, Apple Silicon)
  • comfyui nodes --limit 5 lists node types correctly
  • comfyui node-info KSampler shows input definitions with types and defaults
  • comfyui node-info NonExistentNode returns helpful error with similar suggestions
  • comfyui search-node sampler finds matching nodes by name and field
  • comfyui models shows summary per type; --model_type loras lists specific models
  • comfyui system-stats returns ComfyUI version, OS, device, RAM
  • comfyui queue shows empty queue / running / pending states
  • comfyui history --limit 3 shows recent execution history
  • comfyui history --prompt_id <id> shows specific entry details
  • comfyui run <json> submits workflow, reports errors cleanly
  • Error handling: invalid node, non-existent prompt_id, no-match search
  • COMFYUI_HOST env var correctly configures server address

williamxie1989 and others added 2 commits April 7, 2026 11:22
…execution

Add a complete plugin for interacting with ComfyUI servers:
- nodes: list all registered node types
- node-info: detailed definition of a node (inputs, types, defaults)
- search-node: search nodes by keyword
- models: list available model files
- system-stats: server status and system information
- run: execute workflows via JSON prompt
- queue: view running/pending queue status
- history: view execution history

Configurable via COMFYUI_HOST environment variable.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Add browser adapter doc for ComfyUI with commands table, usage examples,
and configuration instructions. Register in VitePress sidebar.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Copy link
Copy Markdown
Contributor

@Astro-Han Astro-Han left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don’t think this is ready to merge yet. There are two integration problems that look blocking, plus one docs gap.

  1. The new clis/comfyui/*.js files import ../../registry.js and ../../errors.js. That doesn’t match how adapters are wired in this repo. Existing adapters import from @jackwener/opencli/registry and @jackwener/opencli/errors, and I don’t see a root-level registry.js for these new files to resolve against.

  2. The adapter is added as source .js files under clis/, but this repo’s build only compiles clis/**/*.ts. That means these ComfyUI handlers may behave differently in local dev versus the packaged build, and may be missing from dist/clis/ entirely.

  3. For a new adapter, this repo asks for the adapter doc, adapter index, VitePress sidebar, README.md, and README.zh-CN.md in the same PR. This diff adds the adapter page and sidebar entry, but not the index or READMEs.

From my side, the feature itself makes sense and the scope is focused. I’d fix the import path and packaging issue first, then bring the docs updates in line with the repo’s adapter checklist.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants