老实说,写这篇横评之前,我的编辑器已经换了三茬。从最早在 VSCode 里装各种 AI 补全插件,到后来直接在命令行里和 Claude Code 对话,再到因为一个项目被 Cursor 的 Agent 模式救回来,工具换得比浏览器标签页还快。这次干脆把社区里讨论最凶的四款 AI 编程工具——Claude Code、Cursor、Trae、OpenCode,全部装到同一台机器上,用 7 个真实开发场景挨个过了一遍,顺便把免费配置路径也捋清楚了。
如果你最近正在纠结“AI 编程工具到底选哪家”,或者被身边人安利了一堆名字却不知道从哪个开始,这篇横评就是给你写的。我不堆参数,只说实测下来的体感和踩坑记录,文末还会附一份可以直接照做的免费配置清单,看完你基本能判断自己该用哪款。
1. 动手前的全局认知:四款工具的定位与底层逻辑
1.1 四款工具一句话定位
先把四个“人”认清楚,不然后面测试结果容易看得一头雾水。
Claude Code 是 Anthropic 官方的命令行编程智能体。它在终端里运行,你输入一句话,它就自己规划步骤、读写文件、执行命令、跑测试,像一个驻扎在你项目目录里的远程工程师。它的核心优势是长上下文和代码理解能力,所以重度重构、跨文件排查这类任务它最擅长。
Cursor 是 VSCode 的一个魔改分支,也是最早把“AI 补全 + 对话 + 自动修改”做成完整 IDE 体验的工具。它的强项仍然是编辑器内的流畅度:Tab 补全快得离谱,选中代码直接问,改完能看到逐行 diff。如果你习惯传统 IDE 的工作流,Cursor 是最容易上手的那个。
Trae 是面向中文用户的一款 AI IDE,内置了 Claude、GPT 等多个模型,还单独做了 Builder 模式,可以把自然语言描述的整个应用直接生成出来。对新手来说,“打开 Trae,说一句‘帮我写一个记账本’,一个能跑的前端项目就出来了”这件事是真实存在的,而且它命名、注释、回复都用中文,理解起来零门槛。
OpenCode 是一款开源终端 AI 编程助手,可以理解为 Claude Code 的开源平替。它最大的特点是模型自由度极高,Claude、GPT、Codex、本地模型全都能接。代价是配置成本更高,适合喜欢折腾、在意成本、不想被某个厂商绑定的开发者。
1.2 底层模型与产品哲学的差异
这四款工具背后不只是一套界面差别,而是三种完全不同的产品路线。
Claude Code 和 OpenCode 走的是“智能体优先”路线。它们认为,AI 不应该只是在旁边出主意,而是应该像一个真实开发者那样去操作系统、读取文件、执行命令。区别在于,Claude Code 是官方在模型和工具链之间做了深度调优,OpenCode 则是把模型选择权完全交给你,自己负责调度和编排。
Cursor 和 Trae 走的是“IDE 优先”路线。它们把 AI 的能力嵌进编辑器里,让你在熟悉的界面里完成一切。Cursor 把重心放在补全质量和对话修改的交互体验上,Trae 则侧重“从 0 到 1”的项目生成和中文场景的理解。
用生活化的类比:Claude Code 像一个外包团队负责人,你交代目标,它自己排期干活;Cursor 像一个贴身副驾驶,你开车它帮你盯路况;Trae 像一个施工队包工头,你说要盖个什么样的房子,它直接给你效果图;OpenCode 像一个自己攒机的 DIY 玩家,每个零件都可以按你心意换。
1.3 计费逻辑与免费额度的底层差别
免费配置这件事,不能只看到“免费”两个字,还得看懂它们的钱从哪挣。
Claude Code 本身不单独收费,你用它的前提是有 Anthropic 账号。新用户通常会有一定的体验额度,用完后要么订阅它的套餐,要么配置 API Key 按 token 计费。它的模型能力是四款里综合最强的,所以这也是唯一一个我愿意认真研究额度管理的工具。
Cursor 采取的是 Freemium 模式,免费版可以用,但高级模型、Agent 次数、长上下文模型都有额度限制。它的策略很清楚:先用免费版把你留住,等你的项目规模变大、需求变复杂,自然会想升级。
Trae 采用的是积分体系,注册、签到、完成任务都能攒积分,积分可以兑换模型调用额度。它面向中文用户,很多运营活动还会发兑换码,所以日常轻度使用基本能靠积分撑住。
OpenCode 本身开源免费,但“免费模型”只是它内置的一部分能力,而且免费层对使用环境有限制,这点在后面的配置部分会详细讲。它的核心玩法是你自己配 API Key,成本透明可控,模型能力强不强完全看你愿意花多少钱。
2. 7 个场景横评实测记录
这一部分是整篇横评的主菜。我在同一台测试机上,用同一批需求,分别让四款工具完成任务,尽量控制变量。测试项目放在同一个目录结构下,技术栈和依赖尽量一致,然后记录各自的完成时间、完成度、是否需要额外手工介入。
2.1 场景一:从零搭建完整 Web 项目
测试任务:搭建一个“待办事项管理”全栈小应用。前端用 React + Vite + TypeScript,后端用 Node.js + Express,数据库用 SQLite。要求包含用户登录(用简单的 token 认证)、待办的增删改查、标记完成/未完成、本地持久化。
Claude Code 的表现最接近“真人员工”。我在项目目录里执行claude,把需求描述清楚后,它先给出了项目结构建议,接着反问我两个关键决策:要不要用 ORM、认证方案选 JWT 还是 session。确认之后就开始自动创建文件、装依赖、改路由、补数据库表。整个流程我几乎没碰过文件,最后它会主动告诉我运行命令和测试方法。耗时约 8 分钟,应用能直接跑起来。
Cursor 的表现中规中矩。打开 Agent 对话框描述需求后,它会生成一份实施清单,然后逐个文件创建。不过它不会主动执行终端命令,像npm install、npm run dev都需要我手动来做。中途遇到一个依赖版本冲突,它读取报错日志后自动改掉了package.json里的版本号,这个能力很实用。整体耗时约 15 分钟,完成度很高,但自动化程度偏低。
Trae 的 Builder 模式是四款里“项目生成”体验最直观的。用中文描述需求,点击生成后,它直接输出完整的项目目录和文件,连 README 都有。我再点一下“运行”,它会自动安装依赖并启动项目。不过模板化痕迹比较明显,项目结构规整但缺少最佳实践意识,比如没有把环境变量单独拆到.env文件里。耗时约 13 分钟。
OpenCode 的自由度是一把双刃剑。在终端里执行opencode描述需求后,它开始创建文件,但每走一步都会等我确认;“下一步该做什么”的主动性明显不如 Claude Code。使用 Codex 模型生成的代码质量不错,但依赖安装、数据库初始化这些命令需要我手动执行。耗时约 20 分钟。它适合喜欢逐步验证每一步的人。
2.2 场景二:复杂前端交互组件
测试任务:写一个支持拖拽排序、行内编辑、状态持久化的数据表格组件,React + TypeScript。
这个场景下 Cursor 终于扳回一局。它的 Tab 补全在手动写代码时体验极佳,我输入组件骨架,它几乎能预测我下一个属性名和函数体。但如果你指望一次对话生成整个组件,它反而偏保守,默认只生成骨架,细节需要逐项补充。最终组件是我和它协作完成的,效率很高。
Claude Code 在这个任务里读上下文的能力很强。我要求生成完整组件,它一次就给了一个可以运行的版本。我追加了一句“拖拽动画要顺滑”,它准确地改到了 CSS transition 和拖拽占位逻辑,代码风格干净。缺点是如果组件特别复杂,它容易一次性生成太多代码,导致我 review 起来有点累。
Trae 对中文需求的拆解最到位。我说“行内编辑弹窗”,它给了一个很符合直觉的弹出层实现。不过拖拽排序它默认引入了第三方库,我要求改成原生 HTML5 drag API 后,它也重写得比较干净。整体完成度不错,但需要我明确表达“不要用库”这种约束。
OpenCode 的代码质量取决于接入的模型。我换了 Claude 模型后,生成的组件质量很高,逻辑清晰。问题出在终端环境里看 UI 效果比较费劲,我得反复跑到浏览器里去验证,再回到终端提修改意见,反馈链路比较长。
2.3 场景三:后端接口与数据库联动
测试任务:写一个订单查询接口,支持分页、时间范围过滤、按用户 ID 联表查询,返回订单明细和订单项数量。
Claude Code 在这个任务里展现了很强的工程意识。它先问我分页返回结构想要哪种格式,然后顺手帮 SQLite 表加上了索引,最后还给接口写了一个简单的单元测试文件。这种“主动多做一步”的行为,是其他三款工具都没做到的。
Cursor 的 Agent 模式自动修改了 controller 层和 service 层,逻辑比较稳。但它不太会主动写测试,我追问了一次,它才补了一个测试文件。接口本身没有问题,运行起来查询结果也符合预期。
Trae 的中文注释和解释是亮点。它生成完接口后,会用中文把查询逻辑、参数含义、返回结构讲得明明白白,对新手特别友好。但性能优化方面它不够主动,我没有提“加索引”之前,它完全没有考虑大数据量下的查询效率。
OpenCode 配合 Codex 模型生成的代码质量相当高,SQL 语法和 ORM 调用都很规范。但数据库迁移命令需要我手动执行,出错后它也不会主动回滚,整个过程需要更高的手动参与度。
2.4 场景四:老项目重构与代码阅读
测试任务:把一个 500 行左右的老旧 JavaScript 文件重构为模块化代码,要求拆分模块、补充 TypeScript 类型、添加简要注释。
Claude Code 是四款里唯一一个先“通读全文”再动手的工具。它在开始重构前输出了完整的重构计划:按依赖关系拆成三个模块,每个模块的职责是什么,类型定义怎么设计。执行完成后,它还解释了为什么这样拆,非常像资深工程师在做 code review。
Cursor 也能完成重构,但一开始它直接改了函数名,导致其他文件的调用点报错。后来我让它全局搜索所有调用点并同步修改,它才补上了。这个过程中的 diff 界面非常好用,每一处改动都清楚可见,适合对“AI 动了哪些代码”有强把控欲的人。
Trae 在阅读代码方面表现不错,能用中文把一段被压缩得很难看的 JS 代码讲解清楚。但重构生成的代码比较规整,缺少“为什么这么拆”的深度解释,给人的感觉更像“做好了但没讲透”。
OpenCode 在大规模重命名和移动文件方面能力不弱,配合 Claude 模型时重构完成度很高。但有一个问题:如果提示词写不清楚,它可能只改一半文件,遗漏 import 语句或引用路径,需要频繁检查 git diff。
2.5 场景五:疑难 Bug 定位与修复
测试任务:在一个 React 组件里植入“useEffect 依赖数组缺了变量导致闭包数据不刷新”的经典问题,再加一句误导性的注释,看工具能否准确找到根源。
Claude Code 再次展现了读上下文的能力。我描述“页面上显示的数据一直是旧的”,它会主动去读相关文件,几轮分析内就精确定位到依赖数组的问题,还解释了为什么那个变量必须加进依赖。整个排查过程基本不需要我提供更多线索。
Cursor 的情况是:它需要你把报错信息或者奇怪的现象贴进对话框,然后会输出一套非常规范的排查步骤。虽然步骤感很强,但它确实能一步步定位到问题,适合已经习惯“先贴报错再问 AI”的开发流程。
Trae 的逐步排查过程比较长,但它的中文推理过程非常清晰,每一步都会解释“我为什么要检查这里”,这对想学排查思路的新手来说反而是优点。
OpenCode 本身不会主动去翻文件,但如果我描述清楚现象,它能很快给出“闭包 + 依赖数组”的假设,并列出一组验证方法。它不是最快的,但教学属性很强。
2.6 场景六:跨技术栈切换与冷门语法
测试任务:用 Go 写一个并发下载器 CLI 工具;再用 Rust 标准库写一段 CSV 解析脚本,不允许引入第三方 crate。
Claude Code 的跨语言适应能力让我有点意外。Go 并发模型、Rust 的错误处理、标准库 API,它基本都能准确给出可运行代码,甚至会主动考虑并发安全和资源释放问题。
Cursor 的多语言补全也不错,但冷门 API 偶尔会“一本正经地编”。比如 Rust 标准库的一个读取接口,它给的方法名在实际编译时报错,我手动查文档才发现签名变了。所以跨语言场景下,Cursor 的结果需要多一层验证。
Trae 对前端技术栈最顺手,Go 和 Rust 的生成质量只能说够用,标准库细节偶有疏漏,需要人工修正。它的定位本来就偏向 Web 全栈开发,冷门语言不是它的强项。
OpenCode 在这种场景下体现出“换模型”的优势。我切到更擅长代码生成的模型后,生成质量能明显超过 IDE 内置模型。而且因为它是终端工具,直接跑go run、rustc都很自然,验证成本低。
2.7 场景七:多文件协作与长任务执行
测试任务:模拟一个小功能闭环,写前端组件、加后端接口、更新数据库表、再写一份联调文档。
Claude Code 的长任务执行能力是最强的。它会自己维护一个待办清单,连续修改多个文件,中途还能停下来跑测试,跑挂了再改,改完继续。整个流程下来它就像一个能独立工作的外包队伍,用户只需要在最后验收。
Cursor 的 Agent 模式需要我持续对话推进,每走一步都会给我 diff 确认,安全性高,但做不到“挂机让它一口气干完”。如果你只想让它做局部修改,Cursor 够用;如果你想彻底托管一个功能开发,它会让你等得有点急。
Trae 的 Builder 适合“一次生成一整个功能块”。我描述完整闭环后,它一次性生成所有文件,效率很高。但需求变更几轮之后有个明显问题:它容易把之前改好的地方又改回老样子,上下文一致性还需要加强。
OpenCode 的上限同样取决于模型。配合 Claude 模型时,它能连续修改多文件,完成度不错,但稳定性有时不如官方 Claude Code;长时间任务中断后,恢复现场的能力也比较弱。
2.8 场景评分汇总
| 场景 | Claude Code | Cursor | Trae | OpenCode |
|---|---|---|---|---|
| 从零搭建 Web 项目 | 9 | 8 | 8 | 7 |
| 复杂前端组件 | 8 | 9 | 7 | 8 |
| 后端接口与数据库 | 9 | 8 | 7 | 8 |
| 老项目重构 | 9 | 7 | 7 | 8 |
| 疑难 Bug 定位 | 9 | 8 | 7 | 7 |
| 跨技术栈切换 | 9 | 7 | 6 | 8 |
| 多文件长任务 | 9 | 7 | 7 | 7 |
综合来看,Claude Code 在多数重活场景下拿到了最高分。但这不是说每个人都该无脑选它。如果你讨厌命令行,Cursor 的 diff 体验和补全流畅度会让你更舒服;如果你想要中文友好和快速出活,Trae 的 Builder 几乎是为“外行也能做小工具”设计的;如果你在意开源和成本把控,OpenCode 的模型自由调度是独一份的。
3. 免费配置完整指南:从安装到白嫖
横评看完,接下来是实操环节。我会把四款工具的安装、登录、免费额度获取、中文设置、核心配置都过一遍,尽量做到照做就能跑通。
3.1 Claude Code 安装、登录与 Skills 扩展
Claude Code 的前置条件是 Node.js 18 以上,建议直接用 20 以上的 LTS 版本。安装命令非常简单:
npm install -g @anthropic-ai/claude-code装完验证一下:
claude --version如果提示command not found,大概率是 npm 全局目录没进 PATH,可以用npm config get prefix查一下实际路径再补环境变量。第一次执行claude会引导登录 Anthropic 账号,新账号一般有体验额度,够你跑几轮小任务。如果想把它塞进 VSCode,也可以安装官方插件,本质上还是调用本地 CLI,所以终端里登录一次就行。
很多人忽略的是 Skills 机制。这是 Claude Code 的扩展能力,相当于给 AI 装一个“行业技能包”。比如你想让它更懂前端规范,就装一个前端工程化相关 skill。安装方法很简单:把 skill 文件夹放到~/.claude/skills/或项目的.claude/skills/目录下,重启对话即生效。社区里有大量现成 skills,网上搜一下就有。
免费额度用完之后,如果想继续用,两条路:订阅订阅套餐,或者配置 API Key。我个人建议先用体验额度感受几天,确认它真的能帮你提效再付费;如果只是偶尔用一下,OpenCode 接同款模型可能更省钱。
3.2 Cursor 安装、中文设置与免费额度利用
Cursor 直接去官网下载对应系统的安装包即可,Windows、macOS、Linux 都支持。第一次启动可以用 GitHub、Google 等账号登录。
中文设置是很多人的痛点。步骤很简单:按Ctrl+Shift+P打开命令面板,输入Display Language,选择“Install additional languages”,在扩展列表里找到 Chinese(Simplified),安装后再次打开Display Language,选择中文并重启编辑器。重启后界面就是中文了。如果个别菜单还是英文,多半是没有完全重启,退出再开一次基本能解决。
免费版够不够用?日常 Tab 补全和少量 Agent 对话是够的,但高级模型、长上下文、大额 Agent 次数会有限制。用完之后不会突然锁死,只是会提示你升级,体验上不会太断崖。想省着点用,可以把项目里的 README 和规范文档写清楚,上下文质量上去了,AI 一次给出的结果就更好,对话次数自然省下来。
隐私设置也值得现在就去调一下。网上讨论很凶的“Cursor 提示词泄露”争议,核心是它对用户数据的使用边界问题。设置里有一个类似“Enable CURSOR AI Training”的开关,默认状态可能不是你想要的,不放心就去关掉。敏感项目里不要把密钥、明文密码、生产环境连接串直接贴到对话中。
3.3 Trae 安装、积分兑换与 Build 模式实战
Trae 目前支持 Windows 和 macOS,官网下载对应安装包即可。安装后使用手机号或邮箱注册,注册时留意服务版本入口的选择,选自己所在区域对应的服务即可。
Trae 最核心的是积分体系。注册、每日签到、完成平台任务、参加官方活动都能获得积分,积分可以兑换模型调用额度。社区里经常提到的“trae 积分兑换码”其实就是官方通过各种活动发放的福利码,本质是给用户的免费额度。这里提醒一句:不要花钱从不靠谱渠道买兑换码,来源不明的码大概率有问题,官方活动已经足够支撑日常使用了。
使用上,Trae 有几种模式:
- Chat 模式:常规对话,适合问代码问题、解释报错。
- Build 模式:描述你想要的应用,Builder 会自动生成项目文件、安装依赖、启动项目,适合从零开始做东西。
- Agent 模式:适合局部功能修改或单文件重构,比 Build 更轻量。
新版 Trae 也提供了 CLI 工具,如果你喜欢终端工作流,可以在终端里调用它的智能体能力,体验有点接近 Claude Code,但中文理解更自然。不过它的插件生态和社区不如 Cursor 丰富,追求“拿来即用”的话选它没错,追求“插件自由度”的话还是要考虑 Cursor。
3.4 OpenCode 安装、Go 套餐接入 Codex 与免费模型
OpenCode 的安装方式很灵活,最简单的做法是用 npm:
npm install -g opencode-ai或者用官方提供的安装脚本,它也提供 VSCode 扩展,方便习惯 IDE 的人先试试。启动方式是在项目目录里执行opencode,第一次启动会引导你选择模型供应商。
OpenCode 内置了部分免费模型,可以直接体验。但这里有个被问爆的报错,原话是:
error from provider (console): opencode's free tier can only be used from wi...翻译过来就是:OpenCode 的免费层对使用环境有限制,系统检测到你当前环境不在允许范围内,就拒绝调用。网上遇到这个报错的人非常多。解决办法有两个:一是配置自己的 API Key,彻底绕开免费层的环境检测;二是购买官方 Go 套餐,官方打包了可用的模型和额度,而且 Go 套餐里明确支持接入 Codex 模型,社区反馈质量相当不错。
配置自己的 API Key 是 OpenCode 的常规玩法。在配置文件里填上你已有的模型服务商 Key,推荐 Claude 或 Codex 模型,效果最好。它也有 Skills 机制,安装目录一般在~/.config/opencode/skills/,用法和 Claude Code 的 skills 类似。
OpenCode 适合什么人?喜欢自定义、在意成本、能接受终端操作、不想被某个厂商生态绑死的开发者。它不适合“我就要装上立刻用”的纯新手,因为模型选择、Key 配置、参数调试都需要一定技术基础。
3.5 一套适合大多数人的免费组合方案
四款工具的安装和配置都过完后,我给一个务实的组合建议:
- 日常写代码,主力用 Cursor 免费版。编辑体验好,Tab 补全快,适合长期泡在 IDE 里。
- 重活交给 Claude Code 的体验额度加 Skills。项目搭架子、老代码重构、疑难 Bug 定位,这类任务它的优势最明显。额度用完了,换回 Trae 或 Cursor 继续。
- 中文项目或新手入门,优先用 Trae。Builder 模式几乎是无痛生成,积分也够日常用。
- 开源项目、隐私敏感项目、或者单纯爱折腾,就用 OpenCode 配自己的 Key。模型任选,成本可控,历史记录都在本地。
一个很重要的原则:主力编辑器只留一个,智能体工具可以多装几个备用。千万不要四款工具同时打开、同时对话,每个工具都有自己的上下文记忆,改来改去最后连你自己都会乱。
4. 常见问题与避坑实录:报错速查与心得
无论工具多好,实际用起来总会遇到各种小问题。这一部分整理我在测试过程中遇到的典型情况,以及一些长期使用后的避坑经验。
4.1 安装与运行报错速查
| 现象 | 常见原因 | 解决方式 |
|---|---|---|
claude: command not found | npm 全局目录没进 PATH | 用npm config get prefix查全局目录,加入 PATH |
| Cursor 设置中文后界面仍是英文 | 语言包未完全生效 | 完全退出并重启编辑器,重新打开 Display Language 确认 |
| Trae 登录失败或积分不到账 | 网络或账号异常 | 重新登录,检查服务版本入口是否选对,必要时换个绑定方式 |
OpenCode 免费层报错error from provider | 免费层使用环境受限 | 配置自己的 API Key,或使用 Go 套餐 |
| VSCode 里 Claude Code 插件连不上 | 本地 CLI 没有登录 | 先去终端执行一次claude完成登录再回插件 |
| Cursor Agent 用一半额度没了 | 免费额度耗尽 | 等周期重置,或先用小型模型,或临时切到 Trae/OpenCode |
这些都是我实际遇到或同事反复问过的问题。多数情况下,重启一次能解决一半问题,仔细看报错第一行能解决剩下的一半。
4.2 免费额度有限,怎么把效能拉到最大
免费额度最怕浪费在低质量对话上。我的经验是把提示词当成代码一样认真写:背景是什么、目标是什么、约束条件有哪些、验证方式是什么,一次性讲清楚。比如“帮我写一个分页接口”和“帮我写一个订单查询接口,按 create_time 倒序,每页 20 条,返回 total 和 list,字段用下划线命名,前端按这个结构对接”,得到的答案质量完全是两回事。
另一个技巧是分级使用模型能力。琐碎的事情,比如格式化代码、翻译注释、生成测试用例,交给 Trae 的积分或 OpenCode 的免费模型都够用;真正涉及架构设计、性能优化、跨模块重构的任务,才值得花 Claude Code 的体验额度。把好钢用在刀刃上。
还有个小习惯:不要复制整段报错日志给 AI。一长串日志里真正有用的往往只有最后几行堆栈,挑出关键信息再贴,AI 定位问题的速度和准确度都会明显提升,对话轮次也省了。
4.3 隐私、安全与厂商锁定:别在 AI 面前裸奔
AI 编程工具本质上是把代码片段发送到模型服务端处理,这是很多人忽略的安全边界。任何时候都不要把密钥、密码、Token、生产环境数据库连接串直接贴进对话。
Cursor 的“提示词泄露”事件在网上讨论很凶,核心就是用户对数据训练和使用边界的担忧。虽然多方说法不一,但对使用者来说,最务实的应对手段就是在设置里关掉训练数据相关的开关,敏感代码做变量名模糊化处理,重要项目尽量用本地模型或在自建环境中运行。
厂商锁定也是我越来越在意的问题。如果你把项目规范、提示词、自动化脚本全部深度绑定在某一个工具里,将来换工具的成本会很高。我的做法是:把关键的项目说明文档、Rules 文件、提示词全部沉淀在代码仓库里。这样无论换 Cursor、换 Trae、还是换 Claude Code,新工具都能立刻理解项目上下文,换工具的代价就小得多。
另外,AI 生成的代码必须人工 review,尤其是认证鉴权、支付逻辑、外部 API 调用这些敏感环节。AI 能帮你写代码,但“这段代码是否安全”这件事,责任始终在开发者自己身上。
4.4 我踩过的坑,以及最终的日常组合
测试这四款工具期间,我也犯了好几个低级错误。
第一个坑是同时开四个工具。Claude Code 在改后端接口、Cursor 在改前端页面、Trae 又跑了一个 Builder 生成新项目,结果它们各自的上下文完全割裂,改完一 merge 全是冲突。后来我硬性规定:深度重构只走 Claude Code,日常编辑固定在 Cursor,其他工具只在特定场景临时打开。
第二个坑是 OpenCode 免费模型跑一半报错,未保存的修改全没了。这一次之后,不管用什么工具做重要修改,我都先git commit或至少生成一份 diff,确保 AI 改坏了也能回滚。
第三个坑是让 Claude Code 自动改代码之前没检查 diff,结果一段能跑的老代码被改成了需要新依赖才能运行的新代码,依赖没跟上直接编译失败。后来养成习惯:每次大改动之后,第一件事是让它跑测试,不通过就立即回滚再重新描述需求。
我现在的日常组合比较稳定。编辑器里始终开着 Cursor 免费版,写业务代码、快速补全、查看 diff;遇到需要从零搭项目、重构老代码、排查诡异 Bug 的重活,就切到终端用 Claude Code 的体验额度加 skills;帮朋友做小型工具或者纯中文项目时,用 Trae 的 Builder 最快;平时折腾开源项目、想看模型差异时,用 OpenCode 搭配自己的 Key,成本可控还自由。四款工具各司其职,反而比只依赖其中任意一款更顺手。
最后再分享两个实战层面的小心得。一是每次让 AI 动手之前,先看一眼git status和当前分支,很多改动混乱的问题都源于没有在一个干净的分支上操作。二是项目的 README 和文档真的值得花时间写好,它不仅是给人看的,更是所有 AI 工具理解你项目的第一入口。文档越清楚,AI 越少说废话,这个习惯带来的收益远超你花在写文档上的那点时间。