跳到主内容
onboarding代码理解架构图Claude Code

用 AI 接手老代码:陌生项目 onboarding 工作流

新人面对几十万行老代码不知从何下手?用 Claude Code / Cursor 在 2 小时内画出项目架构图、找到核心入口、定位关键风险点的标准化 onboarding 工作流。附提示词模板和实操步骤。

发布 2026-04-25更新 2026-06-08

适用场景

  • 新人入职,被丢给一个 5 年老项目
  • 接手前同事跑路留下的代码
  • 评估一个开源项目能否用作技术选型
  • 给客户做代码 audit / 接手报价

用人脑读两周做的事,AI 协助下 2-4 小时完成 80%。

总览:六步法

1. clone & 准备 → 2. 项目体检 → 3. 架构图 → 4. 核心路径 →
5. 风险与债务 → 6. 关键问题清单

每一步都有具体 Prompt + 验收标准。


Step 1 — clone 与环境准备(10 分钟)

git clone <repo>
cd <repo>
# 关键:先让 AI 看 git 历史活跃度
git log --since='1 year ago' --pretty=format:'%h %s' | wc -l

打开 Claude Code 或 Cursor,进入项目目录。

第一条 Prompt:

"请扫描当前目录,告诉我:(1) 这是什么类型的项目;(2) 主要技术栈;(3) 入口文件在哪;(4) 有没有 README / docs。先不要读源码,只看 package.json / pyproject.toml / Cargo.toml / go.mod 这类元文件。"

为什么:先让 AI 建立宏观认知,避免它一上来就被某个文件带偏。


Step 2 — 项目体检(20 分钟)

让 AI 出一份"健康报告":

请生成一份项目体检报告,包含:

1. 代码量:按语言/目录分布
2. 测试覆盖:有没有测试,跑得起来吗,覆盖率多少
3. 依赖健康:有几个依赖、最旧的几个分别多久没更新
4. 文档完整度:README / CHANGELOG / CONTRIBUTING / docs/
5. CI 状态:有 CI 吗,最近一次跑成功了吗
6. 死代码迹象:明显未使用的文件 / 函数

不要猜测,只报告确凿能看到的事实。每条结论给出依据。

Claude Code 做这事最强——它会自己跑 find、git log、npm outdated 这类命令,给出真凭实据。


Step 3 — 架构图(30 分钟)

基于刚才的体检,画一张项目架构图(Mermaid 格式)。
要求:
- 顶层模块用方框
- 数据流向用箭头
- 外部依赖(DB / 第三方 API / 队列)单独标出
- **如果某个边界你不确定,标 "?" 而不是猜**

画完后,用 5-10 句话解释这个架构的核心思路。

关键技巧:明确告诉 AI "不确定就标 ?",否则它会编。

把生成的 Mermaid 复制到 mermaid.live 验证可视化效果。


Step 4 — 找到"核心路径"(30 分钟)

这是 onboarding 最关键的一步。每个项目都有 1-3 条核心业务路径——用户最常用的功能链路。把它走通,整个项目就懂一半了。

请找出本项目的 3 条核心业务路径(按重要性排序):

每条路径需要回答:
1. 用户从哪触发(URL / API endpoint / CLI 命令)
2. 经过哪些关键文件 / 函数
3. 数据如何流动(DB 读什么、写什么)
4. 在哪里返回结果

用编号列表给出,每个文件名 + 行号都要确凿。

验收标准:你能照着这份路径,自己手动 trace 一遍而不卡壳。如果哪一步看不懂,回去问 AI 那一段具体是什么。


Step 5 — 风险 + 技术债清单(30 分钟)

请审视代码库,列出:

A. 高风险代码(运行时容易出问题)
   - 没有错误处理的 IO / 网络调用
   - 明显的 race condition / 并发问题
   - 写死的 secret / API key
   - SQL 注入 / XSS 风险

B. 技术债(影响开发效率)
   - 重复的代码 (DRY 违反)
   - 函数过长(>200 行)
   - 圈复杂度过高的函数
   - 循环依赖

C. 维护性差的部分
   - 完全没注释的关键算法
   - "magic number"
   - 命名混乱的模块

每条给出文件路径 + 行号,并用 1 句话解释为什么是问题。

这一步的输出可以直接交给客户/老板——如果你是接外包、做 audit,这就是付费报告的核心内容。


Step 6 — 关键问题清单(20 分钟)

最后一步,让 AI 列出"作为新人接手,你最该问原作者的 10 个问题":

假设你即将接手这个项目,原作者今天最后一天上班,
你只能问他 10 个问题。请列出这 10 个问题,按重要性排序。

每个问题要:
- 具体(不能是"这个项目怎么部署"这种宽泛问题)
- 可被一句话回答
- 解决之后你能独立运行/修改这个项目

这份清单极其有价值——它把"未知的未知"转化成"已知的未知"。你可以拿着它去问前同事 / 客户 / 文档 / 社区。


一个真实案例

