OpenBot 登录配置:部署登录与模型密钥填写

截至 2026 年 3 月 3 日发布的 @next-open-ai/openbot 文档仍把 API Key、默认模型和桌面配置列为首次使用入口;而 CopilotKit 的 OpenBot 仓库明确说明,新部署可先用单用户模式运行,正式开放给他人前再启用登录。现在最值得先分清的是:部署登录、模型服务商密钥和 GitHub 账号登录不是同一套凭据,混填就会让 OpenBot 一直进不去或调用不了模型。

下文凡标注“按官方口径推下来”的地方,都是根据官方材料作出的边界判断,不代表官方额外承诺;命令和配置项均按所列来源原文给出。

先判断你拿到的是哪一种 OpenBot

目前给出的资料里出现了两个同名但定位不同的项目。第一种是 CopilotKit/OpenBot:它是可自行部署的开源 AI 助手模板,每个 Agent 拥有独立浏览器、文件与获准使用的工具;官方将它称为 Beta,并建议部署在自己的基础设施上。

第二种是 npm 上的 @next-open-ai/openbot:其公开说明采用 openbot login 命令,把模型服务商密钥写入本地配置。下文会明确区分这两套操作,不能把一个项目的命令直接套到另一个项目。

要完成的操作 CopilotKit/OpenBot npm @next-open-ai/openbot
获取代码或安装工具 克隆官方仓库,在仓库环境运行 按 npm 包页面安装并使用 openbot CLI
首次进入 .env 中使用单用户模式 执行 openbot login <provider> <apiKey> [model]
对外开放 关闭单用户模式并配置正式登录 不是仓库部署登录
密钥保存位置 仓库的服务端环境配置 ~/.openbot/desktop/config.json
模型调用 服务端接入相应模型 Provider CLI 或桌面端配置 Provider、模型和 API Key

如果你的目标是运行 CopilotKit 官方仓库,应先看下一节的部署方式;只有确认使用的是 npm 包时,才执行 openbot login。

CopilotKit OpenBot:先取得仓库和默认配置

前置条件不超过三项:准备一台可运行仓库的本地环境;能访问 GitHub 仓库;准备一套模型服务商的 API Key,并确认对应账户允许调用所选模型。

先打开官方仓库首页:

https://github.com/CopilotKit/OpenBot

仓库页面选择 Code,复制仓库地址。OpenBot 是供用户克隆并自行修改的模板,不是一个注册后即可使用的托管服务;官方 README 明确表示没有可注册的托管版本。因此,下载仓库、替换示例租户内容并在本地运行,才是它的正常入口。

进入仓库后,复制环境变量示例文件。官方说明给出的首个关键配置是:

OPENBOT_SINGLE_USER=true

这一行的作用是让所有请求暂时被视为同一个管理员,使新克隆的仓库不必先注册 OAuth 客户端就能进入。它适合首次启动和本机验收,不适合作为多人部署的最终登录方案。

在修改任何登录设置前,先保留这一份最小配置并启动仓库。成功标志不是“页面能打开”这么简单:OpenBot 首页应能正常进入,Agent 对话界面可创建会话,并且仓库日志中没有环境变量缺失或 Provider 初始化失败的提示。

正式开放前:把单用户入口换成登录

当部署需要让其他人访问时,把 .env 中的:

OPENBOT_SINGLE_USER=true

改为:

OPENBOT_SINGLE_USER=false

然后按照仓库内实际采用的认证方案补充 OAuth 服务端配置。OAuth(Open Authorization,单点登录协议)在这里用于让外部用户证明身份并建立会话,不是拿来保存模型 API Key 的。

这一步有一个容易忽略的边界:关闭单用户模式只是移除“所有请求都算管理员”的临时入口,并不会自动生成 OAuth 客户端。需要使用哪一组回调地址、客户端标识和密钥,取决于仓库当前文档及部署环境;如果回调地址与注册值不一致,浏览器可能完成登录后仍无法回到 OpenBot。

