dsh-llm-workbuddy:在 DeepSeek Harness 中使用 WorkBuddy/CodeBuddy 账号模型

前言

DeepSeek Harness (DSH) 采用插件化架构,允许开发者通过配置调用不同的模型服务。对于希望使用 WorkBuddy 或 CodeBuddy 账号模型但不想配置繁琐 API Key 的用户,本插件提供了一个适配方案。它将 DSH 与本地的 workbuddy2api 代理连接,将私有协议转换为标准 OpenAI 格式,从而在 DSH 界面中直接调用这些模型。

核心功能

该插件主要解决两个问题:模型接入与登录状态管理。

  1. 模型接入:在 DSH 的模型选择器(Composer 或 /model 命令)中增加 “WorkBuddy” 分组。模型列表(如 DeepSeek-V4、GLM-5.x 等)会根据账号可用性实时同步。
  2. Web 登录管理:在 Web GUI 右下角提供状态胶囊,实时显示登录和代理状态。支持在浏览器内直接完成登录,无需操作终端。

环境与依赖

使用前需确保系统已安装并运行必要的组件。

  1. 本地代理:本插件不包含 workbuddy2api,必须单独安装。
    • 版本要求:代理版本需 >= 2.0.4。低版本因缺少认证请求头,会导致登录失败。
    • 运行方式:代理需在 127.0.0.1:8787 启动,负责转发协议。
  2. Python 环境:插件内置的登录脚本依赖系统 python3(标准库实现,无需额外虚拟环境)。

安装与启用

安装插件后必须重启 dsh web 服务才能加载新组件。

  1. 安装插件包:
    dsh plugin --profile web add ./dsh-llm-workbuddy
  1. 重启 Web 服务:
    dsh web

使用步骤

完成安装后,按以下顺序操作。

  1. 启动代理:
    确保本地已运行 workbuddy2api(端口 8787)。可以通过访问 http://127.0.0.1:8787/health 验证代理存活。

  2. Web 登录:
    打开 DSH Web 界面,查看右下角的状态胶囊。

    • 若显示红色(未登录),点击胶囊上的「登录」按钮。
    • 浏览器将打开 WorkBuddy 授权页,扫码或授权后,胶囊自动变绿并显示账号昵称。
  3. 选择模型:
    在 DSH 的模型选择器中找到 “WorkBuddy” 分组,点击即可切换模型。支持推理等级选择(Low / Medium / High)。

技术细节

登录态管理

登录态文件由代理写入(通常为 ~/.codebuddy-session.json)。插件通过探测此文件来判断状态。若代理未实现 /v1/checkin 端点,插件会自动隐藏签到入口。

Web 小组件

右下角的状态胶囊是零依赖的原生浏览器 JS,由 DSH 的 dsh.client 机制注入。后端路由注册在 dsh web 的 HTTP 服务上。

架构流向

DSH 请求 -> WorkBuddyAdapter (lib/index.js) -> workbuddy2api (127.0.0.1:8787) -> WorkBuddy/CodeBuddy 云端。

注意事项

  • 无签到功能:由于 workbuddy2api 当前未实现 /v1/checkin 相关端点,插件无法执行每日签到。
  • 纯标准库:登录脚本使用 Python 标准库编写,不依赖 uv 或复杂环境,但要求系统已安装 python3。
  • 会话失效:若代理会话过期,需在 Web 界面重新点击登录胶囊。

总结

dsh-llm-workbuddy 是一个轻量级的模型适配插件,通过本地代理将 WorkBuddy/CodeBuddy 服务接入 DeepSeek Harness。它免去了 API Key 的配置,提供了可视化的登录管理,适合需要在 DSH 中统一管理多模型服务的开发者。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