EN 中文
← Blog

The harness era is ending

I hand-built my agent orchestration. The platform shipped most of it weeks later.

I spent a few weeks building my own agent orchestrator. I called it Nerve — a dispatcher that hands work to a fleet of workers and manages its own memory, wake-ups, and state. It worked. Then Anthropic shipped dynamic workflows in Claude. A few weeks later, the platform had built most of the orchestration layer I’d just hand-wired.

This isn’t a one-off. It’s a pattern.

Let me say what a harness is first. The model is the engine; the harness is the scaffolding you bolt around it: orchestration (who runs first, who runs next), memory (not going amnesiac across sessions), scheduling (waking up at the right time to do the right thing). The model doesn’t come with any of this, so everyone building agents this past year has been hand-building a harness. I did too.

But a harness has a fate baked in: it patches what the platform is missing, and the platform always absorbs those patches. The problems I solved building Nerve — parallel dispatch, sub-task orchestration, structured output — were all, in hindsight, general problems the platform was bound to solve. I was just a few weeks ahead of the official version. A few weeks isn’t a moat. It’s a lead time.

So the real question was never “can I build this.” It’s “will the official side build this into the next version.”

The things that will get absorbed — generic orchestration, generic memory, generic scheduling — don’t hand-build them. You’re racing the platform roadmap, you’re going to get absorbed, just wait.

The things that won’t — your private data, your specific business workflow, your distribution channels, your judgment and taste — the official side will never know these. That’s where you build.

I’m not saying Nerve was wasted. Building it is how I learned which lines get absorbed and which don’t, and that read alone paid for the ticket. But if you’re still spending weeks hand-building a generic orchestrator expecting it to be a wall — it isn’t. It’s the next release note.

To judge whether an agent project is worth building, ask one question first — “will the official side build this into the next version?” If yes, don’t build it, wait. If no — because it depends on context only you have — that’s your moat. The harness era is ending, and it’s time to build where the model can’t reach.

Harness 的时代正在结束

我手搓的 agent 编排,几周后就被平台内置了。

我花了几周,自己搭了个 agent 编排,叫 Nerve——一个调度官,把活分给一队 worker,自己管记忆、唤醒、状态。它能跑。然后 Anthropic 在 Claude Code 里原生支持了 dynamic workflows。我手搓的那层编排,平台几周后就内置了一大半。

这不是个例,是规律。

先说清楚 harness 是什么。模型是引擎,harness 是你围着引擎搭的脚手架:编排(谁先干谁后干)、记忆(跨会话不失忆)、调度(什么时候醒来干什么)。模型本身不带这些,所以这一年所有做 agent 的人都在手搓 harness——我也是。

但 harness 有个宿命:它在补平台的短板,而平台每一代都在把上一代的短板,做成自己的内置功能。我搭 Nerve 时解决的几个问题——并行分发、子任务编排、结构化输出——回头看,全是“官方迟早会做”的通用能力。我只是比官方早了几个星期。早几个星期,不是护城河,是时间差。

所以真正的问题不是“我能不能搭出来”,而是“这个能力,官方下一版会不会内置”。

会内置的(通用编排、通用记忆、通用调度)——别手搓,你这是在跟平台的路线图赛跑,早晚要被收进去,等就行。

不会内置的——你的私有数据、你具体的业务工作流、你的分发渠道、你的判断和品味——这些官方永远不知道,这才是搭东西的地方。

我不是说 Nerve 白搭了。搭它让我摸清了哪条线会被吸收、哪条不会,这个认知本身值回票价。但如果你现在还在花几周手搓一个通用 orchestrator,期待它是壁垒——它不是,它是下一个 release note。

说白了:想判断一个 agent 项目值不值得做,先问一句——“这个能力,官方下一版会不会内置?”会,就别搓,等;不会(因为它离不开只有你才有的东西),那才是你的护城河。Harness 的时代在结束,我们的力气,也该花在模型吸收不了的地方了。