摘要:DeepSeek 开源 Harness 框架,完整公开了 AI Agent 开发过程。本文带你逐条拆解这份包含 12293 次提交、683 篇设计笔记、4 篇事故复盘的“施工日志”,看清从“套壳聊天”到“能干活”之间差了哪几层窗户纸。


8 月 13 日,DeepSeek 把一个做了两个月的项目扔上了 GitHub。
MIT 协议,三个多小时两万七千 star,第二天翻了一倍。

名字叫 Harness。挽具的英文原义,就是套在马身上的那层具。
模型是马,harness 是套在模型外面的那层壳——工具、权限、记忆、日志,全归它管。

模型与挽具

朋友圈一夜之间全是转发的。
我点开仓库翻了两个小时,然后默默关掉,回去改我自己项目的 bug。

不是我清高。
是我发现一件挺荒诞的事:他们这两个月踩过的坑,我过去半年几乎挨个踩了一遍。

我先说结论——这个东西最值得看的不是它多先进,是它把“一个 agent 产品到底难在哪”公开了。

一次 AI Agent 开发的完整“施工日志”

DeepSeek 这次开源的不是一个模型,是一个叫 DeepSeek Harness 的 agent 框架。
仓库里的数字挺吓人的:

提交次数12,293
开发天数64 天(6月10日到8月13日)
单日最高提交887 次(7月30日)
设计笔记683 篇
事故复盘4 篇(编号0001到0004)
被否决的方案11 篇(专门留档)

日均 192 次提交。
7 月 30 日那天 887 次提交加 47 篇设计笔记。
这个吞吐量人手敲不出来,他们自己也不掩饰:代码库主要由编码 agent 开发。

更狠的是,他们连施工日志都没删。
683 篇设计笔记、11 篇“我们差点这么干后来没干”的否决记录、4 篇标题就写着“我们是怎么搞砸的”事故复盘,全部公开。
一家模型公司,把自己怎么翻车的全过程摊在桌上。
这事我没见过第二家。

我为什么敢说自己“踩过一模一样的坑”

因为过去半年,我利用职务之余自己写了一个 GEO Agent。
不是我吹牛,是真干过——基于 Next.js 14 和 Vercel AI SDK v6,从对话引擎、技能系统、多模型调度,到沙箱执行、上下文压缩、成本核算,全栈手搓。
现在跑在 adgine.cn 上,每天给真实的客户做 GEO 分析。

我的项目结构长这样:

app/api/chat/          # 对话入口(SSE 流式)
lib/chat-engine.ts     # 核心引擎(1600 行)
lib/system-prompt.ts   # 系统提示词组装(700 行)
lib/skill-loader.ts    # 技能加载器
lib/conversation-summary.ts  # 上下文压缩
tools/                 # 14 个工具(搜索、代码执行、GEO API……)
skills/                # 6 个技能包

光核心引擎 chat-engine.ts 就 1600 行。
这还不算工具实现、前端组件、数据库层。
所以当我看到 DeepSeek 的仓库结构时,那种感觉不是“学习”,是“照镜子”。

他们转发的是“DeepSeek 又发新东西了”。
我看的是:哦,原来你们也在“模型返回的 JSON 是坏的怎么办”这件事上专门写了一套修复逻辑;原来你们也纠结过“系统提示词到底该塞多少东西进去”;原来你们也遇到过“用户说一句话,agent 自作主张调了十次工具”的问题,然后用了一个跟我几乎一样的思路去治。

成本冰山

一个能用的 Agent 和一个套壳聊天框,差了多少层窗户纸?

差别大到什么程度?
大到 DeepSeek 自己管这个叫“harness”,而不叫“chatbot”。

你平时用的 ChatGPT、文心一言,那是 chatbot——你说话它回话,碰不到你电脑里的东西。
harness 是能读你文件、改你代码、替你敲命令的那层壳。
模型还是那个模型,多出来的是一双手。

这层窗户纸有多厚?这么说吧:

  • DeepSeek 为了管好这双手,给一次最简单的对话记了 44 条日志,其中只有 6 条是模型能看到的
  • 为了算清一次任务的成本,他们把发给模型的每一个字都称了重——你问一句 29 个 token 的话,harness 替你付了 13,809 个 token 的入场费
  • 为了防这双手乱动,他们从操作系统层面给它焊了一扇门——macOS 用 sandbox-exec、Linux 用 Landlock、Windows 用受限令牌

这些数字不是为了炫技。
每一个背后都是一个真实的坑,而这些坑,我全都用自己的头发验证过。

这个系列怎么写

不打算写成源码解析,我自己也不喜欢看那种文章。
我会尽量用人话讲清楚:agent 到底是怎么干活的、为什么会出错、成本藏在哪、以及——如果你想自己做点什么,哪些坑可以绕着走。

每一篇都会拿 DeepSeek 的做法和我自己的实现做对照。
不是为了比谁好谁差,是为了让你看到:同一个问题,两种真实的解法,各自的取舍是什么。

下一篇,先算一笔账。
你知道你随便问 agent 一句话,它开口之前就已经替你花了多少钱吗?
那个数字比你想的大得多,也荒唐得多。


本文作者来自 Adgine 团队,提供 GEO 服务(让品牌被 AI 推荐),官网 https://adgine.cn

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