AI Agent 的可靠性,不取决于模型有多聪明,而取决于 Harness 是否把模型的不稳定性预先纳入控制面、循环、工具、权限、上下文、恢复和验证机制。
模型是生产力部件,但也是最不稳定部件。成熟系统不会问“模型能不能做好”,而会问:模型说错、做错、做一半、上下文爆掉、工具失败、用户中断、多代理互相污染时,系统由谁接管?
CLAUDE.md / AGENTS.md 的价值在于分层、作用域和可追踪。| 实践项 | 精选原则 |
|---|---|
| 规则分层 | 系统规则、团队规则、项目规则、临时任务规则分开。 |
| 冲突处理 | 明确谁优先,不能靠模型临场猜。 |
| 入口治理 | 入口文件要短,长内容索引到正文。 |
| 控制范围 | 输出风格、工具纪律、权限边界、恢复策略都应进入控制面。 |
真正成熟的 Agent,不是“一次 prompt → 一次回答”,而是一个持续运行的循环。这个循环治理输入、调用模型、消费流式输出、维护状态、判断停止。
Claude Code 更偏向把连续性压进主循环;Codex 更偏向把连续性拆成 thread、rollout、state。两种路线不同,但都承认:连续性必须由系统拥有,不能让模型凭记忆硬扛。
模型说错话最多浪费时间;模型跑错命令可能破坏文件、进程、仓库和生产环境。
| 主题 | 精选判断 |
|---|---|
| 工具调用 | 一旦模型开始调用工具,问题从语言生成变成有副作用的执行系统。 |
| 权限 | 权限先于能力;模型能调用工具,不代表它天然被授权。 |
| Bash | Bash 是通用逃逸口,必须有更细规则。 |
| 结果闭账 | 执行失败、被拒绝、被中断,都要产生可回放语义结果。 |
| 保留优先级 | 内容 |
|---|---|
| 最高 | 当前状态、踩过的坑、已改文件、下一步动作、验证结果。 |
| 中 | 关键设计约束、稳定结论、必要引用。 |
| 低 | 重复附件、长日志全文、已过期过程性细节。 |
工程世界最不值得相信的话是“正常情况下”。Agent 一定会遇到 prompt too long、max output、工具失败、权限拒绝、网络错误、用户中断、多代理超时。
| 维度 | Claude Code | Codex |
|---|---|---|
| 核心气质 | 运行时纪律、现场调度 | 显式控制面、制度层设防 |
| 连续性 | 压进 query loop | 拆成 thread / rollout / state |
| 工具治理 | 运行时审批、编排、中断 | schema、approval policy、sandbox |
| 适合场景 | 复杂长任务、动态恢复、现场执行 | 组织治理、审计、策略迁移 |
| 主要风险 | 规则可能藏在 runtime | 系统较重,策略需维护 |
总判断:Claude Code 更信运行时纪律;Codex 更信显式控制层;两者同归于一点:模型不能裸奔,Harness 必须拥有最终秩序。
| 团队类型 | 建议路线 | 目标 |
|---|---|---|
| 个人/小团队 | 优先学 Claude Code:query loop、工具权限、中断、compact、恢复。 | 先让 Agent 在复杂任务里不失控。 |
| 中型团队 | 混合路线:运行时韧性 + 显式规则/工具/审批/状态。 | 既能跑,也能复制。 |
| 组织级平台 | 优先学 Codex:instruction fragment、tool schema、approval policy、state。 | 让 Agent 成为可治理基础设施。 |
好的 AI Agent,不是让模型看起来像一个聪明同事,而是把模型放进一套足够清醒的工程秩序里:它可以犯错,但不能无限扩散;它可以调用工具,但必须被授权;它可以忘记,但系统要知道如何压缩、恢复和验证。
先有 Harness,再谈 Agent。