メインコンテンツへスキップ

基本基準

1. コミュニティへの価値

カスタムノードは、ComfyUI コミュニティにとって価値のある機能を提供しなければなりません 避けるべきこと:
  • 過度な自己宣伝
  • 成りすましや誤解を招く行為
  • 悪意のある行為
  • 自己宣伝は、指定された設定メニューセクション内でのみ許可されます
  • 上部およびサイドメニューには、有用な機能のみを含める必要があります

2. ノードの互換性

他のカスタムノードの操作(インストール、更新、削除)を妨害しないでください
  • 他のカスタムノードへの依存関係について:
    • 依存機能を使用する際に明確な警告を表示する
    • 必要なノードを示すサンプルワークフローを提供する

3. 法令遵守

すべての適用される法律および規制を遵守しなければなりません

5. 品質要件

ノードは完全に機能し、文書化されており、積極的にメンテナンスされている必要があります。

6. フォークのガイドライン

フォークされたノードは以下を満たす必要があります:
  • 元のノードとは明確に異なる名前を持つ
  • 機能またはコードにおいて顕著な違いを提供する
以下は、カスタムノードをレジストリに公開するために満たす必要がある基準です。

セキュリティ基準

カスタムノードは安全である必要があります。これらの基準に違反するカスタムノードについては、書き換えのために対処を開始します。コアによって公開されるべき主要な機能がある場合は、rfcs repo でリクエストしてください。

eval/exec 呼び出し

方針

セキュリティ上の懸念のため、カスタムノードでの eval および exec 関数の使用は禁止されています。

理由

これらの関数は任意のコード実行を可能にし、ユーザー入力を処理する際に潜在的なリモートコード実行(RCE)脆弱性を作成する可能性があります。ユーザー入力を eval または exec に渡すノードを含むワークフローは、以下のようないくつかのサイバー攻撃に悪用される可能性があります:
  • キーロギング
  • ランサムウェア
  • その他の悪意のあるコード実行

pip install のための subprocess

方針

subprocess 呼び出しを通じたランタイムパッケージのインストールは許可されていません。

理由

  • ComfyUI Manager は ComfyUI に同梱され、ユーザーが依存関係をインストールできるようにします
  • 集中化された依存関係管理は、セキュリティとユーザーエクスペリエンスを向上させます
  • 潜在的なサプライチェーン攻撃を防ぐのに役立ちます
  • ComfyUI の複数の再読み込みの必要性を排除します

コード難読化

方針

カスタムノードでのコード難読化は禁止されています。

理由

難読化されたコード:
  • 審査不可能であり、悪意がある可能性が高い