登录
开发者文档
编码工具(VibeCLI)

工作原理与设计

VibeCLI 怎么修改你的工具配置、为什么只合并不覆盖、令牌怎么保存和发送、模型菜单从哪来、为什么按优先级而不是按速度选接入地址

一次 setup 做了什么

以 vibecli setup --key sk-xxx 为例:

确认接入地址 → 校验令牌 → 按令牌能用的模型选择工具 → 列出要改的文件并确认 → 保存令牌、备份并只改自己负责的字段 → 安装缺少的命令行工具,安装后再写配置

令牌无效时立即停下并说明原因,不写任何配置。在终端里运行时,VibeCLI 会先列出要修改的文件和要先安装的工具,你确认后才保存令牌、写配置;选「否」则什么都不改。加 --yes、--non-interactive 或 --json 时不询问。

还没有安装的命令行工具(Claude Code、Codex、Grok Build、agy)先安装、再写配置,不安装就不写。Claude Desktop 例外:在 macOS 和 Windows 上没安装也会先写好配置,安装后打开即可使用。

每个工具由独立的模块负责,一个工具出问题不影响别的工具。

只合并,不覆盖

同一个配置文件里,VibeCLI 只写地址、令牌、模型菜单;你的插件、MCP、hooks 原样保留

配置文件里大部分是你自己积累的设置,整份覆盖会抹掉它们。原文件已经损坏(不是合法的 JSON / TOML)时,VibeCLI 会停下提示,不猜测着修复;确实要重来,用 --force,它先完整备份再重写。

每次修改前,VibeCLI 在原文件旁边留一份 <文件名>.bak-<时间>(每个文件保留最近 10 份)。写入时先写临时文件再整体替换,中途被打断也不会留下写了一半的配置。卸载 VibeCLI 不影响已经配置好的工具。

令牌怎么保存、发给谁

令牌保存在本机只有你能读的文件里,写进各工具配置;只发给内置接入地址和当前地址,其它地址只测连通、不带令牌

令牌明文保存,不加密。早期的加密版本把密钥和主机名绑在一起,换电脑就解不开;而 Claude Code、Codex 本来就明文保存同一个令牌,再存一份加密副本并不更安全。vibecli status 只显示令牌的指纹。

令牌只发给 VibeCLI 内置的接入地址和你当前使用的地址。有人诱导你「试试这条线路」时,对方的地址拿不到令牌。

模型菜单从哪来

网关模型清单和令牌实测能用的模型取交集,写进各工具菜单,最多每小时同步一次

不同分组能用的模型不同,按分组名推算容易出错,所以 VibeCLI 直接用这个令牌请求模型列表。同步只改菜单,不动你选中的模型和令牌。工具里的令牌已经不是 VibeCLI 保存的那个时,跳过这个工具。

接入地址:按优先级,不按速度

主站无法连接 → 依次测试接入地址,取第一个能用的 → 已配置的工具一起换过去,令牌不用改

只有主站无法连接时才换,即使备用地址测速更快也不换。「能用」指用你的令牌实际拉到了模型列表。--base 在 setup、init、auth、config 和交互菜单里会保存,在其它命令里只对这一次有效。

升级与国内镜像

先用官方渠道升级,失败或超时改用国内镜像,最后只保留最新的一份

镜像里的程序和官方下载的是同一个文件,都核对过校验值。电脑上常有 npm 安装的和官方安装器安装的两份,VibeCLI 按终端实际运行的那份升级,再询问你是否删到只剩一份。

VibeCLI 自己的更新

启动时检查新版,依次尝试高速下载站、npmjs、npmmirror、Yarn

只有全局安装时才自动更新(每次启动都检查新版本),更新失败不影响正在运行的命令。用 npx 运行,或带 --json、--non-interactive、--dry-run 时不更新;设置 VIBECLI_DISABLE_AUTO_UPDATE=1 可以关闭自动更新。

最后更新于