能处理不小,但别把整个巨型仓库硬塞进去
Codex 的上下文窗口很大,处理几万行的项目通常没问题。但「能装下」和「装得好」是两回事:仓库越大,它越容易在无关文件里迷路、把上下文浪费在噪声上,结果改错地方或漏看关键文件。所以大项目的关键不是「它能不能」,而是「你怎么喂」。
怎么估你的项目在不在舒适区
看三件事:单文件平均行数(超长的单文件更容易超上下文)、改动是否集中在少数目录(集中就好办)、有没有清晰的入口说明(有 AGENTS.md 就顺)。如果改动分散在上百个目录、又没有说明文件,就属于「硬塞」区间,要先做范围聚焦。
三个聚焦范围的办法
- 写 AGENTS.md:在仓库根放一份说明,告诉它项目结构、常用命令、哪些目录是核心。它读这份比读全仓库高效。
- 指定目录:让它只在
src/payments/这类具体目录工作,而不是全仓搜索。 - 拆分任务:别让一次任务「重构整个后端」,拆成「先改订单模块」「再改通知模块」,每轮范围小、上下文干净。
超大仓库(monorepo)怎么办
monorepo 往往几十万行起。直接全仓给 Codex 不现实,正确做法是按包/模块切:让它只 checkout 相关子目录,或在任务里明确「只动 packages/checkout」。很多团队把大模型助手接到具体 package 而不是根,就是这个道理——范围越小,它越不容易跑偏。
一个判断标准
如果你自己 clone 下来都要想半天从哪改起,那 Codex 也会懵。先把范围用目录和说明文件划清楚,再让它动手。它处理「聚焦的小世界」远比处理「模糊的大世界」靠谱,大仓库的胜负不在上下文大小,而在范围是否给得准。