| dimensions |
|
||||||||
|---|---|---|---|---|---|---|---|---|---|
| standard_title | Bundle | ||||||||
| language | en | ||||||||
| title | Bundleプラグインパッケージ | ||||||||
| description | このドキュメントでは、Bundleプラグインパッケージの概念と開発方法を紹介します。Bundleプラグインパッケージは複数のプラグインを集約でき、3つのタイプ(Marketplace、GitHub、Package)をサポートしています。ドキュメントでは、Bundleプロジェクトの作成、異なるタイプの依存関係の追加、Bundleプロジェクトのパッケージ化までの全プロセスを詳しく説明します。 |
Bundleプラグインパッケージは、複数のプラグインの集合体です。単一のプラグイン内に複数のプラグインをパッケージ化することで、一括インストールを可能にし、より強力なサービスを提供します。
Dify CLIツールを使用して、複数のプラグインをBundleにパッケージ化できます。Bundleプラグインパッケージには3つのタイプがあります:
Marketplaceタイプ。プラグインのIDとバージョン情報を保存します。インポート時に、特定のプラグインパッケージがDify Marketplaceからダウンロードされます。GitHubタイプ。GitHubリポジトリアドレス、リリースバージョン番号、アセットファイル名を保存します。インポート時に、Difyは対応するGitHubリポジトリにアクセスしてプラグインパッケージをダウンロードします。Packageタイプ。プラグインパッケージはBundle内に直接保存されます。参照元を保存しませんが、Bundleパッケージのサイズが大きくなる可能性があります。
- Difyプラグインスキャフォールディングツール
- Python環境(バージョン 3.12)
プラグイン開発スキャフォールディングツールの準備方法の詳細については、開発ツールの初期化を参照してください。
現在のディレクトリで、スキャフォールディングコマンドラインツールを実行して新しいプラグインパッケージプロジェクトを作成します。
./dify-plugin-darwin-arm64 bundle initバイナリファイルをdifyにリネームして/usr/local/binパスにコピーしている場合は、次のコマンドを実行して新しいプラグインプロジェクトを作成できます:
dify bundle initプロンプトに従って、プラグイン名、作成者情報、プラグインの説明を設定します。チームで共同作業している場合は、作成者として組織名を入力することもできます。
名前は1〜128文字で、文字、数字、ハイフン、アンダースコアのみを含めることができます。
情報を入力してEnterを押すと、Bundleプラグインプロジェクトディレクトリが自動的に作成されます。
- Marketplace
次のコマンドを実行します:
dify-plugin bundle append marketplace . --marketplace_pattern=langgenius/openai:0.0.1marketplace_patternはマーケットプレイス内のプラグインへの参照で、形式はorganization_name/plugin_name:version_numberです。
- GitHub
次のコマンドを実行します:
dify-plugin bundle append github . --repo_pattern=langgenius/openai:0.0.1/openai.difypkgrepo_patternはGitHub上のプラグインへの参照で、形式はorganization_name/repository_name:release/asset_nameです。
- Package
次のコマンドを実行します:
dify-plugin bundle append package . --package_path=./openai.difypkgpackage_pathはプラグインパッケージのディレクトリです。
次のコマンドを実行してBundleプラグインをパッケージ化します:
dify-plugin bundle package ./bundleコマンドを実行すると、現在のディレクトリにbundle.difybndlファイルが自動的に作成されます。このファイルが最終的なパッケージ化結果です。
{/* Contributing Section DO NOT edit this section! It will be automatically generated by the script. */}