ARTICLE · 1242775
我把「白嫖大厂免费模型」的插件装上实测了一遍:11 秒,403
一、先说清楚这是什么东西
DeepSeek Harness(下称 DSH)桌面版好用,但官方 API 按 token 计费,跑几轮长任务就能看见钱在烧。于是社区出了个插件 opencode2dsh(作者 FishBottle7,MIT 开源),思路是:把 OpenCode这个开源编程工具背后的免费模型通道,桥接进 DSH 的模型选择器。
它的定位值得肯定:
• 不填 API Key,不注册账号
• 不改 DSH 本体,只注册一个模型适配器
• 装完重启,模型选择器里多一个opencode2dsh分组
如果它能用,确实是「界面顺手 + 成本为零」。我测试的结果是——它在我这台机器上,没跑起来。
二、安装:一行命令背后其实有三道坎
网上教程一般就一句:
dsh plugin --profile desktop add @opencode2dsh/dsh-plugin@0.3.14
我实际走下来,至少还有三个坑没被写进去。
坑 1:pnpm 会拦构建脚本,安装直接失败
第一次执行,报错:
[ERR_PNPM_IGNORED_BUILDS] Ignored build scripts: @google/genai@1.52.0, protobufjs@7.6.6dsh: plugin command failed
pnpm 11 默认不执行第三方构建脚本。要去 profile 的 pnpm-workspace.yaml里显式放行(这两个包用不到构建产物,标false即可):
allowBuilds: '@google/genai': false protobufjs: false
坑 2:装上了 ≠ 启用了
这是最隐蔽的一条。命令跑完后,package.json里确实多了依赖,但模型选择器里什么都没有。
原因在 DSH 的加载机制:profile 的插件树是由 package.json里dsh.profile.bundles这个有序列表合成出来的。dsh plugin add只写dependencies,不会动bundles。
想真正生效,得手动加一行:
"dsh": { "profile": { "bundles": [ "@deepseek-ai/dsh-base", "@deepseek-ai/dsh-web-app", "...原有插件...", "opencode2dsh" ] }}
可以用这条命令验证是否合成成功(能看到插件行才算数):
dsh --profile desktop --dump-config
坑 3:安装不用退软件,生效才用
有的教程说「装之前必须完全退出软件」。实测不必:应用运行时 pnpm 写入正常,只是重启后才会加载。
小结:网上那句「几秒钟搞定」,在我这里是 20 分钟加两次失败。
三、403 复现步骤(可照抄)
装好之后,我用一个隔离的测试 profile 跑了一轮最小对话:
dsh --profile octest "只回复两个字:收到"
结果:11 秒返回,原文如下(我保留了全部信息):
FREE_TIER_RESTRICTED: 403:{"type":"FreeTierError","message":"OpenCode's free models aren't available from yourcurrent network because we've detected abusive traffic from this IP address. This isn'trelated to your account. If you're on a VPN or proxy, turn it off and try again, orsubscribe to OpenCode Go at https://opencode.ai/go to keep building."}(opencode2dsh 轮换 1 次后放弃: #1 refused: 403 ... -> #2 refused: 403 ...)
注意这句话里的关键词:abusive traffic from this IP address。它说的不是「你没登录」,也不是「插件坏了」,而是你的出口 IP 被上游标记了。
想自己判断「是配置问题还是 IP 问题」,做两个对照
对照 A:确认网络是通的
curl https://opencode.ai/inference/v1/models
能正常返回一长串模型 id,说明网络没问题,问题不在连接。
对照 B:不带任何伪装的直连
直接往 OpenAI 兼容端点发一条最简单的对话,不带插件的身份伪装:
curl -X POST https://opencode.ai/inference/openai/v1/chat/completions \ -H "content-type: application/json" \ -d '{"model":"glm-5.3-flash-free","messages":[{"role":"user","content":"hi"}],"max_tokens":16}'
返回:
{"type":"error","error":{"type":"FreeTierError","message":"OpenCode's free tier can only be used from within OpenCode."}}
这两条一对比就清楚了:
• B 的 403是「客户端身份门」——免费档只允许 OpenCode 官方客户端使用,插件做的正是伪造这层身份;
• A 通过、插件仍报 403是「IP 门」——身份装对了,IP 还是被判滥用。
我这里两扇门都过不去,卡在第二扇。
四、这应该不是我一个人的问题,作者文档中也提及到
为了不冤枉插件,我把它的仓库文档翻了一遍,有两处很关键:
1)作者自己的发布说明(v0.3.14)里写着:
「真机边界(诚实声明):……维护端出口 IP 仍被上游封锁,遗留真机补验清单不变。」
2)作者的自测文档(2026-10-13)里写着:
「……没有发起过真实的上游推理请求……不能证明受限的上游推理路径可用,issue #62 因此仍未关闭。」
换句话说:连维护者自己的网络出口都在黑名单里,上游对这条通道的反滥用判定一直没解决。这不是偶发故障,是这条通道的常态。
顺便纠正一个被广泛转述的说法:「免费模型随便用,不用挂代理」。准确说法应该是:使用插件本身不需要代理(它是个本地适配器,不起子进程),但要过上游的 IP 准入,你大概率需要一个干净出口。这两件事被混为一谈了。
五、那到底还能不能白嫖?三条路
路线 1:给它一个「干净」的出口
插件自带出口管理(默认关闭),支持三类来源:
类型 | 例子 | 备注 |
手填明文代理 | 1.2.3.4:8080、socks5://1.2.3.4:1080 | 最省事,可标记为固定出口 |
机场 / Clash 订阅 | https://.../subscribe?token=... | 加密节点(vmess/vless/trojan/ss/hysteria2)需要本机装 sing-box转换 |
本机已开的代理 | 127.0.0.1:7890 | Clash 默认端口,直接指过去最快 |
我查过自己的机器:系统代理关闭、没有任何监听中的代理端口,所以这条路对我当前环境不成立。有干净节点的人,这一步通常能过 403——但也只是「过门」,后面还有稳定性问题(见下节)。
路线 2:delegation模式(官方允许的用法)
放弃伪装,改为在本地拉起真正的opencode客户端,走你自己的 OpenCode 账号。这条路径合规、稳定,代价是:插件会变成你凭据的托管方(作者要求先读 docs/delegation.md再开),而且你得先有 OpenCode 账号。
路线 3:老实付费
OpenCode Go 订阅,或者就用你现有 Key 背后的模型。免费档省的钱,说实话没有想象中多——它把上下文和输出都进一步压窄了(下节给数据)。
六、免费模型现在长什么样(实测清单)
网上那些「阵容豪华」的名单已经过时了。我拉到的实时可用免费模型是这 9 个:
模型 ID | 上下文 / 输出 | 工具调用 | 一句话 |
glm-5.3-flash-free | 200K / 32K | ✅ | 智谱小尺寸,日常最均衡 |
deepseek-v4.1-flash-free | 200K / 32K | ✅ | 中文与代码都稳 |
mimo-v2.6-flash-free | 200K / 32K | ✅ | 小米,轻任务够用 |
big-pickle | 200K / 32K | ✅ | 隐身模型,质量会变 |
nemotron-3.5-lightning-free | 262K / 262K | ✅ | 输出额度大方 |
nemotron-3.5-super-vl-free | 1M / 131K | ✅ | 多模态,长文档王者(但慢) |
beam-free | 1M / 131K | ✅ | 500B 级,适合批处理 |
flint-40b-free | 262K / 65K | ✅ | 40B,轻快 |
jev-1.13-free | 64K / 0 | ❌ | 结构化判定模型,当 agent 用不了 |
两个必须知道的事实:
1. 免费档的窗口是被压缩过的。同样是glm-5.3-flash,付费版 1M 上下文 / 131K 输出,免费版只有 200K / 32K。DSH 的系统提示加工具 schema 本身就占掉几万 token,长任务里压缩会更早触发。
2. 名单在漂移。作者文档里出现过的space-bunny-free、ling-*、minimax-*、kimi-k2.5-free等,现在实时列表里都没有了。会话跑到第 8 步、模型被下架,会话就直接失败。
七、几个必须说清的边界
隐私:免费不等于安全。Big Pickle、Flint、MiMo、Nemotron(NVIDIA 试用端点)都明确写了数据可能被用于改进模型,NVIDIA 那条更直接——「不要提交个人或机密数据」。beam-free的服务条款则明确不向中国大陆、香港、澳门提供服务。
公司代码、客户资料、密钥文件,别往这条通道上送。
条款:OpenCode 官方文档写得很清楚——「免费档聊天模型需要通过 OpenCode 使用;其他客户端请用付费模型或 Go」。插件能过第一道门,靠的是让自己在网络层看起来像官方 CLI。这是灰区,上游随时可以收紧,你也随时可能失去这条通道。
稳定性:就算过了 403,匿名通道是共享的,429、断流、中途取消都正常。长任务里「工具已经执行、模型没收到结果」的重试会带来重复副作用(重复写文件、重复请求)。真要跑重要的是,拆小步、每步落盘。
八、结论:值不值得折腾
插件本身是合格作品:MIT、340+ star、持续更新、411 项测试、错误分类做得比多数野插件干净。它的问题不在代码。
但「装上就能白嫖」是伪命题:真正决定你能不能用的,是你那条出口 IP 在不在上游白名单里。这个变量跟插件版本、跟你的操作都没关系。
我的建议很朴素:
• 想尝鲜、手上正好有干净节点→ 值得一试,优先 glm-5.3-flash-free和deepseek-v4.1-flash-free,别拿它跑无人值守的长任务。
• 没有节点、只是心疼 API 费 → 先别折腾。买节点的钱和你要跑的任务量一比,多半不划算。
• 有正式项目要交付→ 用付费模型。省下来的不是钱,是排查 403 的时间。
实验环境:Windows + DSH 0.2.1-rc.2 桌面版 + opencode2dsh 0.3.14,测试时间 2026-10-24。
复现要点:本文所有报错均为真实返回,未做删改;模型清单取自https://opencode.ai/inference/v1/models实时结果。
如果你也装了、也报了错,欢迎把报错原文贴在评论区——尤其想知道有没有人在国内家宽下真的跑通了。















































































