再大的模型,进了一个失序的 repo(代码仓库),也像被推进别人家厨房的名厨:冰箱没有标签,调料瓶装的是水还是醋,抽屉里是刀叉还是电线,谁都不知道。我的判断很明确:AI 编码的瓶颈不是模型,是 repo 检索。今天多数所谓“AI 写代码不行”,不是它不会写,而是它找不到。
这话反直觉。大家总以为,模型像考试,分数越高,题就做得越对。错。真实开发不是闭卷考试,更像在一间年久失修的档案室里办案。代码只是纸面,真正难的是:哪份是现行文件,哪份已经作废,哪条看上去能改,背后却牵着支付、权限、日志、缓存、风控五根线。模型负责“会不会写”,repo 检索决定“知不知道该写哪一段、该不该写、改完会炸谁”。
所以 DeusData 这类 codebase-memory-mcp,MCP(让 AI 调用外部工具的协议)要解决的,并不是给模型再灌一勺聪明,而是先给它一双能翻柜子的手。许多人把模型当发动机,拼命换缸、加涡轮;真正缺的却是挡风玻璃、后视镜和地图。车不是开不动,是司机根本看不见路。
我见过一个很具体的场景。凌晨一点,前端同事要改一个“看起来只有一行”的按钮文案。人一看,当然只是把“提交”改成“确认并同步”。AI 一上来,改了组件里的字,运行通过,样式没坏,像个模范生。第二天产品一测,坏了三处:埋点事件名还叫 old_submit,实验分流读的是旧 key,客服知识库里的自动截图匹配不到新文案。问题不在那一行字,在那一行字背后拖着三层脐带。模型会写字,repo 检索才知道这字连着谁的命。
第二个场景更滑稽,也更常见。一个后端新人接手告警,说订单状态偶发错乱。他先问 AI,AI 很勤奋,列出一串可能:并发、事务、缓存、消息重复消费,听上去像把《内经》和《伤寒论》一起背了一遍。可仓库里真正起作用的,不是主服务那份状态机,而是三年前遗留在一个脚本目录里的补偿任务;白天没人提它,晚上它准时跑,像祖宅里一位不说话但握着钥匙的老人。你不给 AI 一套能跨目录、跨历史提交、跨命名别名去找“谁真正写这个字段”的检索,它就只能在明处表演聪明,在暗处输给幽灵。
第三个场景发生在看似最适合 AI 的重构。团队想把用户体系从 A 模块迁到 B 模块。模型写迁移脚本,写接口适配,写测试桩,甚至还能顺手补注释,勤奋得像一个刚转正的人。但它漏掉了最要命的部分:repo 里有七种“用户”的叫法,user、account、member、principal、profile、subject、owner,每个词都像亲戚,见面都点头,分钱时却各算各账。模型最怕这种事。它不是不会推理,它是没有族谱。没有代码仓库的记忆层,它看到的是词;有了检索,它才知道这是血缘。
这就是反常识的地方:AI 编码最稀缺的,不是“生成能力”,而是“定位能力”。不是“写出一段像样的代码”,而是“在百万行里找出那十五行真正该动的代码”。前者像作文,后者像拆弹。作文靠文采,拆弹靠线序。把这两件事混为一谈,就像夸一个人口才好,于是派他去做外科手术。
今天很多人争论 Claude、GPT、Cursor 谁更强,争得像茶馆里比刀。刀当然有快慢,但厨房真正折磨人的,常常不是刀钝,而是找不到菜板。模型升级一代,确实能把补全写得更圆润,把解释讲得更像人;可只要 repo 检索还是“关键词碰运气”,AI 就依旧像一个被蒙眼带进仓库的实习生,力气很大,方向全错。它不是没有能力,它是没有地形感。
代码仓库从来不是一堆文件,而是一套地方社会。函数名是方言,目录结构是村道,注释是路边口耳相传的传说,README 像县志,issue 像族谱里的恩怨,最近三个月的 commit(提交记录)才是现实政治。人类工程师之所以还能活,不是因为脑子比模型强多少,而是因为他在这个地方住过,知道哪条路雨天会塌,哪个模块表面归 A 管,实际上要先给 B 打招呼。所谓资深,不只是会写,更是会找,会闻,会绕路。真正像人的 AI,不是更会背答案,而是更会在仓库里认路。
所以我越来越确信,下一阶段决定 AI 编码上限的,不是谁家的模型参数再长一截,而是谁先把 repo 变成可检索、可追溯、可召回的“活记忆”。你可以把它理解成给代码仓库装索引,也可以理解成给 AI 配秘书。秘书不负责写文章,秘书负责在老板开口前三秒,把正确那一沓纸递到桌上。递错一页,老板再聪明也要胡说;递对十页,普通人也能像模像样。
这也是为什么很多团队用了最贵的模型,体验却像高薪请了个天才,结果天天让他在地下室翻旧箱子。天才当然会崩。人类社会最浪费的配置,就是让高认知做低定位;软件工程里也一样。把最强的模型拿去做最原始的 grep(文本搜索)体力活,本身就是组织失能,不是技术前沿。
我愿意把话说得再重一点:没有 repo 检索,AI 编码就是一种豪华的盲写。能写,但常常写在错误的地方;能改,但常常不知道改动的半径;能答,但答的是概率,不是上下文。模型像大脑,repo 检索像视力。一个人再聪明,眼前全糊,也只能摸着墙走。今天行业里最热闹的部分在拼脑容量,最关键的缺口却是配眼镜。热闹常常长在错误的地方。
几句我愿意留下来的判断,说白了都是一回事:
AI 写不好代码,往往不是因为它不会写,而是因为它不知道该读什么。
强模型解决的是“像不像工程师”,仓库检索解决的是“认不认识这个工地”。
代码生成决定下限,repo 检索决定上限。
在陌生仓库里,最贵的模型也可能只是一个迷路的高材生。
软件工程最隐蔽的成本,不是写错一行,而是改对了一行、却改错了位置。
说到底,编程从来不是把语法拼出来,而是在一座早已住满人的房子里,找到那根真正该拧的螺丝。模型给你的是手,repo 检索给你的是灯。没有灯,手越有力,砸坏的东西越多。
别人聊 AI,我们测 AI——每个结论都能下载原始数据自己复算。 🔗 官网 👉 https://crawdpad.com