对 Coding Agent 最友好的,是端到端测试 Harness

E2E Test Harness Is the Most Agent-Friendly Infrastructure

上周我让一个 Coding Agent 给一个 Web 应用实现登录功能。三轮迭代之后,它汇报:「完成了,所有测试通过。」

我打开浏览器一看:登录按钮不见了。

我把截图丢回去,它看了一眼,回复:「抱歉,上一轮我把按钮组件误删了。」

有意思的不是 Agent 会犯错——犯错很正常。有意思的是: 它直到看见那张截图,才知道自己犯了错。 那三轮迭代里,它有编译反馈,有测试报告,但它没有任何办法知道最终页面长什么样。它的「世界」是残缺的。

这件事让我更确认了一个琢磨了很久的判断:

对于 Coding Agent,最重要的基础设施不是更聪明的模型,不是 Benchmark,而是端到端(E2E)Test Harness。

[Read More]

数字员工是下一个十年的故事

Agents Change Software, Digital Employees Change Organizations

我的钉钉组织里有两名不领工资的「员工」。一个负责开发、测试、部署另一个;另一个在用户群里服务真实的同事。两个的主管都是我。

经常有人问我:这两个东西到底是什么?Agent?机器人?助手?

我的答案是: 它们是岗位。

这个回答背后,藏着一个我琢磨了很久的判断:

Agent 能解决能力问题,而数字员工解决组织问题。AI 真正进入企业,不是因为模型更聪明,而是因为它第一次拥有了组织身份。

模型能力的竞赛已经足够激烈,也足够拥挤。但企业 AI 真正的瓶颈从来不在能力——而在 信任。能力决定一个 AI 会不会干活,身份决定它能不能上岗。下一个十年的故事,不是造出更聪明的 Agent,而是让 AI 以「岗位」的形式,真正进入组织。

[Read More]

Evals 是新的 PRD

Evals Are the New PRD

上个月,我们团队一位产品经理花了两周写了一份 40 页的 PRD,描述一个智能审批 Agent 的需求。用户故事、流程图、异常分支、验收标准,写得滴水不漏。

她把 PRD 丢给 Coding Agent,说:「按这个做。」

三天后 Agent 交付了。代码能跑,测试通过,接口对齐。但她试了五分钟就皱眉:「这不是我要的东西。」

哪里不对?她说不清。审批流程是对的,权限校验是对的,消息通知是对的。但 Agent 处理「领导已读不回超过 48 小时」的策略,不是她脑子里想的那个。PRD 里写的是「超时后自动提醒」,Agent 就老老实实给所有超时审批发了一轮提醒——包括那些「领导出差没看手机」的非紧急件。她真正想要的是「先判断这条审批是否紧急,紧急的才提醒,不紧急的等下次汇总」。

这个判断,她没写进 PRD。因为她觉得这是「常识」。

Agent 没有常识。Agent 只有你给它的判据。

Evals Are the New PRD

[Read More]

企业最有价值的 AI 训练数据,不是文档内容,是隐性知识

Intelligence Exhaust: The Data Asset Enterprises Must Protect

太平洋汽车的内容被豆包、千问和 DeepSeek 引用之后,合计触达了 1237 万用户。

这个数字是太平洋汽车 App 自有流量的 113.8 倍

一百一十三倍。超过一百倍的用户通过 AI 平台「消费」了太平洋汽车的内容——他们在豆包的聊天窗口里问了一个关于买车的问题,豆包引用太平洋汽车的评测给出了答案,用户满意地关掉了对话。

然后呢? 太平洋汽车什么都没得到。 没有访问,没有注册,没有广告展示,没有用户画像。内容被吃干抹净,连渣都没剩。

这个故事来自极客公园上周的一篇报道,讲的是 AI 时代互联网流量的大崩塌。但让我想了很久的不是流量问题——而是一个更底层的问题:

如果内容本身不是最有价值的资产,那什么才是?

Intelligence Exhaust: The Data Asset Enterprises Must Protect

[Read More]

私有 Eval 是终极护城河

Private Evals Are the Ultimate Moat

上个月和一位做 HR SaaS 的朋友吃饭。他刚花了两百万买了一批行业测评数据,准备训练自己的垂直模型。

我问他:「竞品如果也买同样的数据呢?」

他愣了一下:「那……我们还有先发优势。」

「先发多少?」

「大概……半年?」

半年。这就是原始数据作为护城河的保质期。

三个月前,我写了一篇 中国 SaaS 厂商的护城河应该怎么建,核心公式是:

护城河 = 垂直行业数据资产 × 行业 Know-How × 客户成功体系 × 生态协同

