仕様
pyproject.toml ファイルには、ComfyUI カスタムノード用の 2 つの主要セクション [project] と [tool.comfy] が含まれています。以下に各セクションの仕様を示します。
[project] セクション
name(必須)
ノード ID はカスタムノードを一意に識別し、レジストリからの URL で使用されます。ユーザーはこの名前を参照してノードをインストールできます:- 100 文字未満であること
- 英数字、ハイフン、アンダースコア、ピリオドのみ含めることができる
- 連続した特殊文字を含めることはできない
- 数字または特殊文字で始まることはできない
- 大文字小文字を区別しない比較
- 短く説明的な名前を使用する
- 名前に「ComfyUI」を含めない
- 記憶しやすく入力しやすい名前にする
version(必須)
セマンティックバージョニング を使用し、3 桁のバージョン番号 X.Y.Z を採用します:- X(MAJOR): 破壊的変更
- Y(MINOR): 新機能(後方互換性あり)
- Z(PATCH): バグ修正
license(オプション)
カスタムノードのライセンスを指定します。2 つの方法で指定できます:- ファイル参照:
- ライセンス名:
description(推奨)
カスタムノードの機能に関する簡単な説明。repository(必須)
関連リソースへのリンク:urls(推奨)
関連リソースへのリンク:requires-python(推奨)
ノードがサポートする Python バージョンを指定します:フロントエンドバージョン互換性(オプション)
ノードがサポートする ComfyUI フロントエンドバージョンに特定の要件がある場合、comfyui-frontend-package 依存関係を使用してこれを指定できます。このパッケージは PyPI で公開されています。
以下の場合にこのフィールドを使用します:
- カスタムノードが特定のバージョンで導入されたフロントエンド API を使用している
- ノードと特定のフロントエンドバージョン間の非互換性を特定した
- ノードが新しいフロントエンドバージョンでのみ利用可能な特定の UI 機能を必要としている
classifiers(推奨)
分類子を使用して、オペレーティングシステムの互換性と GPU アクセラレータを指定します。この情報は、ユーザーがシステムに適したノードを見つけるのに役立ちます。[tool.comfy] セクション
PublisherId(必須)
一意の発行元識別子。通常、GitHub ユーザー名と一致します。 例:DisplayName(オプション)
カスタムノードのユーザーフレンドリーな名前。Icon(オプション)
ComfyUI レジストリと ComfyUI-Manager に表示されるカスタムノードのアイコンへの URL。 要件:- ファイル形式:SVG、PNG、JPG、または GIF
- 最大解像度:400px × 400px
- アスペクト比は正方形であること
Banner(オプション)
ComfyUI レジストリと ComfyUI-Manager に表示される大きなバナー画像への URL。 要件:- ファイル形式:SVG、PNG、JPG、または GIF
- アスペクト比:21:9
requires-comfyui(オプション)
ノードが互換性のある ComfyUI バージョンを指定します。これにより、ユーザーが正しいバージョンの ComfyUI をインストールしていることを確認するのに役立ちます。 サポートされる演算子:<、>、<=、>=、~=、<>、!= および範囲