--- 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)