接手一个 4 年的 Django + Vue 老项目(约 18 万行),原作者已离职、文档只有半页 README。按这套六步法实操:

  • Step 1-2(35 分钟):体检发现测试覆盖率仅 12%、有 3 个依赖超过 2 年没更新、CI 早已失效。
  • Step 3(30 分钟):架构图暴露出一个隐藏的"上帝模块"——一个 2400 行的 utils.py 被几乎所有模块导入,是后续重构的最大障碍。
  • Step 4(40 分钟):3 条核心路径里,"下单"路径穿过 11 个文件,其中一处用未文档化的 Django signals 做副作用,这正是新人最容易踩的雷。
  • Step 5-6(45 分钟):风险清单揪出 2 处字符串拼接 SQL,关键问题清单第一条就是"那个上帝模块能不能拆"。

整个过程约 2.5 小时,产出的文档让第二个新人当天就能跑起项目并改第一个 bug——对比之前"靠自己读两周还摸不清下单流程",是数量级的差距。最关键的发现(上帝模块、未文档化的信号)都不是 AI 猜出来的,而是它跑命令、读真实代码后给出 file:line 依据的。


总耗时与产出

阶段耗时产出物
1-230 min项目体检报告
330 minMermaid 架构图
430 min核心业务路径文档
530 min风险 + 技术债清单
620 min关键问题清单
合计~2.5 小时5 份可交付文档

把这 5 份文档存进项目 docs/onboarding/,下一个新人来直接读,再省 2 小时。


工具选择

  • Claude Code:最适合这种"广撒网"任务,自己跑 find/git log/npm outdated 等命令、读文件、给 file:line 依据。大项目首选。深度评测见 Claude Code 深度评测。
  • Cursor + @codebase:体验也很好,胜在便宜、有 IDE 可视化。中型项目(< 5 万行)够用。
  • Aider:可以,但要手动 add 文件,节奏更慢,适合你已经知道要看哪些文件的情况。
  • Trae:国内项目首选,中文 prompt 体验最佳,访问无需代理。

三家 IDE 的横向对比见 Cursor vs Windsurf vs Trae 实测。无论用哪个,这套六步法的 prompt 都通用。

踩坑

  • 不要让 AI 一次读完整个项目——它会丢上下文。分模块 + 每模块独立提问。
  • 关键结论要让它给出文件:行号 作为依据,否则容易编。
  • 不要过度依赖 AI 的"我觉得"——遇到不确定的地方,强制让它标记不确定,然后人工 verify。

常见反模式

  • 一次性把整个仓库丢给 AI 让它"全读一遍"——必然丢上下文,输出泛泛而谈。永远分模块、分步骤。
  • 接受没有 file:line 依据的结论——"这个项目用了观察者模式"如果没有具体文件佐证,很可能是 AI 顺嘴编的。要求每条结论可追溯。
  • 跳过 Step 4 直接改代码——没走通核心路径就动手,等于盲改。核心路径是理解项目的脊椎,省不得。
  • 不保存产出——5 份文档不存进 docs/onboarding/,下一个新人又得重来一遍,白白浪费这 2.5 小时的价值。

延伸阅读

相关对比

Aider vs Claude Code:终端 AI 编程双雄怎么选

Aider vs Claude Code 2026 选型对比:开源 BYOK 多模型 vs Anthropic 订阅长任务 Agent,从编程能力、多模型支持、价格、Git 集成、国内可用性和适合人群判断,帮你选对终端 AI 编程工具。

Aider vs Continue:终端会话派还是 IDE 自建派?2026 对比

Aider 与 Continue 2026 选型对比:两者都是开源、模型可换的路线,但 Aider 是终端里的 Git-native 会话工具,每次改动自动生成一个 commit;Continue 是 IDE 内的可配置助手,强调自定义与自托管。从 6 个维度给出明确取舍。

Aider vs Crush:CLI pair programmer vs 终端 TUI agent(2026 实测选型)

Aider vs Crush 2026 选型对比:Git 原生 AI pair programmer vs Charmbracelet 终端 TUI agent。从工作哲学、多模型、Git 集成、LSP/MCP、价格和国内可用性帮你选对终端 AI 编程工具。

Cursor vs Aider:GUI IDE 还是 CLI?2026 对比

Cursor vs Aider 2026 选型对比:GUI IDE vs Git 原生 CLI,从 Composer vs Architect 双模型、Tab 补全、多模型 BYOK、价格计费、开源与否和适合人群判断,帮开发者选对。Cursor 是闭源 VS Code fork 月费 $20,Aider 是开源 Apache-2.0 CLI 自带 API key。

Aider vs OpenCode:两个开源终端 Agent,选哪个?2026 对比

Aider 与 OpenCode 2026 选型对比:两者都是开源终端 agent、都支持换模型,但 Aider 以 Git-native 工作流与成熟的多语言支持见长,OpenCode 主打模型无关、本地优先与终端交互体验。从 6 个维度给出明确取舍建议。

Augment Code vs Cursor:企业 AI 编程怎么选?Context Engine vs AI IDE 对比

Augment Code vs Cursor 2026 选型对比:Context Engine 全仓索引的企业 AI 平台 vs SpaceX 收购的 AI IDE 天花板,从形态、Context 覆盖、长任务、价格、合规、中文支持和适合人群 8 个维度判断,帮你选对企业 AI 编程工具。

相关评测