- ソフト・サービス
- ComfyUI
- ComfyUIのモデルとカスタムノード
- ComfyUIのカスタムノードの仕組みと入れ方|入れる前の注意
ComfyUI
ComfyUIのカスタムノードの仕組みと入れ方|入れる前の注意
ComfyUIのカスタムノードの仕組みと入れ方|入れる前の注意
*2026年9月29日に確認した内容です。ComfyUI の公式ドキュメント「カスタムノード」「ComfyUI でのカスタムノードのインストール方法」「ComfyUI-Manager のインストール」「ComfyUI-Manager のトラブルシューティング」と、ComfyUI の公式リポジトリの
nodes.pyによります。画面は、編集部の PC(Windows 11)のポータブル版(Python ごと1つのフォルダに入った Windows 向けの ComfyUI。ComfyUI v0.37.0・フロントエンド 1.52.7・ComfyUI-Manager 4.2.2・画面の表示は日本語)で撮りました。
カスタムノードは、ComfyUI に初めから入っているノードに無い機能を足す、コミュニティの作者が作ったノードです。入れ方は、ComfyUI-Manager(カスタムノードを探して入れる道具)・Git・ZIP の3つで、どれもノードのプログラムを ComfyUI/custom_nodes のフォルダに置き、要る Python のパッケージを入れます。ほかの人が作ったプログラムを動かすことになるので、公式ドキュメントは、入れる前に作者と中身を確かめるよう注意しています。
カスタムノードは組み込みに無い機能を足すノード
ComfyUI を入れると、初めから多くのノードが入っています。公式ドキュメントでは、これらを Comfy Core のノードと呼び、ComfyUI の公式が手入れしているとしています。
カスタムノードは、ComfyUI のコミュニティのいろいろな作者が作ったノードです。公式ドキュメントでは、高度な画像の処理・機械学習のファインチューニング(学習し直して調整すること)・色の調整などの新しい機能を足す拡張としています。公開されているカスタムノードは、公式のレジストリ(公開されているカスタムノードを登録した一覧。registry.comfy.org)で探せます。
カスタムノードは、ComfyUI/custom_nodes のフォルダに、1つのカスタムノードにつき1つのフォルダで置きます。ComfyUI は起動するときにこのフォルダを読み、中のノードをノードの一覧に足します。
入れる前に確かめること
公式ドキュメントは、カスタムノードを入れる前に慎重に確かめるよう注意しています。ComfyUI はオープンソースで、悪意のあるプログラムをカスタムノードとして配ることもできるからです。公式ドキュメントが挙げている注意は、次の3つです。
- 信頼できる作者のものや、コミュニティで広く使われているカスタムノードだけを入れる
- 入れる前にカスタムノードの機能を知り、出どころの分からないものを避ける
- はっきりしないものや疑わしいものを入れない。確かめられていないものは、PC の安全が損なわれる危険につながることがある
公式ドキュメントは、入れる前に、カスタムノードの README(使い方を書いたファイル)を読み、入れ方・使い方・要るモデル・パッケージの版・よくある問題の直し方を知っておくことも勧めています。
ComfyUI-Manager には、危険のある操作を止めるセキュリティのレベルがあります。公式ドキュメントでは、レベルと、操作ごとの危険の度合いを次のように分けています。
| レベル | 止める操作 |
|---|---|
| strong | 危険が高い操作と中くらいの操作 |
| normal | 危険が高い操作 |
| normal- | 起動の引数 --listen に 127. で始まらないアドレスを付けて起動しているときだけ、危険が高い操作 |
| weak | 止めない |
| 危険の度合い | 操作 |
|---|---|
| 高い | Git の URL から入れる・pip install・既定のチャンネルに無いカスタムノードを入れる・カスタムノードを直す |
| 中くらい | 外す・更新する・既定のチャンネルのカスタムノードを入れる・スナップショット(入れているものの状態を保存したもの)を戻す・消す・再起動する |
| 低い | ComfyUI を更新する |
レベルは、ComfyUI-Manager の設定のファイル config.ini の security_level に書かれています。編集部のポータブル版では、ComfyUI\user\__manager\config.ini にあり、security_level = normal でした。公式ドキュメントによると、Git の URL から入れようとして「This action is not allowed with this security level configuration」のエラーが出るのは、このレベルで止められたときです。
ComfyUI-Managerで入れる
公式ドキュメントは、カスタムノードを ComfyUI-Manager で入れることを勧めています。入れる作業が自動で進み、要るパッケージも入り、画面で操作できるからです。ただし、レジストリに無いカスタムノードは、ComfyUI-Manager では探せません。
Comfy Desktop(ComfyUI のデスクトップアプリ)では、ComfyUI-Manager は初めから有効です。ポータブル版では、ComfyUI-Manager の使うパッケージを入れ、起動の引数(起動のコマンドの後ろに付ける指定)--enable-manager を付けて起動すると有効になります。手順は、「ComfyUI-Manager|カスタムノードの管理」の記事で解説しています。
編集部のポータブル版では、有効にしたあと、画面の上に「拡張機能の管理」のボタンが出ました。押すと「カスタムノードマネージャ」の画面が開き、上の検索の欄にカスタムノードの名前を入れると、当てはまるノードパック(1つのカスタムノードのまとまり)が並びます。

