目录
- 一、引言
- 二、就差一个程序员了
- 三、现有问题
- 四、协作流程
- 五、场景应用
- 六、小结
一、引言
很高兴与大家分享现阶段 Cursor 在我的工作中的使用体验。先做个预期管理:本文不会分享“x 个你可能不知道的小技巧”,也不会让你获得“无需自行编码”的能力,同时不涉及 Cursor 工程化方面内容。本文只围绕个人开发流程中遇到的真实问题,聊聊如何用 Cursor 提升这部分开发体验,帮助自己在工作中持续保持较好的节奏和状态。
TL;DR
- 列举对 Cursor 的错误预期
- 对比过去的开发流程:使用 Cursor 后发生了哪些变化
- Cursor 在「现状分析 / 方案设计 / 影响评估」中的收益
二、就差一个程序员了
最近团队在大力推广 Cursor AI。随着几个版本迭代体验下来,它精准的自动补全确实好用,甚至体现在:Tab 键的使用率逐渐高于 Command + C/V。既然这么“懂我”,那能不能更进一步——把 PRD 直接喂给 Cursor,让它一步到位输出代码?
1)从需求到代码
Cursor 能理解代码上下文,并据此根据简短描述生成符合上下文的代码。于是我尝试直接将 PRD 提供给 Cursor 来生成代码:
PRD → Cursor → Code(一步到位)
几个需求尝试下来,总的来说问题分为两类:

这有点像去理发店:你说“稍微剪短一点”,结果却被剪得“稍微短了点”。要避免这种情况,就得在开始之前对齐认知,补充描述与参照。这个前置阶段即使发现理解偏差,也能及时纠正,俗称“对齐颗粒度”。
2)从规划到执行
Cursor 产出的代码由它接收到的上下文决定。如果需求意图描述不够准确,它会通过推断补全假设,最后产出自然就不准确。
因此使用 Cursor 的关键,是把开发过程拆成两个阶段:规划阶段 与 执行阶段。在这种分层视角下,我们的关注点与 AI 的角色会更清晰:

Cursor 在这个过程中,不应该被视为开发者的替代品,更像一面放大开发者能力的镜子:
- 对于已知的部分:Cursor 可以加速实现,减少重复劳动。
- 对于未知的部分:Cursor 可以协助探索,但不能替代开发者判断。
理解了 AI 的角色后,我们需要重构现有开发工作流,让 AI 成为真正有效的助手。最关键的转变是:不再试图让 AI 替代开发流程中的任何环节,而是让它协助完成每个环节。
这意味着:不是把 PRD 扔给 AI 等全量代码,而是和 AI 一起理解 PRD 与代码现状,共同设计方案、明确步骤,再分步实现。
三、现有问题
作为前端开发,我们的日常工作大多围绕需求文档进行代码产出,这要求我们在开发前做几件事:
- 理解业务需求
- 理解所属业务与项目现状
- 据此进行方案设计与决策,把复杂问题拆成可执行的粒度

但这也带来一个矛盾:方案设计对效率的影响。一方面,方案设计是保证质量的必要环节;另一方面,生成与维护这些产物又会显著降低开发效率。尤其在快速迭代的项目中,这个矛盾更突出。
有时即使是一个小需求,也可能需要大量前置分析才能进入开发。举个例子:下面是一份小需求的前端方案截图,不同颜色区分了各流程占比。从图中可看出,「现状分析」与「改动方案」往往占据主要篇幅,也对应着主要的时间消耗。

前端方案中的各环节分布
传统的解决办法通常是:
- 模板化方案设计,减少重复工作
- 简化方案设计,减少不必要的细节描述
- 提高团队熟练度,让方案设计生成更高效
而现在,我们能在这些基础上借助 Cursor 进一步提效。
四、协作流程
1)反馈循环
协作时关键在于两件事:
- 对 Cursor 补充上下文
- 对 Cursor 提供的结论进行人工核验
这两者构成一个反馈循环。前者是希望 Cursor 知道,后者是需要我们自己知道,从而保障产出的结果符合预期。

