核心要点
- 56 次重复同一错误:DeepSeek V4 工具调用 schema 错了、收到报错也不改,10 亿 token 里平均重复 56 次——这就是 "tool confusion",开源模型从能用到好用的最大鸿沟。
- 修复文件:像数据库 migration 一个修复一文件——拦截错误参数、确定性修好、回传 repair hint;比喻是"先帮他避免撞车,再解释该怎么开"。
- 16,000+ 修复变体:覆盖数千亿 token,日处理量从几十亿涨到约 6000 亿;Kimi、MiniMax 同样的问题都已修复。
- 90% AI 设计感可修掉:同一套思路用于设计垃圾——24 份参考文档、10 条 design smell、7 种 pattern,强制 OKLCH 而非 HSL 是关键招。
- Taste 模型:自动从你的编码行为学习偏好,生成存在 Git 仓库里的 markdown skill 文件——透明、每次 PR review 可见、永不过期。
- 即将开源:Command Code 将在 SF 的 AI 工程师大会宣布开源;WordPress 创始人 Matt Mullenweg 听说后主动找上门成了天使投资人。
章节时间轴
- 0:03 嘉宾与渊源 — 主持人与 Awais 在 AI 之前就在 WordPress 社区相识;Awais 自述 DevRel 与 300+ 开源项目的背景。
- 0:50 从 GPT-3 到 Command Code — 2020 年拿到 GPT-3 早期访问,CLAI → LangBase(月 12 亿 agent 运行)→ 押注 coding agent。
- 2:22 Taste 的诞生 — neuro-symbolic 架构如何把"我偏好 pnpm 但 link CLI 用 npm"这类习惯沉淀成 taste/skill 文件。
- 4:38 发现 tool confusion — 5 月围绕 DeepSeek V4 Pro 是否真比 Opus 好的争论,引出工具调用这个反常现象。
- 6:09 问题拆解 — 用"查认证怎么实现"这类任务说明 coding agent 的工具调用流程,以及开源模型卡在哪。
- 7:42 为什么模型不听报错 — DeepSeek 重复错误 56 次的"alpha male"特性;Awais 关于训练数据让模型"自认永远正确"的猜想。
- 9:13 修复逻辑详解 — 病毒推文截图、Zod 严格报错、repair 文件像 migration、回传 result + hint 的"教开车"比喻。
- 11:31 真实案例与 harness 真相 — read file offset 的判断、markdown link 误生成;cloud code 隐藏错误、无动力修开源。
- 13:04 从 DeepSeek 推广到全体 — Kimi、MiniMax 同样问题,16000 修复变体;权限模式让模型"变笨"的观察。
- 16:09 生态影响与新方向 — 1 美元 Go Plan 证明开源模型够好、可能推动 DeepSeek 降价;引出设计垃圾这一新战场。
- 17:44 修复设计垃圾 — indigo slop、7 种 surface pattern、OKLCH vs HSL、设计师 1.5 秒识别 AI 作品。
- 25:24 Taste 深入与差异化 — Taste vs skills、KL divergence 过滤已知知识、置信度分、自动学习与替换依赖。
- 36:12 路线图:开源与 Apple 哲学 — Command Code 即将开源、Matt Mullenweg 入局、三种生态哲学(Windows/Linux/Apple)、DeepSeek 自建 coding agent。
详细内容
一、从 GPT-3 早期玩家到"唯一的 agent 是 coding agent"
Awais 的起点是 2020 年 COVID 高峰期。他做了一个走红的 Corona CLI,随后 Greg Brockman 和 Sam Altman 给了他 GPT-3 的早期访问权限。他翻出当时记录:2020 年 7 月,Greg 问他"打算用这个 API 做什么用例",他回答"建议下一行代码,像代码片段一样"——这比 GitHub Copilot 公开早了一年多。这个想法做成了 CLI 工具 CLAI(他自称一直是"CLI 爱好者")。
这条线后来长成了 AI 云 LangBase,做到月运行 12 亿次 agent,还建了记忆基础设施。但 Awais 现在的判断是:只存在一种 agent,就是 coding agent,它什么都能做。他反问,为什么要把这种能力藏在记忆系统或某种 primitive 后面?于是那个 6 年老的代码库被重塑成了 Command Code。
Command Code 起源于一个个人观察:他自己用 Command Code 比用别的 coding agent 多得多,接着团队成员也开始用。在此过程中他们做出了一个叫 "Taste One" 的 meta-neuro-symbolic 模型——这是后面整期的两条主线之一。
二、Taste:从"人"到"模型"学习编码品味
Awais 的逻辑链是:他写了 27 年代码、发了 300+ 开源项目,"对很多事有很强的意见",而且常做最前沿的东西——前沿到没有文档可供 AI agent 去读、RAG 也没用。在这种场景下,他的意见比 LLM 能找到的东西更值钱。于是他把这种行为编码进 neuro-symbolic 架构:如果系统从他身上学到东西,就像 skill 一样替他记录下来,这就是 "Taste"。
他举的例子很具体:如果系统看到他大量用 pnpm,但本地 link CLI 时用 npm global link,它会学到"几乎所有装包场景偏好 pnpm,唯独本地 link CLI 用 npm"。这些习惯沉淀成 taste 文件,与 skill 文件非常类似。关键特性是:它按仓库(per-repository)自动学习,构建出一个不啰嗦的 skill 库——不是把所有东西都塞进去,而是只记录跨工作反复出现的偏好和模式,且可来自任意 coding agent。触发学习的时机是当你把东西 merge 进 main,此时能回看你整体的 accept、edit、reject。
后半段他进一步澄清 Taste 与 skills 的关系(他专门写过博客):Taste 是最高阶位(highest order bit),是管理 skills 和 rules 的自动引擎——它替你创建 skills、保证它们不过期,你也可以自己编辑。他展示了自己建 70+ 个 CLI 后沉淀的"建 CLI 的全部 taste",小小一个文件:知道他只对 build 依赖用 pnpm、总是从版本 0.0.1 开始、交互用 clack 等。用法是 npx taste pull 把文件拉进仓库,然后让任意 coding agent "follow my taste of building CLIs" 并在结尾"show taste compliance"。
他强调透明性和反陈旧:很多人遇到的问题,是 agent.md 或 cloud.md 里写了坐下来时拍脑袋定的、后来过期的"宏大规则"。而 Taste 学的是大量微决策而非宽泛规则。例子:他的 PR 工作流其实是"从 main 拉最新、rebase、在分支发 PR、再切回 main 分支"——这不是他 PR 文件里写的,但系统看他反复切回 main,就自动补上这条一行规则。这种东西随时间复利累积。
他还提到一个 70+ 开发者的研究:用了 Taste 后,开发者因为 LLM"跑偏"(比如该用 Hono 却用了 tRPC)而手动改文件、纠偏的次数下降了。关于置信度,人类自己写的可以直接给 1.0,从行为学到的则有好有坏——他举例自己有个用于本地调试、不想出现在 help 里的 local 选项,太琐碎不会主动写进 skill,但系统能自动捕捉。Discord 社区里一个走红的玩法:用 Opus 或 GPT-5.5 这类高质量模型建好 taste 文件,再用超便宜的模型基于该文件继续大量开发。
三、tool confusion:开源模型"慢"的真正原因
这是本期的核心技术发现。背景是录制当天(5 月 25 日)前后约 25 天,社区在激烈争论 DeepSeek V4 Pro 到底是不是真和 Opus 一样好。Awais 当时每天跑数十亿 token(现在是当时的 100 倍),必须自己做判断。
他先帮只用 OpenAI 的听众建立问题框架:coding agent 干活靠工具调用——比如用户问"这个仓库的认证怎么实现",agent 要用预置工具列目录、读一堆文件、探索、再回答。很多开源模型在工具调用这一环很糟。而模式很具体,集中在 DeepSeek 上:他形容 DeepSeek V4 Pro 有种"alpha male energy"——它发给你什么,就认定那是对的;如果它发了错误 schema,你回一个 Zod error,它不听,会在 10 亿 token 里平均把同一个错误调用重复 56 次。
主持人插问"为什么不听报错?我以为这是常识,Instructor 早就这么干了"。Awais 坦言不知道确切原因,但有个"hot take"猜想:这些开源模型可能是在"从比自己更好的模型那里学高质量数据"的体系下训练的,本性是"你告诉我的都是对的,所以别想纠正我"——他强调这部分很 vibe-based。
具体表现:某个 shell 工具的某参数本应是可选的,模型会在不该填的地方塞个空对象或 null,严格的 Zod 直接报错,然后它一遍遍发同样的调用。
四、修复方案:像 migration 一样的"repair 文件"
Awais 的解法不是把错误回传给模型,而是自己确定性地修好。他把修复逻辑类比成数据库 migration——一个修复一个文件,最初只有 3200 行修复代码。比如模型本该发数组却发了 JSON 字符串,他能确定性地转成数组;修好后不只回传 result,还附一条 repair hint:"你本该发这种数据,但结果照样给你了。"
他给的比喻最传神:像教人开车,对方快撞上别的车时,你先帮他避免撞车,再解释他原本该怎么做。效果惊人——一旦回传 result + repair 逻辑,紧接着第三次工具调用就修对了,模型"突然变聪明"。另一个例子是 read file 没给 offset(不知道读头 100 行还是尾 100 行),他就做判断:第一次读就给前 100 行;模型很快意识到"我其实在读 log 文件、需要的是最后 100 行",于是自我修正,而不是触发那 50+ 次平均失败。还有模型莫名给文件路径生成 markdown link——同样可确定性修复,不浪费 token。
他顺带揭了行业的"潜规则":很多开发者改掉 cloud code 的 base API endpoint 和 key,拿 cloud code 当开源模型的 harness。但 cloud code 把大量错误藏在 Ctrl+O 后面,用户根本看不到每个 session 50+ 次工具调用失败,只觉得"DeepSeek 怎么这么慢"。而 cloud code 没有动力修这个——他们的 coding agent 不是为开源模型建的,藏起来对他们反而有利。Awais 的观点:所谓模型差,很多其实是 tool call harness 问题,不是模型本身的问题。
五、从 DeepSeek 推广到全体,以及权限的副作用
主持人追问这是 DeepSeek 独有还是开源模型通病。Awais 一开始也以为只是 DeepSeek,但翻了近 30 天日志发现 Kimi 一模一样,于是修了 Kimi、修了 MiniMax,如今积累了 16,000 多个修复变体,覆盖数千亿 token,日处理约 6000 亿。效果是:让 DeepSeek V4 flash 这种"基本没法用"的模型,变成能真正竞争的模型。
社会化证据:更新推出后,Tom Preston-Werner 的基金 PW 的 GP 直接发问"你做了什么,为什么 DeepSeek V4 flash 突然这么稳?"——模型的"vibe"完全变了。
一个相关观察是权限模式让模型变笨:开着权限确认跑 coding agent,模型表现更差;完全 bypass 权限反而好得多。即便你坐着一路点 yes,模型也会因权限阻塞的"慢"被引向错误方向。Awais 推测这可能和训练方式有关。机理与工具调用一致:模型看到的工具调用错误越少,就越有创造力、能探索更多、能跑得更久。他举例一个用户在 DeepSeek 上跑了 70 亿 token、连续 12 小时以上的 session,把使用页都跑崩了——团队就是这么发现他的。
六、同一套思路修"设计垃圾"
Awais 把 repair 思路推广到了"design slop"——就是所有 LLM 都爱用的那种 indigo 紫色渐变(他特意纠正:他爱紫色,问题是 indigo slop 不是 purple slop;并提到 Mario Zechner 当时有篇走红的设计垃圾帖)。
方法论:他和一批优秀设计师聊过,发现这同样是个"有限集合"问题——大多数 LLM 犯的设计错误是有限的,给它们一个组合式框架就能"修复它们的设计思维"。具体只有 24 份参考文档、10 条 design smell、7 种 pattern,放进一个 skill 文件即可,在开源/闭源模型上效果一致。
关键洞察包括:
- 意图优先于构图:让模型设计 dashboard,它们不想"意图"就直接糊给你"三张卡一排、左边或顶上一道边框"。但若给它们 7 种"surface area"模式(比如 dashboard 是"监控面",意图就是 monitor),它们做得非常好。这 7 种 pattern 来自和多位设计师的交流,是设计师真实的工作方式。
- 强制 OKLCH 而非 HSL:Awais 自己不用 OKLCH,但发现 LLM 极擅长它。LLM 用 HSL 时控制不好明度(lightness),而人眼一看就知道两个颜色不一样;强制用 OKLCH 后,模型对色板的控制远超其他方式——这也是他设计师朋友的做法(主持人补充:色彩理论每进步一次,CSS 函数就得跟着改,这正是发明 OKLCH 的原因)。
验证:他们做了一批落地页给设计师看,设计师约 1.5 秒就能分辨"这是 AI 做的"还是"有人类看过的";把这些差异写下来,全是可确定性修复的 pattern。结论是约 90% 的设计垃圾可修——这不是能力差距,而是"契约差距"(contract gap):用户只会说"修一下设计、让它更好看、更 pop",而 harness 没把"好设计师的品味"作为契约告诉 LLM。他演示了用 slash design skill 把自己文档站一张乱糟糟的 2.6 折扣促销截图,重做成像电影票一样精致的设计。团队还有成员正和安全社区合作,想把同一套思路用到代码安全:从日志找最常见的安全反模式,自动修包、让 LLM 持续遵守安全准则。
七、路线图:开源、Matt Mullenweg 与"Apple 哲学"
差异化上,Awais 说他们占住两个方向。一是 Command Code 作为全功能 CLI coding agent,同时支持商用和开源模型——但他们的 PMF 在开源模型市场(因为 Claude 对工具调用很宽容,harness 出错也能自我修复,开源模型不行)。二是 Taste。
最大的前瞻消息是即将开源 Command Code,他希望能在 SF 的 AI 工程师大会上宣布(前提是理顺那个 6 年老仓库的种种 quirk)。Awais 透露自己有 13 年 WordPress core 背景,Matt Mullenweg 听说他们要开源后主动联系,成了天使投资人。开源目的是让 Command Code 完全可 hack,无论商业模式走向何方。
产品哲学他用三种类比:Windows(什么游戏都能跑,他说 Open Code 是这类,什么模型都支持)、Linux(自己造驱动,像树莓派 Pi,什么都能搭)、Apple(团队选的路线——只收最好的开源/闭源模型,不做 1500 个模型的大杂烩,但任意可 hack,比如你想塞本地模型也行)。
最后两人聊到 DeepSeek 宣布要做自己的 coding agent(DeepSeek Code)——很多评论当初就在 @DeepSeek 团队问"你们怎么不自己做 coding agent",约一周后 DeepSeek 就宣布招人了。但它只会服务 DeepSeek。Awais 顺带提到一个数据点:某模型(听感为 Claude 3.7/3.7 max 一类)发布才两三天,已是 Command Code 上第二常用的模型。
金句
"DeepSeek V4 Pro 有种奇怪的'alpha male energy'——它发给你什么,就认定那是对的。你回一个 Zod error,它根本不听,在十亿 token 里平均把同一个错误重复 56 次。" —— Ahmad Awais 7:42
"就像教人开车:他快撞车时,你先救下他,然后再解释他原本该怎么做。" —— Ahmad Awais 10:45
"你只是坐在那儿想,DeepSeek 怎么这么慢?而他们根本没动力去修——他们的 coding agent 不是为开源模型造的。" —— Ahmad Awais 12:18
"如果模型看到的工具调用错误越少,它们就越有创造力、能探索更多、能跑得更久。" —— Ahmad Awais 15:22
"好设计师约 1.5 秒就能认出'这是 AI 做的'还是'有人类看过的'——而他们指出的差异,全是可以确定性修复的 pattern。" —— Ahmad Awais 21:33
"我把它当 Apple 来做:它会有最好的开源和闭源模型,不会有每一个模型,但你能以任何方式 hack 它。" —— Ahmad Awais 38:33
提到的书·产品·人物
- Ahmad Awais(人物,本期嘉宾):CommandCode.ai 创始人,27 年编码经验、300+ 开源项目,2020 年 GPT-3 早期玩家。
- Command Code / CommandCode.ai(产品/公司):本期主角,全功能 coding agent CLI,主打开源模型,即将开源。
- Greg Brockman & Sam Altman(人物):2020 年给 Awais GPT-3 早期访问权限的 OpenAI 创始人。
- GPT-3(产品):Awais 2020 年 7 月拿到早期访问,做出补全代码的 CLAI。
- GitHub Copilot(产品):作为时间参照,CLAI 比它早一年多。
- CLAI(产品):Awais 早期的 CLI 代码补全工具,Command Code 的前身。
- LangBase(产品/公司):Awais 此前的 AI 云,月运行 12 亿次 agent,含记忆基础设施。
- Taste One / Taste(产品/技术):meta-neuro-symbolic 模型,自动学习编码品味、生成 skill 文件;有
npx taste pull包。 - DeepSeek V4 Pro / V4 flash(产品):本期工具调用问题的主角,被修复后大幅改善。
- Kimi / MiniMax(产品):被发现有同样工具调用问题、已修复的开源模型。
- Opus 4.7 / 4.6 / Claude(产品):对照基准;Awais 称 4.6 比 4.7 更好,Claude 对工具调用很宽容。
- GPT-5.5(产品):被举例用于"先建高质量 taste 文件"的高端模型。
- Zod(产品/库):严格的 schema 校验库,工具参数错误时触发报错。
- Cloud code(产品):被指把工具错误藏在 Ctrl+O 后面、无动力为开源模型修复。
- Open Code(产品):被类比为"Windows 哲学"——什么模型都支持。
- OKLCH / HSL(技术/CSS):色彩空间;LLM 用 OKLCH 控色远胜 HSL。
- Mario Zechner(人物):当时有一篇关于 design slop 的走红帖。
- Tom Preston-Werner / PW 基金(人物/机构):投资人,其 GP 惊讶于 DeepSeek flash 修复后的稳定性。
- Matt Mullenweg(人物):WordPress 创始人,听说 Command Code 要开源后成为天使投资人。
- pnpm / npm(产品):Awais 的 taste 偏好示例(装包用 pnpm,本地 link CLI 用 npm)。
- TypeScript / tsup / Vitest / Commander / Meow / clack / Hono / tRPC(产品/库):taste 学习与依赖替换的具体技术栈示例。
适合谁听
想用开源模型(DeepSeek/Kimi 等)搭 coding agent、或对 AI 设计质量与 agent 工程化感兴趣的开发者与工具构建者。