Dify Plugin
Dify Marketplace から Busabase プラグインをインストールし、Dify のワークフロー、チャットフロー、エージェントがワークスペースを読み、Change Request として書き戻せるようにします。
Dify Marketplace の Busabase プラグインは、Dify のワークフロー、チャットフロー、エージェントに Busabase ワークスペース用の 19 個のツールを提供します。Base、レコード、ドキュメント、ファイルを読み、ワークスペースを検索し、チームのプレイブックに沿って作業し、結果を書き戻せます。プラグインはオープンソースで、ソースは github.com/busabase/dify-plugin-busabase にあります。
書き込みは Change Request
すべての書き込みにコミットメッセージ、差分、履歴が付きます。API キーに書き込み権限があればすぐにマージされ、提案だけできるキーなら Busabase の受信箱でレビューを待ちます。
1. プラグインをインストール
Dify Marketplace の Busabase を開き、Dify ワークスペースにインストールします。
2. API キーを作成
Busabase で Account → API Keys を開き、キーを作成します。権限レベルによって書き込みの結果が変わります。
| 権限レベル | Dify からの書き込み |
|---|---|
| Write data | すぐにマージされます。出力には新規または変更されたオブジェクトの id が含まれます。 |
| Change Request | Busabase の受信箱でレビューを待ちます。承認されるまで何も変わりません。 |
| Read-view-only | 読み取りはできますが、書き込みツールは失敗します。 |
有効期限やキーとスペースの関係は API キーを参照してください。
3. Dify で認証する
Tools → Busabase → Authorize を開き、次を入力します。
| 認証情報 | 値 |
|---|---|
| Base URL | Busabase Cloud は https://busabase.com。セルフホストやローカルのサーバーはその URL。 |
| API Key | 手順 2 で作成したキー。認証のないローカルサーバーの場合のみ空欄にできます。 |
| Space ID | 任意。アカウントに複数のスペースがある場合だけ必要です。 |
Dify は Base の一覧を取得して認証情報を確認します。
ローカルのオープンソースサーバーに接続する
npx busabase server は http://localhost:15419 で待ち受けます。Dify を Docker で動かしている場合、localhost はコンテナ自身を指します。サーバーを --host 0.0.0.0 で起動し、Docker Desktop(macOS、Windows)では http://host.docker.internal:15419、Linux では Docker ブリッジのゲートウェイ IP(例:http://172.17.0.1:15419)を指定します。
4. アプリにツールを追加する
アプリに必要なツールだけを、ワークフロー、チャットフロー、エージェントに追加します。各ツールは短いテキストの要約と、ワークフロー変数に使える構造化 JSON を返します。
| グループ | ツール |
|---|---|
| レコード | List Bases、List Records、Find Records by Field Value、Get Record、Create Record、Update Record |
| ノードとドキュメント | List Nodes、Search Nodes by Name、Get Node、Read Lines、Create Folder、Create Doc、Update Doc |
| スキル・ドライブ・AirApp のファイル | List Files、Read File、Write File |
| プレイブック | Search Playbooks、Get Playbook |
| 検索 | Search Workspace |
Base、フォルダー、ドキュメントなどのノードは、id、slug、正確な名前のどれでも指定できます。見つからない場合は呼び出しが失敗し、有効な候補が表示されます。
書き込み結果の読み方
書き込みツールは status を返します。
merged:変更が反映されました。出力にはrecordIdまたはnodeIdとchangeRequestIdが含まれます。in_review:Busabase でレビュー待ちです。ワークフローではこの値で分岐し、ユーザーに伝えられます。unchanged:Update Doc や Write File の内容がすでに同一だったため、何も送信されませんでした。
書き込みツールには Commit Message があります。レビュー担当者に表示され、履歴にも残ります。空欄の場合はプラグインが短いメッセージを書きます。
現在の制限
- レコードやノードの削除、アーカイブ、移動、名前変更はできません。
- 一括書き込みと Base のスキーマ変更はできません。Base とフィールドは Busabase で作成してください。
- Update Doc は本文の追記か全体の置き換え、Write File はファイル全体の置き換えです。
- Find Records by Field Value は値全体の完全一致です。部分一致には Search Workspace を使います。
- 認証は API キーのみです。
トラブルシューティング
- 認証に失敗する: Base URL が正しいか、キーの有効期限が切れていないかを確認します。
- スペースが曖昧としてリクエストが拒否される: アカウントに複数のスペースがあります。Space ID を入力してください。
- Docker 内の Dify からローカルサーバーに届かない:
localhostの代わりにhost.docker.internalかブリッジのゲートウェイ IP を使い、サーバーを--host 0.0.0.0で起動します。