整体的 Cursor 协作流程可以拆成规划与执行两个阶段:规划阶段专注产出方案,执行阶段根据方案产出代码,两者交替迭代。


2)流程对比
相较以往,使用 Cursor 后的工作模式差异如下:


乍一看使用 Cursor 后流程更繁琐——实际上也确实如此。
更推荐换一种心态看待这件事:不必为了使用工具而使用工具。过去我们面向 Google / GitHub / Stack Overflow 编程,也不是为了“搜索而搜索”,而是在开发中遇到不明确的信息必须确认。现在这个角色可以渐进地由 Cursor 承担。比起搜索引擎,Cursor 更能结合项目现状给出贴近上下文的答案,像行车导航一样,没必要给自己太多心理负担。
相关阅读:前端落地 AI 协作时,很多问题最终都会回到工程化与研发流程上,讨论可以去 前端框架/工程化 板块继续延伸。
五、场景应用
回到需求开发中的核心问题:在“写代码”之外,真正占据大量时间的常见环节是——现状分析、改动方案、影响评估。下面主要分享这三个场景里 Cursor 的使用体验。
关于提示词,可根据实际需要使用 notepads 或 rules 降低单次使用成本。
1)现状分析
在需求开发过程中,我们经常会接触陌生业务模块。如何理解现状,往往是最耗时、也最容易被忽视的部分。
如果对现状了解不够,当需求相对复杂、或项目存在较多历史债务时,我们很难输出符合预期的方案,更难保证最终代码质量。对新接手项目的开发者来说,这一阶段往往伴随无数次“代码考古”和“问询前人”。
Cursor 离代码上下文更近,我们可以在它的协助下抽丝剥茧,快速了解业务主线。这本质上是一个学习过程:知道得越多,后续设计与开发时就越能正确地引导 Cursor。
具体可以从需求的目标改动点开始,梳理其所属功能与实现方式,覆盖交互流程、数据管理、条件渲染等:
业务需求
├── 1. 功能
│ ├── 2. 实现
│ ... └── 3. 字段
...
|
了解业务功能 |
了解代码实现 |
了解字段依赖 |
| 目标 |
了解业务功能 |
了解代码实现 |
了解字段依赖 |
| 提示词参考 |
当前功能如何运作,用户交互有哪些路径,具体数据流向是怎样的,请整理成 mermaid 时序图。 |
当前代码如何组织,核心模块有哪些,组件间如何通信,梳理组件关系图。 |
梳理当前表单字段的显隐关系、联动逻辑以及数据源。 |
| 效果 |
输出所属功能中的角色和交互方式,帮助快速掌握业务脉络。  |
输出组件职责与组件关系,便于在投入开发前以组件模块维度确认改动范围。 |
直观呈现表单字段间的联动说明。 |
通过对上述三个层面的反复往复,Cursor 提供的直观输入能帮助我们摆脱“一知半解”的状态。很多焦虑来自不确定性;当不确定性被消除,焦虑也就自然下降了。
这一阶段属于典型的 前端 & 移动 场景:既要读懂业务,也要读懂工程与实现细节。
2)改动方案
了解现状后,就进入面向需求的改动方案设计。
在问答中,Cursor 往往倾向于直接满足“表面需求”,但可能忽略深层的系统设计考虑。遇到复杂问题时,更建议先让 Cursor 分析问题本身,而不是直接要求它给解决方案。通过引导它进行更全面的思考,可以:
- 防止 Cursor 胡编乱造
- 确保它真的理解需求
- 暴露我们自身思考的盲区,降低返工概率
一个可行做法是先明确两句话:
- “在我让你写代码之前不要生成代码”
- “先逐步分析需求,再说明你打算怎么做”
另一方面,Cursor 背后 LLM 的 Context Window 存在上下文长度限制,也就是它和我们一样会有“短期记忆”。当对话超出范围后,它可能遗忘此前的要求与结论,导致方案或代码不准确。
为把短期记忆变成长期记忆,复杂任务需要必要拆解:每次只聚焦一个粒度,确认方案后让 Cursor 汇总记录到外置文档,以便后续对话补充上下文(也可以借助 @Summarized Composers 实现)。面对下一个任务时,开启新会话,多轮下来拼装成由不同模块组成的方案设计。
这样在生成代码阶段,Cursor 面对的只是“局部复杂度中的改动”,能显著降低代码审核与验证成本。同时也更容易把它的输出控制在长度限制内,让它基于精炼后的方案进行决策与产出。
因此在整体流程上:
- 拆解需求,缩小关注范围
- 明确目标,清晰表达需求描述
- Cursor 提供方案
- 检查是否存在理解偏差,不断调整提示
- 确认方案后,由 Cursor 汇总成果
- 渐进开发:分模块让 Cursor 生成代码,及时验证效果并审核代码
提示词参考:
我们先探讨方案,在我让你写代码之前不要生成代码
如果此处要加个 xxx 该怎么做,请先逐步分析需求
在想明白后向我说明为什么要这么设计
在写代码时遵循最小改动原则,避免影响原先的功能
即使识别到历史问题也不要自行优化,可以先告知我问题描述和对当前需求的影响,不要直接改跟本次需求无关的代码
3)影响评估
除去开发前的方案耗时,完成开发后需要解决的是:如何保障自测质量?
对研发而言,需要关注的是:在本次需求迭代内,改动点关联的调用链路;在这个路径依赖下不断冒泡涉及到的具体功能,就是影响面。
因此可以从两个方向提高自测可信度:
- 自下而上:基于改动代码与依赖项进行白盒测试,需要研发投入必要时间进行代码审核
- 自上而下:识别改动最终涉及的页面与功能做黑盒测试,逐个回归确认是否符合预期

