Featured image of post Cursor 真厉害——但我为什么还是用得抓狂
科技新知 软件工程 开发者工具 AI辅助开发 工程效率

Cursor 真厉害——但我为什么还是用得抓狂

当你需要主导权时: 最聪明的 AI IDE 如何和严肃工程师作对, 以及什么才是务实开发者真正看重的。

先给大家讲个$600的“爆肝”故事。

这个月刚过三分之二, 我的 Cursor 配额就烧光了——不是因为我浪费, 而是认真八小时写功能、查代码、调结构, 做着资深工程师该做的事: 追求类型安全、模块化、可维护。

盯着“升级为按量付费”的弹窗时, 我的心情有点复杂——累, 还有点小委屈。Cursor 真香, 检索系统就像魔法师, 能把分散在各处的依赖都揪出来。上下文理解力, 甩开一大票竞品。出错?几乎没有。

可偏偏, 这几周我一直在和它较劲。

本文不是常规测评, 不打算给你推荐“买谁”。我是全栈工程师, 搞 AI 创业, ML 硕士, 对代码质量有点洁癖。我需要的是能尊重我判断力的工具, 而不是替我下决定的 AI。用了几个月 Cursor、Windsurf 还有 Claude Code, 我发现了比“哪个更好”更有意思的东西——两种截然不同的 AI 编程哲学。

那些没人提的真问题: 认知可预期性

市面上测评都喜欢谈“价格透明”, Cursor 就很自豪地实时展示 token 消耗, 看着挺明了是吧?可我根本看不懂这数字到底意味着啥——重构一块代码要多少 token?加个功能要烧多少?大改架构是不是得卖肾?数字虽然在那, 实际没什么参考价值。

于是, 我总在犹豫: 要不要让它帮我试个新思路, 会不会一下子额度见底?这种踟蹰, 其实才是最大成本。真正消耗的不是钱, 而是你脑子里不停算“这操作值不值”的额外负担。

再试试 Windsurf, 定价直接让人犯困 (褒义) 。每种模型给你明码标价, Opus 就是 3 倍信用点, 百万 token 的 Sonnet 10 倍。用前就心里有底: 每天开发大概十美元。自动充值一开, 心无旁骛。

心理差异巨大。不是 Windsurf 便宜多少, 而是——你能“预判”自己的消耗, 脑子终于能专心搞事, 背景焦虑感直接消失。Cursor 这种“雾里看花”的价格, 不只是掏空钱包, 更是榨干注意力。

当聪明工具遇上老练工程师

必须说句公道话: Cursor 很少犯低级错误, 代码靠谱, 建议也聪明。可问题不在技术失误, 而是更细腻的体验。

来举个栗子:

我的代码库, 所有函数、类的 docstring 都是一行简洁描述——类型提示只写在签名里, 绝不往 docstring 塞 type。Pydantic 模型全家桶风格也统一, 整个项目都在“明示”这些约定。

Windsurf 识趣, 一切照旧。你用 Pydantic, 它就用;docstring 一行到底, 它也跟着写;风格完全贴合现有代码。

Cursor 则爱走自己的路。

除非我每次都在 prompt 里手动强调“docstring 只写一行”, 否则它总爱写多行说明。就算前后左右所有函数都单行, 它也要自作主张。它想写测试、想补文档、想按自己喜好的格式来, 完全不管你项目的规矩。

你可以用 prompt 跟它“battle”, 每次都得加一句“按现有风格, 单行 docstring, 用 Pydantic, 类型提示写签名”, 仿佛有个超强但总忘记你是谁的同事, 你得不断提醒他“哥们儿, 这不是你家实验室”。

于是, 沟通变成死循环。你反复精心措辞, Cursor 却自顾自改代码、套默认风格。你不得不打断它, 重申明明写在代码里的规范, 工程师和 AI 的“心理内耗”飙升。

