把 Cursor 的烂输出变成好代码,这 10 个 Prompt 改造让我省了 80% 改稿时间

发布时间:2026/9/12 4:56:38

把 Cursor 的烂输出变成好代码,这 10 个 Prompt 改造让我省了 80% 改稿时间 让 Cursor 给你的 Spring Boot 服务加一个接口它给你写了个方法但没有写测试也没有更新 OpenAPI 文档路由规则也跟项目里其他接口风格不一样。改了一圈还不如自己写快。或者让它重构一段 goroutine 代码结果它把你的 channel 改成了 sync.WaitGroup逻辑倒是通了但引入了一个新的竞态条件。你盯着 diff 看了五分钟才看出哪里不对。我用 Cursor 写代码一年多踩过的坑让我得出一个结论Cursor 给出的答案质量70% 取决于你怎么问30% 才是模型本身的能力。不是 Cursor 不够好——是你给它的信息不够好它只能乱猜。下面 10 个技巧每一个都附有原理解释和 before/after 对比。全是后端场景没有废话。10 个 Cursor Prompt 技巧速查图10 个技巧按场景分类按需取用技巧 1给任务加边界不要说「帮我改一下」原理「改一下」对 Cursor 来说是个开放指令它会基于上下文推测你的意图。推测错了给你的就是半成品。边界越清楚推测空间越小输出越准。Before坏 Prompt帮我改一下这个接口让它性能好一些After好 Prompt重构 OrderService.getOrderList() 方法目标减少 N1 查询。要求用 EntityGraph 替换懒加载只拉 order orderItems不改方法签名不引入新的缓存层改完后在同文件里补充对应的单元测试第二版明确了目标N1、约束不改签名、不加缓存还追加了验收条件补测试。Cursor 不需要猜你想要什么直接按清单执行。这个技巧在 Go 场景下同样成立。比如让它处理 goroutine 泄漏你需要告诉它哪个 goroutine、在什么条件下泄漏、是否允许引入 context.WithTimeout而不是「帮我解决 goroutine 泄漏问题」。技巧 2用 符号引入上下文而不是粘贴代码原理把代码粘到对话框会快速占满 context window而且模型看的是你粘进来的快照不是文件的最新状态。filename 让 Cursor 直接读当前文件更省 token语义更准。Cursor 的 符号有 8 种类型后端最常用的是这几个 类型 适用场景文件名 引入某个具体文件如 OrderService.javaCodebase 让 Agent 全库搜索相关代码不知道在哪就用它Docs 引入官方文档防止 Cursor 用过期 API 语法Web 实时查网上的最新信息比如框架 changelogGit 引用最近的提交做「这次改动有什么问题」分析Before坏 Prompt[粘贴了 200 行代码]帮我给这个类加一个缓存层After好 PromptOrderRepository.java CacheConfig.java在 OrderRepository 里给 findByUserId 加 Redis 缓存缓存 key 格式参考 CacheConfig 里已有的命名规范TTL 30 分钟缓存穿透用空值处理不需要粘贴代码Cursor 会读文件当前状态。有命名规范的文件也引进来它会自动对齐风格。Cursor 符号速查后端工程师最常用的 5 种图 符号 5 种类型及使用频率速查技巧 3告诉 Cursor「什么不要动」原理Cursor 默认是「完成任务型」如果你不说清楚边界它可能顺手动一些它认为可以改的地方比如重命名变量、调整格式、改掉你故意保留的逻辑。Before坏 Prompt帮我在 PaymentService 里加一个退款方法After好 Prompt在 PaymentService.java 里新增 refund(Long orderId, BigDecimal amount) 方法。约束不修改现有任何方法的签名和逻辑不改变类的字段异常处理风格跟 charge() 方法保持一致加了「约束」段之后Cursor 知道这是个「只增不改」的任务。这个技巧在 gRPC stub 代码里尤其重要——你的 proto 生成代码不能被它改动必须显式告知。对于 Go 项目常见的约束是「不改 interface 定义」、「不改 error 类型沿用项目里的 errors.Wrap 风格」、「不引入新的 package」。把这些写进 Prompt你 review diff 的时间至少减一半。技巧 4用 Plan Mode复杂任务先出计划再执行原理直接让 Agent 执行复杂任务它会边想边写容易写到一半改方向或者漏掉你以为它会做的步骤。Plan Mode 把「规划」和「执行」拆开你可以在执行前检查并修改计划把不对的地方提前拦下来。激活方式在 Agent 输入框按 Shift Tab 切换到 Plan Mode。Before直接执行帮我把 UserService 里的同步数据库调用改成异步的Cursor 直接开始改你发现它把某些需要强一致的调用也改异步了回滚起来很麻烦。AfterPlan Mode 先出计划[Plan Mode] 把 UserService.java 里的数据库调用改成异步。需要先告诉我哪些方法应该改异步哪些必须保持同步理由用什么异步方案CompletableFuture 还是 Spring Async事务处理会有哪些影响Cursor 会生成一份 Markdown 计划列出它打算做的事。你审查后可以直接编辑计划——删掉不该改的方法加上你遗漏的约束然后再点执行。这比事后 review diff 要高效得多。计划可以保存到 .cursor/plans/ 目录下次接着做或者交给队友都方便。技巧 5一次只做一件事不要用「并且」连接两个任务原理Cursor 的上下文窗口是有限的。一个 Prompt 里塞两件事它会同时处理但注意力被分散两件事都做得不彻底。分成两次对话每次聚焦一件事输出质量明显更高。Before坏 Prompt帮我把这个接口加上限流并且把响应体改成统一的 ApiResponse 格式还有加一下日志After分三次做第一次OrderController.java给 getOrderList 接口加 RateLimiter 注解配置每秒最多 100 次请求超限时抛 RateLimitException不要动其他逻辑确认没问题后第二次OrderController.java ApiResponse.java把 getOrderList 的返回值改成 ApiResponseList参考 OrderController.java 里 createOrder 方法的返回格式第三次只给 getOrderList 加 SLF4J 日志记录入参和执行时间日志级别 INFO每次改完看一下 diff确认无误再做下一步。这比一次 commit 里三件事混在一起好 review 得多。技巧 6提供「好例子」而不是描述「我想要的风格」原理「风格一致」这种描述太抽象Cursor 无法量化。给它一个已有的好代码作为参照它会对齐格式、命名惯例、注释风格不需要猜。Before坏 Prompt帮我写一个新的 Repository 类风格要跟项目里其他 Repository 一致After好 Prompt参照 OrderRepository.java 的结构帮我新建 RefundRepository.java。要参照的点Repository 注解位置方法命名规范findBy 前缀Transactional 的使用位置错误处理用 Optional 返回新类需要的方法findByOrderId, findByUserId, save这个技巧在 Go 里也一样好用。给它看你项目里一个写得比较好的 handler然后说「按这个模式写一个新的」比你用文字描述「用 error wrapping、注意 defer 关闭资源、记得加 trace log」准多了。技巧 7明确指定验收标准让 Cursor 知道「做完」是什么意思原理Cursor 不知道你的完成标准是什么它给你一个能编译过的代码就会停下来。把验收标准写进 Prompt它会主动补全测试、处理边界情况而不是给你半成品。Before坏 Prompt帮我写一个分页查询接口After好 Prompt在 OrderController.java 里实现分页查询接口 GET /orders。验收标准支持 page从 1 开始和 pageSize默认 20参数pageSize 超过 100 时返回 400 错误返回 PageResponse包含 total、pages、data 字段在 OrderControllerTest.java 里补充三个测试用例正常分页、边界值、非法 pageSizeSwagger 注解完整Operation、Parameter这种写法里有「完成标准清单」Cursor 会逐条对照。你最后可以直接 review 这五条是否都满足不用自己去想还缺什么。Go 场景下验收标准可以是「benchmark 测试在 10000 次请求下 p99 5ms」、「用 go vet 和 staticcheck 都能通过」、「TestXxx 函数覆盖 happy path 两个 error path」。技巧 8上下文失焦时开新对话用 Past Chats 带走需要的部分原理一个对话里积累了太多内容后Cursor 的注意力会分散开始把早前讨论的方向和现在的任务混在一起产生奇怪的输出。这不是 bug是 context window 的物理限制。判断标准当你发现 Cursor 开始重复之前修过的问题或者它的输出和你几条 Prompt 之前讨论的东西相关但和当前任务无关时就该开新对话了。操作方式开一个新的 Composer 窗口用 Past Chats 引用你需要的历史对话片段在新对话里补充当前任务的完整上下文Before继续在失焦对话里挣扎
延伸阅读

