为什么定义很重要

学习一个东西,最好的方式之一,是回到它最基本的定义。 不要因为一个概念看起来像常识,就停止追问:它到底是什么?能不能用一句话说清楚? 这个问题看似简单,实际上很难。我们经常会使用一个词,却未必真正理解它。我们知道它通常在什么场合出现,见过别…

2026-08-29

别把混乱误认成思考

早上坐到电脑前,脑子还很清楚。邮箱里有几封信,Slack 上亮着红点,还有两件昨天留下的小事。它们都有明确的下一步:回一句,确认一下,改一个数字。做完以后,列表短了,心里也轻了一点。 真正需要思考的工作被留到了下午。轮到它时,早上的清醒已经…

2026-08-28

给 Agent 原语,而不是替它封装工作流

给 Agent 设计 Harness 时,可以从少量清晰的原语开始,让具体工具和工作流随任务出现。 Agent 改变了封装的成本 没有 AI 时,SDK 通常是一项合理的权衡。它替开发者处理认证、分页、重试和类型转换,把复杂的 API 包装…

2026-08-28

Long-running Agent 并不一直运行

我们通常把“长期运行”理解为一个进程长期存活。数据库、消息队列和 Web 服务启动以后,会持续占用内存、监听请求,直到进程退出。按照这种直觉,一个 Long-running Agent 似乎也应该是某个一直在线、始终思考的模型实例。 Age…

2026-08-28

什么是端到端交付

客户很少会把一个整理好的任务交到你手上。 他不会说:“请分析线索质量和销售转化流程,找出成交率低的原因,再提出改进方案。” 他更可能只说: “最近线索不少,但就是卖不动。” 这句话没有明确的输入,没有验收标准,甚至未必指出了真正的问题。 原…

2026-08-28

贵了十倍,我为什么还是选了 Haiku

最近,我需要为一个上下文释义功能选择模型。用户点选英文单词后,系统要结合它所在的句子和段落,只返回一个 1~8 个汉字的中文释义。 任务看起来很轻,真正测试时却不简单。技术语境里的 应该译成“竞态条件”,而不是“竞争”;消息系统里的 也不能…

2026-08-27

我是 Agent 的导盲犬

Agent 不是我的导盲犬。恰恰相反,它更像一个能力惊人、行动迅速,却看不见现实的盲人。而我,是它的导盲犬。 它可以在几分钟内读完一个代码库,搜索成百上千份资料,写出程序,操作浏览器,把一个模糊的要求拆成几十个步骤并连续执行。它不会累,也很…

2026-08-27

信息和知识的区别

同一个标签,不同的问题 打开 X 搜索 AI memory,会看到许多看似相关的讨论。有人关心上下文窗口中的信息保留,把 memory 理解为当前任务的工作记忆;有人讨论跨会话或跨项目的长期记忆;有人关注 Agent 能否记住用户偏好;还有…

2026-08-27

别在图的生长阶段,就急着树化

编程语言里的字符串,起初看起来几乎不值得设计。它不就是一串字符吗?把字符连续存进内存,再提供长度、拼接和下标访问,事情似乎就结束了。 C 语言里的字符串通常是一段以零字节结尾的 数组。 计算零字节之前有多少个字节, 取出第 i 个 。只处理…

2026-08-26

AI 已经够用了,难的是选对 Harness

前阵子,我在拆一个 HubSpot 查询需求。目标只有一句话:员工输入自然语言,就能查到自己权限范围内的数据。 听上去只要把模型和 API 接起来就行:模型能理解问题,HubSpot 也有 API。可自然语言问题最终要变成一次真实请求,中间…

2026-08-25

AI Native,从重新设计工作开始

懂 AI 术语、消耗更多 Token,或者给每个工作流都加上 Agent,都不代表 AI Native。 AI Native 意味着看清 AI 改变了哪些成本与约束,再据此重新设计工作。目标是做出更好的结果,并为结果负责。多用 AI 本身没…

2026-08-15

AI 编程还在等待自己的 Spring Boot

AI 编程已经跨过“模型能不能写代码”的阶段,却还没有跨过“团队怎样稳定交付”的阶段。 Prompt、Context、Memory、Tool、MCP、Sandbox、Workflow、Eval,这些零件越来越齐全。真正缺少的是一条被广泛接受…

2026-08-12