插件运行时、CLI、SDK 开源在: https://github.com/langbot-app/langbot-plugin-sdk
是。

启动插件运行时
--debug-only: 不启动data/plugins目录下的插件,仅允许通过调试连接加载插件。--ws-debug-port: 监听的调试端口,默认是5401。--ws-control-port: 监听的控制端口(供 LangBot 主程序连接),默认是5400。-s: 使用stdio接受控制连接。仅在生产环境使用。--skip-deps-check: 为了确保插件依赖均已安装,Runtime 会在每次启动时检查并安装所有已安装插件的依赖。携带此参数可禁用此检查。
使 LangBot 使用您本地修改过的 langbot-plugin-sdk
若您修改了诸如消息实体、插件数据定义等内容,需要将其更新到 LangBot 环境,以确保运行期间数据格式兼容。 请在确保已激活 LangBot 目录下的虚拟环境(.venv)的终端中,切换目录到 langbot-plugin-sdk 目录下,执行:使 LangBot 连接到此运行时
在 LangBot 的data/config.yaml中配置plugin.runtime_ws_url为ws://localhost:5400/control/ws。
--standalone-runtime(如:python main.py --standalone-runtime)。直接调用当前虚拟环境的 Python 不会再次同步依赖,因此不会把刚刚安装的本地 langbot-plugin-sdk 覆盖为远程版本。重启 LangBot,将会使用 WebSocket 连接到此运行时。 默认情况下无需配置
LANGBOT_PLUGIN_RUNTIME_CONTROL_TOKEN:当 LangBot 与 Runtime 两端都未设置时,OSS 的本地控制连接直接建立。若部署环境需要为 5400 控制端口增加共享密钥,则应在两端配置同一个至少 32 位的高熵值。Runtime 端配置后,未携带相同密钥的 LangBot 会被拒绝;只在 LangBot 端配置并不会启用 Runtime 端的认证。
使用 lbp run 调试插件
多 Workspace 版本不再允许调试插件仅凭 5401 端口接入 Runtime。每个 Workspace 都有独立且会过期的调试密钥:
- 确认 LangBot 与 Plugin Runtime 已按上文启动并连接成功。
- 在 LangBot WebUI 的“插件”页面点击“调试信息”,复制调试 URL 和调试密钥。该操作需要当前 Workspace 的资源管理权限。
- 在插件项目的
.env中配置:
- 在插件项目目录中启动:
.env,改用 python -m langbot_plugin.cli.__init__ run --plugin-debug-key '<调试密钥>'。调试密钥按 Workspace 隔离且有效期为两小时;密钥过期、Runtime 重启或切换 Workspace 后,请回到 WebUI 重新获取。只配置 DEBUG_RUNTIME_WS_URL 会被 Runtime 拒绝。
以 standalone 模式启动 Box Runtime
Box Runtime 与 Plugin Runtime 的控制连接规则一致:OSS standalone 开发环境默认不强制配置 token,两端都未设置LANGBOT_BOX_CONTROL_TOKEN 时可以直接连接:
data/config.yaml 使用本地 Box 地址:
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 工具提供 Runtime 启动、插件初始化、插件组件管理、Marketplace 交互等功能。
详细的程序入口请查看langbot_plugin.cli.__init__。