
关于
分析陌生代码库并生成结构化的入门指南,包含架构图、关键入口点、编码规范和初始 CLAUDE.md。适用于加入新项目或首次在仓库中设置 Claude Code。
name: codebase-onboarding description: 分析不熟悉的代码库并生成结构化的入门指南,包含架构图、关键入口点、约定和初始 CLAUDE.md。适用于加入新项目或首次在仓库中设置 Claude Code。 origin: ECC
代码库入门
系统性地分析不熟悉的代码库并生成结构化的入门指南。专为加入新项目或首次在现有仓库中设置 Claude Code 的开发者设计。
何时使用
- 首次使用 Claude Code 打开项目
- 加入新团队或仓库
- 用户问"帮我理解这个代码库"
- 用户要求为项目生成 CLAUDE.md
- 用户说"带我入门"或"带我了解这个仓库"
工作原理
阶段 1:侦察
在不阅读每个文件的情况下收集项目的原始信号。并行运行以下检查:
1. 包清单检测
→ package.json, go.mod, Cargo.toml, pyproject.toml, pom.xml, build.gradle,
Gemfile, composer.json, mix.exs, pubspec.yaml
2. 框架指纹识别
→ next.config.*, nuxt.config.*, angular.json, vite.config.*,
django settings, flask app factory, fastapi main, rails config
3. 入口点识别
→ main.*, index.*, app.*, server.*, cmd/, src/main/
4. 目录结构快照
→ 目录树的前 2 层,忽略 node_modules, vendor,
.git, dist, build, __pycache__, .next
5. 配置和工具检测
→ .eslintrc*, .prettierrc*, tsconfig.json, Makefile, Dockerfile,
docker-compose*, .github/workflows/, .env.example, CI 配置
6. 测试结构检测
→ tests/, test/, __tests__/, *_test.go, *.spec.ts, *.test.js,
pytest.ini, jest.config.*, vitest.config.*
阶段 2:架构映射
从侦察数据中识别:
技术栈
- 语言及版本约束
- 框架和主要库
- 数据库和 ORM
- 构建工具和打包器
- CI/CD 平台
架构模式
- 单体、monorepo、微服务或无服务器
- 前后端分离或全栈
- API 风格:REST、GraphQL、gRPC、tRPC
关键目录 将顶层目录映射到其用途:
src/components/ → React UI 组件
src/api/ → API 路由处理器
src/lib/ → 共享工具函数
src/db/ → 数据库模型和迁移
tests/ → 测试套件
scripts/ → 构建和部署脚本
数据流 追踪一个请求从入口到响应:
- 请求从哪里进入?(路由器、处理器、控制器)
- 如何验证?(中间件、schema、守卫)
- 业务逻辑在哪里?(服务、模型、用例)
- 如何到达数据库?(ORM、原始查询、仓库模式)
阶段 3:约定检测
识别代码库已遵循的模式:
命名约定
- 文件命名:kebab-case、camelCase、PascalCase、snake_case
- 组件/类命名模式
- 测试文件命名:
*.test.ts、*.spec.ts、*_test.go
代码模式
- 错误处理风格:try/catch、Result 类型、错误码
- 依赖注入或直接导入
- 状态管理方式
- 异步模式:回调、Promise、async/await、channel
Git 约定
- 从最近的分支推断分支命名
- 从最近的提交推断提交消息风格
- PR 工作流(squash、merge、rebase)
- 如果仓库没有提交或只有浅历史(如
git clone --depth 1),跳过此部分并注明"Git 历史不可用或太浅无法检测约定"
阶段 4:生成入门产物
产出两个输出:
输出 1:入门指南
# 入门指南:[项目名称]
## 概述
[2-3 句话:这个项目做什么,服务谁]
## 技术栈
| 层 | 技术 | 版本 |
|----|------|------|
| 语言 | TypeScript | 5.x |
| 框架 | Next.js | 14.x |
| 数据库 | PostgreSQL | 16 |
| ORM | Prisma | 5.x |
| 测试 | Jest + Playwright | - |
## 架构
[组件如何连接的图表或描述]
## 关键入口点
- **API 路由**: `src/app/api/` — Next.js 路由处理器
- **UI 页面**: `src/app/(dashboard)/` — 认证页面
- **数据库**: `prisma/schema.prisma` — 数据模型真实来源
- **配置**: `next.config.ts` — 构建和运行时配置
## 目录映射
[顶层目录 → 用途映射]
## 请求生命周期
[追踪一个 API 请求从入口到响应]
## 约定
- [文件命名模式]
- [错误处理方式]
- [测试模式]
- [Git 工作流]
## 常见任务
- **运行开发服务器**: `npm run dev`
- **运行测试**: `npm test`
- **运行 linter**: `npm run lint`
兼容工具
Claude CodeCursor
标签
后端开发