讽刺的是, 这些行为对新手其实很友好——有“意见”的工具能帮你养成好习惯。问题是, Cursor 优化的是“平均开发者”, 需要“护栏”的那批人。可对资深工程师来说, 这些护栏反而成了“手铐”。

我不想工具替我定风格, 我只想它学会我的。

Cursor 的一技之长

说句良心话, Cursor 的检索 (RAG) 系统真的厉害。

你问 Cursor 代码问题时, 它会显示“searching…”的动画, 真不是摆样子, 而是用强大的上下文检索系统帮你搜最相关的内容。直观、透明、频繁出现, 你几乎能目睹它“思考”的过程。

这让 Cursor 在全局规划时如虎添翼。你要实现涉及多服务的功能?Cursor 能把分散的依赖都扒出来, 理清前后关系, 给出整套方案。像有个把你代码库倒背如流的搭档。

Windsurf 虽然也有“Quick Context”, 但基本得你自己手动触发, 且更像关键词检索而非语义级 RAG。快归快, 检索深度差点意思, 有时还只是遍历文件。

可惜, Cursor 的强项也是软肋。它自动检索, 思路很主观, 你也很难判断它的依据。有几次 Cursor 直接删了重要代码, 只因为没搜到相关功能 (其实明明存在) 。我得手动提醒它“读完整个文件”, 它有时还会无视指令。

这就是 Cursor 的哲学: 既聪明又坚持己见。探索、架构阶段超好用, 关键代码实现时就有点危险。

你没发现的“脑内负担”

有种“细水长流”的烦躁, 很难具体描述, 不是愤怒, 就是像有点小电流一直嗡嗡作响。

用 Cursor, 总是意识到自己在“用 Cursor”——这条 prompt 会不会很贵?它会不会乱改风格?会不会又自动加测试?我是不是得即时叫停它?

用 Windsurf, 脑子只想着代码。

仅此而已, 这就是区别。

Windsurf 偶尔会工具调用卡死——并发命令时前几个命令永远停不下来, 纯粹是执行引擎的 bug。但说实话, 这种失败我反而不那么恼火。

因为 Windsurf 的 bug, 至少是“按我说的做时”崩的;而 Cursor 的问题, 是“它自作主张时”还一副得意洋洋。

结论很简单: 技术可靠但不尊重你, 不如偶尔犯错但始终把你当主角的工具。给我选, 完美但处处掣肘的 IDE 和偶尔磕磕绊绊但高度理解我的 IDE, 我选后者。

真正决定代码质量的, 其实是“模型”不是“壳”

这点我反应了好几个月才明白: 代码质量, 取决于 LLM 模型本身, 而不是 IDE 包了几层皮。

Claude Opus 生成代码清晰、结构合理、类型严谨、边界情况考虑周全。只要 prompt 明确, 最多两轮迭代就能搞定需求 (顺便说一句, 再高级的 LLM 也救不了糟糕的 prompt) 。

Claude Sonnet 虽然快, 但遇到复杂类型系统就有点“掉链子”, 比如 Python 泛型经常出错, 语法也更容易写错。做方案和规划还行, 真要写严谨的工程代码就力不从心。

所以, IDE 最好的做法其实很简单: 别挡着模型发挥。Opus 就让它自由发挥, Sonnet 也一样。IDE 只需喂好上下文, 搞定工具链, 然后闪开。

Cursor 偏不, 非得包一堆 prompt orchestration, 上来先按自己“家法”整风格、补文档、写测试。新手可能高兴, 老司机只会觉得“原本更高级的模型被 IDE 拖了后腿”。

所以, 认真做生产代码时我总回到 Windsurf。不是 Windsurf 更聪明, 而是它懂得“放权”——让 LLM 自己发挥, 你能拿到最接近 Opus 上限的输出, 不被 IDE 风格“驯化”。

为什么我两个都用 (你也可能一样)

折腾了几个月, 实验、吐槽、复盘, 得出一个很现实的结论:

