为什么“更强模型”仍会在仓库里迷路

模型的上下文窗口再大,也不等于它天然理解整个代码库。仓库事实分散在源码、配置、测试、提交历史和团队约定中;一次性塞入全部文件既昂贵,也会让真正相关的关系被噪声淹没。可靠的 Coding Agent 需要把问题拆成四层:索引负责找到结构,记忆负责保存已确认结论,执行循环负责推进任务,验证与版本控制负责阻止错误进入主线。

四类能力不要混为一谈

  • 代码图谱与检索回答“相关事实在哪里”,适合调用链、影响范围与模块边界。
  • 项目记忆保存“我们已决定什么”,适合 ADR、约束、已验证命令和失败教训。
  • Agent Harness 管理“下一步怎样执行”,包括计划、工具权限、子任务与停止条件。
  • 状态机、测试和版本控制回答“结果是否可信、能否回退”,它们必须是系统约束,而不是提示词愿望。

选型时先用真实任务测量

不要按功能列表堆满 MCP、技能和记忆层。选一个陌生模块、一次跨文件修改和一次失败恢复,记录正确率、工具调用数、token、耗时和人工介入点。若一个组件只让演示更炫,却没有减少错误或复核成本,就不应进入默认工具链。

推荐阅读顺序

先从 Codebase Memory MCP 理解结构化检索的价值与基准边界;再看 Harness、Skills 与循环工程怎样组织执行;最后看状态机和 Agent 版本控制如何建立可恢复、可审计的硬约束。这样能避免把“记得更多”误当成“做得更可靠”。