驯服Cursor AI:完美代码生成秘籍

核心问题:AI为何搞砸代码?
  • 事实:AI编程工具(如 Cursor)并非读心术专家。
  • 作者观点:若无规划直接让AI写代码,如同让其"盲目猜测",且其猜测能力"糟糕透顶"。
  • 作者经验:曾让Cursor开发任务管理应用,得到"不兼容框架拼凑而成的科学怪人"。
  • 解决方案核心70%精力规划,30%精力执行

驯服Cursor的六大步骤:

第一步:视规划为生死大事 (事前梳理)
  • 作者转变:从"莽夫"到将规划视为"工作流基石"。
  • 秘密武器:使用 ChatGPT语音助手 在编码前梳理思路。
  • 理由:"亲耳听到自己絮叨的需求时,反而能理清真正想要什么。"
  • 实践案例 (任务管理应用)
    • 口述需求给ChatGPT (添加、编辑、删除任务;首页列表、添加表单、编辑页)。
    • ChatGPT生成大纲,作者随手记在"餐巾纸"上。
  • "餐巾纸草图"作用:作为"北极星",确保人与AI方向一致。
第二步:事无巨细,全部文档化 (提供上下文)
  • 惨痛教训:AI代码质量完全取决于提供的上下文。跳过文档,AI会犯低级错误 (如后端API无错误处理)。
  • 首选工具CodeGuide
  • 关键文档
    • 产品需求文档 (PRD):明确"做什么"(功能、用户故事、边界情况)。
    • 技术栈文档:明确"怎么做"(框架、库、工具)。
  • 文档作用:作为在 Cursor (开发工具) 中的"速查手册",杜绝猜测。
第三步:拒绝从零开始 (使用项目模板)
  • 观点:有AI工具时,从零写项目是"灾难"。
  • Cursor弱点:项目初始化时表现糟糕 (文件结构、样板代码、依赖配置易错)。
  • 作者经验:曾得到Webpack配置损坏的React项目。
  • 解决方案:永远从项目模板 (Starter Kit) 开始。
  • 案例:任务应用使用 React + Node.js 模板。
  • 模板好处:让Cursor专注功能开发,而非搭建脚手架。"像给厨师一颗切好的洋葱"。
第四步:正确配置 Cursor (喂饱上下文)
  • 前提:项目计划、文档、启动模板已就绪。
  • 关键操作
    1. 在项目根目录新建 Instructions 文件夹。
    2. CodeGuide 生成的所有文档放入该文件夹。
    3. Cursor 输入指令:Go through all files in Instructions and use them as context (阅读Instructions目录下所有文件并将其作为上下文使用)。
  • 重要性:如同"施工前给Cursor一份设计蓝图"。跳过则"自找麻烦"。
第五步:项目规则的魔力 (精细化指令)
  • 核心痛点解决:之前Cursor总搞砸代码,因作者未设置明确规则,导致AI靠猜(且常猜错)。
  • 旧版Cursor问题:依赖单一 .cursorrules 文件管理规则是"噩梦",无法扩展,AI响应混乱。
  • 新版Cursor改进:改用 .cursor/rules/ 目录下的 .mdc 文件管理项目规则,"彻底改变了游戏规则"。
  • .mdc文件作用:允许为项目不同部分设置特定指令。
  • 案例 (任务应用配置)
    • frontend.mdc (针对 **/*.tsx):函数式组件+Hooks, TypeScript严格模式, Tailwind CSS。
    • backend.mdc (针对 api/**/*.ts):Express.js路由, RESTful API规范, async/await。
  • 效果:Cursor不再瞎猜,开始产出符合要求的代码,"效果立竿见影"。
第六步:收获与总结 (经验分享)
  • 作者感受:使用项目规则后,工作轻松,Cursor错误减少,能记住编码风格,初次代码正确率高。
  • 比喻:Cursor像"真正听话的初级开发助手"。
  • 宝贵经验
    • 规则要具体:前后端等规则分开设置。
    • 精确限定范围:如 .tsx 限定React文件。
    • 提前测试:小段代码检查规则遵守情况。
    • 及时更新:项目变动时更新规则。

AI编程关键充分准备,严格把控

作者建议:用 ChatGPT Voice 规划,CodeGuide 写文档,项目模板启动,.mdc 文件定规则。Cursor会从"痛苦源"变成"得力编程伙伴"。

"正是这些'人类痕迹'让一切变得不同。"