Dify Plugin
从 Dify 插件市场安装 Busabase 插件,让 Dify 的工作流、Chatflow 和 Agent 读取工作区,并以 Change Request 的形式写回结果。
Dify 插件市场上的 Busabase 插件为 Dify 的工作流、Chatflow 和 Agent 提供 19 个工具:读取数据表、记录、文档和文件,搜索工作区,按团队的 Playbook 办事,并把结果写回。插件开源,源码在 github.com/busabase/dify-plugin-busabase。
写入都是 Change Request
每次写入都带提交说明、差异和历史。API 密钥有写权限就直接合并;密钥只能提议变更时,会在 Busabase 收件箱里等待审核。
1. 安装插件
打开 Dify 插件市场里的 Busabase,安装到你的 Dify 工作区。
2. 创建 API 密钥
在 Busabase 打开 Account → API Keys 创建密钥。权限级别决定了写入的结果:
| 权限级别 | Dify 的写入会怎样 |
|---|---|
| Write data | 直接合并,输出里带新对象或被修改对象的 id。 |
| Change Request | 在 Busabase 收件箱等待审核,有人批准之前不会改动任何内容。 |
| Read-view-only | 可以读取,写入工具会失败。 |
过期时间以及密钥与空间的关系,见 API 密钥。
3. 在 Dify 中授权
打开 工具 → Busabase → 授权,填写:
| 凭据 | 值 |
|---|---|
| Base URL | Busabase Cloud 填 https://busabase.com;自托管或本地服务器填它的地址。 |
| API Key | 第 2 步创建的密钥。只有未开启鉴权的本地服务器才可以留空。 |
| Space ID | 可选。只有账号下有多个空间时才需要。 |
Dify 会通过列出你的数据表来校验凭据。
连接本地开源服务器
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. 把工具加到应用里
只把应用需要的工具加到工作流、Chatflow 或 Agent 中。每个工具都会返回一段简短文字和结构化 JSON,方便放进工作流变量。
| 分组 | 工具 |
|---|---|
| 记录 | 列出数据表、列出记录、按字段值查找记录、获取记录、新建记录、更新记录 |
| 节点与文档 | 列出节点、按名称搜索节点、获取节点、按行读取、新建文件夹、新建文档、更新文档 |
| 技能、云盘和 AirApp 里的文件 | 列出文件、读取文件、写入文件 |
| Playbook | 搜索工作手册、打开工作手册 |
| 搜索 | 搜索工作区 |
数据表、文件夹、文档等节点可以用 id、slug 或准确名称指定。找不到时调用会失败,并列出可用的选项。
读懂写入结果
写入工具会返回 status:
merged:变更已生效,输出里带recordId或nodeId,以及changeRequestId。in_review:变更在 Busabase 等待审核。可以在工作流里按这个值分支,提醒用户。unchanged:更新文档或写入文件时内容完全相同,没有发出请求。
写入工具都有 Commit Message 参数,审核者能看到,历史里也会保留;留空时插件会自动写一条简短说明。
当前限制
- 不支持删除、归档、移动或重命名记录与节点。
- 不支持批量写入,也不能修改数据表结构。请在 Busabase 里创建数据表和字段。
- 更新文档只能追加或替换整篇正文;写入文件会替换整个文件。
- 按字段值查找记录要求整个值完全相同;部分匹配请用搜索工作区。
- 目前只支持 API 密钥鉴权。
常见问题排查
- 授权失败:检查 Base URL 是否正确,并确认密钥没有过期。
- 请求因空间不明确被拒绝:你的账号有多个空间,请填写 Space ID。
- Docker 里的 Dify 连不上本地服务器:用
host.docker.internal或网桥网关 IP 代替localhost,并用--host 0.0.0.0启动服务器。