同一个项目,同一个需求,两个 AI 编程工具,产出差距有多大?
背景
最近在做一个 资源库语义检索系统(Shield Mind Index) 的从 0 开始的项目。从需求文档到技术方案设计,全程用 AI 编程工具辅助完成。正好用了两个工具 ------ Trae (模型:Doubao-Seed-Code)和 Claude Code(模型:Opus 4.6),在同一个项目上做了对比,结果差异令人深思。
任务说明
项目需求简单概括:构建一个 SaaS 模式的智能资源库系统,支持多租户、语义检索、自动标识入库等功能。
需要完成的工作:
- 产品需求文档:描述系统功能、流程、架构、数据模型
- 流程图设计:将文档中的 Mermaid 流程图转为独立的 SVG 文件
- 技术方案设计:从专业技术角度审查需求文档,完成完整的技术设计
Round 1:需求文档 ------ Trae 先上
给 Trae 一段项目描述,让它写产品需求文档。这部分 Trae 完成得不错,生成了一份包含功能模块、核心流程、系统架构、数据结构的完整 PRD 文档(docs/产品需求文档.md)。
文档中包含了多个 Mermaid 格式的流程图定义,包括:
- 语义检索流程
- 用户注册登录流程
- 自动标识入库流程
- 资源管理时序图
- 资源检索时序图
- 系统架构图
- 界面流程图
评价: 这一轮 Trae 表现合格。需求文档结构完整,信息密度合理。
Round 2:流程图 SVG 化 ------ Trae 翻车
接下来,让 Trae 把文档中的流程图从 Mermaid 语法转为独立的 SVG 文件。
第一次尝试:生成 .mmd + .html
Trae 并没有直接生成 SVG,而是生成了 .mmd 文件和引用 mermaid.js 的 .html 文件:
docs/images/trae/
├── system_architecture.mmd # Mermaid 源文件
├── system_architecture.html # 需要浏览器渲染的 HTML
├── semantic_search_flow.html
├── resource_search_flow.html
├── resource_management_flow.html
├── auto_tagging_flow.html
└── all_diagrams.html
.mmd 文件只是原始 Mermaid 语法的复制,.html 需要浏览器 + CDN 加载 mermaid.js 才能渲染。这不是 SVG,不能直接在 Markdown 中引用。
多次沟通仍无法完成
反复沟通,Trae 始终无法直接生成 SVG 格式的流程图。它似乎不具备将流程图"画"成原生 SVG 的能力,只会依赖第三方渲染引擎。
给出参考方案后才完成
最终,我把之前用 Claude Code 生成 SVG 的方法(一个 Vue 文件的参考示例)给 Trae,它才终于生成了 SVG 文件。但是结果...
Trae 生成的 SVG:能看,但仅此而已
以系统架构图为例,Trae 的产出:

问题一览:
| 问题 | 说明 |
|---|---|
| 视觉单调 | 所有节点使用同一种颜色和样式,无法区分不同层级 |
| 信息缺失 | 架构图缺少 Gateway 层、消息队列、Vault 密钥管理等关键组件 |
| 布局简陋 | 简单的从上到下排列,没有分层概念 |
| 无细节标注 | 节点只有名称,没有技术栈说明和职责描述 |
| 专业度不够 | 更像是 Mermaid 的简单翻译,不像架构设计图 |
再看语义检索流程图:

同样的问题:节点排列单一、缺少缓存判断的菱形节点、没有技术细节标注、没有分支路径的区分。
Round 3:Claude Code 登场
因为是 Trae 设计的需求文档,所以我给 Claude Code 的指令是:
"请结合产品需求文档,完成技术方案的设计,其中包含相关的流程图(采用 SVG),注意,不能完全依靠产品说明文档来,需要从专业技术角度来对文档进行审查,并完成设计方案"
注意关键词:"不能完全依靠"、"专业技术角度"、"审查"。
产出 1:先审查,再设计
Claude Code 的第一件事不是画图,而是审查需求文档 。它生成了一份详细的技术审查报告,指出了 PRD 中的多个问题:

| 问题类别 | 示例 |
|---|---|
| 架构缺陷 | 缺少 API Gateway 层、缺少多租户模型、缺少消息队列、缺少对象存储 |
| 数据模型问题 | API Key 明文存储、模型 API Key 明文、缺少状态机、分类路径低效 |
| 安全问题 | 无速率限制、无 CORS 策略、无输入校验、JWT 无吊销机制 |
| 务实的判断 | 明确标注了"MVP 阶段可接受的简化":计费、SSO、SDK 发布、弹性扩展 |
这份审查本身就很有价值 ------ 它不是在机械执行任务,而是在用技术视角思考。
产出 2:架构图 ------ 天壤之别
Claude Code 生成的系统架构图:

