共计 4228 个字符,预计需要花费 11 分钟才能阅读完成。
补充说明:目前该应用已经支持 MacOS 和 Windows 系统。字节跳动近期在海外推出了一款 AI 集成开发环境(使用 Trae 快速开发),该产品基于 Claude 3.5 Sonnet 模型,目前提供免费使用,大家体验过的朋友可以分享一下感受吗?

字节跳动旗下全新推出的 AI 集成开发环境 Trae,正式面向海外市场上线!
作为一款与 Cursor 和 Windsurf 直接竞争的新型 AI IDE,Trae 不仅想要与这些工具抗衡,更希望填补它们在中文开发者体验方面的不足。目前,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 的核心问题,因为 Trae 的重点从未在于“AI 对话的智能程度”,而是在于它作为中文开发者的 IDE,能否契合我们的实际使用场景。
接下来,我将结合个人使用经验,分享 Trae 如何提升开发效率,以及与 Cursor 相比,Trae 的独特之处。
Hello World – Trae
- 目前 Trae 仅支持 MacOS 系统,安装完成后,打开 Trae,就可以看到它的标志性 Logo:

- 我们继续下一步,在这里可以直接选择 IDE 默认的内置语言和主题,简单明了;对于英文水平有限的朋友,可以果断选择中文:

- 接下来,我们竟然可以从已有的本地 Vscode 或 Cursor 的配置中进行迁移。说起来,我的配置最初是使用 Vscode 的,而在第一次使用 Cursor 时,就能直接从 Vscode 迁移,现在轮到 Trae 了,这种情况真有些戏剧化,但确实便捷,短时间内就完成了迁移:

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

- 最好是注册并登录以便进行使用,目前为止调用 AI 大模型都是限免的,大家可以尽情体验:

- 最后,Trae 的界面与 Vscode 或 Cursor 相似,均基于 Electron 开发,因此基本的界面和使用体验都很接近,这里就不再赘述。

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

- Claude 3.5 Sonnet
- GPT-4o
这两个都是主流的编程大模型,并且目前都可供限免使用,大家可以放心尝试。
随后,我在侧边栏找到 Marscode 工具的标志性功能——Webview:

这个功能对开发新手非常友好,它允许你在 IDE 的一个窗口中直接显示一个网页。当你运行程序并启动 Web 服务时,IDE 右下角会自动弹出提示,告知你有新页面可以访问,点击即可在 IDE 中打开(我使用了一个现有的小项目进行演示):


有了这个功能,前端开发者可以在 IDE 的左侧显示网页,右侧是代码编辑区域,开发体验非常棒。
聊天功能
在 Trae 中,AI 聊天功能基于大模型实现,目前有两种方式可以调用:
- 在指定代码区域直接进行对话更新,快捷键 –
Cmd + i:


在对话编辑区域,与 Cursor 展示代码变更的方式不同,Trae 直接显示左右两边的代码,左侧是原始代码,右侧是 AI 修复后的代码。这种交互方式对我而言相当直观。
我发现一个情况,在使用这种方式进行代码更新时,它与 Cursor 不同,无法逐步提问直到得到想要的代码,而是每次都基于上下文进行重新回答。你只能选择接受或拒绝,如果接受,则会覆盖当前代码,拒绝则无任何操作。
还有一点,目前通过 cmd+ i 进行回滚后,无法再次撤销回滚操作,需要重新进行操作。而在Cursor 的使用体验中,可以做到代码和对话文字颗粒度的回滚,这一点显得必要。不过值得庆幸的是,AI 聊天功能与 Cursor 一样,无法撤回基于 AI 回答修改过的代码内容,只能人工逐一校验撤回,两个工具都有这个不足,希望 Trae 团队能考虑提前完善此功能,哈哈。
- 使用 AI 对话框进行更新,快捷键 –
Cmd + u:
在这里,有一个独特的功能,个人觉得比 Cursor 更方便好用,那就是 Context 引用 功能,先给你看看它支持引用的内容:
探索 Trae 的强大功能:AI 助手的新体验

Code – 当前选定文件中的某个代码段File – 指定文件的名称Folder – 目标文件夹的名称Workspace – 当前项目下的所有文件后三项的功能与 Cursor 相似,而第一个 Code 的功能尤为突出,它允许直接引用代码中的特定函数,如下所示。这样的细粒度引用在某些情况下能够有效避免对 LLM 上下文的污染,非常实用:

接下来,我尝试用对话的方式让 AI 帮我解决一些问题,举个例子,我让它帮我 完善一些这个代码文件结构:

根据它的反馈,显然借助强大的大模型,它所提供的结果相当不错。它能够根据需求,将代码更新到不同的文件中,甚至可以创建新文件,并且在回答中详细列出每个需要更新的代码及其相对路径:

值得注意的是,如果在一次 AI 聊天中需要修改多个代码位置甚至涉及多个文件,它并不像 Cursor 那样可以自动检索并整理出所有需要修改的文件。这意味着它提供的只是一系列代码建议,用户需要手动逐一审核,才能确保所有更改被记录并应用。只有经过审核的代码才会被实际应用,而未审核的则不会被纳入其中:

因此,大家在使用时要特别留意这一点,以免造成代码更新的遗漏。
最后一点,目前 AI Chat 仍不支持直接读取外部链接进行互动回答,我个人认为这非常重要,希望 Trae 团队能尽快对此进行改进:

Builder 功能
接下来,让我们体验 Trae 的核心功能 – Builder。此功能与 Cursor 的 Agent 类似,均可以 通过用户的提问直接生成完整的代码项目。
我选择了一个当前国内非常受欢迎的 AI 开源社区网站首页,尝试上传照片和简短文字来生成一个静态网站:


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

然而,问题随之而来。由于这是一个从零开始的项目,按照之前提到的 AI Chat 的审核问题,如果 AI 需要执行某个命令,比如 npm install 来安装依赖,而在生成该命令之前未将生成的代码文件更新到项目中,它会因为找不到这些依赖文件而报错,进而导致无法继续执行,这样就形成了死循环 先有鸡还是先有蛋的问题。因此,我们需要手动应用更新,以便继续执行:

不幸的是,在后续执行中,我再次遇到了与 Cursor 相似的问题。AI 在请求执行命令时所用的 shell 环境并非我的默认环境,这使得本地已经安装的 nodejs 环境无法被识别,从而引发错误,这种情况着实让人感到尴尬。此外,我在 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:中文开发者的全球化新视野
Trae 的推出,不仅仅是为了缓解中文开发者在工具使用上的不适应,更是一次全新的尝试,旨在从 本地化的体验走向全球化的视野 。通过对中文语言支持的深度优化、切合实际开发场景的功能设计,以及与主流 AI 模型的有效整合,它重新设定了 适合中文开发者的 IDE的标准。
更为重要的是,Trae 的价值并不局限于其作为工具的功能,它象征着 技术与文化的交融。在当今全球化的背景下,技术工具的应用不应仅限于某一种语言或文化,而应当切实服务于多样化的开发者社区。Trae 的问世,无疑为中文开发者创造了一个更加高效、友好的编程环境,同时也为全球开发工具的本地化提供了重要的借鉴。

