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

DeepSeek Harness

用 VibeCLI 把 VibeAPI 配置进 DeepSeek Harness(dsh)的网页版和桌面端:写了什么、怎么验证、为什么这样设计、怎么移除

DeepSeek Harness(命令 dsh)是 DeepSeek 的开源 Agent 框架,目前是开发者预览版,新版本可能改变配置方式。接入 VibeAPI 后,网页版和桌面端的模型菜单里都能用这个令牌能用的模型,不止 DeepSeek。

前提:已通过 npx @deepseek-ai/dsh web 运行过网页版,或安装了桌面端(macOS、Windows)。VibeCLI 不代为安装。

配置

下面的命令里,把 sk-xxx 换成你的令牌。检测到 DeepSeek Harness 时,setup 会问你是否配置,回车即配置;带 --yes 时直接配置:

vibecli setup --key sk-xxx

只让 DeepSeek Harness 使用这个令牌:

vibecli setup --dshkey sk-xxx

配置完成后,打开 DeepSeek Harness,在输入框下方的模型菜单里选择模型,默认是 DeepSeek V4 Pro。已打开的不用重启。桌面端还没启动过也可以先配置,第一次打开就能用。

写了什么

~/.dsh 目录下(设置了 DSH_HOME 时用它):

文件写入
profiles/web/cordis.patch.yml、profiles/desktop/cordis.patch.ymlVibeAPI 的三组提供商,分别走 Chat Completions、Responses、Messages;默认模型 deepseek-v4-pro
.credentials.yaml(权限 0600)VIBEAPI_API_KEY:你的令牌

你自己配置的其它提供商和令牌都保留。原来的默认模型会被替换,输出里会列出它,运行 vibecli config dsh restore 可以恢复。

验证

打开 DeepSeek Harness,在模型菜单里选一个模型,发一句话能正常回复即配置完成。

为什么这样设计

分成三组提供商一个提供商只有一种协议

DeepSeek Harness 的一个提供商只能用一种协议,而 GPT、Claude 和其余模型各有最合适的接口,所以分开写。GPT 用 Responses,Claude 用 Messages,其余用 Chat Completions。

DeepSeek 走 Chat Completions不走 Messages

实测 Messages 接口会把缓存命中的部分重复计入输入,Chat Completions 的用量统计是对的。

写在 profile 里不写 ~/.dsh/cordis.patch.yml

~/.dsh/cordis.patch.yml 的优先级高于 profile,写在那里会让设置页的修改被拒绝。

排障

现象原因处理
setup --key 没有配置 DeepSeek Harness没有检测到它,或没有终端可以提问运行 vibecli setup --dshkey <你的令牌>
启动时提示令牌文件权限不对.credentials.yaml 被组或其他用户可读运行 chmod 600 ~/.dsh/.credentials.yaml
dsh headless 读不到令牌headless 模式只读环境变量,不读 .credentials.yaml用网页版或桌面端,或自己设置环境变量
vibecli 报配置文件解析失败cordis.patch.yml 不是合法的 YAML,VibeCLI 不会改动它修好文件,或运行 vibecli config dsh restore

移除

运行下面的命令,或在 vibecli config dsh 的菜单里选「移除」:

vibecli config dsh remove

这会删掉两个 cordis.patch.yml 里的 VibeAPI 提供商和默认模型,以及 .credentials.yaml 里的 VIBEAPI_API_KEY,你自己的提供商和令牌保留。移除后完全退出 DeepSeek Harness 再打开。想回到 VibeCLI 上一次修改前的状态,运行 vibecli config dsh restore。

最后更新于