comfyui-api
起動中のComfyUIインスタンスに接続し、ワークフローのキュー追加・実行監視・結果取得を行います。オンライン(REST API)とオフライン(JSONエクスポート)の両モードに対応しています。ComfyUIワークフローの実行やサーバーステータスの確認が必要なときに使用してください。
description の原文を見る
Connect to a running ComfyUI instance, queue workflows, monitor execution, and retrieve results. Supports both online (REST API) and offline (JSON export) modes. Use when executing ComfyUI workflows or checking server status.
SKILL.md 本文
ComfyUI API スキル
ComfyUI の REST API に接続してワークフローを実行し、進捗を監視し、出力を取得します。
設定
- デフォルト URL:
http://127.0.0.1:8188 - カスタム URL: プロジェクトマニフェストで設定するか、パラメータとして渡します
- タイムアウト: API 呼び出しは 30 秒、生成ポーリングはタイムアウトなし
2 つのモード
オンラインモード (ComfyUI 実行中)
完全な API アクセス。インタラクティブな作業に推奨されるモード。
- 接続テスト:
GET /system_stats - 機能の確認:
comfyui-inventoryスキルを使用 - ワークフローをキューに追加:
POST /prompt - 結果をポーリング: 5 秒ごとに
GET /history/{prompt_id} - 出力を取得:
GET /view?filename=...
オフラインモード (サーバーなし)
ComfyUI に手動で読み込むためのワークフロー JSON をエクスポート。
- ComfyUI 形式に従ってワークフロー JSON を生成
projects/{project}/workflows/{name}.jsonに保存- ユーザーに ComfyUI にドラッグ&ドロップするよう指示
API 操作
サーバーステータスを確認
curl http://127.0.0.1:8188/system_stats
レスポンスフィールド:
system.os: オペレーティングシステムsystem.comfyui_version: バージョン文字列devices[0].name: GPU 名devices[0].vram_total: 合計 VRAM バイト数devices[0].vram_free: 空き VRAM バイト数
ワークフローをキューに追加
curl -X POST http://127.0.0.1:8188/prompt \
-H "Content-Type: application/json" \
-d '{"prompt": WORKFLOW_JSON, "client_id": "video-agent"}'
WORKFLOW_JSON 形式:
{
"1": {
"class_type": "LoadCheckpoint",
"inputs": {
"ckpt_name": "flux1-dev.safetensors"
}
},
"2": {
"class_type": "CLIPTextEncode",
"inputs": {
"text": "photorealistic portrait...",
"clip": ["1", 1]
}
}
}
各ノードは文字列 ID でキー化されます。入力は他のノードを ["{node_id}", {output_index}] として参照します。
レスポンス:
{"prompt_id": "abc-123-def", "number": 1}
完了をポーリング
curl http://127.0.0.1:8188/history/abc-123-def
未完了: {} (空のオブジェクト) を返す
完了: 出力を含む実行データを返す:
{
"abc-123-def": {
"outputs": {
"9": {
"images": [{"filename": "ComfyUI_00001.png", "subfolder": "", "type": "output"}]
}
},
"status": {"completed": true}
}
}
出力画像を取得
curl "http://127.0.0.1:8188/view?filename=ComfyUI_00001.png&subfolder=&type=output" -o output.png
参照画像をアップロード
curl -X POST http://127.0.0.1:8188/upload/image \
-F "image=@reference.png" \
-F "subfolder=input" \
-F "type=input"
現在の生成をキャンセル
curl -X POST http://127.0.0.1:8188/interrupt
VRAM を解放
curl -X POST http://127.0.0.1:8188/free \
-H "Content-Type: application/json" \
-d '{"unload_models": true}'
ポーリング戦略
ComfyUI は CLI コンテキストで WebSocket をサポートしていません。REST ポーリングを使用してください:
POST /promptでワークフローをキューに追加 →prompt_idを取得- 5 秒ごとに
GET /history/{prompt_id}をポーリング - 空のレスポンス時: 生成が進行中、ポーリングを継続
- 入力されたレスポンス時:
status.completedを確認 completed: trueの場合、出力を抽出- ステータスにエラーがある場合、
comfyui-troubleshooterにルーティング
タイムアウト: 10 分間のポーリング後にユーザーに警告。ビデオ生成 (Wan 14B) は 15~30 分かかる可能性があります。
ワークフロー検証
ワークフローをキューに追加する前に:
state/inventory.jsonを読む (comfyui-inventory経由)- ワークフロー内の各ノード: インストール済みノードに
class_typeが存在することを確認 - 各モデル参照: インストール済みモデルにファイルが存在することを確認
- 不足している項目にフラグを付ける:
- ノード:
ComfyUI-Managerインストールコマンドを提案 - モデル:
references/models.mdからダウンロードリンクを提供 - バージョン不一致: アップデートを提案
- ノード:
エラーハンドリング
| エラー | 原因 | アクション |
|---|---|---|
| 接続が拒否された | ComfyUI が実行されていない | オフラインモードに切り替え、JSON を保存 |
| 400 Bad Request | ワークフロー JSON が無効 | ノード接続を検証 |
| 500 Internal Error | ComfyUI がクラッシュ | 再起動を提案、ログを確認 |
| タイムアウト (応答なし) | サーバーが過負荷 | 待機して 1 回再試行 |
リファレンス
完全な API ドキュメント: foundation/api-quick-ref.md
ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ
詳細情報
- 作者
- mckruz
- ライセンス
- MIT
- 最終更新
- 不明
Source: https://github.com/mckruz/comfyui-expert / ライセンス: MIT
関連スキル
doubt-driven-development
重要な判断はすべて、本番環境への展開前に新しい視点から対抗的レビューを実施します。速度より正確性が重要な場合、不慣れなコードを扱う場合、本番環境・セキュリティに関わるロジック・取り消し不可の操作など影響度が高い場合、または後でバグを修正するよりも今検証する方が効率的な場合に活用してください。
apprun-skills
TypeScriptを使用したAppRunアプリケーションのMVU設計に関する総合的なガイダンスが得られます。コンポーネントパターン、イベントハンドリング、状態管理(非同期ジェネレータを含む)、パラメータと保護機能を備えたルーティング・ナビゲーション、vistestを使用したテストに対応しています。AppRunコンポーネントの設計・レビュー、ルートの配線、状態フローの管理、AppRunテストの作成時に活用してください。
desloppify
コードベースのヘルスチェックと技術負債の追跡ツールです。コード品質、技術負債、デッドコード、大規模ファイル、ゴッドクラス、重複関数、コードスメル、命名規則の問題、インポートサイクル、結合度の問題についてユーザーが質問した場合に使用してください。また、ヘルススコアの確認、次の改善項目の提案、クリーンアップ計画の作成をリクエストされた際にも対応します。29言語に対応しています。
debugging-and-error-recovery
テストが失敗したり、ビルドが壊れたり、動作が期待と異なったり、予期しないエラーが発生したりした場合に、体系的な根本原因デバッグをガイドします。推測ではなく、根本原因を見つけて修正するための体系的なアプローチが必要な場合に使用してください。
test-driven-development
テスト駆動開発により実装を進めます。ロジックの実装、バグの修正、動作の変更など、あらゆる場面で活用できます。コードが正常に動作することを証明する必要がある場合、バグ報告を受けた場合、既存機能を修正する予定がある場合に使用してください。
incremental-implementation
変更を段階的に実施します。複数のファイルに影響する機能や変更を実装する場合に使用してください。大量のコードを一度に書こうとしている場合や、タスクが一度では完結できないほど大きい場合に活用します。