> ## Documentation Index
> Fetch the complete documentation index at: https://dripart-docs-recommend-assets-api.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# ライフサイクル

## Comfy によるカスタムノードの読み込み方法

Comfy 起動時、`custom_nodes` ディレクトリ内の Python モジュールをスキャンし、読み込みを試みます。
モジュールが `NODE_CLASS_MAPPINGS` をエクスポートしている場合、カスタムノードとして扱われます。
<Tip>Python モジュールとは、`__init__.py` ファイルを含むディレクトリのことです。
モジュールは、`__init__.py` で定義された `__all__` 属性にリストされた内容をエクスポートします。</Tip>

### **init**.py

`__init__.py` は、Comfy がモジュールのインポートを試みるときに実行されます。カスタムノード定義を含むモジュールとして認識されるためには、`NODE_CLASS_MAPPINGS` をエクスポートする必要があります。エクスポートされており（かつインポート中にエラーが発生しなければ）、モジュール内で定義されたノードが Comfy で利用可能になります。コードにエラーがある場合、Comfy は続行しますが、そのモジュールの読み込み失敗を報告します。そのため、Python コンソールを確認してください！

非常にシンプルな `__init__.py` ファイルは以下のようになります：

```python theme={null}
from .python_file import MyCustomNode
NODE_CLASS_MAPPINGS = { "My Custom Node" : MyCustomNode }
__all__ = ["NODE_CLASS_MAPPINGS"]
```

#### NODE\_CLASS\_MAPPINGS

`NODE_CLASS_MAPPINGS` は、カスタムノード名（Comfy インストール全体で一意である必要があります）を対応するノードクラスにマップする `dict` でなければなりません。

#### NODE\_DISPLAY\_NAME\_MAPPINGS

`__init__.py` は `NODE_DISPLAY_NAME_MAPPINGS` をエクスポートすることもできます。これは、同じ一意の名前をノードの表示名にマップします。
`NODE_DISPLAY_NAME_MAPPINGS` が提供されていない場合、Comfy は一意の名前を表示名として使用します。

#### WEB\_DIRECTORY

クライアント側コードをデプロイする場合は、JavaScript ファイルが見つかるパス（モジュールからの相対パス）もエクスポートする必要があります。これらをカスタムノード内の `js` という名前のサブディレクトリに配置するのが一般的です。
<Tip>*`.js` ファイルのみ* が提供されます；`.css` や他のタイプをこの方法でデプロイすることはできません</Tip>

<Warning>Comfy の以前のバージョンでは、`__init__.py` が JavaScript ファイルを Comfy メインの web
サブディレクトリにコピーする必要がありました。これを行うコード仍未見かけることがあります。行わないでください。</Warning>
