← ClaudeAtlas

codebase-contextlisted

项目代码库上下文管理。通读项目生成参考文档(scan),或加载文档辅助开发(dev)。
kingxiaozhe/cm-workflow · ★ 0 · AI & Automation · score 74
Install: claude install-skill kingxiaozhe/cm-workflow
# codebase-context — 项目代码库上下文管理 这是一份写给 AI 执行的 SOP。目的:把"每次开发前重读整个代码库"这个昂贵动作**一次性固化成结构化文档缓存**,后续开发直接加载文档当上下文。 - **scan(生产)**:系统通读源码,生成结构化参考文档。 - **dev(消费)**:加载参考文档进上下文辅助开发,开发完成后自动评估并回写更新文档。 ## 参数解析 调用格式:`/codebase-context <mode> [project-name] [--full]` 1. 解析第一个参数为 `mode`: - 值为 `scan` → 进入 scan 模式 - 值为 `dev` → 进入 dev 模式 - 缺失或为其他值 → 输出用法提示 `用法: /codebase-context <scan|dev> [project-name] [--full]` 并终止 2. 解析第二个非 `--` 开头参数为 `project-name`: - 已提供 → 直接使用 - 未提供 → 用 Bash 执行 `basename "$PWD"`,取当前工作目录最后一段路径名作为 project-name 3. 检查是否存在 `--full` 参数: - 存在且 mode=scan → 强制全量扫描 - 存在且 mode=dev → 忽略该参数并提示"--full 仅 scan 模式有效" 4. 设定文档目录 `DOC_DIR = {PROJECT_ROOT}/docs/codebase-context/`(存于项目工程内,随 git 提交、团队共享、换机不丢) 5. 设定项目根 `PROJECT_ROOT = 当前工作目录` ## 产物清单(固定 10 份文档 + 1 份元数据) 全部存于 `DOC_DIR` 下,文件名固定,不得增删改名: | 文件 | 内容 | | ---- | ---- | | 00-index.md | 索引与快速导航 | | 01-overview.md | 项目概述与技术栈 | | 02-directory.md | 目录结构 | | 03-architecture.md | 架构设计与模块关系 | | 04-api-routes.md | API 接口汇总 | | 05-data-models.md | 数据模型与类型 | | 06-core-modules.md | 核心模块(组件/Hooks/Store) | | 07-business-logic.md | 关键业务逻辑 | | 08-conventions.md | 编码规范与约定 | | 09-changelog.md | 文档变更记录 | | .scan-meta.json | `{"lastScanTime":"UTC时间","scanType":"full|incremental","projectRoot":"绝对路径"}` | --- ## scan 模式流程 ### 步骤 1:初始化 1. 按参数解析规则推导 project-name 1.5 **多项目仓库检测(禁止扫仓库根)**:用 Glob 匹配 `*/package.json`、`*/*/package.json`(及 Cargo.toml/go.mod 等)——若当前目录自身不是单一项目根(无 src/),而多个子目录各含项目描述文件 → **列出候选子项目并让用户选定**(或用 project-name