尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

【小白指南针】AI Coding自动化编程从0~1的蜕变二:Coding Agent 提升效能

【小白指南针】AI Coding自动化编程从0~1的蜕变二:Coding Agent 提升效能 【小白指南针】AI Coding自动化编程从01的蜕变二让 Coding Agent 从偶尔好用变成稳定可靠本章是新手容易遇到的坑不解决很容易就会跟AI“吵起来”你的 agent 的好坏70% 取决于你给它的环境30% 取决于模型本身。把环境搭好而不是不断换模型期待奇迹发生。文章目录【小白指南针】AI Coding自动化编程从01的蜕变二让 Coding Agent 从偶尔好用变成稳定可靠前言1. 为什么需要优化 Agent1.1 一个实验1.2 Agent 常见的失败模式1.3 一百万行代码的实验1.4 核心结论2. Harness Engineering 核心概念2.1 什么是 Harness2.2 Harness 五子系统2.3 AGENTS.md 是路由器不是百科全书2.4 初始化必须独立2.5 仓库是唯一事实来源2.6 初始化验收清单3. 我们的实施方案3.1 架构总览3.2 全局层一次配置所有项目生效3.3 项目层每次 /init 生成3.4 完整的开工流程3.5 为什么这个顺序不能乱3.6 高级初始化/init --advanced4. 团队接入指南4.1 如果你是 MiMoCode 用户4.2 如果你使用其他 Coding Agent4.3 与其他工具集成5. 国产 Coding Agent 对比5.1 概览5.2 MiMoCode小米5.3 Trae字节跳动5.4 如何选择5.5 关于 Harness 的特别说明6. 总结与后续行动6.1 核心要点回顾6.2 团队行动清单下期介绍前言在上一篇中讲了如何在自己电脑上搭建Agent的工作环境本期将下我们及我团队的小伙伴遇到的坑近期Claude code 后门事件导致我们不得不被集团要求弃用Claude code因为是国企所以我想让我团队成员能一步到位用国产或开源方案的Coding Agent。在多方对比及其他方面考量下选择了小米的MIMO code。所以我正好借着这个机会帮我团队的小伙伴解决下这些问题。1:AI说做完了但是根本不能用或者理解错误2:让它改一个功能它顺手把我其他不合理但我不需要动的功能改了还可能导致原本好的功能有问题了众所周知代码能跑就不要动3:第二天开机后他不知道昨天干了啥好多问题重新说才行严重浪费时间。。。。。。提示以下是本篇文章正文内容下面案例可供参考适用对象所有使用 AI Coding Agent 的研发团队成员前置要求至少使用过任意一款 AI Coding AgentMiMoCode、Claude Code、Cursor 等操作系统Mac OS 15.7.8 、M4Pro芯片、128GAgent工具MIMO code模型GLM5.2、DeepSeek V4 flash/pro、Kimi K31. 为什么需要优化 Agent1.1 一个实验Anthropic 做过一个对照实验。同一个 prompt——“做一个 2D 复古游戏编辑器”——同一个模型 Opus 4.5跑了两次裸跑带 Harness耗时20 分钟6 小时花费$9$200结果核心功能跑不起来游戏可以正常游玩模型没变变的是马具Harness。1.2 Agent 常见的失败模式失败模式实际表现根因新会话摸黑新会话花大量时间重新摸索状态和启动方式缺少状态持久化范围蔓延一次启动多个功能最后没有一个完整收尾缺少范围约束提前宣布完成代码改了就说完成了但没有可运行证据缺少验证门禁启动脆弱每轮会话都要重新学怎么启动项目缺少标准启动路径交接薄弱下一轮看不出哪里可用、哪里坏了、接下来做什么缺少交接机制评审主观质量判断依赖个人记忆和感觉缺少量化评分1.3 一百万行代码的实验2025 年OpenAI 的三个工程师做了一个实验他们不写代码只让 Codex 写。从一个空的 git 仓库起步五个月下来仓库里有了约 100 万行代码。三个工程师一共开了 1,500 个 PR平均每人每天 3.5 个。他们的核心发现每当某件事做砸了问题几乎从来不是不够努力而是 agent 还缺什么——缺的能力能不能用一种既可理解又可执行的方式补上去。1.4 核心结论模型能力和执行可靠性是两回事。遇到失败先看 harness再看模型。换模型是成本最高的选择很多情况下根本不是模型的问题。2. Harness Engineering 核心概念2.1 什么是 HarnessHarness 模型权重之外的一切工程基础设施。包括指令文件、可用工具、运行环境、状态管理、验证反馈。不是模型权重的部分全是 harness。项目规则AGENTS.mdAI Agent进度与状态progress.md / git工具shell / 文件 / 测试运行环境依赖 / 服务 / 版本检查结果test / lint / build2.2 Harness 五子系统子系统职责典型实现指令告诉 agent 项目规则和约束AGENTS.md、instructions.md工具确保 agent 有足够的操作能力shell 访问、文件读写、CLI环境让环境可重现、自描述package.json、pyproject.toml、Docker状态跨会话保持工作连续性progress.md、feature_list.json、git反馈验证工作是否正确测试命令、lint、类型检查五个子系统缺一个harness 就不完整。2.3 AGENTS.md 是路由器不是百科全书核心原则AGENTS.md 控制在 50-200 行只做三件事项目概览和快速开始不可违反的硬约束不超过 15 条指向专题文档的路由表# AGENTS.md — 路由器不是百科全书 ## 文件路由什么是路由表 | 文件 | 用途 | 何时读取 | |------|------|---------| | AGENTS.md | 工作规则与路由 | 每轮开工时 | | init.sh | 启动与验证入口 | 每轮开工时运行 | | templates/feature_list.json | 功能状态 | 选择功能时 | | templates/mimo-progress.md | 进度记录 | 开工、收尾时 | | templates/session-handoff.md | 会话交接 | 结束时选写 | | templates/evaluator-rubric.md | 评审评分 | 功能完成时 |为什么要这样做一个 600 行的指令文件关键约束埋在中间会被忽略Lost in the Middle效应。拆分后信噪比提升agent 把更多上下文花在实际任务上。2.4 初始化必须独立初始化阶段的目标和功能实现完全不同初始化阶段实现阶段目标搭好基础设施交付功能产出启动脚本、进度文件、任务分解业务代码验收标准能启动、能测试、能看进度、能接手测试通过混在一起的代价Agent 倾向于写代码直接可见牺牲基础设施在测试框架配好之前写的功能可能设计上就有问题上下文预算被初始化任务吃掉功能部分反而做不好正确做法第一个会话只做初始化不写业务代码。初始化投入的时间会在后续 3-4 个会话中完全收回。2.5 仓库是唯一事实来源Agent 看不到的东西对它来说就不存在。所有必要的上下文都必须在仓库里项目规则 →AGENTS.md功能状态 →feature_list.json进度记录 →mimo-progress.md启动脚本 →init.sh架构决策 → 架构文档不要依赖聊天记录或人的记忆。如果一个新 agent 会话只靠仓库内容无法回答这个项目做什么、怎么启动、怎么验证、还有什么没做完、下一步做什么那 harness 就是不完整的。2.6 初始化验收清单条件说明✅ 能启动init.sh从零运行成功✅ 能测试基础测试通过✅ 能看进度mimo-progress.md存在且最新✅ 能接手下一步feature_list.json列出下一个最优先功能3. 我们的实施方案3.1 架构总览项目层 (项目根)全局层 (~/.config/mimocode/)自动注入生成生成生成生成开工时读取路由到instructions.md永久注入系统提示commands/init.md内置模板 完整流程initializer-agent-playbook.md初始化操作手册AGENTS.md路由器指向各文件init.sh动态生成的启动脚本templates/功能状态、进度、交接、检查、评审、质量.gitignore忽略.mimocode/和会话文件3.2 全局层一次配置所有项目生效文件位置作用instructions.md~/.config/mimocode/每轮会话自动注入 3 条规则检查 AGENTS.md、运行 init.sh、固定开工流程commands/init.md~/.config/mimocode/覆盖内置/init命令内嵌全套模板/init --advanced生成高级治理结构initializer-agent-playbook.md~/.config/mimocode/初始化操作手册列出必需产出和成功标准3.3 项目层每次/init生成文件生成方式是否提交 gitAGENTS.md内嵌模板✅ 提交init.sh动态生成检测 package.json / pyproject.toml / Cargo.toml / go.mod 等✅ 提交templates/feature_list.json内嵌模板✅ 提交templates/session-handoff.md内嵌模板✅ 提交templates/clean-state-checklist.md内嵌模板✅ 提交templates/evaluator-rubric.md内嵌模板✅ 提交templates/quality-document.md内嵌模板✅ 提交templates/codebase-analysis.md代码库扫描原始 init 逻辑❌ gitignoretemplates/mimo-progress.md内嵌模板❌ gitignore项目实际执行截图3.4 完整的开工流程每轮新会话开始 ┌─────────────────────────────────────┐ │ 1. pwd 确认在正确的项目根 │ │ 2. 读取 AGENTS.md → 获取文件路由 │ │ 3. 读取 templates/mimo-progress.md │ │ 4. 读取 templates/feature_list.json │ │ 5. git log --oneline -5 │ │ 6. 运行 ./init.sh │ │ 7. 跑基础验证 │ │ │ │ 如果基础验证失败先修基础状态。 │ │ 只选一个未完成功能围绕它工作到完成。 │ └─────────────────────────────────────┘ │ ▼ ┌─────────────────────────────────────┐ │ 结束前 │ │ 1. 更新 mimo-progress.md │ │ 2. 更新 feature_list.json │ │ 3. 记录 blocker │ │ 4. 提交代码 │ │ 5. 确保下一轮可直接运行 ./init.sh │ └─────────────────────────────────────┘3.5 为什么这个顺序不能乱步骤为什么必须先做pwd防止在错误目录里干活读进度 功能清单先恢复持久状态避免在错误假设上开工git log了解刚刚发生了什么运行init.sh让启动过程标准化不靠记忆基础验证先跑避免在坏状态上继续叠改动3.6 高级初始化/init --advanced当项目进入多模块/多阶段/多角色协作阶段运行/init --advanced额外生成ARCHITECTURE.md docs/ ├── design-docs/index.md ├── design-docs/core-beliefs.md ├── exec-plans/active/ ├── exec-plans/completed/ ├── exec-plans/tech-debt-tracker.md ├── product-specs/index.md ├── references/*.txt (llms.txt 格式) ├── QUALITY_SCORE.md ├── RELIABILITY.md ├── SECURITY.md └── FRONTEND.md sops/ (标准操作流程)所有模板内嵌在命令中无需额外查阅资料。4. 团队接入指南4.1 如果你是 MiMoCode 用户已经自动生效。全局配置已在所有环境中部署在任何项目下输入/init→ 自动走定制逻辑新会话开始 → 全局instructions.md自动注入 AGENTS.md 检查规则项目级.mimocode/mimocode.json配置instructions: [../AGENTS.md]→ AGENTS.md 内容注入系统提示4.2 如果你使用其他 Coding Agent虽然/init命令是 MiMoCode 特有的但生成的文件是纯文本所有人都能读。Claude Code 用户查看项目根AGENTS.md→ 内容与CLAUDE.md结构一致可直接参考运行init.sh→ 标准 bash 脚本所有 shell 环境通用读取templates/下的文件 → 纯 markdown / JSONCursor 用户同样可读AGENTS.md和templates/下的文件可以将 AGENTS.md 内容复制到.cursorrules中Codex CLI 用户文件结构完全兼容Codex 原生支持AGENTS.md4.3 与其他工具集成工具与模板体系的兼容方式CI/CDinit.sh中的验证命令可直接用于 CI 流水线项目管理feature_list.json可与 Jira / Linear / Notion 同步代码评审evaluator-rubric.md可作为 PR 模板的评审标准文档AGENTS.md可作为团队 Wiki 的入口文档5. 国产 Coding Agent 对比5.1 概览特性MiMoCodeTrae (字节)Claude CodeCursorCodex CLI开发商小米字节跳动AnthropicAnysphereOpenAI基座模型DeepSeek / 自研自研 / GPTClaude多模型GPT / o 系列运行方式TUI CLIIDE 插件CLI TUIIDE (VS Code 分支)CLIHarness 支持⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐自定义指令AGENTS.md / instructions.md有限规则CLAUDE.md.cursorrulesAGENTS.md持久化记忆原生checkpoint memory无会话级有限有限子智能体原生支持explore/general有限有有限有自定义命令✓markdown 文件热加载✗✓✗✗Hook/插件✓hook TUI 插件✗✗✓扩展✗工作流编排✓workflow.js✗✗✗✓工程模式定时任务✓cron/loop✗✗✗✗跨会话连续⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐开源❌基于 OpenCode 的闭源分支❌❌❌✅5.2 MiMoCode小米优势国产自主可控模型和服务均在国内Harness 能力最完整instructions 注入、commands 热加载、hook 机制、workflow 编排、cron/loop 定时任务——五子系统的反馈和状态方面远超同类持久化记忆checkpoint memory 系统跨会话自动重建上下文子智能体编排explore/general 子智能体 actor 工具可做并行搜索和多步骤编排自定义扩展性强tools/hooks/skills/workflows/TUI 插件每一层都可改写对 DeepSeek 优化作为小米产品对国产模型的适配和优化最深入劣势生态较小相比于 Cursor 和 Claude Code社区规模和第三方资源较少闭源核心代码不公开依赖小米的更新节奏品牌认知度在开发者群体中的知名度不如 Claude Code 或 Cursor适合场景需要深度 Harness 定制和自动化的团队注重数据安全、在国内部署的团队使用 DeepSeek 等国产模型的团队需要跨会话长时间运行的复杂开发流程5.3 Trae字节跳动优势字节跳动出品背靠国内最大的 AI 团队之一IDE 插件形式直接在 VS Code 中工作学习成本低多模型支持可使用字节自研模型和 GPT劣势Harness 能力弱缺乏指令文件支持、无持久化记忆、无子智能体机制横主要面向即时编码辅助不适合长时间运行的多会话任务定制能力有限不支持自定义命令、hook 或工作流编排适合场景简单的代码辅助和补全单次会话的编码任务不涉及复杂跨会话协作的团队5.4 如何选择如果你的团队…推荐选择需要长时间运行的多会话开发MiMoCode / Claude Code需要深度定制 agent 行为MiMoCodecommands hooks workflows注重数据安全和国内部署MiMoCode / Trae需要并行子智能体编排MiMoCodeactor 系统只需要即时编码辅助Trae / Cursor需要开源可控Codex CLI5.5 关于 Harness 的特别说明无论选哪款 agentHarness 工程的核心方法都适用。即使你用的是 Cursor在项目根放一个AGENTS.md并固定开工流程效果也会有明显提升即使你用的 Trae维护feature_list.json和mimo-progress.md也能改善跨会话连续性模板文件全是纯文本工具无关谁都能用Harness 的价值在于方法论不在于工具。好的 harness 能让一个中等模型完成高质量工作差的 harness 能让最强模型不断犯错。6. 总结与后续行动6.1 核心要点回顾模型能力和执行可靠性是两回事— 失败时先查 harness而不是急着换模型Harness 指令 工具 环境 状态 反馈— 五个子系统缺一不可AGENTS.md 是路由器不是百科全书— 保持短入口详情指向单独文件初始化必须独立— 不要跟功能实现混在一起仓库是唯一事实来源— 所有必要的上下文都放在仓库里不依赖聊天记录反馈子系统投入产出比最高— 先把验证命令写清楚6.2 团队行动清单本周在主力项目根运行/init或手动创建等效文件建立 AGENTS.md init.sh本周在AGENTS.md中写入验证命令test / lint / typecheck两周内将现有功能拆解到feature_list.json中标记状态两周内建立跨会话进度记录习惯结束会话前更新mimo-progress.md一个月完成第一轮 Harness 审计按五子系统打分找出最弱的一环改进持续每次 agent 失败时归因到五子系统的某一层修补记录下期介绍AI-Coding-Agent-Token成本优化与CodeGraph落地培训最后一句你的 agent 的好坏70% 取决于你给它的环境30% 取决于模型本身。把环境搭好而不是不断换模型期待奇迹发生。— 基于 Learn Harness Engineering 课程walkinglabs与团队实战经验整理
返回列表