代码库探索专家Skill codebase-exploration

代码库探索专家是一个专门用于系统化分析和理解代码库的工具。它通过高级搜索技术、模式识别和上下文感知分析,帮助开发者快速定位功能实现、理解架构模式、发现跨文件关联,并回答关于代码位置和实现细节的问题。适用于新项目上手、遗留代码分析、功能定位和架构理解等场景。 关键词:代码库探索,代码搜索,模式识别,架构分析,功能定位,代码理解,项目上手,遗留代码分析,开发工具,代码分析

1 次安装 4 次浏览 更新于 2/23/2026

name: codebase-exploration description: 对代码库进行深度上下文搜索。擅长发现模式、架构、实现,并回答“X在哪里?”、“哪个文件包含Y?”和“查找实现Z功能的代码”等问题。适用于探索不熟悉的代码库、查找特定实现、理解代码组织、发现跨多个文件的模式或在项目中定位功能。支持三种详尽程度:快速、中等、非常彻底。

代码库探索

目的

专门从事系统化的代码库探索和发现。使用高级搜索技术、模式识别和代码分析,快速理解不熟悉的代码、定位特定实现、映射架构模式,并回答有关代码的位置性问题。

何时使用

  • 首次探索不熟悉的代码库
  • 需要查找特定功能的实现位置
  • 在代码库中寻找某种模式的示例
  • 理解组件如何交互
  • 定位特定API或模式的所有使用情况
  • 映射架构组织
  • 在项目中查找相似代码
  • 诸如“X在哪里?”、“哪个文件有Y?”、“查找实现Z功能的代码”等问题

快速开始

在以下情况下调用此技能:

  • 首次探索不熟悉的代码库
  • 需要查找特定功能的实现位置
  • 在代码库中寻找某种模式的示例
  • 理解组件如何交互
  • 诸如“X在哪里?”、“哪个文件有Y?”、“查找实现Z功能的代码”等问题

在以下情况下不要调用:

  • 调试已知错误(使用debugger-skill)
  • 重构代码(使用refactoring-specialist-skill)
  • 审查代码质量(使用code-reviewer-skill)
  • 从头开始编写新代码(使用适当的开发人员技能)

详尽程度级别

快速(快速、粗略概览)

  • 文件结构概览
  • 高级模式匹配
  • 目录组织
  • 主要入口点
  • ~30秒

中等(平衡深度)

  • 详细文件检查
  • 跨文件模式发现
  • 架构映射
  • 常见模式分析
  • ~2-3分钟

非常彻底(深度挖掘)

  • 详尽的代码分析
  • 复杂模式匹配
  • 依赖关系追踪
  • 边缘情况发现
  • ~5-10分钟

决策框架

搜索策略选择

问题类型 搜索策略
“用户认证在哪里?” 搜索认证关键词 + 登录模式
“数据流如何工作?” 查找模型、服务、控制器模式
“哪个文件处理X API?” 搜索端点 + 路由定义
“查找所有数据库查询” 搜索ORM模式、SQL关键词
“定位错误处理” 查找try-catch、错误类

工具选择

工具 最适合 示例
grep/rg 文本模式匹配 rg "function handleAuth"
find/fd 文件名/路径匹配 fd -e ts auth
ast-grep 代码结构匹配 ast-grep --pattern "class $NAME"
LSP工具 符号和引用查找 lsp_find_references
git log 历史上下文 git log --name-only

按问题类型处理

“X在哪里实现?”

  1. 按名称搜索X:rg "X|x"
  2. 搜索相关术语:rg "related|terms"
  3. 检查明显位置:ls src/X/
  4. 查看测试:rg "X" tests/

“Y如何工作?”

  1. 找到Y的定义
  2. 找到Y的用法
  3. 追踪流程
  4. 理解依赖关系

“哪些文件使用Z?”

  1. 搜索Z的导入
  2. 使用LSP查找引用
  3. 搜索Z被调用的方法

核心能力

搜索策略

基于模式的搜索

  • 通过命名约定查找
  • 通过代码模式定位
  • 通过架构标记发现
  • 通过文件组织识别

上下文感知搜索

  • 理解代码关系
  • 映射依赖关系
  • 追踪执行流程
  • 查找相关组件

多角度发现

  • 按功能搜索
  • 按结构搜索
  • 按命名搜索
  • 按模式搜索

探索工作流

步骤1:定位

  • 我们在寻找什么?
  • 为什么需要它?
  • 需要什么级别的细节?
  • 哪种详尽程度合适?

步骤2:映射结构

  • 识别顶层组织
  • 查找关键标记(入口点、配置文件)
  • 注意目录命名模式

步骤3:执行搜索

  • 选择合适的工具
  • 使用多种搜索角度
  • 记录发现

步骤4:分析与综合

  • 连接线索
  • 识别模式
  • 优先排序发现

最佳实践

先宽后窄

  1. 首先:了解整体情况(tree -L 2, ls -la src/
  2. 其次:识别模式(fd -e ts, rg -c "class|function"
  3. 再次:针对特定区域

使用多种搜索角度

  • 按名称搜索:fd auth
  • 按内容搜索:rg "authentication"
  • 按结构搜索:ast-grep --pattern "class $NAME"
  • 按符号搜索:lsp_workspace_symbols

跟随线索

  1. 检查导入以查找依赖关系
  2. 使用LSP查找引用
  3. 查看文件位置以获取架构线索
  4. 检查git历史以获取上下文

边探索边记录

# 认证流程
1. 入口:src/middleware/auth.ts
2. 令牌验证:src/services/jwt.service.ts  
3. 用户查找:src/repositories/user.repository.ts
4. 守卫:src/guards/auth.guard.ts

反模式

  • 不要无上下文搜索:首先理解你在寻找什么
  • 不要忽略文件结构:始终检查目录组织
  • 不要依赖单一搜索方法:使用多种方法
  • 不要忘记测试:搜索测试文件以了解实际使用情况
  • 不要跳过配置文件:尽早检查配置

相关技能

  • 当探索发现错误时,使用[[debugger-skill]]
  • 要评估发现的模式,使用[[architect-reviewer-skill]]
  • 要改进找到的代码,使用[[refactoring-specialist-skill]]
  • 对于复杂的架构问题,使用[[technical-advisory-skill]]

额外资源