本节我们介绍了从零开始用Cursor进行AI编程的常用基础操作,明白了这些技能怎么用我们就能完全放开手脚,尝试让AI慢慢融入到我们开发工作的各个阶段啦。
这节我们来看一下让Cursor帮助我们写代码,需要掌握的基础操作。 这次继续分享刚开始用Cursor AI编程时能让你快速掌握Cursor使用方法的六个步骤。
设置AI 默认写代码的模式
使用Cursor打开项目工程后,右侧的AI Chat区会显示AI写代码的模式和使用的大模型,Cursor默认会给你把AI编程的模式设置成Agent模式,这个模式的好处是只要你在聊天框里给AI下达指令后,Agent 根据你要完成的事情自动帮你修改项目甚至创建新代码文件,你只需要在修改的地方像下图这样点击接受或者是拒绝。
图片
缺点是Agent模式下AI容易写起来写个不停,如果改的文件多了,你自己写代码的思路会被影响,或者一不留意Accept了一个你不想要的代码变更,你在Debug上花费的时间可能超过AI帮你节省的时间。
我们可以在AI Chat区把它调成Ask模式,但是新打开的Chat框还是会默认使用Agent 模式,这个默认行为可以参考下图的操作步骤修改,让Cursor打开的Chat默认使用Ask模式。
图片
Ask模式下AI只会Chat框里罗列代码怎么实现, 方便我们更仔细地审查AI的思路和生成的代码,如果觉得代码OK我们自己把代码一点点Copy过去也行,这种方式会慢一点,但是个人感觉更稳妥一些,尤其是在迭代你不是很熟悉的代码功能的时候。
如何找到更多大模型?
Cursor 最强的地方,就是它整合了多个大语言模型,你可以根据自己的需求用哪一个,这里关注两个地方。一个是Chat框下方选择模型。
图片
这里是Cursor默认展示的模型,如果这里没有你想用的模型,还可以去我们刚才设置默认模式的设置界面,去Models Tab下开启更多模型。
图片
给AI添加上下文的三个技巧
我们在Chat框中给AI下达指令,让它帮助我们完成代码编写的时候,怎么让它写出来的代码不是凭空瞎写的呢?答案主动把代码编写时需要用到的或者是依赖的已有代码添加到我们跟AI对话的上下文中让它能更好地理解我们想达成什么目标。
这里介绍三种常用的把代码提交到 AI 对话上下文的技巧。
把代码文件/文件夹添加到上下文
我们在给AI写提示词时可以通过 @ 唤起添加上下文的选项,其中最常用的就是把文件或者文件夹添加到提示词的上下文中,直接按回车默认会添加我们当前在编辑器正在查看的文件,输入其他名字会展示出与名字匹配的文件和文件夹来供我们选择加入到上下文。
图片
除了添加文件和文件夹外,我们也可以把选中的代码块添加到上下文,方法是选中代码后点击下图的 Add to Chat 按钮,这个按钮在选中代码后会自动出现。
不过Cursor的UI做的比较一般有的时候,有的时候根本看不见这个按钮,所以我们也可用快捷键 CMD / CTRL + L 把代码添加到上下文 (CMD和CTRL分别对应Mac和Windows上的按键)
图片
让AI小范围修改代码
说到这里我们还可以看到选中代码后有一个Quick Edit 按钮,它的作用是让AI做小范围代码修改,我们还可以使用快捷键 CMD / CTRL + K来完成这个操作。
图片
在弹出框中输入我们想怎么改造现有代码,接下来AI就会根据你的描述和上下文进行代码修改,这里可以进行多轮沟通,如果满意选择Accept 接受代码变更就好。
图片
把命令行输出告诉AI
在我们项目开发的过程后,免不了要执行程序或者用命令安装一些软件包,本身VsCode本身是自带 Terminal 的,Cursor的IDE方面的功能是基于VsCode二次开发的,所以它也自带Terminal。
在Cursor的Terminal中执行命令时,如果执行报错或者是不明白执行结果是什么意思我们都可以选中命令行里的输出,这时Cursor也会跟选中代码时一样弹出一个Add to Chat 浮窗让我们能方便地把命令行里的输出提交到AI Chat的上下文中。比如像下面这样。
图片
这个功能在我们要用命令执行某些操作,或者是根据输出进行Debug时特别有用。
不要忘了用 Auto Complete
最后,大家不要忘了Auto Complete。什么是 Auto Complete 呢?就是你写代码的時候,它会提示你之后要写什么。
图片
如果你想要 AI 的提示 Code,按一下 Tab 就可以了。这个不是啥新功能,最早 GitHub Copilot 就有这个功能。但 Cursor 的 Auto Complete,比GitHub Copilot要强很多,它不但可以一行一行提示,更可以一堆一堆的 进行进行 Code 提示。
而且它会估算到接下來你想做什么,要改哪一行...等等。有时候,你只要不断按Tab 键就行了。注意我说的是有时候,实际情况不可能完全按Tab就行,还需要咱们自己多做代码审查和甄别。
总结
本节我们介绍了从零开始用Cursor进行AI编程的常用基础操作,明白了这些技能怎么用我们就能完全放开手脚,尝试让AI慢慢融入到我们开发工作的各个阶段啦。