DeepSeek Harness 插件:dsh-opencode-xdbridge

前言

DeepSeek Harness(DSH)支持通过插件扩展模型推理能力。开发者在使用免费模型时,常遇到服务端门禁问题:OpenCode Zen 的免费模型直接请求会被 403 拒绝,必须通过真实的 OpenCode 进程发起请求。本插件通过在隔离环境中运行官方 OpenCode 二进制,并提供 OpenAI 兼容端点,解决了这一直连问题。

这是什么

本插件将 OpenCode 的免费模型(big-pickle、LongCat、MiMo、Nemotron、Space Bunny 等)接入 DSH 的模型选择器。这些模型以 opencode-xdbridge 分组显示。同时,它在设置 → OpenCode-XD 中提供了一个可视化的交互面板。

核心功能

  • 连接模型:将 OpenCode 免费模型接入 DSH 模型选择器。
  • 可视化面板:在设置 → OpenCode-XD 提供状态监控和交互入口。
  • 运行时管理:下载并运行官方 OpenCode 二进制,支持自动下载、断点续传和完整性校验。
  • 端点转换:提供本地 OpenAI 兼容端点转换。
  • 状态监控:提供状态指标和模型详情面板。
  • 安全隔离:本地动作零执行(权限拦截),隔离运行时环境。
  • 可用性检测:支持模型可用性检测,分为不稳定(超时/限流)和不可用(鉴权/额度)。
  • 自动压缩:上下文长度自动压缩,防止无效请求。

安装与启用

  1. 确保环境满足依赖:需要 Node.js (>=22.19.0 或 >=24.0.0) 和 DSH (>=0.1.1-rc.1),以及 @deepseek-ai/cordis、@deepseek-ai/dsh-llm 等依赖。
  2. 执行安装命令:
    dsh plugin --profile <profile> add dsh-opencode-xdbridge
  1. 重启 DSH。

典型用法

  1. 使用模型:重启后,在模型选择器中找到 opencode-xdbridge 分组,直接选择模型进行对话。
  2. 管理面板:在设置 → OpenCode-XD 中打开交互面板,查看服务状态、模型列表和详情。
  3. 配置路径:在 settings.yaml 中配置 dataDir、binaryPath 或 runtimeVersion,或使用环境变量 OPENCODE_BINARY_PATH 指定运行时路径。

适用场景与注意

  • 权限要求:运行时需要 {'*':'ask'} 权限,插件会在本地拒绝所有审批请求,仅允许转发给 DSH。
  • 上下文处理:插件不会直接报告模型的原始窗口,而是报告一个可用预算:(声明窗口 - 输出预留) * (1 - 15% 安全余量)。这有助于 DSH 提前触发压缩,避免因窗口过大导致的无效请求。
  • 下载与缓存:首次启动约下载 57 MB 运行时(缓存),支持断点续传。
  • 失败分类:检测失败分为“不稳定”(超时/限流,保留在列表中)和“不可用”(鉴权/额度,移除),避免因偶尔的超时误删可用模型。

结尾

该插件通过桥接官方运行时,让 DSH 用户能够访问 OpenCode 免费模型,并提供了一套可视化的管理工具。完整的源代码和文档位于 GitHub。

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

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

小夜