Repository navigation
ja plugin dev directory structure
このドキュメントでは、LangBotプラグインの標準ディレクトリ構造とファイル組織仕様を紹介し、開発者が準拠したプラグインを作成できるように支援します。
標準的なLangBotプラグインは次のディレクトリ構造に従う必要があります:
MyPlugin/
├── manifest.yaml # プラグインマニフェストファイル(必須)
├── main.py # プラグインメインエントリファイル(必須)
├── README.md # 英語プラグインドキュメント(必須)
├── readme/ # 多言語READMEディレクトリ(オプション)
│ ├── README_zh_Hans.md # 簡体字中国語ドキュメント
│ ├── README_ja_JP.md # 日本語ドキュメント
│ └── README_zh_Hant.md # 繁体字中国語ドキュメント(オプション)
├── assets/ # リソースファイルディレクトリ
│ ├── icon.svg # プラグインアイコン(推奨)
│ └── ... # その他のリソースファイル
├── components/ # コンポーネントディレクトリ
│ ├── event_listener/ # イベントリスナーコンポーネント
│ ├── commands/ # コマンドコンポーネント
│ └── tools/ # ツールコンポーネント
├── requirements.txt # Python依存関係(オプション)
└── config/ # 設定ディレクトリ(オプション)
LangBotプラグインは、異なる言語のユーザーにローカライズされたプラグイン説明を提供するために、多言語READMEドキュメントをサポートしています。
重要な仕様:
-
ルートREADME.md(必須)- 英語で記述する必要があります
- プラグインのデフォルトドキュメントとして機能します
- 要求された言語バージョンが存在しない場合のフォールバックとして使用されます
-
readme/ディレクトリ(オプション)- 非英語のREADMEドキュメントを保存するために使用
- ファイル命名形式:
README_{言語コード}.md
RFC 4646標準に従い、LangBotは現在次の言語コードをサポートしています:
| 言語 | 言語コード | ファイル名 | 配置場所 |
|---|---|---|---|
| 英語 |
enまたはen_US
|
README.md |
プラグインルートディレクトリ |
| 簡体字中国語 | zh_Hans |
README_zh_Hans.md |
readme/ディレクトリ |
| 繁体字中国語 | zh_Hant |
README_zh_Hant.md |
readme/ディレクトリ |
| 日本語 | ja_JP |
README_ja_JP.md |
readme/ディレクトリ |
| ベトナム語 | vi_VN |
README_vi_VN.md |
readme/ディレクトリ |
| タイ語 | th_TH |
README_th_TH.md |
readme/ディレクトリ |
| スペイン語 | es_ES |
README_es_ES.md |
readme/ディレクトリ |
MyPlugin/
├── README.md # ✅ 英語版(必須、ルートディレクトリ)
└── readme/ # ✅ 多言語ディレクトリ
├── README_zh_Hans.md # ✅ 簡体字中国語
├── README_ja_JP.md # ✅ 日本語
└── README_zh_Hant.md # ✅ 繁体字中国語
❌ 誤り: readme/ディレクトリに英語READMEを配置
MyPlugin/
├── readme/
│ ├── README_en.md # ❌ 誤り: 英語はreadme/に配置すべきではない
│ └── README_zh_Hans.md
❌ 誤り: ルートREADME.mdに非英語コンテンツが含まれる
# MyPlugin
This is a plugin...
これはプラグインです... # ❌ 誤り: ルートREADME.mdは英語のみを含むべきユーザーが特定の言語でREADMEを要求した場合、LangBotは次の順序で検索します:
-
readme/README_{言語コード}.mdを読み取ろうとします - 見つからない場合は、ルート
README.md(英語版)にフォールバックします
例:
- ユーザーが簡体字中国語(
zh_Hans)を要求- →
readme/README_zh_Hans.mdを検索 - → 見つからない場合は、
README.md(英語版)を返します
- →
- ユーザーが日本語(
ja_JP)を要求- →
readme/README_ja_JP.mdを検索 - → 見つからない場合は、
README.md(英語版)を返します
- →
assets/ディレクトリはプラグインの静的リソースファイルを保存するために使用されます。
推奨構造:
assets/
├── icon.svg # プラグインアイコン(SVG形式推奨)
├── example.png # 例画像
├── screenshot1.png # スクリーンショット
└── logo.png # ロゴ画像
アイコン仕様:
- プラグインアイコンとして
icon.svgを使用することを推奨 - サポートされる形式:
.svg、.png、.jpg、.jpeg、.gif - 推奨サイズ: 最低256x256ピクセル
-
manifest.yamlでの参照:icon: assets/icon.svg
READMEドキュメントで相対パスを使用してassets/ディレクトリの画像を参照できます:
# MyPlugin

