前言¶
DeepSeek Harness (DSH) 的核心优势在于其插件化架构。当需要在本地环境中接入外部免费模型时,通常需要维护额外的代理服务或子进程。kilo-zen2dsh 插件通过原生适配器的方式,直接在 DSH 内部实现了对 Kilo Gateway 和 OpenCode Zen 免费模型的访问,无需额外的本地端口或进程开销。
是什么¶
kilo-zen2dsh 是一个由 Xyanxhu 维护的 DSH 插件,它注册了两个独立的原生 LlmAdapter:
* kilo2dsh:连接 Kilo Gateway。
* opencode2dsh:连接 OpenCode Zen。
该插件旨在解决 DSH 用户接入免费模型时的配置复杂度问题,同时提供模型元数据的自动补全和上下文限制的自动校准。
核心功能¶
- 原生适配运行:插件以原生方式集成,不产生子进程,也不占用本地端口。
- 动态模型发现:利用 Kilo 的
isFree/is_free标志动态发现免费模型,兼容kilo-auto/free和:free后缀。 - 独立 Zen 支持:提供独立的 OpenCode Zen 适配器 (
opencode2dsh),支持从公开的能力目录 (models.opencode.ai/api.json) 获取模型元数据(如上下文窗口、输出限制等),提升可用性。 - 模型筛选机制:默认只显示文本输出和具备工具能力的模型,适合 DSH 智能体交互场景。
- 稳定性保障:内置启动重试、定期刷新、7天磁盘缓存和健康快照机制。
安装与启用¶
使用官方提供的 npm 包名进行安装:
dsh plugin --profile web add @huanx/kilo-zen2dsh
安装完成后,请重启 dsh web 服务。
使用方法¶
- 打开 DSH 的模型选择器。
- 在
kilo2dsh(Kilo) 或opencode2dsh(Zen) 提供商组中选择模型。 - 如果只希望使用 Kilo,或者 Zen 网关返回
anonymous-lane 429错误,可在配置中设置zenEnabled: false。 - 若需使用带认证的网关 Token,请显式设置环境变量
upstreamApiKeyEnv。
注意事项¶
- Keyless 机制:Kilo 的免费请求在传输时会主动抑制
Authorization头,Zen 的匿名兼容车道使用Bearer public占位符。二者均非认证或计费绕过方案。 - 上下文限制处理:适配器会合并不同来源的上下文限制声明,并取其中最小的正值作为限制,以防止请求过大导致的 400 错误。
- 模型类型:当前仅支持文本输出和具备工具能力的模型。
- 环境要求:需要 Node.js 20 或更高版本。
- 认证配置:默认不启用账号 Token,如需使用,需在配置中显式设置
upstreamApiKeyEnv或zenApiKeyEnv。