mirror of
https://github.com/langbot-app/LangBot.git
synced 2026-10-30 12:25:29 +08:00
refactor: migration to mintlify
* 重构文档结构:移除 docs 目录,调整文件组织结构 * Reorder "插件 SDK API" section in docs.json * Refactor and clarify various documentation sections * Refine warnings and info boxes across multiple docs * Refactor and simplify Japanese documentation content * Update package.json to include mintlify as a dependency and add pnpm-lock.yaml for dependency management * Update blog link and add description in docs.json --------- Co-authored-by: Junyan Chin <[email protected]>
This commit is contained in:
@@ -1,3 +0,0 @@
|
||||
# コンポーネントアーキテクチャ
|
||||
|
||||

|
||||
@@ -1,71 +0,0 @@
|
||||
# 開発設定
|
||||
|
||||
LangBotはフロントエンドとバックエンドに分かれています。フロントエンドはNext.js + shadcnを使用して開発され、バックエンドはQuart(Flaskの非同期版)を使用して開発されています。
|
||||
|
||||
## バックエンド
|
||||
|
||||
コードは`pkg`ディレクトリにあり、ルートディレクトリの`main.py`ファイルによって起動されます。
|
||||
|
||||
依存関係をインストールします。依存関係の管理にはuvを使用します。
|
||||
|
||||
```bash
|
||||
pip install uv
|
||||
uv sync --dev
|
||||
```
|
||||
|
||||
バックエンドを起動します
|
||||
|
||||
```bash
|
||||
uv run main.py
|
||||
```
|
||||
|
||||
この時点で、設定ファイルは`data/config.yaml`ファイルに自動的に生成されます。
|
||||
|
||||
## フロントエンド
|
||||
|
||||
コードは`web`ディレクトリにあり、Node.jsと[pnpm](https://pnpm.io/installation)が必要です。
|
||||
|
||||
`.env.example`を`.env`にコピーして、値を入力します。
|
||||
|
||||
- Linuxおよびその他の環境での使用
|
||||
|
||||
```bash
|
||||
cp .env.example .env
|
||||
```
|
||||
|
||||
- Windows環境での使用
|
||||
|
||||
```bash
|
||||
copy .env.example .env
|
||||
```
|
||||
|
||||
依存関係をインストールしてフロントエンドを起動します
|
||||
|
||||
```bash
|
||||
pnpm install
|
||||
pnpm dev
|
||||
|
||||
# pnpmがインストールされていない場合は、npmを使用して依存関係を解決して起動することもできます
|
||||
npm install
|
||||
npm run dev
|
||||
```
|
||||
|
||||
その後、出力情報に従って、`http://127.0.0.1:3000`にアクセスして、スタンドアロンフロントエンドページを表示します。
|
||||
|
||||
:::info
|
||||
`pnpm dev`を使用してローカルで起動すると、環境変数`NEXT_PUBLIC_API_BASE_URL`がフロントエンドによって自動的に使用され、フロントエンドがローカルで実行中のバックエンドの`5300`ポートにアクセスできるようになります。
|
||||
|
||||
本番環境では、フロントエンドは静的ファイルにプリコンパイルされ、バックエンドによって提供され、フロントエンドは同じドメインのバックエンドアドレスに自動的にアクセスします。
|
||||
:::
|
||||
|
||||
## コードフォーマット
|
||||
|
||||
リポジトリにはlintとformatのチェックワークフローが含まれており、コードをプッシュすると自動的にチェックされます。pre-commitを設定して、コードをローカルで事前にチェックしてください。
|
||||
|
||||
```bash
|
||||
uv run pre-commit install
|
||||
```
|
||||
|
||||
## APIドキュメント
|
||||
|
||||
各インターフェースを開発する前に、APIFoxでAPIドキュメントを作成します。[APIドキュメント(中国語)](https://ok52vhsenr.apifox.cn/)を参照してください。
|
||||
@@ -1,72 +0,0 @@
|
||||
# プラグインランタイム、CLI、SDKのデバッグ
|
||||
|
||||
::: info
|
||||
まず[プラグインチュートリアル](/en/plugin/plugin-intro)を読んで、プラグインシステムを理解してください。
|
||||
|
||||
- プラグインランタイム、CLI、SDKはこちらでオープンソース化されています: https://github.com/langbot-app/langbot-plugin-sdk
|
||||
:::
|
||||
|
||||
プラグインランタイムのソースコードをクローンします:
|
||||
|
||||
```bash
|
||||
git clone https://github.com/langbot-app/langbot-plugin-sdk
|
||||
```
|
||||
|
||||
プラグインランタイムディレクトリに移動し、依存関係をインストールします:
|
||||
|
||||
```bash
|
||||
cd langbot-plugin-sdk
|
||||
uv sync --dev
|
||||
```
|
||||
|
||||
この時点で、uvは自動的に仮想環境(.venv)を作成します。エディターがこの仮想環境を使用するかどうかを尋ねる場合は、`Yes`を選択してください。
|
||||
|
||||
または、この仮想環境を手動でアクティブ化できます:
|
||||
|
||||
```bash
|
||||
source .venv/bin/activate
|
||||
```
|
||||
|
||||
## プラグインランタイムの起動
|
||||
|
||||
```bash
|
||||
lbp rt
|
||||
```
|
||||
|
||||
`lbp`コマンドがこのディレクトリの仮想環境の`lbp`実行可能ファイルであることを確認するか、`python -m langbot_plugin.cli.__init__ rt`で起動してください。
|
||||
|
||||
プラグインランタイムは以下のパラメーターを受け入れます:
|
||||
|
||||
- `--debug-only`: `data/plugins`ディレクトリのプラグインを起動せず、デバッグ接続を通じたプラグインの読み込みのみを許可します。
|
||||
- `--ws-debug-port`: リッスンするデバッグポート、デフォルトは`5401`です。
|
||||
- `--ws-control-port`: リッスンする制御ポート(LangBotメインプログラム接続用)、デフォルトは`5400`です。
|
||||
- `-s`: `stdio`を使用して制御接続を受け入れます。**本番環境でのみ使用してください**。
|
||||
- `--skip-deps-check`: すべてのプラグイン依存関係がインストールされていることを確認するため、ランタイムは起動時に毎回すべてのインストール済みプラグインの依存関係をチェックしてインストールします。このパラメーターを使用してこのチェックを無効にします。
|
||||
|
||||
### LangBotをこのランタイムに接続する
|
||||
|
||||
LangBotの`data/config.yaml`で`plugin.runtime_ws_url`を`ws://localhost:5400/control/ws`に設定します。
|
||||
|
||||
```yaml
|
||||
plugin:
|
||||
runtime_ws_url: ws://localhost:5400/control/ws
|
||||
```
|
||||
|
||||
そして、LangBotメインプログラムの起動時に起動パラメーター`--standalone-runtime`を追加します(例: `uv run main.py --standalone-runtime`)。
|
||||
LangBotを再起動すると、WebSocketを使用してこのランタイムに接続されます。
|
||||
|
||||
## langbot-plugin-sdkアーキテクチャ
|
||||
|
||||
このコードベースには以下が含まれています:
|
||||
|
||||
- `langbot_plugin.api`: プラグイン関連のエンティティとAPI定義。
|
||||
- `langbot_plugin.assets`: プラグインテンプレート。
|
||||
- `langbot_plugin.cli`: プラグイン開発CLIツール。
|
||||
- `langbot_plugin.entities`: APIで定義されていないプラグインシステム関連のエンティティ。
|
||||
- `langbot_plugin.runtime`: プラグインランタイムと基礎通信(stdioおよびwebsocket)の実装。
|
||||
|
||||
## `lbp` CLIツール
|
||||
|
||||
CLIツールは、ランタイムの起動、プラグインの初期化、プラグインコンポーネント管理、Marketplaceとのインタラクションなどの機能を提供します。
|
||||
|
||||
詳細なプログラムエントリポイントについては、[`langbot_plugin.cli.__init__`](https://github.com/langbot-app/langbot-plugin-sdk/blob/main/src/langbot_plugin/cli/__init__.py)を参照してください。
|
||||
Reference in New Issue
Block a user