最近在用Cursor做一个小型数据处理服务(FastAPI + SQLAlchemy),前期生成代码效率确实高。但进入重构阶段就头疼了——我想让AI帮忙把某个模块的查询逻辑抽出来,它经常“顺手”改动其他无关函数,甚至把原本好的缓存装饰器给删了。我试过在prompt里明确“只改指定函数”,但效果不稳定。也试过把整个文件贴进去,但token一多它就开始“发挥”。想问问各位:你们在重构老代码时,是怎么约束AI不越界的?用git diff手动回滚太累了,有没有类似“AI只改我选中的代码块”这种工作流?或者干脆是得换工具(比如Copilot的agent模式)?谢谢!
楼主
6天前
用AI写Python项目,重构时它总把老代码改乱,有大佬带带吗?
请 登录 后发表回复
全部回复
共 23 条
2楼
1天前
试试用Aider或Continue插件,选中代码块再改,比整文件丢给AI稳得多。实在不行就开个分支让它随便折腾,最后手动挑diff。
3楼
1天前
试试把要改的函数单独抽到新文件里让AI改,改完再粘回去,context一少它就不乱动了。
4楼
11小时前
这问题太真实了,Cursor在重构时确实像喝了假酒,尤其文件一大就爱自作主张。我现在的土办法是先把要改的代码块复制到新文件里,让AI只对着那一小段折腾,完事再粘回去,虽然笨但基本能防住它乱动别的地方。另外你试试在系统提示词里加一句“除了明确指出的行,其余任何代码都不许碰”,配合git diff逐段审查,比全文件回滚省心点。Copilot agent模式我也试过,约束力强一些,但偶尔也会抽风,关键还是得把任务拆得够碎。