cadence-initlisted
Install: claude install-skill hxt9805/cadence
# Cadence Init
初始化 cadence 工作流。双模式:新项目 / 已有项目。
## 1. 检查现有状态
读取项目根,检查 `cadence/`:
- **`_INDEX.md` + `_ACTIVE.md` 都在**(已初始化 v0.2.2+)→ 询问 `要重做项目快照吗?[r/n]`。`r` 跳到 § 3.3 已有项目模式 [A];`n` 退出(无需 /clear,bootstrap 在本 session 启动时已注入)。
- **`_INDEX.md` 在 + `_ACTIVE.md` 不在**(v0.2.x 旧格式)→ § 2 迁移
- **都不在** → § 3 init
- **其他异常**(如 `_INDEX.md` 不在但 `_ACTIVE.md` 在)→ 提示用户手��修复或删 `cadence/` 后重跑
## 2. v0.2.x 旧版本迁移(inline)
主 session 直接处理(不再调 subagent)。
```
检测到旧版 cadence 目录(v0.2.x 前)。v0.2.2 将 _INDEX.md 拆为
"纯索引 _INDEX.md + 纯活跃 _ACTIVE.md"。迁移前建议先 commit。继续?[Y/N]
```
`N` → abort。`Y` → 执行:
1. 读 `cadence/_INDEX.md`。
2. 按映射拆 section:
- 「当前活跃决策」/「待决清单」/「TODO」/「最近讨论」→ `_ACTIVE.md`
- 「项目简述」/「话题词典」/「快速导航」→ 留 `_INDEX.md`
- 未识别 section → 留 `_INDEX.md` 末尾(加 `<!-- cadence 未识别 -->` 注释)
3. `_ACTIVE.md` 若超 8 条活跃决策上限,inline 三档:
```
⚠️ 检测到 N 条活跃决策,新上限 8 条。
(a) Claude 推荐归档清单(按日期倒序最老 N-8 条)
(b) 我自己选要归档哪些
(c) 保留全部(暂时超限,下次记决策时会提示整理)
```
4. 更新话题词典 pointer:`→ 活跃决策` 改为 `→ _ACTIVE.md#活跃决策` 或 `@active`。
5. 展示 diff 摘要 → 用户确认 → `Edit _INDEX.md` + `Write _ACTIVE.md`(IO 失败回滚,不留半迁移状态)。
6. 完成告知:`📝 已迁移:_INDEX.md(NN→MM 行 / 纯索引)+ _ACTIVE.md(新建 KK 行)。详见 git diff cadence/`
→ § 4 汇报产物(无需 /clear,bootstrap 在本 session 启动时已注入)。
## 3. init 主流程
### 3.1 判断项目状态
- 空目录,或只有版本控制/编辑器元数据与空 README → **新项目模式**(§ 3.2)
- 有任何有意义的项目材料 → **已有项目模式**(§ 3.3)。项目材料包括但不限于:
- 源代码、配置和构建清单;
- 研究材料、数据说明、实验记录和参考文献;
- 文稿、提纲、素材和风格指南;
- 学习记录、课程计划、练习与评估;
- 运营计划、日历、预算、流程和复盘;
- 其他能体现项目目标、主产物、约束或进度的文件。
不要因为项目没有 `src/`、`packag