カードの「インストール」を押すと、カスタムノードが入ります。公式ドキュメントによると、入れたあとは ComfyUI を再起動します。ComfyUI-Manager の画面の使い方は、「ComfyUI-Manager|カスタムノードの管理」の記事で解説しています。
Gitで入れる
レジストリに無いカスタムノードや、決まった版が要るときは、Git(プログラムの版を管理する道具)で入れます。PC に Git が入っている必要があり、ターミナル(コマンドを打つ画面)で git --version を実行すると、入っているかを確かめられます。公式ドキュメントの手順は、次のとおりです。
- カスタムノードの GitHub のページで「Code」のボタンを押し、HTTPS のリンクをコピーする
- ターミナルで、ComfyUI の
custom_nodesのフォルダに移る。ポータブル版をD:\ComfyUI_windows_portableに置いたときは、次のとおりcd D:\ComfyUI_windows_portable\ComfyUI\custom_nodes - コピーしたリンクで
git cloneを実行するgit clone <コピーしたリンク> - 要るパッケージを入れる(次の「依存するパッケージを入れる」の見出しの手順)
- ComfyUI を再起動し、ブラウザの画面を読み込み直す。起動の記録に
import failedのエラーが出ていないかを見る
公式ドキュメントでは、Git で入れる方法の欠点を、Git の知識が要ること、パッケージを手で入れること、入れるときの危険があること、としています。
ZIPで入れる
Git も ComfyUI-Manager も使えないときは、ZIP のファイルで入れます。公式ドキュメントでは、この方法は Git の版の記録が無くなり、あとで版を変えられないため、勧めないとしています。手順は、次のとおりです。
- カスタムノードの GitHub のページで「Code」→「Download ZIP」を押す
- ダウンロードした ZIP のファイルを展開する
- 展開したフォルダを、ComfyUI の
custom_nodesのフォルダにコピーする - 要るパッケージを入れる(次の見出しの手順)
- ComfyUI を再起動し、ブラウザの画面を読み込み直す
編集部の PC には Git が入っていないため、ComfyUI-GGUF(GGUF のモデルを読むカスタムノード)は、この方法でポータブル版に入れました。展開したフォルダを ComfyUI\custom_nodes\ComfyUI-GGUF に置き、次の見出しの手順でパッケージを入れました。再起動すると、ノードの一覧に ComfyUI-GGUF のノードが出ました。
依存するパッケージを入れる
カスタムノードの多くは、動くのに要る Python のパッケージ(部品)の一覧を、フォルダの中の requirements.txt に書いています。ComfyUI-Manager で入れたときは、このパッケージも自動で入ります。Git や ZIP で入れたときは、手で入れます。
公式ドキュメントによると、ComfyUI は、ほかと分けた自分の Python の環境で動いています。ふつうのターミナルで pip install -r requirements.txt を実行すると、PC に入っている別の Python にパッケージが入ることがあります。そうなると、ComfyUI の側ではパッケージが足りないままになり、カスタムノードが動きません。そこで、ComfyUI の Python で入れます。
ポータブル版では、ComfyUI のフォルダと並ぶ python_embeded のフォルダの Python を使います。ComfyUI_windows_portable のフォルダでターミナルを開き(フォルダの中の右クリックのメニューから開ける)、次のコマンドを実行します。
python_embeded\python.exe -m pip install -r ComfyUI\custom_nodes\<カスタムノードのフォルダ名>\requirements.txt
Comfy Desktop では、アプリの中のターミナルで、次のコマンドを実行します。
pip install -r .\custom_nodes\<カスタムノードのフォルダ名>\requirements.txt
編集部は、ポータブル版で ComfyUI-GGUF の requirements.txt を入れました。入れる前と後のパッケージの一覧を比べると、増えたのは gguf と protobuf の2つでした。パッケージの版どうしがぶつかったときに起きることは、「ComfyUIの依存関係|PythonとPyTorchのパッケージ」の記事で解説しています。
止める・外す・版を変える
ComfyUI のプログラム(v0.37.0 の nodes.py)では、custom_nodes の中で、名前が .disabled で終わるフォルダを読まずに飛ばします。編集部は、ComfyUI-GGUF のフォルダの名前を ComfyUI-GGUF.disabled に変えて ComfyUI を再起動し、ComfyUI-GGUF のノードが一覧から消えることを確かめました。
公式ドキュメントでは、カスタムノードを外す方法と一時的に止める方法の項目は、2026年9月29日の時点で「更新予定」で、中身がまだ書かれていません。ComfyUI-Manager では、画面からカスタムノードを外したり止めたりできます。
Git で入れたカスタムノードは、Git で版を変えられます。公式ドキュメントの手順は、次のとおりです。
- ターミナルで、カスタムノードのフォルダに移る
cd <ComfyUI のフォルダ>/ComfyUI/custom_nodes/<カスタムノードのフォルダ名> git tagを実行して、版の一覧を出すgit checkout <版の名前>を実行して、その版に変える。決まったコミット(Git が記録した変更の1回分)に変えるときは、git checkout <コミットのハッシュ>を実行する- 版によって要るパッケージが変わることがあるので、上の「依存するパッケージを入れる」の手順でパッケージを入れ直す
ComfyUI-Manager でも版を変えられます。公式ドキュメントによると、要るパッケージの更新も ComfyUI-Manager がします。変えたあとは、ふつう ComfyUI の再起動が要ります。ZIP で入れたカスタムノードは、この方法では版を変えられません。
カスタムノードを入れたあとに ComfyUI が動かなくなったときの調べ方は、「ComfyUIがうまく動かないときの切り分け|カスタムノードを外した確認」の記事で解説しています。自分でカスタムノードを作る方法は、公式ドキュメントの「カスタムノードの開発」にあります。
会員登録(無料)
記事やテーマのお気に入り・学習履歴・フォローが使えます。
この記事について
PERSC編集部が、建築の制作に関わる知識を実務目線で整理しています。内容は公開・更新日時点の情報にもとづきます。誤りや古い情報にお気づきの場合はお問い合わせよりご連絡ください。