快速熟悉陌生的代码库
当你接手一个没人讲解过的项目,OpenCode 就是你的向导。它读取导入图、识别入口点,并在短时间内产出一份可立即使用的地图。
何时使用此案例
- 你刚加入新团队,或接手了一个无人维护的仓库。
- 代码库太大,逐文件阅读不现实。
- 需要做有把握的改动,但还不清楚边界在哪里。
前置配置
- 已安装 OpenCode,并指向项目根目录。
- 有一条可用的 build 或 test 命令。
- 对整个仓库有读权限(无加密的子模块)。
步骤
-
掌握整体结构
让 OpenCode 用几段话总结项目形态、技术栈和入口点。
读取项目根目录并总结:语言与框架、目录结构、主要入口点、构建/运行命令。突出任何异常点。
-
梳理架构
请求一份一页的架构图:模块、各自职责、模块间通信方式。
绘制模块图:哪些目录负责哪些关注点,哪些顶层文件从哪里 import 什么。如果存在依赖方向(UI → service → data)请标明。
-
找到入口点
找出请求、作业或命令进入系统的位置。多数 bug 和功能开发都发生在这里。
列出所有入口点:HTTP 路由、CLI 命令、cron 作业、消息处理器、定时任务。每个给出文件路径和一行说明。
-
追踪一个代表性请求
选一条端到端流程走通一遍。这是建立直觉最快的方式。
从 HTTP 路由到服务层再到数据库,追踪一个用户请求。展示调用链并解释每层职责。
-
编写导航指南
让 OpenCode 把结果整理成
CODEBASE_MAP.md,方便你和团队参考。在仓库根目录写 CODEBASE_MAP.md:1) 一段项目摘要,2) 模块图,3) 入口点列表,4) 一个追踪示例流程,5) 观察到的约定(命名、错误处理、日志)。
-
用一次小改动验证
做一个小但真实的改动(修个错别字、改个日志),确认 build、lint 和 test 仍然通过。
npm run build && npm test
关键提示词
我刚接触这个仓库。请读取整个项目根目录并产出:(1) 一段项目摘要,(2) 包含依赖方向的模块图,(3) 所有入口点及文件路径,(4) 一个贯穿各层的端到端请求流程示例,(5) 你观察到的命名、错误处理与日志约定。以 CODEBASE_MAP.md 输出到仓库根目录。
验证重点
CODEBASE_MAP.md已提交并分享给团队- 追踪示例流程手动验证与实际一致
- 一次小改动构建与测试通过
常见坑点
- 盲目相信地图:把它当假设而非真理,重构前必须验证。
- 跳过入口点:多数 bug 出现在边界处,入口点列表比图更有用。
- 过时的约定:代码老部分可能沿用团队已弃用的模式,记录每块的最新文件日期。
相关文档
相关案例
- refactor-codebase —
reason.explore.to-refactor - agents-md-team —
reason.explore.to-agents - bug-hunting —
reason.explore.to-bug
相关文档
下一步
- refactor-codebase —
next.explore.to-refactor