前言¶
DeepSeek Harness (DSH) 采用插件化架构,允许开发者通过组件扩展推理能力。针对 OpenCode Go 的模型接入,需要专门的适配器。dsh-llm-opencode-go 插件解决了在 DSH 环境中调用 OpenCode Go 服务的问题,它将 OpenCode Go 的协议与 DSH 的标准接口进行了桥接。
这是什么¶
dsh-llm-opencode-go 是一个 DeepSeek Harness 插件,由用户 NOirBRight 维护。它是一个 OpenCode Go 的集成层,旨在让 DSH 能够调用 OpenCode Go 的模型进行推理。该插件使用共享的 pi-ai adapter 处理聊天交互,同时利用原生 Go 端点处理模型发现和订阅使用等非聊天协议功能。
核心功能¶
- 混合协议支持:聊天使用共享 pi-ai adapter,根据模型配置,支持 OpenAI Completions、Responses 和 Anthropic Messages 三种协议。
- 原生端点访问:模型发现(
GET /zen/go/v1/models)和订阅使用情况检查(GET /zen/go/v1/usage)通过原生 Go 端点实现,不依赖聊天协议。 - Web 配置界面:在 Settings → LLM Providers 下提供卡片配置入口,支持设置 API Key、Base URL 和模型列表。
- 能力支持:支持视觉(Vision)和思考(Thinking)能力。
- 路由与加载:Host 路由为
opencode-go,Loader entry 为llm-opencode-go。
安装与启用¶
安装前需确保 DSH 版本兼容(支持 0.1.7-alpha.2 及以上),并安装 dsh-llm-providers-ui 以在 Web 模式下显示配置页面。
dsh plugin --profile web add --force \
https://github.com/NOirBRight/dsh-llm-providers-ui/releases/download/v0.2.13/dsh-llm-providers-ui-0.2.13.tgz
dsh plugin --profile web add --force \
https://github.com/NOirBRight/dsh-llm-opencode-go/releases/download/v0.1.34/dsh-llm-opencode-go-0.1.34.tgz
dsh web
典型用法¶
安装完成后,在 Web 界面配置插件。API 密钥可通过环境变量 OPENCODE_API_KEY 设置。
- 设置 API Key:在 LLM Providers 设置中配置,通过
apiKeyEnv: OPENCODE_API_KEY引入环境变量。 - 选择协议类型:为每个模型配置
api字段,例如选择openai-responses。 - 获取模型列表:通过 Host 端点
GET /zen/go/v1/models获取可用模型及其上下文窗口、视觉和思考能力。 - 检查订阅使用:通过 Host 端点
GET /zen/go/v1/usage检查剩余配额。
适用场景与注意¶
该插件适合需要在 DSH 中统一管理 OpenCode Go 模型资源的开发者。
- Web 模式依赖:在 Web 模式下,必须安装
dsh-llm-providers-ui才能显示 Providers 页面和该插件卡片,否则仅保留命令行路由能力。 - 环境变量配置:API Key 仅支持通过环境变量注入,不支持在配置文件中明文写入。
- 已知限制:
- CodexHub 锁文件冲突:如果存在 CodexHub 生成的锁文件,可能会阻塞 DSH 的凭证操作。
- 参数不支持:
GenerateOptions.stop参数不被共享的 PiAiAdapter 支持。 - 注册冲突:插件不调用
registerConfigurableProviders,这表明它与llm-pi-ai存在目录或功能上的重叠。
短结尾¶
dsh-llm-opencode-go 提供了 OpenCode Go 模型在 DSH 中的标准接入方案。通过配置环境变量和原生端点,开发者可以充分利用该模型的视觉与思考能力。更多细节请参考项目主页。