在老旧系统迁移领域,AutoDev Bridge 开创了一条全新路径——它是一款借助人工智能技术为遗留系统转型提供智能化解决方案的实用工具。接下来,我们将深入介绍它的核心机制与应用场景。
这一探索始于 2023 年。当时大模型能力尚有限,我们在 AutoDev 中已为遗留系统设计了多项特性。到 2025 年,随着 AutoDev Sketch 自动编程智能体的持续演进,我们打开了新思路:能否将 AI 智能体正式引入遗留系统迁移的战场?于是,AutoDev Bridge 的理念应运而生。
大模型为何在遗留系统迁移中表现更优?
Thoughtworks 公司在遗留系统迁移领域积淀深厚,从迁移策略设计到安全防护网构建,拥有丰富方法论。然而,无论是采用“绞杀者”模式还是“修缮者”模式,始终无法完全脱离人工干预。进入 2025 年,随着 AI 智能体能力的飞速提升,自动化迁移已逐渐成为现实,为此我们进一步优化了开源方案。
那么,大模型究竟凭借哪些优势在老旧系统迁移中脱颖而出?
设计合理的路径规划。 迁移过程中,成本始终是首要考量因素。大模型作为庞大的知识库,能够精准地进行成本评估,大幅减少人工估算的工作量。
生成架构蓝图。 借助目录结构、依赖信息与 API 数据,AI 能够针对当前系统清晰勾勒出初步的架构蓝图,为后续迁移提供清晰的路线图。
提炼代码中的业务知识。 通过抽象语法树(AST)等技术,AI 能够深入分析现有代码的业务逻辑,并基于理解进行重写,避免简单生搬硬套。
跨语言翻译。 与从零生成代码不同,大语言模型在将代码翻译为目标语言时效率极高,通常只需几十秒到几分钟,远快于人工翻译。
迁移防护网的增强。 即自动生成测试用例以验证迁移的正确性,实现精准的回归测试。不过在前端领域,当前仍有改进空间。
…… 此外,更多潜力仍有待挖掘。
因此,总结下来,核心任务可归结为两个关键点:
- 如何使 AI 借助工具更深入地理解遗留系统?
- 如何利用工具有效降低迁移过程中的风险?
AutoDev Bridge 如何实现老旧系统高效迁移?
基于对遗留系统迁移的深入理解,我们设计了 AutoDev Bridge 的初步方案。其核心能力包括:
- 基于“探索-感知-响应”闭环的 LLM 迁移方案
- 借助 AI 工具调用完成的 C4 架构现状分析
- 融合 AST 与调用链的业务逻辑分析(使 AI 真正理解代码)
- 自动生成迁移测试用例
- AI 辅助代码翻译
- …… 其他能力
最关键的是,AutoDev Bridge 与 IDE 深度集成,能够获取准确的 IDE 上下文信息。这对于降低 AI 幻觉、提升迁移准确性至关重要。
探索-感知-响应:基于 LLM 的迁移方案生成

在过去,遗留系统迁移被 Cynefin 框架定义为“复杂问题”——无法预测结果,只能通过实践摸索。基于这一理念,我们为 AutoDev Bridge 设计了“探索—感知—响应”的思维框架。由于模型在执行前需要一张清晰的蓝图(C4 模型),我们将其划分为三个步骤:
- 探索: 初次调用工具,获取系统基本信息,如目录结构与依赖关系。
- 感知: 根据探索结果,生成初步架构蓝图与迁移方案。
- 响应: 验证迁移方案,生成测试用例及迁移代码。
落实到国内模型能力上,V3 负责探索环节,R1 负责方案设计,再由 V3 执行响应。各模型分工明确,大幅提升了整体效率。
面向架构视图的专用工具设计
为使 AI 更深入理解当前系统的架构,我们针对架构视图设计了一套专用工具:
| 工具名称 (name) | 描述 (desc) |
|---|---|
| componentView | 列出所有 UI 组件,如 React、Vue 等 |
| containerView | 列出所有模块 |
| webApiView | 列出所有 Web API 接口 |
| stylingView | 列出所有 CSS、SCSS 样式类 |
| dir | 获取当前层级目录结构 |
| history | 获取文件历史提交记录 |
| knowledge | 基于 API 调用链分析,默认 depth=2,即从 Controller 到 Repository 的调用链路 |
以下为 AI 基于某个项目架构视图的分析结果示例:
不过,目前 DeepSeek 对 C4 模型的理解仍有一定局限,这部分还需要持续优化。
业务知识提取与智能理解
在业务逻辑分析方面,我们主要依赖基于 API 的 AST 与调用链分析技术。首先通过 webApiView 获取所有 API,再通过 knowledge 获取 API 的调用链。例如:
/knowledge:GET#/api/blog/*
有了从 Controller 到 Repository 的完整调用链,AI 理解当前 API 业务逻辑的过程变得直观而高效:
当然,这仅是一个简单示例。在实际场景中,AI 还需要结合搜索等多种工具获取更多上下文信息,才能做出更精准的判断与决策。
