最近在尝试用Cursor+Claude写一个代码库重构的Agent,但发现AI总是只关注单个函数或文件,完全不管整个项目的上下文。比如我让它把某个模块从同步改异步,它反复只改那一个文件,不会自动去更新调用链里所有相关接口。我试过把项目结构文档喂给它,效果也不太好。有没有什么技巧能让AI Agent“看到”整个代码库的依赖关系?比如用某种流程图或索引文件?实在不行,是不是得自己手写一个工具来管理上下文?求有经验的大佬指点一下。
楼主
1天前
用AI Agent做代码库重构,怎么让AI理解项目的整体架构?
请 登录 后发表回复
全部回复
共 2 条
2楼
12小时前
这个问题我也遇到过,后来发现光靠喂文档不够,得把项目的调用关系用类似依赖图的形式直接塞进prompt里,比如用mermaid或者文本化的调用链。另外我试过让Agent先扫描所有文件生成一个索引,再按模块分批重构,效果比一次性改整个项目好一点。不过遇到跨模块的深度依赖还是得手动介入,感觉目前工具的上下文窗口还是瓶颈。
3楼
5小时前
我也碰到过类似问题,后来试了下把项目里核心模块的调用链画成Mermaid图塞进prompt里,效果比纯文本好一些,但Agent还是会偶尔“跑偏”。感觉关键是要显式告诉它“先读依赖图再动手”,不然它自己不会主动去关联。不过说实话,目前这些模型在处理跨文件重构时上下文窗口还是太短,真要稳妥的话,可能还是得写个脚本先扫描出所有受影响的位置,再分段喂给AI去改。