对比一目了然:
| 维度 | Trae | Claude Code |
|---|---|---|
| 分层设计 | 无分层,节点平铺 | Client / Gateway / Service / Data / Infra 五层清晰分色 |
| 组件完整度 | 6 个基础模块 | 包含 Auth、User、Resource、Category、Search、API Key、Model Config、Embedding、Auto-Tagging、Worker、Tenant、Audit Log 等完整服务 |
| 技术标注 | 无 | 每个组件都有技术栈和职责说明(如 "Token Bucket + Redis") |
| 视觉设计 | 单色方块 | 多色分层、阴影效果、圆角、渐变 |
| 外部服务 | 未体现 | 独立标注 OpenAI API、Vision Model、SMTP、OAuth Provider |
| 基础设施 | 未体现 | Docker Compose、GitHub Actions、Prometheus、Grafana、Jaeger |
产出 3:流程图 ------ 信息密度的差异
语义检索流程对比:
Trae 版本:

Claude Code 版本:

Claude Code 的流程图包含了:
- 缓存命中/未命中的菱形判断节点
- 每一步都有编号和技术细节(如 "Model Router: Built-in BERT / External API")
- 旁注说明(如混合检索权重 "Vector score * 0.7 + BM25 text score * 0.3")
- 分支路径颜色区分(缓存命中用绿色,未命中用红色)
- 后处理阶段的具体操作(权限检查、分数阈值、分页)
产出 4:更多专业流程图
Claude Code 还额外生成了 Trae 未涉及的图:
认证授权时序图:

这张图用时序图的形式,清晰展示了 Client -> Gateway -> Auth Service -> PostgreSQL -> Redis 的完整交互,包含注册、登录、API 请求三个场景。
资源入库流程图:

ER 关系图:

部署拓扑图:

关键差异总结
能力维度对比
| 维度 | Trae (Doubao-Seed-Code) | Claude Code (Opus 4.6) |
|---|---|---|
| 需求文档 | 合格,结构完整 | 未单独测试(基于 Trae 的文档工作) |
| SVG 生成能力 | 需要给参考才能完成 | 直接生成,无需引导 |
| 技术审查 | 未体现 | 主动审查 PRD,发现 15+ 个技术问题 |
| 架构理解 | 照搬文档描述 | 基于技术判断补充和修正 |
| 图表质量 | 信息简单、视觉单调 | 信息丰富、分层清晰、视觉专业 |
| 主动性 | 被动执行指令 | 主动发现问题、提出修正方案 |
| 技术深度 | 表面级别 | 涉及具体算法、参数、安全策略 |
核心差距在哪?
1. 不是 "会不会画图" 的问题,是 "理不理解" 的问题
Trae 的架构图缺少 Gateway 层,不是因为不会画多一个方块,而是它不理解 SaaS 产品为什么需要网关层。Claude Code 不仅画出了 Gateway,还标注了它的职责:SSL Termination、负载均衡、Rate Limiting、Auth Middleware。
2. 不是 "完成任务" 的问题,是 "思考任务" 的问题
让 Claude Code 做技术方案,它的第一反应是审查需求文档的合理性。API Key 明文存储?不行,改成 SHA-256 哈希。没有消息队列?异步任务会超时,加 Redis Stream。这种工程直觉是最大的差距。
3. 不是 "好看不好看" 的问题,是 "有没有用" 的问题
Trae 的图拿去给开发看,开发还需要问一堆问题。Claude Code 的图拿去给开发看,直接能开工 ------ 技术栈标了,交互协议标了,连混合检索的权重都写上了。
这是差距还是姿势不对?
老实说,两者都有。
确实是差距
- 模型能力差距:Opus 4.6 在代码理解、系统设计、技术判断上明显强于 Doubao-Seed-Code
- 工具链差距:Claude Code 对 SVG 的原生生成能力更强,不依赖第三方渲染
- 推理深度差距:Claude Code 能做技术审查、发现架构缺陷,这需要深层推理能力
也可能是姿势问题
- Prompt 差异:给 Claude Code 的指令明确要求了"从专业技术角度审查",这种引导很关键
- 工具特性:Claude Code 是终端工具,天然适合代码和文件操作;Trae 作为 IDE 插件,在代码补全等场景可能有不同优势
- 使用场景:如果只是写业务代码、做简单的 CRUD,差距可能没这么大
一个残酷的现实
在 AI 编程这个领域,模型能力就是产品天花板。工具做得再好,底层模型理解不了系统架构,它就画不出好的架构图。给再多参考,如果模型不理解"为什么 SaaS 产品需要租户隔离",它就不会主动在架构中加入这个概念。
这不是用得对不对的问题 ------ 是模型看到同一份需求文档时,脑子里浮现的东西不一样。
写在最后
这次对比不是为了踩谁捧谁。Trae 在它的场景下有它的价值,Doubao-Seed-Code 也在快速进步。但至少在 系统设计、技术方案、流程图生成 这类需要深层技术理解的任务上,Claude Code + Opus 4.6 展现出了明显的优势。
选工具,先想清楚你要它做什么。如果只是补全代码、生成样板,用什么都差不多。但如果需要它像一个资深工程师一样思考 ------ 目前来看,选择确实重要。