# Intake

> 接活分诊 + 新项目初始化。用户说「开始干活」「接个新项目」，或当前代码根没有 CONTEXT.md 时用。

- Skill: `wang123582/intake` (Agent Skill)
- Install (CLI): `npx skillmds@latest add wang123582/intake`
- Raw SKILL.md: https://api.skillmd.com/api/skills/wang123582/intake/raw
- Safety review: PASS (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: wang123582 (https://skillmd.com/u/wang123582)
- Updated: 2026-08-19
- Page: https://skillmd.com/skills/wang123582/intake

---


# 接活：先分诊，再决定干什么

## 1. 分诊（别一进来就拷模板）

看**当前代码根**有没有 `CONTEXT.md`：

- **有** → 老项目，跳到第 3 步「启动」。
- **没有** → 按下表定类别：

| 类别 | 判据 | 走法 |
|---|---|---|
| ① 全新从零 | 还没有可用代码 | 初始化 → `/wf:req` |
| ② 已有代码首次接入 | 代码在、没本系统文档 | 初始化 → 增量盘点（第 4 步），**不重做需求** |
| ③ 一次性任务 | 回答问题 / 跑个脚本 / 看眼代码 | **不初始化、不进流水线**，干完即走 |
| ④ 说不清 | — | 问用户 |

## 2. 初始化（仅 ①②）

⛔ **代码根目录和项目名只能来自用户明确指定**（`RULES.md` Tier 1 第 2 条）。拿到之前一个字都不许写，不许从路径反推项目名。

拿到后跑：`install.bat <代码根目录> [项目名]`（Windows）或 `./install.sh <代码根目录> [项目名]`。

脚本把 `templates/` 的 `CONTEXT.md` / `design.md` / `USAGE.md` / `tasks/` 拷到代码根，并生成薄 `CLAUDE.md`。
⚠️ **只建空骨架**，禁止凭记忆、旧会话或先验知识预填任何内容。之后在 `CONTEXT.md` 只填「代码根目录」和「目标锚定」两项。

**目标锚定必须当场问、当场写——不许留给用户自己去开文件：**

1. 问一句「这个项目最终要达成什么？一句话」→ 我写进 `CONTEXT.md` 的 `- **大目标**：`
2. 问一句「这几轮先推进到哪？」→ 我写进 `- **当前阶段目标**：`
3. 两句都拿到才算初始化完成。

这两行是**每轮开场注入**和**回复开头三句**的唯一来源，空着 = 每轮锚定失真。

## 3. 启动

1. 读代码根 `CONTEXT.md`（通常已被项目 `CLAUDE.md` 自动加载）。
2. 按「文档索引」按需读 `design.md` / `tasks/`。
3. 执行「当前任务」；为空则依据「当前进度」+ `tasks/progress.md` 自行判断，判断不了就问用户。
4. 读「当前任务」的 `建议档位`，与当前不符时按 `RULES.md` 调度行提一句。

## 4. 已有代码增量盘点（仅 ②）

**不要通读整个代码库。**

1. 只在当前任务真正需要时，读相关模块的文件。
2. 读懂后把该模块**现状**补进 `design.md` 第二章（标「现状」，不是理想需求），在 `tasks/progress.md` 登记，必要时补 `USAGE.md`。
3. 没碰到的模块先不管，文档边做边长出来。
4. pytest / mypy / ruff 门禁**只对今后改动的部分生效**，不给历史代码一次性补测（要还债单独建 `tasks/补测.md`）。
5. 顺手确认有没有 git / pytest / mypy / ruff 配置，缺什么先报给用户。

