forge-intel-scanlisted
Install: claude install-skill gldu/dev-forge
# forge-intel-scan — 入场扫描
## Goal
基线生成与增量刷新模式:首次运行建立完整项目基线;再次运行通过 `git diff` 增量刷新代码索引,**严格保留并透传**已有 `CONTEXT.md` 中的「已锁决策」与「已沉淀术语」。
在已存在的项目(brownfield)里第一次用 dev-forge 时,自动扫描代码库 → 自动填 `CONTEXT.md` → 后续所有 change 都受益。
不是周期命令,跑过一次就行;项目结构有大变化(重构 / 框架升级 / 新增模块)时再跑。
## Workflow
### 0. 既有文档探测(必跑 · 在任何扫描前)
**目的**:很多项目已经有 AI 可读的开发约定文档。不要直接覆盖或忽略,先问用户。
探测下面这些标准文档(按优先级):
- `CONTEXT.md`(仓库根 / `.specs/`)— dev-forge
- `AGENTS.md`(仓库根)— OpenAI Codex
- `CLAUDE.md`(仓库根 / `.claude/`)— Anthropic
- `.cursor/rules/*.md` — Cursor
- `.windsurf/rules/*.md` — Windsurf
- `.github/copilot-instructions.md` — Copilot
- `.clinerules` — Cline
- `ARCHITECTURE.md`(仓库根 / `docs/`)— 项目自定义
- `CONTRIBUTING.md`(仓库根)— 项目自定义
- `README.md`(仓库根)— 通用保底
**三种分支**:
**分支 A** · 找到至少一个标准 AI 上下文文档 → 反问用户:
- 1. 综合+扫描(推荐):读所有现有文档 + 跑入场扫描,合并生成 CONTEXT.md
- 2. 以现有文档为准:选定一个作为基础 → 提取关键信息到 CONTEXT.md
- 3. 忽略现有文档,重新扫描生成(警告:可能与现有约定冲突)
- 4. 不生成 `.specs/CONTEXT.md`,改用指定文档作为 AI 遵守依据
**分支 B** · 找到非标准但项目级文档(README / ARCHITECTURE / CONTRIBUTING)→ 反问用户:
- 1. 把它们当作扫描补充输入,生成完整 CONTEXT.md(推荐)
- 2. 跳过这些,仅按代码扫描
- 3. 用户指定其中一个作为开发遵守依据
**分支 C** · 一个文档都没有 → 反问用户(必须确认):
- 1. 现在跑入场扫描,纯从代码生成 CONTEXT.md(~15-30k tokens,仅首次)
- 2. 手动指定项目里某个文档作为开发遵守依据
- 3. 跳过 intel-scan,直接进 0-change(不推荐 · AI 会"盲飞")
无论选哪个分支,扫描总结里必须贴出:
- 探测命中文档列表
- 用户选择(选项编号 + 简述)
- 决策(生成 CONTEXT.md / 以现有为准 / 跳过)
- 引用源(如有)
### 1. 探测项目元信息
按下面顺序探测,记录每条发现(找不到也要记"未发现")。
#### 1.1 包管理与运行时
| 信号文件 | 提取信息 |
|---|---|
| `package.json` | name / engines / 主要依赖 / scripts |
| `pyproject.toml`