Trae SOLO Mode 深度解析:Solo Builder + Solo Coder
Trae 2.0 的杀手级功能 SOLO Mode,理解两种子模式的区别与用法
SOLO Mode 是什么
Trae 2.0 带来了核心升级 —— SOLO Mode。它让 AI 从”辅助你写代码”变成了”替你完成整件事”。
之前的 Trae 更像一个聪明的补全工具,你写一行它帮你续一行。SOLO Mode 完全不同,它接管了从规划到执行的完整链路:理解意图、制定计划、操作编辑器、跑终端命令、打开浏览器预览。
传统模式:你写代码 → AI 补全 → 你检查 → 你调试 → 你运行
SOLO Mode:你说需求 → AI 规划 → AI 写码 → AI 调试 → AI 运行 → 你验收
SOLO Mode 下面有两个子模式:Solo Builder 和 Solo Coder。
Solo Builder vs Solo Coder:定位区别
| 维度 | Solo Builder | Solo Coder |
|---|---|---|
| 定位 | 全自动 MVP 构建器 | 精细化代码协作伙伴 |
| 适合谁 | 产品经理、设计师、非技术用户 | 开发者、有代码经验的人 |
| 输入方式 | 自然语言、语音、上传设计稿 | 自然语言 + 代码上下文引用 |
| 自主程度 | 高度自主,几乎不需要干预 | 半自主,关键节点征求意见 |
| 输出物 | 完整可运行的项目 | 精确的代码变更 |
| 典型场景 | ”帮我做一个 Todo App" | "把这个函数重构成 hooks” |
| 执行粒度 | 粗粒度,关注整体交付 | 细粒度,关注代码质量 |
| 回滚能力 | 按阶段回滚 | 按单次变更回滚 |
一句话总结:Builder 造房子,Coder 装修房子。
Solo Builder:全自动构建 MVP
Solo Builder 是给”我有想法但不想写代码”的人准备的。描述你想要什么,它从零搭建出可运行的项目。
核心能力:根据描述自动选技术栈、生成项目结构、安装依赖、启动开发服务器并预览、发现问题自动修复。
Solo Coder:精细化代码协作
Solo Coder 面向开发者。你已经有项目了,需要 AI 帮你完成具体编码任务,但希望对过程有更多控制。
普通 Chat:你问一句,AI 答一句,代码贴在聊天框里让你自己复制
Solo Coder:AI 直接在编辑器里改代码,改完跑测试,有问题自己修
Solo Coder 不是聊天机器人,它是一个能操作你编辑器的 Agent。
输入方式:自然语言 / 语音 / 文件上传
SOLO Mode 不再局限于打字,支持三种输入方式混合使用。
自然语言:直接用中文或英文描述需求。
语音输入:点击输入框旁的麦克风图标,适合思路清晰但懒得打字的时候。
文件上传:最有意思的方式,支持多种文件类型:
| 文件类型 | 用途 |
|---|---|
| 设计稿(PNG/Figma) | AI 分析 UI 布局并生成代码 |
| PRD 文档(PDF/Markdown) | AI 提取需求并制定开发计划 |
| API 文档(OpenAPI/Swagger) | AI 自动生成前端调用代码 |
| 数据库 Schema(SQL) | AI 生成 ORM 模型和 CRUD 接口 |
| 手绘草图(照片) | AI 识别布局意图并生成原型 |
// 上传 OpenAPI 文档后,Solo Builder 自动生成的 API 客户端
import axios from 'axios';
const apiClient = axios.create({ baseURL: '/api/v1', timeout: 10000 });
export const userApi = {
getUsers: (params?: { page?: number; size?: number }) =>
apiClient.get('/users', { params }),
getUserById: (id: string) => apiClient.get(`/users/${id}`),
createUser: (data: { name: string; email: string }) =>
apiClient.post('/users', data),
deleteUser: (id: string) => apiClient.delete(`/users/${id}`),
};
规划步骤:AI 计划 → 确认 → 执行
SOLO Mode 不会拿到需求就闷头写代码,它有清晰的三步规划流程。
第一步:AI 生成计划。 输入需求后,AI 先输出执行计划:
1. 初始化 React + TypeScript 项目(Vite)
2. 安装依赖:tailwindcss, react-router-dom, zustand
3. 创建目录结构:components/ pages/ stores/ hooks/
4. 实现页面:首页、列表页、详情页
5. 配置路由和全局状态管理
6. 启动开发服务器并验证
第二步:你确认或调整。 你可以直接确认、修改步骤、或追加要求:
你:"第 2 步把 zustand 换成 jotai,另外加一个暗色模式"
AI:好的,已更新计划。确认后开始执行。
第三步:AI 逐步执行。 每完成一步汇报进度,出错自动修复,修不了才暂停问你。
编辑器 + 终端 + 浏览器统一编排
SOLO Mode 最厉害的地方:它能同时操控 Trae 的三大核心区域。
编辑器:AI 直接创建和修改文件,你能实时看到光标在动、代码在写。
终端:AI 自动执行命令:
npm create vite@latest my-todo -- --template react-ts
cd my-todo && npm install
npm install -D tailwindcss @tailwindcss/vite
npm run dev
浏览器:Trae 内置浏览器预览,AI 启动服务器后自动打开,发现样式错位或报错会回编辑器修复。
三者联动形成闭环:写代码 → 跑命令 → 看效果 → 发现问题 → 改代码 → 再看效果。整个循环不需要你动手。
实战:Solo Builder 构建 Todo App
输入:"用 React + TypeScript 做一个 Todo App,支持添加、完成、删除,数据存 localStorage"
AI 自动生成的核心代码:
// src/hooks/useTodos.ts
import { useState, useEffect } from 'react';
interface Todo {
id: string;
title: string;
completed: boolean;
createdAt: string;
}
const STORAGE_KEY = 'solo-todo-app';
export function useTodos() {
const [todos, setTodos] = useState<Todo[]>(() => {
const saved = localStorage.getItem(STORAGE_KEY);
return saved ? JSON.parse(saved) : [];
});
useEffect(() => {
localStorage.setItem(STORAGE_KEY, JSON.stringify(todos));
}, [todos]);
const addTodo = (title: string) => {
if (!title.trim()) return;
setTodos(prev => [
{ id: crypto.randomUUID(), title: title.trim(), completed: false, createdAt: new Date().toISOString() },
...prev,
]);
};
const toggleTodo = (id: string) => {
setTodos(prev => prev.map(t => (t.id === id ? { ...t, completed: !t.completed } : t)));
};
const deleteTodo = (id: string) => {
setTodos(prev => prev.filter(t => t.id !== id));
};
return { todos, addTodo, toggleTodo, deleteTodo };
}
从输入到浏览器里跑着 Todo App,大约 2 分钟,全程没写一行代码。
实战:Solo Coder 重构代码
假设你有一段重复逻辑太多的 API 代码:
// 重构前 - 每个函数都在重复 try/catch 和 fetch 逻辑
export async function getUsers() {
try {
const res = await fetch('/api/users');
if (!res.ok) throw new Error('Failed');
return await res.json();
} catch (e) { console.error(e); return []; }
}
// getPosts、getComments 也是一模一样的结构...
输入:"把重复逻辑提取成通用函数,加上类型安全和错误处理"
Solo Coder 重构后:
// 重构后 - 通用 fetchApi + 类型安全
async function fetchApi<T>(url: string, fallback: T): Promise<T> {
try {
const res = await fetch(url);
if (!res.ok) throw { status: res.status, message: res.statusText };
return (await res.json()) as T;
} catch (e) {
console.error(`[API Error] ${url}:`, e);
return fallback;
}
}
export interface User { id: string; name: string; email: string }
export interface Post { id: string; title: string; content: string }
export interface Comment { id: string; postId: string; body: string }
export const getUsers = () => fetchApi<User[]>('/api/users', []);
export const getPosts = () => fetchApi<Post[]>('/api/posts', []);
export const getComments = (postId: string) =>
fetchApi<Comment[]>(`/api/posts/${postId}/comments`, []);
改完后 Solo Coder 自动跑测试,确认没有破坏现有功能。
何时用 SOLO vs 普通 Builder
| 场景 | 推荐模式 | 原因 |
|---|---|---|
| 从零做新项目 | Solo Builder | 全自动搭建,省时省力 |
| 大规模重构 | Solo Coder | 需要理解上下文,精确控制 |
| 问技术问题 | 普通 Chat | 不需要执行代码 |
| 修小 bug | 普通 Builder | 杀鸡不用牛刀 |
| 新功能模块 | Solo Coder | 需要和现有代码集成 |
| 快速原型 | Solo Builder | 速度优先 |
| 写单元测试 | Solo Coder | 需要理解业务逻辑 |
| 学新框架 | 普通 Chat | 需要解释和讨论 |
| 批量 CRUD | Solo Builder | 重复性工作,全自动更高效 |
决策流程:
你有代码了吗?
├── 没有 → 想要完整项目? → 是:Solo Builder / 否:普通 Chat
└── 有 → 改动范围大? → 大:Solo Coder / 小:普通 Builder
写在最后
SOLO Mode 代表了 AI IDE 的一个方向:AI 不再只是补全工具,而是能独立完成任务的 Agent。Builder 让非技术人员把想法变成产品,Coder 让开发者把精力放在决策而不是敲键盘上。
当然它不是万能的。复杂的业务逻辑、微妙的架构决策、团队协作规范 —— 这些仍然需要人来把控。最好的用法是把 SOLO 当作执行力极强的队友:你负责想清楚要做什么,它负责又快又好地做出来。
“最好的工具不是替代你思考的工具,而是让你把所有精力都花在思考上的工具。SOLO Mode 的价值不在于它写了多少代码,而在于它让你不用再写那些你早就知道该怎么写的代码。”
相关文章
评论
加载中...
评论
加载中...