探索需求、理清全局、搞清各服务关系时, 我用 Cursor——RAG 系统几乎无敌, 哪怕多点心理负担也值, 能快速画清“地图”。

等到真正动手实现, 注重类型、风格、结构一致性时, 我切回 Windsurf——它尊重我项目的规律, 生成代码无缝融入现有体系。

两家额度都烧光?那就用 Claude Code, 虽然不能增量改, 但遇到架构决策、复杂推理, 还是很顶用。

这不是摇摆不定, 而是实用主义。不同阶段, 不同工具。

不管 Cursor 还是 Windsurf, 都没有绝对“优劣”。它们分别代表两种 AI 编程哲学: Cursor 偏产品化智能, 重 orchestration、强调全局一致、强意见;Windsurf 偏模型原教旨, 轻量抽象、以代码库为准、少设限。

你是新手或常做陌生领域, Cursor 的“意见”会帮你。你是资深工程师, 有一套自己惯例和审美, 那些“意见”就成了障碍。

理想中的五年后 IDE 长啥样?

现在正是 AI 编程工具的“热炒期”, 大家都在鼓吹“AI agent”, 把 prompt 当商业机密。Cursor 把 orchestration 全封死, Windsurf 虽然通透点, 但也没完全开源。厂商都希望你把这些黑盒当成“魔法”盲信。

但热度总会过去。等开发者们更关心效率而非新奇时, 格局必然变。

最后赢的 IDE, 不会是最聪明的, 而是最“坦诚”的。

我想要的 IDE 能完全暴露 agent 的 prompt, 不是让你 hack, 而是 UI 里一目了然。你能看到“我传了啥给模型”, “注入了什么上下文”, “加了什么风格指令”, 所有 orchestration 都能自定义。

项目级偏好、用户级风格、甚至 AI 辅助 prompt 调优——我可以直接和 IDE 说“像 Windsurf 一点”, 它就调整 orchestration。

这不是什么激进想法, 而是对开发者最基本的尊重。我们不是小白, 我们懂 prompt, 我们能驾驭复杂性。别把我们当需要被“扶上马送一程”的用户, 得把我们当工程师, 给我们掌控权。

最好的 AI IDE, 不会有自己的“意见”, 只会学你的。

你该怎么选?

如果你正在评估这些工具, 最该看的是:

选 Cursor 的理由:

  • 正在学习或频繁进新领域
  • 需要强大、全局的代码检索和规划
  • 可以接受“带意见”的默认风格
  • 用量可控、无需极限爆肝

选 Windsurf 的理由:

  • 资深工程师, 风格有执念
  • 注重代码质量和全局一致
  • 喜欢明码标价、可预期消费
  • 愿意自己手动补充上下文

两者都用的理由:

  • 工作内容复杂、分阶段
  • 能接受切换带来的“脑内切换成本”
  • 重视探索 (Cursor) 和落地实现 (Windsurf) 的差异

但最重要的洞见是: AI IDE 不该像选语言或框架那样选, 而是像选“合伙人”——它尊重你的专业吗?是减轻还是增加你的认知负担?是放大你的思维还是和你作对?

因为我们选的不仅仅是工具, 更是“共事伙伴”。最好的搭档, 不一定最聪明, 而是懂得什么时候该带头, 什么时候该随队。


我还在用 Cursor, 还在为它抓狂, 也还在按时交钱。

但我现在知道自己买的是什么: 智能很强, 但要时刻“讨价还价”的体验。有时候, 这值得;有时候, 我只想要个安安静静、老老实实帮我把事办好的工具。

AI 辅助开发的未来, 不在于造更聪明的 agent, 而在于造更坦诚的伙伴。愿这些工具能暴露假设、尊重偏好, 让“可控”成为信任的基石。

在那之前, 我两个 IDE 都开着, 继续为自己想要的代码和 AI 斗智斗勇。

(人类原创, 有 AI 友情润色)

© 2022 - 2026 张欣耕

保留所有权利