之前有朋友和大学生问过我,像猹杀这样的完整游戏是怎么做出来的。其实这个游戏完全是用 AI 编程完成的。虽说我有技术背景,但我现在已经不怎么会去手动改代码了。

我平时使用最多的是两个 AI 编程工具:Cursor 和 Windsurf。这篇分享一下我为什么选择这两个工具,以及我平时怎么搭配使用它们。
为什么是 Cursor 和 Windsurf
Cursor 和 Windsurf 都是 AI 编程类的 IDE,也就是集成开发环境。我认为它们两个的 Agent 设计是目前最好的,性能和对 AI 工具的整体规划都做得比较完整。
我不使用 Claude Code 或者 Codex 这种命令行工具,原因是我日常切换模型比较多。Cursor 和 Windsurf 都支持在多种模型之间切换。

Cursor 一个月的用量和开销
给大家看一下我开通 Cursor 之后一个月的用量。我是 16 号开通的 200 美元 Ultra 套餐,到录制这天,按实际价格折算已经用了 319 美元,大概是 6.7 亿 token。

用量排名第一的是 Claude 4.5 Opus,用了 1 亿 token。这个模型目前是最强的模型之一,但代价就是贵。用量第二的是 GPT-5.2 Codex,用了 4 亿 token,但总价格还比不上 Opus 那一亿 token 的开销,折算下来的单价大约是 Opus 的四分之一,性价比高很多。账单里剩下的模型怎么选,下面会详细说。
Windsurf 按额度计费
Windsurf 不是按照 token 计费的,它是按照使用额度计费,类似早期的 Cursor。每个月有 500 额度,模型选择里有 5 倍、4 倍、2 倍的档位:选 5 倍的模型,一次请求就扣 5 个额度。

所以在进行比较长的任务时,选择 Windsurf 的性价比会比 Cursor 高很多。Cursor 如果选 Claude Opus 这个档位的模型,一次调用可能就好几美元,任务长的时候一次甚至能到十几美元。
Cursor 里怎么搭配模型
我在 Cursor 里实现一个新功能时,一般会先切到 Plan 模式,选一个比较强的模型,比如 Claude、Auto 或者 Gemini,让它先写方案。

Plan 模式会先写一份 PRD 文档,然后基于这份文档去修改代码。强模型把要改的地方全部定位好以后,我再换一个性价比高的模型去执行,比如我经常用的 GPT-5.2 Codex。

GPT-5.2 Codex 的理解能力不算好,debug 能力也一般,但它修改代码的能力很强。这个模型针对行内的代码修改和代码读取做过专门的优化,很少出现字符串匹配不上、导致修改文件失败的情况。强如 Claude 也经常会遇到这种问题,比如代码里有中文字符或者某些特殊字符,字符串替换就失败了,这其实是浪费钱。用 Codex 执行修改又快又稳,只是它理解能力不强,所以适合接在强模型后面做执行。
这个流程有点像产品经理先想好产品设计,程序员只要按照 PRD 完成对应的开发。
再说说 Cursor 的 Auto 模式。我认为它是一个比较中庸的模型,效果不错,价格大约是 Opus 的三分之一,比 Codex 贵一点点。它的理解能力比 Codex 强,编程能力比 Opus 弱一些。所以遇到一些既需要理解、又需要修改代码的简单小任务,我就直接用 Auto。它背后对应哪个模型我不知道,Cursor 官方说可能是 Claude、Gemini 或者 GPT,我觉得是 Claude 或者 GPT 的概率大一些。
重任务交给 Windsurf
当我有比较重的任务时,比如一次要写很多篇文章,这些文章涉及很多工作流、需要联网调研、需要读取我现成的一些信息,我明知道这个任务开销会很大,就不会用 Cursor 这种按 token 计价的工具,而是换成 Windsurf。
比如我之前做一个落地页业务,一次写了十几篇。这种任务用 Cursor 完成肯定很贵,但在 Windsurf 里我可以直接选最强的模型,一轮对话只消耗 5 个额度。这一轮对话不管多复杂都能进行下去,除非工具调用轮次或者规划轮次达到上限,它会要求 Continue。我当时十几个落地页的开发都没有触到轮次限制。

所以我是两个工具切换使用的。
一些使用技巧
我的 Cursor 里没有配置什么特别的 Hooks 和 Rules,顶多是配了一些 MCP。比如 Supabase 的 MCP,我用来查询线上的函数和数据库,给 AI 作参考;还有几个我自己写的 MCP,是一些博客的工作流,用来获取额外的信息。这些都不是必要的。

我常用的是 IDE 内置的能力,第一个是联网调研。很多人可能不知道,Cursor 和 Windsurf 自带联网调研的能力。比如我要写文章,就可以要求它必须联网调研,去查一些质量比较高的社区或者 GitHub 仓库,这样能保证 AI 的幻觉比较少。再比如我做狼人杀游戏的时候,会要求它联网调研,它会去搜知乎,或者搜一些海外仓库里写好的规则,这样它掌握的信息就充分得多。
第二个是并行任务。我一般先开一个对话,让它执行一个任务;此时如果还有另一个任务,我就点加号再开一个对话。在我自己判断两个任务不会产生很大冲突的情况下,就让它们并行执行。比如一个任务修改代码逻辑,另一个任务修改样式,往往不会冲突。做猹杀的时候我也这么用:一个任务加设置页面的配置,一个任务调整用户信息卡片,一个任务调整消息框,三个任务并行执行。即使冲突了也没太大关系,Agent 发现代码修改失败以后会重新读取最新的代码。

第三个是 Skills。Cursor 里默认支持 Skills,我配置了两个:一个是 Vercel 的 React 最佳实践,里面有一些 React 性能优化的 know-how;另一个是网页设计指南。网页设计指南给设计能力比较差的模型还有一些用,像 Gemini 这种本身设计能力就很强的模型,给了也聊胜于无。Skills 本质上就是一些上下文,我们自己去写文档也是同样的效果。

另外,Cursor 和 Windsurf 各自在 Agent 设计上都做了一些额外的优化。Windsurf 有快速上下文查询,不需要主模型自己通过搜索去找代码位置,它能快速匹配相关联的文件;Cursor 最近也更新了类似 SubAgent 的搜索文件功能。这些都可以提升 AI 修改代码的速度,同时减少 token 开销。
我用过的其他工具
我实际用过非常多的 AI 编程工具,大家感兴趣的话可以在观猹上搜我的主页,我叫 oiloil。我在上面给很多 AI 编程工具写过评测,比如 Kiro、Verdent、CodeFlicker、CodeBuddy,还有阿里的 Qoder,这些我很多都用过。

但为了我自己的效率,我最终还是会选择最好的那批工具来日常使用,也就是前面说的 Cursor 和 Windsurf。
