mirror of
https://github.com/langgenius/dify-docs.git
synced 2026-03-27 13:28:32 +07:00
159 lines
5.3 KiB
Plaintext
159 lines
5.3 KiB
Plaintext
---
|
||
dimensions:
|
||
type:
|
||
primary: conceptual
|
||
detail: architecture
|
||
level: beginner
|
||
standard_title: Cheatsheet
|
||
language: ja
|
||
title: Difyプラグイン開発チートシート
|
||
description: 環境要件、インストール方法、開発フロー、プラグインの分類と種類、よく使われるコードスニペット、よくある問題の解決策など、Difyプラグイン開発に関する包括的なリファレンスガイドです。開発者が素早く参照するのに適しています。
|
||
---
|
||
|
||
### 環境要件
|
||
|
||
- Python バージョン ≥ 3.12
|
||
- Dify プラグインスケルトンツール (dify-plugin-daemon)
|
||
|
||
> 詳細はこちら:[開発ツールの初期化](/plugin-dev-ja/0221-initialize-development-tools)
|
||
|
||
### Dify Plugin 開発パッケージの入手
|
||
|
||
[Dify Plugin CLI](https://github.com/langgenius/dify-plugin-daemon/releases)
|
||
|
||
#### プラットフォーム別のインストール方法
|
||
|
||
**macOS [Brew](https://github.com/langgenius/homebrew-dify)(グローバルインストール):**
|
||
|
||
```bash
|
||
brew tap langgenius/dify
|
||
brew install dify
|
||
```
|
||
|
||
インストール完了後、任意のターミナルウィンドウを新規作成し、`dify version` コマンドを実行します。バージョン情報が出力されれば、インストールは成功です。
|
||
|
||
**macOS ARM (Mシリーズチップ):**
|
||
|
||
```bash
|
||
# dify-plugin-darwin-arm64 をダウンロード
|
||
chmod +x dify-plugin-darwin-arm64
|
||
./dify-plugin-darwin-arm64 version
|
||
```
|
||
|
||
**macOS Intel:**
|
||
|
||
```bash
|
||
# dify-plugin-darwin-amd64 をダウンロード
|
||
chmod +x dify-plugin-darwin-amd64
|
||
./dify-plugin-darwin-amd64 version
|
||
```
|
||
|
||
**Linux:**
|
||
|
||
```bash
|
||
# dify-plugin-linux-amd64 をダウンロード
|
||
chmod +x dify-plugin-linux-amd64
|
||
./dify-plugin-linux-amd64 version
|
||
```
|
||
|
||
**グローバルインストール (推奨):**
|
||
|
||
```bash
|
||
# 名前を変更してシステムパスに移動
|
||
# 例 (macOS ARM)
|
||
mv dify-plugin-darwin-arm64 dify
|
||
sudo mv dify /usr/local/bin/
|
||
dify version
|
||
```
|
||
|
||
### 開発パッケージの実行
|
||
|
||
ここでは `dify` を例とします。ローカルインストール方式を使用している場合は、状況に応じてコマンドを置き換えてください。例:`./dify-plugin-darwin-arm64 plugin init`。
|
||
|
||
### プラグイン開発フロー
|
||
|
||
#### 1. 新規プラグイン作成
|
||
|
||
```bash
|
||
./dify plugin init
|
||
```
|
||
|
||
プロンプトに従ってプラグインの基本情報を設定します
|
||
|
||
> 詳細はこちら:[Dify プラグイン開発:Hello World ガイド](/plugin-dev-ja/0211-getting-started-dify-tool)
|
||
|
||
#### 2. 開発モードでの実行
|
||
|
||
`.env` ファイルを設定し、プラグインディレクトリで以下のコマンドを実行します:
|
||
|
||
```bash
|
||
python -m main
|
||
```
|
||
|
||
> 詳細はこちら:[プラグインのリモートデバッグ](/plugin-dev-ja/0411-remote-debug-a-plugin)
|
||
|
||
#### 4. パッケージ化とデプロイ
|
||
|
||
プラグインのパッケージ化:
|
||
|
||
```bash
|
||
cd ..
|
||
dify plugin package ./yourapp
|
||
```
|
||
|
||
> 詳細はこちら:[リリース概要](/plugin-dev-ja/0321-release-overview)
|
||
|
||
### プラグインの分類
|
||
|
||
#### ツールラベル
|
||
|
||
分類 `tag` [class ToolLabelEnum(Enum)](https://github.com/langgenius/dify-plugin-sdks/blob/main/python/dify_plugin/entities/tool.py)
|
||
|
||
```python
|
||
class ToolLabelEnum(Enum):
|
||
SEARCH = "search"
|
||
IMAGE = "image"
|
||
VIDEOS = "videos"
|
||
WEATHER = "weather"
|
||
FINANCE = "finance"
|
||
DESIGN = "design"
|
||
TRAVEL = "travel"
|
||
SOCIAL = "social"
|
||
NEWS = "news"
|
||
MEDICAL = "medical"
|
||
PRODUCTIVITY = "productivity"
|
||
EDUCATION = "education"
|
||
BUSINESS = "business"
|
||
ENTERTAINMENT = "entertainment"
|
||
UTILITIES = "utilities"
|
||
OTHER = "other"
|
||
```
|
||
|
||
### プラグインタイプの参照
|
||
|
||
Dify は複数のタイプのプラグイン開発をサポートしています:
|
||
|
||
- **ツールプラグイン**: サードパーティ API およびサービスを統合
|
||
> 詳細はこちら:[ツールプラグイン開発](/plugin-dev-ja/0211-getting-started-dify-tool)
|
||
- **モデルプラグイン**: AI モデルを統合
|
||
> 詳細はこちら:[モデルプラグイン紹介](/plugin-dev-ja/0131-model-plugin-introduction.ja)、[新しいモデルの迅速な統合](/plugin-dev-ja/0211-getting-started-new-model)
|
||
- **Agent 戦略プラグイン**: Agent の思考および意思決定戦略をカスタマイズ
|
||
> 詳細はこちら:[Agent 戦略プラグイン](/plugin-dev-ja/9433-agent-strategy-plugin)
|
||
- **拡張プラグイン**: Dify プラットフォーム機能を拡張(例:Endpoint および WebAPP)
|
||
> 詳細はこちら:[拡張プラグイン](/plugin-dev-ja/9231-extension-plugin)
|
||
- **データソースプラグイン**:ナレッジパイプラインにおいて、ドキュメントデータのソースとして機能し、パイプライン全体の起点となる
|
||
> 詳細はこちら:[データソースプラグイン](/plugin-dev-ja/0222-datasource-plugin)
|
||
- **トリガープラグイン**:外部イベント発生時にWorkflowを自動実行
|
||
> 詳細はこちら:[トリガープラグイン](/plugin-dev-ja/0222-trigger-plugin)
|
||
|
||
{/*
|
||
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/0131-cheatsheet.mdx) | [問題を報告する](https://github.com/langgenius/dify-docs/issues/new?template=docs.yml)
|
||
|