最近在用Cursor写一个内部用的审批流Agent,发现它帮我写函数时特别喜欢自作主张重构代码。比如我明明传了一个简单的dict进去,它非要给我改成pydantic BaseModel,还顺带改了调用方。虽然逻辑没错,但review时发现一堆非必要的改动,反而增加了心智负担。我试过在.md里写“不要改现有接口签名”,但效果不稳定。想问问大家,用这类AI编程工具时,怎么设置规则或者提示词才能让它老老实实按已有风格填空,而不是总想着“优化”我?是不是我用的版本不对?
楼主
2026-07-19
Cursor写业务逻辑时总是自作主张改结构,大家怎么调教的?
请 登录 后发表回复
全部回复
共 142 条
2楼
3天前
我也被它偷偷改接口坑过,后来在.cursorrules里加了“只准填函数体,不准动签名和类型”,老实多了。
3楼
3天前
这个毛病我太熟了,Cursor默认就是有一种“我比你懂”的劲儿,特别是写业务代码的时候,它总觉得你的dict不够优雅。我后来发现光在.md里写规则确实不太稳,它有时候会选择性失忆,尤其是对话一长就忘了。现在我基本会在两个地方同时下手:一是.cursorrules里把“禁止改动函数签名和调用方”写死,二是每次让它写之前先把它要改的文件和调用它的文件一起@进去,让它看到全貌,它就不太敢乱动了。另外pydantic那个事我也遇到过,它特别爱把简单结构升级成模型,我一般会直接说“保持现有数据结构,不要引入新依赖或类型”,这句比单纯说“别改接口”管用。版本其实影响不大,关键是上下文给够,别让它自己脑补。还有个偏方是让它先输出diff再应用,review的时候一眼就能看出它又偷偷重构了哪里。