我的最佳游标技巧 (v0.43)
📚 基础知识
🕵️ 代理
💬 预提示
我已经在专业和业余爱好方面广泛使用 Cursor 四个月了,主要用于前端项目。
这段时间,我学到了一些技巧和窍门,想分享给大家。我不会讲解 Cursor 的基础知识和使用方法,但我会提供一些参考资料,如果你刚开始学习的话可以参考一下。
📚 基础知识
Cursor 拥有大量的 AI 功能,您可以在这里发现其中的大部分功能:
https://www.cursor.com/features
您还可以观看一些视频,但请记住它们很快就会过时。
10 分钟了解 Cursor.AI 基础知识(值得使用吗?)
https://youtu.be/gDzND0M6SGE(2024 年 10 月 23 日)
初学者光标 AI 教程(我如何将编码速度提高 159%)
https://youtu.be/yk9lXobJ95E(2024 年 8 月 16 日)
🕵️ 代理
TL;DR:很棒,但仍有很多需要改进的地方
让我们开始讨论当前的人工智能热门话题:代理
Cursor 在 Composer 面板中有一个 Agent 模式,可以搜索代码库,在文件之间来回切换,并且有更好的推理能力。
它还有很长的路要走,但它对于跨多个文件的小改动或功能甚至是寻找错误来说已经相当不错了。
我在 Agent 模式下遇到的问题是,我无法像在普通的 Composer 模式下那样将文件夹添加到上下文中,只能直接添加文件。这个问题将来可能会有所改进。/
我接下来要分享的技巧目前可以解决这个问题。
🔧 使用“引用打开的编辑器”命令
TL;DR:将几个相关文件添加到上下文的简单方法
与大多数工具一样,如果上下文中充满了与提示无关的内容,那么 AI 在提供响应时就会“迷失自我”,因此我们希望保持上下文最少。
在 Cursor 中,我们可以通过使用 @ 或单击按钮来手动将文件添加到上下文中+
,但这很快就会变得无聊。
我发现的最好的技巧实际上是关闭所有编辑器选项卡,打开那些我确信会帮助 AI 弄清楚要做什么的选项卡,然后在提示中按下并选择“参考打开编辑器”将它们全部添加到一起。/
有时,你会注意到AI试图更改不在上下文中的其他文件,有时它甚至会(错误地)重写整个文件。
这意味着你需要将该文件添加到上下文中(或者,如果你确定的话,你可以告诉AI不要修改该文件)。
因此,您通常会恢复更改并编辑初始提示以向上下文中添加更多文件。
以前这很顺利,但现在有点问题,所以我通常会复制提示,打开一个新的聊天,打开额外的文件,按 / 添加所有内容并粘贴聊天。
有时,为了使 / 正常工作,您需要清空文本提示,但您可以执行以下组合:Ctrl+A、Ctrl+X、/、“参考打开的编辑器”、Ctrl+V。
🗒️ 记事本
TL;DR:使用重复文件和提示的简单方法
在过去的几周里,我做了太多打开相关文件并将它们添加到上下文的过程,所以我开始使用另一个光标功能:记事本。
在记事本中,您可以用纯文本解释某个功能并在其中提及特定文件,然后在提示中提及该记事本,以便AI 了解您希望它了解的有关您正在处理的功能的任何信息。
您还可以使用记事本保存您经常使用的提示,例如代码审查或漏洞搜索。
对于代理模式也很好用
🛂 游标规则
TL;DR:将自定义项目说明添加到上下文中
到目前为止,你可能已经听说过.cursorrules
。它是一个包含指令的文件,在 AI 环境中始终存在。
添加您发现 AI 做错的事情非常有用,例如使用特定的库和代码设计。
它还可以帮助 AI更多地了解项目本身,从而做出更好的响应,尽管为此您可能需要使用“PRD”提示,我将在最后分享更多信息。
您可以在此处找到 .cursorrules 文件的模板,并将它们用作您可以添加到自己的文件中的灵感:
例如,如果您正在使用 NextJs,那么要添加的一个很好的指令是:
- Use "use client" on the top of the file when using client-side states like useState, useEffect, etc.
💬 预提示
TL;DR:在上下文中添加自定义个人说明
与类似.cursorrule
,我们可以在光标设置中的“AI 规则”部分添加符合提示的指令。
2024 年 11 月 4 日,@kayladotdev分享了一条推文,其中包含来自 Cursor 员工@shaoruu的指示。
我自己一直在用这个,效果非常好;我建议你也试试。
DO NOT GIVE ME HIGH LEVEL SHIT, IF I ASK FOR FIX OR EXPLANATION, I WANT ACTUAL CODE OR EXPLANATION!!! I DON'T WANT "Here's how you can blablabla"
- Be casual unless otherwise specified
- Be terse
- Suggest solutions that I didn't think about—anticipate my needs
- Treat me as an expert
- Be accurate and thorough
- Give the answer immediately. Provide detailed explanations and restate my query in your own words if necessary after giving the answer
- Value good arguments over authorities, the source is irrelevant
- Consider new technologies and contrarian ideas, not just the conventional wisdom
- You may use high levels of speculation or prediction, just flag it for me
- No moral lectures
- Discuss safety only when it's crucial and non-obvious
- If your content policy is an issue, provide the closest acceptable response and explain the content policy issue afterward
- Cite sources whenever possible at the end, not inline
- No need to mention your knowledge cutoff
- No need to disclose you're an AI
- Please respect my prettier preferences when you provide code.
- Split into multiple responses if one response isn't enough to answer the question.
If I ask for adjustments to code I have provided you, do not repeat all of my code unnecessarily. Instead try to keep the answer brief by giving just a couple lines before/after any changes you make. Multiple code blocks are ok.
您也可以在文件中使用它.cursorrules
,主要区别在于该文件受git 版本控制,因此需要团队共享,而“AI 规则”则更多地取决于个人偏好。
👀 使用工作状态差异
TL;DR:将当前文件更改的差异添加到上下文中
有时,您希望 AI 更改尚未提交的内容,甚至可以使用它来审查以查找错误或漏洞。
对于这些情况,该命令@Commit (Diff of Working State)
非常有用。
遗憾的是,它目前在代理模式下不起作用。
⚙️ 始终检查光标设置
TL;DR:切换功能并重新同步索引
您可以在那里切换有用和实验性的功能。
它们每次更新都会发生很大变化(您可以在这里跟踪),因此请务必经常重新访问
此外,您还可以在那里重新同步代码库索引,这在您大量创建和删除文件时非常有用,尤其是在使用执行这些操作的脚本时
💾自动保存
2025 更新:现在 Cursor 会自动保存,不再需要
TL;DR:一个危险但方便的功能,可以加快进度循环
在 Twitter/X 上,@hive_echo分享了有关启用编辑器自动保存功能的精彩技巧。
由于我在使用 Composer 时对代码所做的大多数更改都足够安全,可以直接应用和保存,因此这一更改使得前端热重载/编译时间更快、更流畅。
唯一的问题是,它是一个编辑器功能,而不是 Cursor 的真正功能,这意味着即使您手动编码,每个文件都会自动保存,这会触发不必要的重新加载并多次破坏页面。
📒 使用产品需求文档
TL;DR 计划好一切,然后让 AI 完成剩下的事情
使用 Cursor 的一个好方法是创建 PRD 并定义和列出所有产品特性、规格和要求。
然后,您可以将其引用给 AI,以便它更多地了解该项目并知道下一步该做什么。
这个视频详细描述了这一策略。如果你想了解更多,我建议你至少看完前18分钟。
🔗 参考文献和其他链接
视频 面向
软件工程师的 AI 工具,但没有炒作
https://www.youtube.com/watch?v=uRuLgar5XZw
光标 + 剧作家
https://www.youtube.com/watch?v=kH4hM0H_WPg
与 Cursor 团队的播客
https://www.youtube.com/watch?v=oFfVt3S51T4
频道
- https://www.youtube.com/@intheworldofai
- https://www.youtube.com/@YifanBTH
- https://www.youtube.com/@AICodeKing
- https://www.youtube.com/@AIJasonZ
叽叽喳喳
- https://x.com/HeyMarkKop(我)
- https://x.com/kayladotdev
- https://x.com/echo_hive
- https://x.com/YifanBTH
- https://x.com/rohanpaul_ai