注意: プラグインをLangBot Spaceにアップロードすると、リソースファイルが自動的に処理およびホストされ、ユーザーがREADMEを表示したときに画像が正しく表示されます。
プラグイン機能はコンポーネントを通じて実装され、タイプ別にcomponents/ディレクトリに整理する必要があります:
components/
├── event_listener/ # イベントリスナー
│ ├── on_message.py
│ └── on_message.yaml
├── commands/ # コマンド
│ ├── hello.py
│ └── hello.yaml
└── tools/ # ツール
├── search.py
└── search.yaml
コンポーネント開発の詳細な仕様については、コンポーネントの追加を参照してください。
プラグインマニフェストファイルmanifest.yamlはコア設定ファイルであり、プラグインメタデータ、設定項目、コンポーネントリストなどの情報が含まれます。
詳細な手順については、プラグイン設定情報の完成を参照してください。
プラグインが追加のPython依存関係を必要とする場合は、ルートディレクトリにrequirements.txtファイルを作成します:
requests>=2.28.0
beautifulsoup4>=4.11.0
pillow>=9.0.0
注意: LangBotは、プラグインのインストール時にrequirements.txtにリストされている依存関係を自動的にインストールします。
- 基本チュートリアル - 最初のプラグインを作成する方法を学ぶ
- プラグイン設定情報の完成 - manifest.yamlの設定
- コンポーネントの追加 - プラグインコンポーネントの開発
- マーケットプレイスに公開 - プラグインを配布
Automatically synchronized from langbot-app/langbot-docs.
简体中文
指南
开发者
- 插件开发
- 插件 SDK API
- 核心开发
文章
- 浏览
- 产品动态
- 在线体验
- 技术解析
- 教程与集成
- 公告
API 参考
- Service API
English
Guides
- Quick Start
- Installation
-
Configure Bots
- Bots
- Discord
- Telegram
- Slack
- Mattermost
- LINE
- Web Page Bot
- HTTP Bot
- KOOK
- Feishu
- DingTalk
- WeChat Official Account
- QQ (OneBot v11)
- Satori (QQ & Multi-Platform)
- QQ Official Bot
- WeCom (Enterprise WeChat)
- AI Configuration
- Advanced Operations
- Using Plugins
- Enterprise support
Developers
-
Plugin Development
- Plugin Development Tutorial
- Completing Plugin Configuration Information
- Plugin Directory Structure
- Component Development
- Code Style Guide
- Certified plugins and shared runtime
- Publish Plugin
- Migration Guide
- Plugin SDK API
- Core Development
Articles
- Browse
- Product Updates
- Engineering
-
Tutorials & Integrations
- LangTARS: Open-Source AI Agent for Remote PC Control — Works with Dify, n8n & 10+ Messaging Platforms
- How to Connect DeepSeek R1 to WeChat, Discord & Telegram in 5 Minutes (FREE)
- Deploy Your Own AI Bot to Discord, Telegram & WeChat in 5 Minutes
- Finally Got My Dify Agent Working in Discord, Telegram and Slack
- How I Built a Multi-Platform AI Bot with Langflow's Drag-and-Drop Workflows
- How I Built a Multi-Platform AI Chatbot with n8n and LangBot
- LangBot 4.6.0 External Knowledge Base Tutorial: Integrating Dify with LangBot for RAG-powered Conversations
- Announcements
API Reference
- Service API
Other pages
日本語
ガイド
開発者
- プラグイン開発
- プラグイン SDK API
- コア開発
記事
- 一覧
- 製品アップデート
- エンジニアリング
-
チュートリアルと連携
- LangTARS:Dify・n8n と連携するオープンソース PC 操作 Agent
- DeepSeek R1 を WeChat・Discord・Telegram に5分で接続する方法
- AI Bot を Discord・Telegram・WeChat に5分でデプロイ
- Dify Agent を Discord・Telegram・Slack で動かす
- Langflow のドラッグ&ドロップでマルチプラットフォーム AI Bot を構築
- n8n と LangBot でマルチプラットフォーム AI Chatbot を構築
- LangBot 4.6.0 外部ナレッジベース入門:Dify と連携した RAG 会話
- お知らせ
API リファレンス
- Service API