夜雨聆风学习资料网

ARTICLE · 1204405

一个插件,让你的 DeepSeek Harness 白嫖免费大模型

一个插件,让你的 DeepSeek Harness 白嫖免费大模型

DSH(DeepSeek Harness)本身是个好用的 Agent 框架,但它默认的模型要花钱。其实只要装一个插件,你就能让它直接接上 Kilo 的免费模型池——16 个免费、支持 tools 的文本模型,实时目录里 401 个模型任你挑。

这个插件叫 my-free-adapter,今天聊聊它怎么装、怎么用、以及有哪些坑要避开。

它能干什么?

装好之后,DSH 的模型列表里会多出一个 Provider my-kilo,默认路由是 kilo-auto/free。你新建会话时直接走 Kilo 免费通道,不用改任何业务代码。

核心能力:

· 实时拉取目录:从 Kilo 拉 401 个模型,筛出 16 个免费且支持 tools 的文本模型对外暴露· 完整工具调用:tool-call 流的 id/name 正常,多轮 tool history 不丢· 图片和文件:图片走 attachment 服务按请求尺寸内联,文件投影成宿主句柄文本· 自动重试:429/5xx/超时按 DSH 的 SERVER 策略重试,上下文超限触发压缩· 状态可见:kilo-status.json 里 status: ready,装了没装一眼就知道

怎么装?

插件支持两种安装方式

1. dsh界面安装

2.推荐 link 本地目录(方便改):

    plugin_manager 安装 link:my-free-adapter

装完后 profile 的 cordis.patch.yml 里会多出依赖和配置段:

- id: my-free  name: dsh-my-free-adapter  config:    kiloEnabled: true    kiloApiKey: ''# 留空使用 Kilo 的 anonymous 访客令牌    zenEnabled: false# Zen 免费层目前 403,默认关闭    maxOutputTokens: 32768

重启后 include:my-free 状态应为 active,目录 source: network,exposed 16。

三个配置项说清楚

kiloApiKey 留空就行。 插件默认用 Kilo 的访客令牌 anonymous。这里有个坑:早期版本把无 Key 场景设成keyless并原样发成 Bearer,Kilo 对未知 Bearer 一律 401——所以千万别自己填个假 Key,留空反而最稳。有正式 Key 再填。

zenEnabled 默认 false,别急着开。 OpenCode Zen 的免费层已经下线了,实测返回 403 FreeTierError: OpenCode's free tier can only be used from within OpenCode。这不是补个 header 能解决的,是外部策略变更。开了只会看到明确警告,所以默认关掉,Kilo 保持开启。

maxOutputTokens 按需调。 默认 32768,长文生成可以往上加,但免费模型对输出长度常有隐式限制,别设太离谱。

几个使用建议

默认路由偶发 503 不用慌。 kilo-auto/free 偶尔会 503,DSH 的 SERVER 重试策略会自动兜住,重试后实测能正常返回。如果你对延迟敏感,可以在会话里手动切到某个具体模型。

免费模型判定看的是真免费。 插件不只认 :free 这类命名,还认 pricing 为 0/0 的模型,并且要求输出必须包含 text——所以音频、图像输出模型不会被误当成聊天模型塞给你。这也是为什么 401 个模型里只暴露 16 个。

目录刷新有超时保护。 /models 30s 超时、capabilities 8s 超时且最多等 2.5s 不阻塞列表,缓存加载和网络刷新不互相覆盖,listModels 不会在缓存没读完时返回空。所以冷启动不会卡死。

必须说的安全提醒

免费模型可能记录/训练你的提示词。 这是免费最真实的代价。别向它们发送密钥、隐私数据、未公开代码或任何你不想出现在别人训练集里的东西。日常问答、写写脚本、跑跑工具调用没问题,敏感场景请换付费模型。

最后

这个插件本质上解决的是"想让 DSH 跑起来但不想先充钱"的起步问题。16 个免费模型 + 完整工具调用 + 自动重试,足够你把 Agent 流程跑通、把 prompt 调顺。等流程稳了,再按需切付费模型,路径是平滑的。

装完如果 kilo-status.json 不是 ready,或者 exposed 不是 16,先看目录是不是 source: network——大概率是网络没通,不是插件坏了。


完整说明和已知限制见 README.md。安装这批 RC 包时在 pnpm-workspace.yaml 加了 minimumReleaseAgeExclude: ['@deepseek-ai/', '@earendil-works/'],这是对 pnpm 供应链年龄门禁的定向放宽,不需要可以删掉。

相关学习资料