补充一下:现在 Trae 已经支持 MacOS 和 Windows 系统了。1.20 字节在海外推出了一款 AI IDE(使用 Trae 加速开发),它使用的是 Claude 3.5 Sonnet 模型,当前可以免费体验。有没有人试过?感觉如何呢?

字节跳动新推出的 AI IDE 产品——Trae,今天正式上线!
这款全新的 AI IDE 旨在与 Cursor 和 Windsurf 等工具一较高下,但它的目标可不仅仅是竞争,还想改善中文开发者的使用体验。目前 Trae IDE 中的 Claude 3.5 和 GPT-4o 都可以免费使用,感兴趣的小伙伴快去体验吧—— https://trae.ai
说实话,回想起来,我们在写代码的时候,很多时候都跟英文打交道。变量名、函数名、注释,甚至工具的界面和文档,基本上都是英文。对于中文开发者来说,这种中英混合的工作方式已经是常态了,但这并不意味着我们不需要一款真正专为中文开发者设计的工具。
像国外的 IDE,诸如 Cursor、Windsurf 甚至 Vscode,虽然功能强大,但它们并没有特别为中文开发者做优化。尤其是在中文支持方面,往往会显得有些“水土不服”。
Trae 的诞生,正是为了填补这些空白。作为一款支持中文的 IDE,Trae 从设计之初就充分考虑了中文开发者的需求。无论是界面语言完全中文化,还是对代码注释的友好支持,Trae 让开发者感受到一种“母语级”的流畅体验。
当然,Trae 还整合了国际上主流的大模型 Claude 3.5 和 GPT-4o,可以为开发者提供智能的代码生成和逻辑优化功能。这些模型在理解中文需求时表现得相当不错,但偶尔会因为语义的细微差别,生成的答案可能不太符合预期。不过,这并不是 Trae 的主要问题,因为它的核心并不在于“AI 对话有多聪明”,而在于它作为中文开发者的 IDE,能多么贴合我们的实际使用场景。
接下来,我想结合自己的使用体验,聊聊 Trae 是如何提升开发效率的,以及与 Cursor 的不同之处。
Hello World – Trae
- 目前 Trae 只支持 MacOS 系统。安装完成后,打开 Trae,你会看到它的标志性 Logo:

- 接着,我们可以直接选择 IDE 默认的内置语言和主题,界面简单明了,不会英文的小伙伴可以直接选中文:

- 然后,我们可以很方便地从本地已有的 Vscode 或 Cursor 的配置中进行迁移。说起来,我的配置最开始是用 Vscode 的,后来第一次使用 Cursor 时也能直接迁移,但这次轮到 Trae 了,感觉真是戏剧化,但确实非常方便,没多久就迁移好了:

- 接下来,和 Vscode 或 Cursor 一样,我们可以在本地终端安装对应的命令行工具:

- 最好还是注册登录使用,目前 AI 大模型都在限免阶段,大家可以试试:

- 最后,就是 Trae 的界面了,和 Vscode 或 Cursor 很相似,都是基于 Electron 开发的,所以基本的界面和使用体验差不多,这里就不多提了。

初探 Trae
进入 Trae 界面后,我首先查看了支持的大模型,目前只有两个:

- Claude 3.5 Sonnet
- GPT-4o
这两个都是主流的编程大模型,而且都是限免,大家可以放心使用。
接着我在侧边栏发现了一个非常实用的功能——Webview:

这个功能非常适合开发新手,可以在 IDE 的窗口中直接显示网页。当你运行程序并启动 web 服务时,IDE 右下角会自动弹出提示,点击就能在 IDE 中打开新页面(我用一个现有的小项目来演示):


有了这个功能,前端开发的小伙伴可以在 IDE 中一边看网页,一边编辑代码,体验真不错。
聊天功能
在 Trae 中,AI 聊天功能是基于大模型实现的,目前我们可以用以下两种方式来调用它:
- 直接在指定的代码区域进行对话更新,快捷键 –
Cmd + i:


在这个对话区域,Trae 的代码变更展示方式与 Cursor 不同,它是将左右两边的代码直接展示,左边是你原来的代码,右边是 AI 修改后的代码,这样的交互方式对于我来说挺直观的。
不过我发现一个问题,就是在使用这种方式更新代码时,它不像 Cursor 可以追问问题来得到你想要的代码,而是每次都像是基于上下文重新回答。你只能选择接受或拒绝,如果接受,当前代码会被覆盖,拒绝则不会有任何变化。
还有一点是,目前 cmd+i 撤回操作后,无法再撤销回滚,需要重新操作,这在 Cursor 的体验中是可以做到的,感觉还是有必要的。不过好在的是,AI 聊天功能与 Cursor 一样,无法撤回基于 AI 修改的代码,得一个个手动校验撤回,这两个工具都存在这个问题,希望 Trae 团队能考虑完善一下这个功能哈哈。
- 使用 AI 对话框进行更新,快捷键 –
Cmd + u:
在这里,有一个我觉得比 Cursor 更方便实用的功能,先让你看看它能引用些什么来进行对话:
Trae的新功能探讨

Code– 当前选中文件中的特定代码块File– 指定的文件名称Folder– 指定文件夹的名称Workspace– 当前项目内的所有文件
后面提到的三个功能,其实和 Cursor 类似,但最吸引我的是第一个 Code,它允许你直接引用当前代码中的某个函数,这样在使用时可以避免干扰 LLM 的上下文,挺实用的!

