mirror of
https://github.com/langgenius/dify-docs.git
synced 2026-07-22 12:25:45 -04:00
99f3366781
Co-authored-by: Koya Masuda <71430401+koya-masuda@users.noreply.github.com>
108 lines
5.1 KiB
Plaintext
108 lines
5.1 KiB
Plaintext
---
|
|
dimensions:
|
|
type:
|
|
primary: implementation
|
|
detail: advanced
|
|
level: beginner
|
|
standard_title: Bundle
|
|
language: ja
|
|
title: Bundle プラグインパッケージ
|
|
description: 本ドキュメントでは、Bundle プラグインパッケージの概念および開発方法について解説します。Bundle プラグインパッケージは、複数のプラグインを一つに統合することができ、Marketplace
|
|
タイプ、GitHub タイプ、Package タイプの3種類をサポートしています。本ドキュメントでは、Bundle プロジェクトの作成、さまざまなタイプの依存関係の追加、および
|
|
Bundle プロジェクトのパッケージ化に至る全プロセスを詳細に説明します。
|
|
---
|
|
|
|
Bundle プラグインパッケージは、複数のプラグインの集合です。これにより、複数のプラグインを単一のプラグイン内にパッケージ化し、プラグインの一括インストールを実現するとともに、より強力なサービスを提供できます。
|
|
|
|
Dify CLI ツールを使用して、複数のプラグインを Bundle としてパッケージ化できます。Bundle プラグインパッケージには、次の3つのタイプがあります。
|
|
|
|
* `Marketplace` タイプ。プラグインの ID とバージョン情報を保存します。インポート時には Dify Marketplace を通じて具体的なプラグインパッケージがダウンロードされます。
|
|
* `GitHub` タイプ。GitHub のリポジトリURL、リリースバージョン番号、アセットファイル名を保存します。インポート時には Dify が対応する GitHub リポジトリにアクセスしてプラグインパッケージをダウンロードします。
|
|
* `Package` タイプ。プラグインパッケージは Bundle 内に直接保存されます。参照元を保存しないため、Bundle パッケージのサイズが大きくなる可能性があります。
|
|
|
|
### 事前準備
|
|
|
|
* Dify プラグインスキャフォールディングツール
|
|
* Python 環境、バージョン ≥ 3.10
|
|
|
|
プラグイン開発用のスキャフォールディングツールの準備方法については、[開発ツールの初期化](initialize-development-tools.md)を参照してください。
|
|
|
|
### Bundle プロジェクトの作成
|
|
|
|
現在のパスで、スキャフォールディングコマンドラインツールを実行して、新しいプラグインパッケージプロジェクトを作成します。
|
|
|
|
```bash
|
|
./dify-plugin-darwin-arm64 bundle init
|
|
```
|
|
|
|
このバイナリファイルを `dify` にリネームし、`/usr/local/bin` パスにコピーした場合、次のコマンドを実行して新しいプラグインプロジェクトを作成できます。
|
|
|
|
```bash
|
|
dify bundle init
|
|
```
|
|
|
|
#### 1. プラグイン情報の入力
|
|
|
|
プロンプトに従って、プラグイン名、作成者情報、プラグインの説明を設定します。チームで作業している場合は、作成者として組織名を記入することもできます。
|
|
|
|
> 名称は1~128文字で、使用できる文字は英字、数字、ハイフン、アンダースコアのみです。
|
|
|
|

|
|
|
|
情報を入力して Enter キーを押すと、Bundle プラグインプロジェクトディレクトリが自動的に作成されます。
|
|
|
|

|
|
|
|
#### 2. 依存関係の追加
|
|
|
|
* **Marketplace**
|
|
|
|
次のコマンドを実行します。
|
|
|
|
```bash
|
|
dify-plugin bundle append marketplace . --marketplace_pattern=langgenius/openai:0.0.1
|
|
```
|
|
|
|
ここで、`marketplace_pattern` は Marketplace でのプラグイン参照であり、フォーマットは `組織名/プラグイン名:バージョン番号` です。
|
|
|
|
* **GitHub**
|
|
|
|
次のコマンドを実行します。
|
|
|
|
```bash
|
|
dify-plugin bundle append github . --repo_pattern=langgenius/openai:0.0.1/openai.difypkg
|
|
```
|
|
|
|
ここで、`repo_pattern` は GitHub でのプラグイン参照であり、フォーマットは `組織名/リポジトリ名:release/アセットファイル名` です。
|
|
|
|
* **Package**
|
|
|
|
次のコマンドを実行します。
|
|
|
|
```bash
|
|
dify-plugin bundle append package . --package_path=./openai.difypkg
|
|
```
|
|
|
|
ここで、`package_path` はプラグインパッケージのパスです。
|
|
|
|
### Bundle プロジェクトのパッケージ化
|
|
|
|
次のコマンドを実行して Bundle プラグインをパッケージ化します。
|
|
|
|
```bash
|
|
dify-plugin bundle package ./bundle
|
|
```
|
|
|
|
コマンドを実行すると、現在のディレクトリに `bundle.difybndl` ファイルが自動的に作成されます。このファイルが最終的なパッケージ結果です。
|
|
|
|
{/*
|
|
Contributing Section
|
|
DO NOT edit this section!
|
|
It will be automatically generated by the script.
|
|
*/}
|
|
|
|
---
|
|
|
|
[このページを編集する](https://github.com/langgenius/dify-docs/edit/main/plugin-dev-ja/9241-bundle.mdx) | [問題を報告する](https://github.com/langgenius/dify-docs/issues/new?template=docs.yml)
|
|
|