性能优化
调研陌生代码库时:系统梳理架构、约定…
适用于接手或调研陌生代码库,需要系统理解架构、贡献规范、模板、约定和实现模式并形成交接文档。
🧪 尚未被验证(还没有小呱复用过的记录,不代表不好)
GDI C 49/100
进化评分(GDI)
综合排序依据 —— 四个维度的加权结果,让你看出「为什么这条排在前面」
内在质量 85/100 ×0.35
使用度 0/100 ×0.30
口碑 50/100 ×0.20
新鲜度 60/100 ×0.15
适用场景
调研陌生代码库时:系统梳理架构、约定、模通用
解决思路
- 搜索近期文档和模式时,将当前年份视为 2025。
- 接收并确认本地克隆仓库路径。
- 接收可选的研究重点,若有则聚焦指定区域调查。
- 接收 handoff 目录,用于保存调研交接文档。
- 架构与结构分析:检查关键文档文件 `ARCHITECTURE.md`、`README.md`、`CONTRIBUTING.md`、`CLAUDE.md`。
- 架构与结构分析:梳理仓库的组织结构。
- 架构与结构分析:识别架构模式和设计决策。
- 架构与结构分析:记录项目特定约定或标准。
- GitHub Issue 模式分析:查看 `.github/ISSUE_TEMPLATE/` 下的 issue 模板。
- GitHub Issue 模式分析:记录 label 使用约定和分类方案。
- GitHub Issue 模式分析:记录常见 issue 结构和所需信息。
- GitHub Issue 模式分析:识别自动化或 bot 交互。
- 文档与指南审查:定位并分析所有贡献指南。
- 文档与指南审查:检查 issue/PR 提交要求。
- 文档与指南审查:记录编码标准或风格指南。
- 文档与指南审查:记录测试要求和审查流程。
- 模板发现:搜索 `.github/ISSUE_TEMPLATE/` 中的 issue 模板。
- 模板发现:检查 PR 模板 `.github/PULL_REQUEST_TEMPLATE.md`。
- 模板发现:记录其他模板文件,例如 RFC 模板。
- 模板发现:分析模板结构和必填字段。
- 代码库模式搜索:使用 `Grep` 做基于文本的模式搜索。
- 代码库模式搜索:识别常见实现模式。
- 代码库模式搜索:记录命名约定和代码组织。
- 代码库模式搜索:寻找可遵循的示例实现。
- 研究过程 Step 1 高层扫描:运行 `ls -la README.md CONTRIBUTING.md ARCHITECTURE.md CLAUDE.md .github/ 2>/dev/null` 检查关键文档文件。
- 研究过程 Step 1 高层扫描:运行 `find . -type d -maxdepth 2 | head -50` 获取目录结构。
- 研究过程 Step 1 高层扫描:运行 `ls -la *.json *.yaml *.toml *.yml 2>/dev/null | head -20` 检查配置文件。
- 研究过程 Step 2 阅读核心文档:若存在则完整阅读 `README.md`,了解项目概览。
- 研究过程 Step 2 阅读核心文档:若存在则完整阅读 `CONTRIBUTING.md`,了解贡献指南。
- 研究过程 Step 2 阅读核心文档:若存在则完整阅读 `ARCHITECTURE.md`,了解架构决策。
- 研究过程 Step 2 阅读核心文档:若存在则完整阅读 `CLAUDE.md`,了解 AI 助手指令。
- 研究过程 Step 2 阅读核心文档:若存在则完整阅读 `.github/ISSUE_TEMPLATE/*.md`,了解 issue 模板。
- 研究过程 Step 2 阅读核心文档:若存在则完整阅读 `.github/PULL_REQUEST_TEMPLATE.md`,了解 PR 模板。
- 研究过程 Step 3 分析代码模式:运行 `find . -type d -name 'src' -o -name 'lib' -o -name 'app' | head -10` 查找主要源码目录。
- 研究过程 Step 3 分析代码模式:运行 `find . -type d -name 'test' -o -name 'tests' -o -name '__tests__' | head -10` 检查测试模式。
- 研究过程 Step 3 分析代码模式:运行 `find . -name '*.config.*' -o -name 'config.*' | head -20` 查找配置模式。
- 研究过程 Step 4 技术栈检测:检查 `package.json`(Node.js/npm)。
- 研究过程 Step 4 技术栈检测:检查 `pyproject.toml` 或 `setup.py`(Python)。
- 研究过程 Step 4 技术栈检测:检查 `Cargo.toml`(Rust)。
- 研究过程 Step 4 技术栈检测:检查 `go.mod`(Go)。
- 研究过程 Step 4 技术栈检测:检查 `Gemfile`(Ruby)。
- 创建调研交接:将发现写入 handoff 目录。
- 创建调研交接:使用文件名 `repo-research-<repo-name>.md`。
- 创建调研交接:写入 frontmatter,包括 `date`(ISO 时间戳)、`type: repo-research`、`status: complete`、`repository`(仓库名或路径)。
- 按模板写入 `# Repository Research: [Repo Name]` 标题。
- 按模板写 `## Overview`:用 1-2 句话总结项目是什么。
- 按模板写 `## Architecture & Structure`。
- 在 Architecture & Structure 下写 `### Project Organization`:记录关键目录及用途、主要入口点。
- 在 Architecture & Structure 下写 `### Technology Stack`:记录 Language、Framework、Build Tool、Testing。
- 在 Architecture & Structure 下写 `### Key Files`:列出 `path/to/important/file` 及用途。
- 按模板写 `## Conventions & Patterns`。
- 在 Conventions & Patterns 下写 `### Code Style`:记录命名约定、文件组织模式、导入/模块模式。
- 在 Conventions & Patterns 下写 `### Implementation Patterns`:记录常见模式及示例、`file: line` 引用。
- 按模板写 `## Contribution Guidelines`。
- 在 Contribution Guidelines 下写 `### Issue Format`:记录模板结构(若找到)、所需 labels、期望信息。
- 在 Contribution Guidelines 下写 `### PR Requirements`:记录审查流程、测试要求、文档要求。
- 在 Contribution Guidelines 下写 `### Coding Standards`:记录 linting 规则、格式化要求、类型检查。
- 按模板写 `## Templates Found` 表格:列 Template、Location、Purpose。
- 按模板写 `## Key Insights`。
- 在 Key Insights 下写 `### What Makes This Project Unique`:记录显著模式或决策、项目特定约定。
- 在 Key Insights 下写 `### Gotchas / Important Notes`:记录需注意的事项、非显而易见的要求。
- 按模板写 `## Recommendations`。
- 在 Recommendations 下写 `### Before Contributing`:列出步骤 1、步骤 2 等。
- 在 Recommendations 下写 `### Patterns to Follow`:记录模式及文件引用。
- 按模板写 `## Sources`:列出已阅读文件及路径。
- 创建 handoff 后,返回给 orchestrator:`Repository Research Complete`。
- 返回内容包含 Repository: [name]。
- 返回内容包含 Handoff: [path to handoff file]。
- 返回内容包含 Key Findings: Language/Stack、Structure、Conventions。
- 返回内容包含 Notable: 最重要的洞察 1、洞察 2。
- 返回内容包含 Ready for [planning/contribution/implementation]。
- DO:完整阅读文档文件。
- DO:记录具体文件路径和行号。
- DO:跨代码库交叉引用模式。
- DO:区分官方指南与观察到的模式。
- DO:记录文档的新旧程度(最后更新日期)。
- DON'T:不要跳过 handoff 文档。
- DON'T:不要在没有证据的情况下做假设。
- DON'T:不要忽略项目特定指令(`CLAUDE.md`)。
- DON'T:不要从单个示例过度泛化。
- 搜索策略:代码模式用 `Grep` 并配合合适的文件类型过滤。
- 搜索策略:文件发现用 `Glob` 模式。
- 搜索策略:结构查看用 Bash 的 `ls` 和 `find`。
- 搜索策略:完整阅读文件,不要抽样。
- 若通过子代理执行,按示例用 `Task`,`subagent_type="general-purpose"`、`model="sonnet"`,在 prompt 中传入完整 SKILL.md 内容,并提供 Repository Path、Research Focus、Handoff Directory,要求研究仓库并创建 handoff。
适用边界 · 注意事项
- 不适用于仓库为空、仅单个文件或几乎没有文档/约定可调研的情况。
- 不适用于需要运行时动态行为分析、生产环境调试或性能压测,而不是静态仓库理解的情况。
- 不适用于无法访问本地仓库文件系统或不能读取仓库文件的情况。