接下来,我就试试和 AI 对话,看看能不能解决些问题,比如让它帮我 完善一些这个代码文件结构:

从它给出的结果来看,基于强大的大模型,确实表现不错!它能根据需求将代码更新到不同文件,甚至帮助创建新文件,每个需要更新的代码都有清晰的路径说明:

不过,有一点需要注意。如果 AI Chat 的回答涉及多个代码位置或文件,它不会像 Cursor 那样自动检索所有需要修改的文件位置,而是提供相应的代码建议。这样的话,你得手动逐个检查,确认过的代码才会被记录到应用中。没有经过审核的代码就不会被应用哦!

所以这点大家要特别留心,不然可能会导致代码更新不完整。
还有一点,AI Chat 目前还无法直接读取外部链接进行互动回答,这对我来说是个不小的缺憾,希望 Trae 团队能尽快改进。
Builder功能
接下来,我想试试 Trae 的一个核心功能 – Builder,这个功能直接对应 Cursor 的 Agent,也就是说它可以通过用户的提问直接生成一个完整的代码项目。
我决定拿国内一个热门的 AI 开源社区网站首页来试试,看看它能否仅通过上传照片和一句话生成一个静态网站:


在这个过程中,它开始逐步生成项目文件,必要时还会询问我的意见来执行命令:

不过这里有个问题,因为这是一个从零开始的项目,如果在 AI 要执行某个命令(比如 npm install 来安装依赖)之前没有先应用更新的代码文件,就会出现找不到依赖文件的错误,这样就会进入死循环 先有鸡还是先有蛋的问题。所以,我们需要先手动应用更新,才能让它继续执行下去:

不巧的是,在后续执行中,我还是遇到了和 Cursor 类似的问题,AI 征求执行命令时所用的 shell 环境并不是我的默认环境,这就导致我本地安装好的 Node.js 环境找不到,出现了报错,真是让人尴尬。而且在 Cursor 和 Trae 中,我都没找到修改位置(或者说我觉得对的位置都改过了,但还是切不到我默认的 shell 环境去运行):

经过一番折腾,我决定换个语言来展示,比如 Python 的:
帮我写一个简单版的 Stable Diffusion web UI 的 Python gradio APP 项目吧,能使用简单的文生图和图生图绘画交互就好
如果大家对这个提问不太理解,可以搜索一下 – Stable Diffusion web UI
这次我只输入一句话,甚至没上传图片,它果然生成了对应的项目,并且一次性就成功了,交互界面都包括文生图和图生图的功能:


太好了,这次终于没问题了!我们趁热打铁,再请求它帮我添加多个文生视频的交互:

生成完成了,但执行过程中出现了报错,不用慌,我们直接点击命令行输出的错误,旁边会出现一个 Add To Chat 按钮,点击后它会自动复制错误信息到 AI Chat 中,这样你就可以根据这个错误让 AI 帮你解决问题:


太好了,直接应用,再执行,这次成功了:

看来,Builder 功能和 Cursor 的 Agent 功能确实很相似,但有个小缺陷:Cursor 的 Agent 功能通常会根据项目情况自动创建一个 Venv 或 Conda 环境来运行,而 Builder 就没有这个功能,直接使用我的默认环境,或者需要我手动创建。我觉得这是需要改进的。(也许我尝试的次数不够,下一次它就会帮我创建吧,哈哈,毕竟这和大模型的能力以及 IDE 工程化的一些功能有关)
其他
此外,Trae 的 Terminal 终端目前还不能通过 AI 对话直接返回想要的命令进行执行,这其实非常实用,我建议以后可以实现这个功能;
还有一点非常好用,就是所有对话框中,默认空时都会有一个提示:

在多轮对话中,我们可以通过上下按钮查看之前的对话内容,甚至可以直接加载之前对话中的图片,这样的设计真棒,让上下文追溯变得更方便。
总结
Trae 的推出,不只是为了让中文开发者在使用工具时少点“水土不服”的感觉,更是一种从本地化到全球化的新尝试。它通过对中文语言支持的深度优化,结合开发者实际需求的功能设计,以及与主流 AI 模型的无缝对接,重新设定了友好型 IDE的标准,真是太给力了。
更值得一提的是,Trae 的价值不仅仅在于它的工具功能,它象征着技术与文化的交融。在当今这个全球化的时代,技术工具的使用不该只局限于某一种语言或文化,而应该真正服务于多元化的开发者群体。Trae 的问世,毫无疑问地为中文开发者提供了一个更高效、更友好的编程环境,同时也为全球开发工具的本地化进程提供了重要的借鉴。











使用 Trae 的时候发现,偶尔生成的代码逻辑不太符合预期,可能需要人工调整。
建议在使用 Trae 时,尽量多测试不同的模型,看看哪种效果更好,毕竟各有优劣。
这么好的工具,如果能不断优化,未来会不会成为开发者的首选呢?
Trae 作为一款新工具,能否提供更好的中文注释支持?这对开发者来说很重要。
听说 Trae 迁移配置很方便,实际操作真的那么简单吗?
感觉 Trae 有潜力,尤其是针对中文开发者的设计。
Trae 的免费体验很吸引人,希望这不会是昙花一现。
感觉Trae的设计挺符合中文使用习惯的,值得一试。
Trae 的界面设计非常友好,感觉使用体验比其他工具要好。
迁移配置这么方便,实际操作过程有没有遇到什么问题?
用 Trae 开发时,有遇到中文注释识别不清的情况吗?这个功能太重要了。