更多相关文章

2026/9/10 6:12:18

国产数据库+国产Agent,兼容性最好的组合是哪家?——企业级智能自动化选型与工程化落地实践解析

在当前人工智能与数据基础设施深度融合的背景下,寻找国产数据库与国产Agent的“最佳组合”,本质上是在寻找一套能够解决企业数据治理、复杂任务编排以及安全合规性要求的工程化解决方案。随着数字化转型的不断深入,单纯的系统替代已不能满足企…

2026/9/11 5:44:36

大麦抢票自动化终极指南:基于Python的高效解决方案

大麦抢票自动化终极指南:基于Python的高效解决方案 【免费下载链接】ticket-purchase 大麦自动抢票,支持人员、城市、日期场次、价格选择 项目地址: https://gitcode.com/GitHub_Trending/ti/ticket-purchase 在热门演唱会门票一票难求的今天&…

2026/9/12 4:54:49

RK3568+OpenHarmony多路独立显示全栈适配指南

1. 多路显示不是“接几根线”那么简单:RK3568上跑OpenHarmony的显示系统本质很多人第一次看到“RK3568多路显示移植”这个标题,下意识反应是:“不就是把HDMI、MIPI、eDP这些接口都配出来,让屏幕亮起来吗?”——这恰恰是…

2026/9/12 4:54:49

