dsh-workbuddy-broadcast:把本机 WorkBuddy 发布为 OpenAI 兼容 HTTP 服务

前言

在 DSH(DeepSeek Harness)里,dsh-workbuddy-connect 已经能让 Harness 直接调用 WorkBuddy 桌面 App 上的模型。但如果你同时在用 Codex、Claude Code、Cursor 或自写脚本,这些工具默认拿不到同一份 WorkBuddy 登录态和额度。

下面介绍社区插件 dsh-workbuddy-broadcast(维护者 zk-wz,分类为联网工具):在本机把已登录的 WorkBuddy 账号暴露成标准 OpenAI 协议的 HTTP 端点,让同一台机器上的其他 Agent 工具通过「自定义 OpenAI Base URL」复用模型。插件当前在 GitHub 上约 1 star,npm 包版本为 0.2.0,许可为 MIT。

这是什么

dsh-workbuddy-broadcast 是 DSH 生态里的一个插件,运行时在本机启动小型 HTTP 服务,对外提供 Bearer 鉴权、GET /v1/models 与 POST /v1/chat/completions(SSE 流式)。请求经插件转发到 WorkBuddy,凭据来自 App 自身登录态,而不是在插件里单独存一套账号密码。

与「只在 DSH 内用 WorkBuddy」相比,它的价值在于协议标准化:任意支持 OpenAI 兼容端点的客户端,只要指向 http://localhost:18731/v1(或 WSL 场景下的转发地址),即可共用你本机 WorkBuddy 的模型列表与额度。

任意 Agent 工具
      │  http://127.0.0.1:18731/v1  (标准 OpenAI 协议)
      ▼
┌─────────────────────────────────────────┐
│  DSH: dsh-workbuddy-broadcast           │
│    ├─ Bearer 鉴权                        │
│    ├─ GET  /v1/models                   │
│    └─ POST /v1/chat/completions  (SSE)  │
└─────────────────────────────────────────┘
      │
      ▼
   WorkBuddy 账号(读取 App 自身的登录态)

前置条件

使用前请确认:

  1. 已安装 DSH 并能正常运行。
  2. 已安装并登录 WorkBuddy 桌面 App(国内版)。
  3. 已安装 dsh-workbuddy-connect,且版本与 DSH 内核匹配(package.json 要求 peer >=0.7.8)。这是运行时依赖:安装本插件时不会强制检查;若缺失,插件会进入 missing-peer 状态、不监听端口,并在设置页提示。

核心功能

OpenAI 兼容端点

  • 默认监听端口 18731,路径前缀 /v1。
  • 设置页展示 本机端点(http://localhost:18731/v1)、在 Windows 上还可展示 WSL 端点(http://<vEthernet 地址>:18731/v1),以及可复制的 API Key。
  • 模型列表在启动时从 WorkBuddy 实时拉取;失败时退回插件内置静态列表,可能与账号实际可用集合不一致。可用 curl 查询:
curl -H "Authorization: Bearer <key>" http://localhost:18731/v1/models

仅流式(SSE)

服务只支持流式:请求会强制 stream: true,不支持一次性返回完整响应。只做非流式调用的工具无法接入。

推理强度透传

支持标准参数 reasoning_effort,原样传给上游。不同模型档位不同(如 deepseek-v4.1-flash 常见为 low / high / max);少数模型(如文档中的 glm-5.1)必须显式传入,否则上游会拒绝。

平台差异

平台 说明
Windows 完整支持,可同时服务本机与 WSL 内工具
macOS 支持,仅本机地址;凭据解密走 Spotlight 发现 App
Linux / WSL 部分支持;若凭据为加密存储($wbEncrypted),无法解密,需未加密凭据文件(WORKBUDDY_AUTH_FILE)

WSL 端点仅存在于 Windows 宿主;无 vEthernet 时插件只监听 127.0.0.1,设置页会说明原因。

安装与启用

在已配置好的 DSH profile 下执行官方安装命令:

dsh plugin --profile <你的 profile> add dsh-workbuddy-broadcast

装完后重启 DSH。设置里会出现「WorkBuddy 广播」页面;也可在插件管理页的原生表单中改配置。改 port、apiKey、allowLocal 后需重启 DSH 或重新加载插件才生效。

插件以当前 DSH 进程权限运行;安装前建议在 GitHub 仓库 查看源码与 MIT 许可证,并自行评估本机配置目录的访问风险(API Key 会明文写入 profile 的 cordis.patch.yml)。

典型用法

1. 获取端点与 API Key

打开 设置 → WorkBuddy 广播。首次启用时 API Key 随机生成且不写盘;若需固定,在页面输入框填写并保存。

2. 在其他 Agent 工具中配置

示例(模型名以你账号实际可用为准):

Base URL : http://localhost:18731/v1
API Key  : <设置页复制的值>
Model    : deepseek-v4.1-flash

3. WSL 访问 Windows 上的服务

WSL 不能通过 127.0.0.1 直接访问 Windows 监听端口;vEthernet 地址也会变。仓库提供独立脚本 wb-bridge(不在 npm 包内),在 WSL 内可这样获取:

mkdir -p ~/scripts ~/.local/bin
curl -fsSL https://raw.githubusercontent.com/zk-wz/dsh-workbuddy-broadcast/main/scripts/wb-bridge \
  -o ~/scripts/wb-bridge
chmod 755 ~/scripts/wb-bridge
ln -sfn ~/scripts/wb-bridge ~/.local/bin/wb-bridge

启动转发后,WSL 内工具仍可使用 http://127.0.0.1:18731/v1。注意 WSL 侧端口须与 Windows 插件 port 一致;若改了插件端口,wb-bridge port <端口> 也要同步。

常用命令:wb-bridge start / status / stop / log / help。

配置项

项 默认值 说明
port 18731 监听端口
apiKey 空(随机生成) Bearer token;填写后才会持久化
allowLocal true 是否额外监听 127.0.0.1,供 Windows 本机工具使用

默认监听 127.0.0.1 与 WSL 的 vEthernet 网卡,不监听 0.0.0.0。若只需 WSL 侧访问,可将 allowLocal 设为 false。

适用场景与注意

适合:你已在本机登录 WorkBuddy,希望 Cursor、Claude Code、自研脚本等与 DSH 共用同一账号模型,且客户端支持 OpenAI 兼容端点与 SSE 流式。

限制与合规(摘自项目说明):

  • 只服务当前登录的一个 WorkBuddy 账号。
  • 依赖 dsh-workbuddy-connect 的公开导出,上游不兼容时需等待本插件更新。
  • 仅供个人本机使用:勿分享 API Key、勿对公网暴露;消耗的是你自己的 WorkBuddy 额度,须遵守 WorkBuddy 服务条款。

社区插件目录站 SkillHub 上的条目 与 DeepSeek / 幻方无官方从属关系;DSH 生态理念是「一切皆插件」,按需从目录或 npm 安装即可。

链接

  • 目录页:https://www.skillhub.cn/plugins/zk-wz/dsh-workbuddy-broadcast
  • 源码与文档:https://github.com/zk-wz/dsh-workbuddy-broadcast

经过上面的步骤,你可以在保持 WorkBuddy 单一登录的前提下,把模型能力以通用 HTTP 接口交给本机其他 Agent 工具使用。

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

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

小夜