那篇文章里,我把「数据壁垒」放在七大维度的第一位,画了一个数据飞轮:客户使用 → 数据沉淀 → 模型训练 → 更精准的服务 → 更多客户使用。

三个月后,我要修正自己。

飞轮里转的不是数据,是 eval。

Private Evals Are the Ultimate Moat

[Read More]

模型迭代越快,架构越重要

The Faster the Model Evolves, the More Architecture Matters

上个月一个团队找我聊数字员工落地。

他们已经有 12 个 agent 在跑了。销售助手、客服助手、HR 问答、会议纪要……每个都是独立项目,独立部署,独立维护。

CTO 说:「我们想扩到 200 个。」

我问:「现在 12 个的权限怎么管的?」

他愣了一下:「每个 agent 一个 API key,配在环境变量里。」

「记忆呢?A 部门的 agent 会不会读到 B 部门的会议纪要?」

「……应该不会吧。」

「两个 agent 对同一件事判断冲突了,谁说了算?」

沉默。

12 个靠人盯,200 个靠什么?

而且这 12 个跑在半年前的模型上。模型半年一换代,agent 策略周级迭代——你还没把 12 个理顺,底座已经换了。这不是「多部署几个」的问题。这是架构问题。

Architecture Decides the Battle Before It Starts

[Read More]

钉钉的护城河不是更好用的 App,是组织世界的信任基础设施

DingTalk's Moat Is Trust Infrastructure, Not a Better App

前两天看到一篇文章,标题很刺激:「飞书被收编,钉钉要改名,企业微信慌不慌?」

核心论证链很锋利:互联网办公平台第一次降维打击了传统企业软件,然后 AI Agent 第二次降维打击了超级 App。结论是 To B 软件只剩两种位置——要么成为入口,要么成为入口背后绕不开的系统。

写得很好。但我读完之后一直在想一个问题: 他说的「绕不开的系统」,对钉钉来说到底意味着什么?

不是「钉钉也能活下来」这种防御性思考。而是:如果钉钉主动选择,它应该把资源押在哪里?

DingTalk’s Moat Is Trust Infrastructure, Not a Better App

[Read More]

一句话总结,压缩即智能

One Sentence Before You Hit Send

昨天一个同事在群里甩了一个 HTML 文件。打开一看,漂亮极了——渐变色的表头、响应式布局、数据可视化图表、三段式结论。AI 生成的,三秒钟的事。

群里安静了十分钟。

然后有人问了一句:「所以……结论是什么?」

又过了五分钟,发文件的人回了一句:「我也没细看,AI 生成的,大家自己看吧。」

这十分钟的沉默,就是 AI 时代最贵的成本。

One Sentence Before You Hit Send

[Read More]

你的下一个下属,不需要工位

Your Next Report Does Not Need a Desk

上个月一个客户请我们做数字员工。

老板看完 demo,很兴奋。大模型能写邮件、做总结、回答制度问题,他觉得万事俱备。

「给销售、采购、客服各配一个数字员工,下个月上岗。」

工程师于是创建了几个角色,写了几段提示词,把聊天窗口换成了公司 Logo。

数字员工似乎就诞生了。

星期一早上,销售总监问它:「今天该先跟哪个客户?」它不知道。采购问它:「这批货该不该拒收?」它不知道。客服问它:「这个投诉要不要升级?」它也不知道。

老板很失望:「不是说好什么都会吗?」

什么都会。这四个字,是数字员工项目最常见的死因。

Your Next Report Does Not Need a Desk

[Read More]

克制是文明最贵的表达

Restraint Is the Most Expensive Expression of Civilization

人的放纵是本能,自律才是修行。短时间让你快乐的东西,一定能够让你感到痛苦;反之,那些让你痛苦的东西,最终都能让你功成名就。低级的欲望,放纵即可获得;高级的欲望,只有克制才能达到。

——一段常被归于罗素的话

上周一个工程师跟我说:「我让 AI 写了一个模块,它给我吐了四万行代码。我看了两天,删了三万行。」

我问他:删的时候什么感受?

他说:「心疼。每一行看起来都有道理。但我知道如果留着,这个模块就死了。」

同一天晚上,我女儿问我一道数学题。她卡在第二步。我张嘴就要说「你试试把等式两边同时除以——」,话到嘴边咽回去了。我说:「你再看看题目里哪个条件你还没用上。」她想了四十秒,自己做了出来。

两件事。一个是删代码,一个是忍住不说。本质一样: 你有能力做,你选择不做。

Restraint Is the Most Expensive Expression of Civilization

[Read More]