验证时至少检查三处:未登录访问应被重定向到登录页;登录后的用户不应被自动识别为全局管理员;退出或换浏览器后,不应继续沿用旧会话。若页面反复跳回登录入口,优先核对 OAuth 客户端配置中的回调地址,而不是反复修改 OPENBOT_SINGLE_USER。

使用 npm CLI 的登录方式

如果确认安装的是 @next-open-ai/openbot,其 CLI 与桌面端共用 ~/.openbot/desktop/ 配置。公开页面给出的命令格式如下,可以直接复制:

openbot login deepseek YOUR_DEEPSEEK_API_KEY
openbot "总结一下当前有哪些技能"

不传模型名时,命令会使用该 Provider 的第一个模型,并补齐缺省配置。若要明确指定模型,执行:

openbot login deepseek YOUR_DEEPSEEK_API_KEY deepseek-reasoner
openbot "总结一下当前有哪些技能"

也可以分两步保存密钥和切换默认模型:

openbot login deepseek YOUR_DEEPSEEK_API_KEY
openbot config set-model deepseek deepseek-chat
openbot config sync
openbot "总结一下当前有哪些技能"

其中 YOUR_DEEPSEEK_API_KEY 只是占位符,必须替换成真实密钥。页面说明,单次调用还可以使用 --provider、--model 和 --api-key 覆盖缺省值;如果配置中没有保存密钥,CLI 会回退读取 OPENAI_API_KEY、DEEPSEEK_API_KEY 等环境变量。

这里不要把 API Key 发进聊天记录、截图或 Git 仓库。保存后检查 ~/.openbot/desktop/config.json,应能看到默认 Provider、模型、defaultModelItemCode 和已配置模型列表;密钥内容属于敏感信息,不要在排查时完整粘贴出来。

卡点定位:先分清失败发生在哪一层

GitHub 登录页可能出现官方页面原文:

There was an error while loading. Please reload this page .

遇到时先刷新该页面,再通过仓库首页的 Sign in 入口进入 GitHub 登录页。如果登录后仍提示:

You can’t perform that action at this time.

先检查浏览器是否允许该站点保存 Cookie,并关闭会改写请求头或拦截登录跳转的扩展;随后重新登录。仍无法继续时,可从 GitHub 密码重置页 恢复账号访问,但不要把 API Key、OAuth 客户端密钥或完整配置文件上传到 Issue。

模型侧失败则不要沿着 GitHub 登录继续查。按官方材料给出的入口顺序执行:先确认 Provider 名称正确,再确认 API Key 有效,随后用 openbot config set-model 设置模型并运行 openbot config sync。若使用环境变量,确认变量名与 Provider 对应,并重新启动 CLI,让进程读取新环境。

怎么算配置成功

CopilotKit/OpenBot 的单用户验收标志是:.env 保留 OPENBOT_SINGLE_USER=true,应用可进入且能创建 Agent 会话。切换正式登录后的标志是:未登录请求被拦截,登录用户得到自己的会话,并且普通用户不再被当作管理员。

npm 版的成功标志更明确:openbot login 返回后,~/.openbot/desktop/config.json 中出现对应 Provider 和模型配置;随后执行 openbot "总结一下当前有哪些技能",命令应使用已配置模型正常返回。若只有配置写入成功、对话仍失败,继续检查模型名称、账户权限和密钥来源,不要重新修改应用登录。

延伸入口与版本边界

继续配置时,应优先查看仓库根目录的 README.md、.env.example、docs/ 和 CHANGELOG.md,因为 OpenBot 仍处于 Beta,目录结构和配置项可能继续变化。npm 版的命令、配置文件和 Provider 说明可查看其 npm 代码与文档页。

这份教程没有把两个同名项目拼成一套流程:CopilotKit/OpenBot 以仓库和自部署为中心,@next-open-ai/openbot 以 CLI 与桌面配置为中心。配置前先确认来源,比照着错误项目的登录命令一路试下去更省时间。

参考来源

评论区

0 条评论

登录后可评论。

拾光·开源拾遗 174 阅读