信奥赛C++提高组欧拉回路算法精讲

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/12 4:49:49

Actual 怎么创建并启用一个实验功能?

Actual 怎么创建并启用一个实验功能? 【免费下载链接】actual A local-first personal finance app 项目地址: https://gitcode.com/GitHub_Trending/ac/actual Actual 的很多新功能在正式稳定发布前,会以 experimental features(实验…

2026/9/12 2:05:33

超人会飞不算本事:系统稳定依赖清晰规则与边界设计

开头先不绕弯子。“#斯坦李吐槽dc 所以超人是无缘无故会飞的嘛哈哈哈哈哈哈哈锤哥真是技术人才啊!#雷神 #复联”这类调侃式短标题,第一波冲击力在于它把两个宇宙的角色塞进同一个吐槽箱里,但细想一下就能发现,它真正碰到的根本不是…

2026/9/12 3:55:12

超人VS蜘蛛侠:拆解超级IP的影响力与传播方法论

把“蜘蛛侠 vs 超人”放在 CSDN 上聊,可能很多人第一反应是走错片场了。但如果把这两个角色看成“两个持续运营了 80 多年的文化产品”,你会发现,这场比较本质上是两个不同 IP 策略的长期结果对比:超人赢在定义了整个超级英雄题材…

2026/9/9 16:31:09

基于CNN的调制信号识别:MATLAB实现时频图分类实战

简介:本资源是一套面向通信工程与信号处理方向学习者、研究者的深度学习实践方案,聚焦调制信号自动检测与识别这一典型无线通信任务,解决传统方法依赖人工特征、低信噪比下性能下降等痛点。压缩包共12个文件(10.73MB)&…

2026/9/12 0:04:17

MATLAB仿生优化框架:长鼻浣熊算法多策略融合实现

简介:本资源是一份面向智能优化算法研究者与MATLAB初学者的仿生智能算法实践代码包,聚焦于长鼻浣熊优化算法(COA)的多策略改进与性能验证。针对传统COA易陷局部最优、收敛精度不足等问题,作者融合Circle映射初始化提升…

2026/9/12 0:04:17

【JAVA毕设源码分享】基于 JavaWeb 的校园一卡通管理系统的设计与实现 基于 JavaWeb 的校园卡业务管理系统(程序+文档+代码讲解+一条龙定制)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

2026/9/12 0:04:17

【JAVA毕设源码分享】基于 Java 的图书馆借阅管理平台的搭建与实现 基于 Java 的图书馆综合管理系统(程序+文档+代码讲解+一条龙定制)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

2026/9/10 12:32:02

USB Type-C PCB布局分区设计:电源、高速信号与PD协议全攻略

做硬件这行,Type-C接口算是典型的“看着简单,做起来全坑”的东西。光引脚就24个,高低速信号、电源、控制线全部塞在一个小小的连接器里,如果PCB布局不做规划,打样回来基本就是“插上没反应”、“高速掉线”、“静电一打…

2026/9/10 15:19:50

系统编程学习原型如何补齐稳定性边界

系统编程学习原型如何补齐稳定性边界预算有限时&#xff0c;我先优化明显多余的复制&#xff0c;而不是猜测性地换容器。用借用传递只读数据通常就能减少分配&#xff1a; fn parse(line: &str) -> Result<Item, Error> { /* ... */ }用基准确认热点确实在分配&am…

2026/9/10 15:49:53

雨花区哪家财务公司代理记账比较好?

在雨花区&#xff0c;企业处理财税事务常常面临诸多挑战&#xff0c;选择一家靠谱的财务公司至关重要。湖南巨勤财务管理咨询有限公司就是本地正规实体财税服务机构&#xff0c;深耕本地工商财税行业多年&#xff0c;熟悉当地工商局、税务局最新政策与申报流程。主营公司注册、…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
咨询二维码