先贴上原帖:
用一个真实需求测试了DP V4 Flash + grok4.5 + 5.6-luna + opus 5的表现
背景
经过上次测试之后,我觉得grok4.5快,有小聪明,但是思考问题不够深。deepseek v4 flash稳,而且质量是OK的,虽然没有opus5和5.6那样好,但是用三分之一的时间执行加修复是可以接受的,尤其是太便宜了,叠加opencode go的订阅计划和现在2x的用量,约等于免费。
过程
于是我打算先拿一个新项目试手,这个项目想做很久了,一个兼容rocketmq协议的低内存的消息队列,一开始是使用fable 5和opus 5进行规划和写plan,然后我手动去opencode执行,再回来手动叫claude审阅,然后把修改意见再复制粘贴到opencode。这么做了大概两三天,发现这条路是真的走的通的,于是小脑瓜一动,做一个自动交接的工具吧,于是就有了handoff。handoff除了第一期mvp是claude code做的,后面全程是claude code通过handoff派发到opencode去做的。大部分bug和坑已经踩完了。消息队列那个项目的后半部分也是claude code通过handoff派发到opencode去做的。我目前还没有专门做过优化,所以说能看到的代码,基本上就是claude规划 + deepseek v4 flash执行的能力,大家可以自行clone下来让你们的模型去评测一下,打个分,看看能否达到你们的要求。
handoff的功能、流程、特性
- 你的强模型harness作为审核者/协调者把一个具体的plan或者任务派发到某个执行者(目前只支持opencode、claude code、codex、grok),然后挂起监听。
- 执行者在执行的时候会有提问/权限审批,harness接到后进行回答或者审批
- 执行者结束后进入待审核状态,harness检查,没问题就done掉这个任务。
- 有问题的话,通过continue命令让执行者继续在原会话中返工。
- handoff自动处理git基线,自动创建工作树/分支,并以此为目录打开执行者harness。
- 断线自动重连,更新不影响不打断执行者的任务执行。(但是为了安全起见,有任务执行时不会更新,需要使用–force强制更新)
- 支持派发到远程开发机(这是我最爱的功能,我上下班的路上它也在干活)
- 安装时自带skill,用户无学习成本,让agent自己搞去。
- 审批链:可以自己配置一个低成本模型做第一道自动审批,主harness是第二道,前面两道都不敢审批的,会提到用户这里进行审批。
看着好像是挺麻烦,但是需要我们做的就是安装,和一句指令:“/handoff handoff到devbox执行,使用opencode,整个plan派发,让执行者内部使用subagent执行。”

工作流程
我的工作流程是这样的,claude/codex + superpowers用来做需求、规划、spec和plan,然后在claude.md/agent.md中写明交接规则,这样的话在writing-plans结束的时候就会主动问我是不是要派发到opencode。合并、测试之类的派发grok去干,已经订了会员,不用白不用,grok是真快。下面是我的claude.md关于派发的规则。

进阶用法
- 设定一个目标,写好spec,分成N个plan,然后先写第一个plan,让你的harness调子agent作为审核者,由子agent去派发到执行者,并且负责回答问题、审批和审阅代码。同时在主会话中继续聊需求,定后面的plan,都定好之后,让它按照这个流程自主推进。以上是我的理想形态,也是我开发handoff桌面端正在用的流程,现在正在优化这个流程,争取早日让agent24小时连轴转。
- 把执行者安装在远程工作机上(目前执行者只支持claude、codex、grok、opencode,主harness不限制),然后公司内部共用,能达到另一种cpa/sub2api的效果。但是要注意并发,在实际使用过程中要注意CPU/进程数/内存能撑得住,如果进程数超过一定数量,handoff会拦住不派发,不然会把机器打崩(Mac的开放给用户的进程数只有2666,Linux大的多的多)。


主harness的区别
先说Claude code和grok,这两个作为主harness,也就是审核者/协调者的时候,是有原生的monitor/后台任务唤醒机制的,也就是可以挂一个后台运行的长链接,随时在当前会话被唤醒继续处理,你可以并行在当前会话继续聊需求,或者让它做其他的事情,就把handoff当成一个子agent处理。但是codex和opencode是没有这个机制的,只能是前台挂着,或者让子agent去派发。
附上opencode调用deepseek v4 flash的成本


做这两个项目v4 flash按照API价格是一共消耗了22.32刀(没开opencode的时候用官方API还花了十几块钱,没算进去),还有一部分是kimi-2.7消耗的,那是claude觉得flash做不了,换了一个model。这也是个坑,最好在claude.md/agents.md中明确下来执行者和模型,虽然handoff有配置的执行者和模型,但是架不住有AI耍小聪明。
结语
我的本意是通过这种方式把Claude从20x的订阅改到5x,但是事与愿违,现在的干活效率远超之前,于是就要干更多的活,结果还是要20x的订阅。
附上两个项目的链接:
顺便开个投票,看看有没有真实需求:
- Windows原生执行机,无需wsl2
- 桌面端,可以查看所有派发的任务和工作树
- 移动端,随时查看所有派发的任务和工作树
- 移动端,除了以上功能,再加随时vibe coding