Trae AI 是字节跳动推出的 AI 编程助手,在 IntelliJ IDEA 中通过插件形式提供智能代码补全、代码生成、代码解释、单元测试生成等功能,支持 Java、Python、Go、JavaScript 等多种语言。
一、安装与配置
1. 安装插件
在 IDEA 中打开插件市场(File → Settings → Plugins),搜索 "Trae AI" 或 "Trae Code AI",点击 Install 安装,重启 IDEA 生效。
2. 配置模型
首次使用需配置 AI 模型:
-
打开 File → Settings → Tools → Trae AI
-
选择 Cloud Model(推荐新手),输入 API Key(在 Trae AI 官网注册获取)
-
选择模型版本(如 trae-7b-code、trae-13b-code,参数更大的模型效果更好)
-
本地模型配置:选择 Local Model,输入本地模型服务地址(如
http://localhost:8080/v1),配置 temperature 等参数
3. 验证安装成功
重启后检查:
-
菜单栏出现 "Trae AI" 选项
-
编辑器右键菜单包含 "Trae AI: ..." 相关功能
-
工具栏显示 Trae AI 图标(带闪电的机器人)
二、核心功能与使用方式
1. 三种调用方式
-
右键菜单调用:在编辑器中右键代码 → 选择 "Trae AI" 子菜单 → 使用 Generate Code、Explain Code、Optimize Code、Generate Tests 等功能
-
快捷键调用:Settings → Keymap → Trae AI,为常用功能绑定快捷键(如 Generate Code 绑定 Alt+A)
-
命令面板调用:Ctrl+Shift+A 打开命令面板,输入 "Trae AI:" 选择功能
2. 主要功能说明
| 功能 | 说明 | 适用场景 |
|---|---|---|
| 代码补全 | 基于上下文提供单行/多行代码建议 | 编写循环、条件判断、方法调用等 |
| 代码生成 | 根据自然语言描述生成完整代码 | 生成 CRUD 方法、工具函数、接口实现 |
| 代码解释 | 逐行解析代码功能、依赖关系 | 理解复杂逻辑、快速上手项目 |
| 注释生成 | 自动生成函数级或行间注释 | 提高代码可读性、生成 API 文档 |
| 单元测试生成 | 为代码片段生成单元测试用例 | 快速编写 JUnit、pytest 测试 |
| 智能修复 | 检测语法错误、逻辑 bug 并提供修复方案 | 修复空指针、数组越界、资源未关闭等问题 |
三、实战示例(Java + Spring Boot)
示例1:生成 CRUD 方法
场景:为 UserService 生成根据 ID 查询用户的方法
操作步骤:
-
在 UserService 接口中定位到需要生成方法的位置
-
右键 → Trae AI → Generate Code
-
输入提示词:
根据用户ID查询用户信息,返回User对象,如果用户不存在返回null -
点击生成,查看并确认生成的代码
生成结果示例:
public User getUserById(Long id) {
return userRepository.findById(id).orElse(null);
}
示例2:代码解释与优化
场景:优化一段复杂的业务逻辑代码
操作步骤:
-
选中需要优化的代码块
-
右键 → Trae AI → Explain Code(先理解代码逻辑)
-
右键 → Trae AI → Optimize Code(优化代码结构)
-
查看优化建议,选择 Accept 或 Reject
优化示例:
// 优化前:嵌套 if-else
if (user != null) {
if (user.getAge() > 18) {
if (user.getStatus() == 1) {
return true;
}
}
}
return false;
// 优化后:使用卫语句
if (user == null) return false;
if (user.getAge() <= 18) return false;
return user.getStatus() == 1;
示例3:生成单元测试
场景:为 UserService 的 getUserById 方法生成单元测试
操作步骤:
-
在 UserService 类中选中 getUserById 方法
-
右键 → Trae AI → Generate Tests
-
选择测试框架(JUnit 5)
-
查看生成的测试用例,补充测试数据后运行
生成测试示例:
@Test
void testGetUserById_UserExists() {
// 准备测试数据
User mockUser = new User();
mockUser.setId(1L);
mockUser.setName("张三");
when(userRepository.findById(1L)).thenReturn(Optional.of(mockUser));
// 执行测试
User result = userService.getUserById(1L);
// 验证结果
assertNotNull(result);
assertEquals(1L, result.getId());
assertEquals("张三", result.getName());
}
@Test
void testGetUserById_UserNotExists() {
when(userRepository.findById(999L)).thenReturn(Optional.empty());
User result = userService.getUserById(999L);
assertNull(result);
}
四、最佳实践与注意事项
1. 使用习惯
-
小步快跑:不要一次要求生成大量代码,分步骤生成(先接口 → 再实现 → 最后测试),每步验证后再继续
-
提供充分上下文:生成代码时明确指定框架版本、技术栈(如 "使用 Spring Boot 3.2 和 JDK 17")
-
绑定快捷键:为高频功能(Generate Code、Explain Code)绑定快捷键,减少鼠标操作
2. 避免过度依赖
-
理解后再使用:AI 生成的代码必须经过人工 review,确保逻辑正确,不盲目复制粘贴
-
复杂逻辑不依赖:核心算法、安全相关代码建议手动编写,AI 生成的代码可能存在漏洞
-
定期手动编码:保持手动编码练习,避免长期依赖 AI 导致编码能力退化
3. 常见问题解决
-
生成的代码与项目框架不匹配:在提示词中明确指定框架版本,或在项目根目录添加 tech-stack.md 列出技术栈信息
-
生成代码存在语法错误:细化提示词,明确语法要求,使用 IDEA 的语法检查和单元测试验证
-
插件响应缓慢:降低 max_tokens 参数,减少单次生成内容长度;本地模型选择 smaller 模型或升级硬件配置
通过以上配置和使用方法,你可以在 IntelliJ IDEA 中充分利用 Trae AI 插件提升开发效率,将 AI 变成真正的编程搭子。