这周我决定做一个实验:用同一个任务,分别喂给 Cursor、GitHub Copilot、Windsurf 和 Claude Code,看它们各自怎么解题。
01 实验任务
一个中等复杂度的后端小需求:用 Python 写一个 Markdown 文件的元信息提取 + 批量重命名脚本。
要求:
递归扫描目录 提取 frontmatter 中的 title 和 date 按 date-title.md格式重命名支持 dry-run 模式预览 冲突检测,重名文件自动加后缀
选中这个任务是因为它不简单也不极端,很接近日常工作中"让 AI 帮忙干掉的脏活"。
02 Cursor:最像人类同事的那个
评分:8.5 / 10
Cursor 是我目前的日常主力,所以测试结果本身有先发优势——我已经熟悉它的行为模式。
表现:
我打开一个干净的 workspace,在 Composer 里用自然语言描述了需求。Cursor 在第一次生成时就给出了一个接近可用的版本,frontmatter 解析用了 python-frontmatter 库而不是手写正则,这个选择让我很舒服。
代码结构分成 4 个函数:scan_files、parse_frontmatter、build_new_name、main。逻辑拆得合理,不是那种把所有东西塞进一个 200 行函数的写法。
翻车点: dry-run 模式它实现了,但输出格式体验一般——只打印了 old -> new,没有高亮冲突项。我追加了一句"冲突时在预览中用红色标注",它立刻改了。
最大优势:
- 上下文感知极强
:它知道我的项目用 uv 管理依赖,自己加了 pyproject.toml - Apply 功能
:diff 级别修改,不像别的工具整段重写 - 多文件编辑
:同时改了脚本和 README
最大槽点: 贵。Pro 版 $20/月,而且免费版限制太多,基本逼着你付费。
03 GitHub Copilot:靠谱的老实人
评分:7.5 / 10
Copilot 最近一年升级很快,尤其是 Chat 模式和 Agent 模式。我同时在 VS Code 和 Neovim 里各测了一次。
表现:
在 VS Code 里用 Agent 模式,Copilot 的规划和执行明显是稳健路线。它没有像 Cursor 那样直接上来写代码,而是先问我:"扫描深度是否限制?递归是否跳过隐藏文件和 .git 目录?"这种确认行为老程序员应该会喜欢。
代码质量不错,但它选择手写 frontmatter 解析而不是用库。不算错,但不够聪明——它没有问我"用现成库还是手写",直接走了更原始的路。
翻车点: 第一次运行时,dry-run 模式下它也创建了目标目录的空壳。这是逻辑 bug,不是语法错误,说明它对这个场景的理解出现了偏差。修复需要我把错误信息贴给它才改对。
最大优势:
和 VS Code 的集成度最高,补全体验丝滑 Workspace 索引让它在大型项目中更准 团队协作层面优势明显
最大槽点: Agent 模式偶尔过度谨慎——改一行代码可能会输出 4 段解释文字,像是在写技术文档而不是干活。
04 Windsurf:被低估的黑马
评分:8 / 10
Windsurf 的前身是 Codeium,这两年变化很大。我用的是 Windsurf Editor + Cascade 模式。
表现:
这个工具让我意外。它的 Cascade 模式在意图理解上表现突出。我给的 prompt 是口语化的:"帮我把一个文件夹里所有带 frontmatter 的 markdown 文件重命名成日期-标题的格式,顺便加个预览功能。"它几乎没有任何追问,直接出手。
代码质量也很能打:用了 pathlib 替代 os.path,类型注解完整,docstring 也写了。这个细节说明它的训练数据质量或者 RLHF 偏好做得到位。
翻车点: 冲突处理的逻辑有边界 case 遗漏:如果一个文件重名两次,第二次的自动后缀会覆盖第一次的重命名结果。这个 bug 我花了 10 分钟排查——AI 写的代码,debug 成本并不会消失,只是转移了。
最大优势:
意图理解是四个里最强的,口语化也能准确执行 代码风格现代化, pathlib/ type hints 都用得很自然价格有竞争力
最大槽点: 生态相对小。插件市场、社区资源、教程都比 Cursor 和 Copilot 少很多。遇到问题能搜到的解决方案有限。
05 Claude Code:博学但话痨的研究员
评分:7 / 10
Claude Code 是 Anthropic 官方出的 CLI 工具,在终端里跑。交互方式和前三个完全不同——纯文本对话,没有可视化 diff。
表现:
Claude Code 的第一步是系统分析。它先列出了一个执行计划:确认 Python 版本、检查项目结构、列出依赖。这个行为很像一个严谨的工程师做 code review 前的准备。
代码写得非常工整,甚至有单元测试。对,它自己主动写了测试用例,这件事让我心情复杂——一方面觉得被尊重了,另一方面觉得你先把功能搞对再写测试行不行。
翻车点: 它在运行脚本前问了我三次"准备好了吗?"第三次的时候我直接打了"JUST DO IT"。它的确认癖在整个测试过程中反复出现,修改一行引号也要问你。
另一个问题是速度——每次对话轮次都慢半拍,尤其是涉及到文件操作时,感觉它在深思熟虑人类存在的意义。
最大优势:
代码质量极高,架构意识强 主动写测试,适合对质量有要求的项目 长上下文处理能力强
最大槽点:
啰嗦到令人烦躁 纯 CLI,没有可视化 diff,不符合大多数人的习惯 API 调用量算下来比 Cursor 月费贵多了
06 横向对比总表
07 我最后的结论
日常主力选 Cursor。虽然贵,但"Apply + Composer + Tab"这套组合拳的效率提升是实打实的。如果你是个人开发者且预算有限,Windsurf 是性价比最优解,能力跟 Cursor 差距不大,价格友好很多。
团队协作场景下,Copilot 的地位短期难以替代。它的企业级功能、安全合规、与 GitHub 生态的深度绑定,不是纯技术层面的事。
Claude Code 适合特定人群:你喜欢终端、你写代码时习惯先规划后执行、你对代码质量有洁癖。如果你只是想要一个帮你写 CRUD 的助手,它会让你血压升高。
最后说一句,这些工具的差距在动态缩小。我三个月前结论可能是"Copilot 完全不够看",但今天它的 Agent 模式提升巨大。明年这时候,排第一的可能是任何一个。
08 写在最后
AI 编程工具最大的陷阱不是技术不成熟,而是让你以为自己变聪明了。
我用了半年后发现一个规律:用 AI 写得越快,后面 debug 的时间就越长。 它写出来的代码我需要一行行看,比自己手写更费脑——因为我在理解别人的逻辑。
所以现在我的策略是:让它写框架和样板,核心逻辑自己写。不是为了情怀,是算过账——debug AI 代码的时间,够我手写三遍了。
如果觉得有用,欢迎转发给同样在跟 AI 较劲的朋友。
夜雨聆风