当代码不再为人而写:Claude Code 零注释背后的 Harness 逻辑

前几天 Claude Code 因为 sourcemap 没关,导致源码被公开。这件事在技术圈引起的讨论密度很高,因为这种真正跑在生产环境里的闭源通用 Agent 产品,它的内部实现本身就是一份高价值的学习材料。

我看了一些解析文章。有讲它设计模式的,有分析它安全边界的,也有拆解 Prompt 架构的。

但有一个细节我反复确认了一下:

Claude Code 内部要求,不要写任何注释。

第一反应是反直觉。

注释难道不是为了理解代码吗?我从写代码以来接受的教育就是:复杂逻辑要写注释,接口参数要写注释,业务背景要写注释。后来在团队协作里,Code Review 如果发现某个模块的职责和边界没写清楚,是会被打回去的。

注释,一直是代码写给「人」看的那部分。

但问题就出在「人」这个前提上。

现在大家的工作流已经变了。写一个新功能,可能先用自然语言把意图丢给 Claude,让 AI 吐一版初稿,然后通过对话不断调整------「这里换个数据结构」「那个循环改成流式」。整个过程中,我几乎没有主动写过一行注释。

不是我懒了。而是注释的受众已经发生了迁移。

现在的代码,更多的时候是写给 Claude Code 这类 Agent 看的。Agent 在读代码的时候,依赖的是 LSP 解析出来的 AST,是符号索引,或者是上下文向量检索。它不需要你那一行 // 计算用户年龄 的注释------它从 calculateAge(birthDate) 的方法签名和返回类型就能推断出来。

真正的问题是,注释有时候会帮倒忙。

代码逻辑改了三版,但顶部那个 // TODO: 待优化 的注释还躺在那里。Agent 在执行任务时读到这条注释,可能会被误导,认为「这里性能有问题,我应该重构它」,然后引入一堆不必要的改动。而 LSP 和 Bash 在执行时只会忠实地跑代码本身,它永远不会跳出来说「注释里写的和代码不一致」。

过时的注释,对 Agent 来说不是辅助信息,是噪声信号

如果把这件事放进 Harness 工程的框架里看,逻辑就更顺了。

Harness 是 Agent 运行时的「工程环境总和」。

真正决定 Agent 上限的,不是你有没有这些组件,而是你有没有把这些组件工程化成一个可以长期运转的环境。

Agent 的工作环境里,代码本身是 Truth。Agent 通过工具读取文件、分析 AST、执行命令,最终输出的行动都基于「代码实际写了什么」,而不是「注释里说它应该是什么」。

注释不在执行路径上。

如果一个环境里同时存在「代码逻辑」和「注释描述」两套信息,而这两套信息可能出现不一致,那对于 Harness 来说,这就是一个需要管理的熵源

Claude Code 团队那条「不写注释」的规矩,本质上是在做熵管理------提前消灭掉一种不可验证、不可执行、且容易腐烂的信息形态。

所以结论其实很明确:

当协作对象从「人 + 机器」变成「Agent + 机器」,注释的定位必须重新评估。

这不是说所有注释都该死。而是说,注释的职能应该从「代码内的静态说明」,转移到 Harness 的动态信息注入层里去。

比如:

  • 架构意图 → 放到 AGENTS.md
  • 个人偏好 → 放到 SOUL.md
  • 模块职责 → 靠文件结构和命名自解释
  • 临时注意项 → 作为会话级上下文动态注入,用完即弃

这些东西不应该以注释的形式永久附着在代码文件里。

因为它们真正的消费者,已经不是那个读代码的人,而是那个在环境里执行任务的 Agent。

(完)

相关推荐
恒拓高科WorkPlus20 分钟前
BeeWorks Meet私有化视频会议:内网会议、组织架构联动与会议安全
安全·架构
adinnet20261 小时前
深度拆解企业级 Agent 架构:LangGraph + 知识图谱 + 向量检索的协同设计
人工智能·架构·知识图谱
Ai拆代码的曹操1 小时前
源码拆解:opencode 如何封装 Git 实现自动 diff 和 review
openai·ai编程
Ai拆代码的曹操1 小时前
opencode 源码:工作单元的生命周期管理
openai·ai编程
listening7771 小时前
HarmonyOS 6.1 混沌工程实战:从“故障免疫”到“韧性架构”
华为·架构·harmonyos
晚风吹长发1 小时前
Docker使用——Docker容器及相关命令
linux·运维·服务器·docker·容器·架构
赫媒派1 小时前
MCP 协议升级:Stateless 化对开发者的影响
ai编程
小四的小六2 小时前
WebView 在 AI 时代的三个被低估的价值——从自己的 AI 产品里找到的答案
前端·openai·ai编程
郝学胜-神的一滴2 小时前
[简化版 GAMES 104] 现代游戏引擎 02:拆解现代游戏引擎5+1层级架构,吃透引擎底层核心逻辑
c++·unity·架构·游戏引擎·图形渲染·unreal engine·系统设计
电子科技圈2 小时前
先进封装、芯粒架构和3D集成——先进异构集成亟需兼具标准化与定制化能力的互联及总线IP解决方案
tcp/ip·设计模式·架构·软件构建·代码规范·设计规范