借助 Cursor 可以以较低成本分析改动并按需产出测试用例。通过 @git 指令让 Cursor 参与当前功能分支或具体 commit 的评估:

|
代码审查 |
功能验证 |
| 目标 |
代码审查 |
功能验证 |
| 提示词 |
@git 逐个文件分析并总结改动点,评估是否引入了新的问题。 |
@git 基于代码变更输出自测用例清单。 |
| 效果 |
列举每个文件的改动意图,并提示潜在问题与修改意见。 |
围绕改动点生成新旧功能在不同场景下的测试用例。 |
如果你在团队里推动测试用例体系或回归策略,也可以在 软件测试 板块对照不同项目形态做更细化的实践讨论。
六、小结
过去,成为一名优秀开发者需要漫长积累:反复查阅文档、在搜索引擎里筛选有效信息、系统掌握编程语言、算法与网络原理……每一步都在构建扎实的“知识护城河”。
而 AI 时代改变了这条路径:当大模型能生成代码、解析技术方案时,开发者的核心能力似乎从“记忆与执行”转向了“正确地提问,让 AI 提供答案”。
客观来看,AI 降低了信息获取门槛,让想法更快落地、思路更快验证。但不变的是:好的答案源于好的问题;要提出好问题,依然需要专业积累。知道得越清楚,提问才能描述得越准确。
所有事情都有吃力不讨好的部分。随着 Cursor 等 AI 工具在工程中的应用,我们可以逐渐把这部分“消耗型工作”分配出去:用我们的知识储备描述问题、引导过程、审核结果。工具的价值始终是节省人类体力与脑力开销,让我们把精力更多聚焦在工作成果与个人成长上。
推荐阅读:想系统补齐“如何查证、如何追溯、如何看官方说明”的能力,可以多逛逛 技术文档;也欢迎在 云栈社区 继续交流你的 Cursor 工作流实践。