---
name: inbox-directive
description: Use when 指令、按此修改 SSOT、直接落地、处理 inbox 标为指令、采纳提案 P-xxx. 分析→确认→更新/新建 bible 与 beat→归档；或采纳提案时重读→重验→报告→执行。
---

# 指令

**直接修改 SSOT**（更新/新建 bible 与 beat），然后归档。通用约束见 **AGENTS.md**。

读 kb 时遵循 **AGENTS.md** 之「渐进式读取」（第 1 层 YAML → 第 2 层自然语言介绍 → 第 3 层全文按需）；新建/更新 Bible 时 frontmatter 须含 `summary`。

## A. 处理 Inbox 文件（指令路径）

### 阶段一（只读，不修改任何文件）

1. **按渐进式读取**：第 1 层确定涉及实体，第 2 层理解实体，需改 SSOT 时再第 3 层。
2. 识别实体（角色、设定、节拍），对每个判断操作（更新/新建/废弃）。
3. 输出分析报告，**等人确认**。报告须含：
   - **涉及实体**：角色 / 设定 / Beat 列表
   - **建议操作表**：| 实体 | 类型 | 操作 | 具体内容 | 是否有冲突 |
   - **待人确认项**（冲突裁决、新建是否符合预期等）
   - **请回复**：`执行全部` / `逐条确认` / `跳过` 或具体修改意见

### 阶段二（确认后执行）

1. **更新/新建 bible 与 beat**：已有→更新（加粗关键词领起、句末标来源；同步叙事时间线；冲突记入冲突小节）。没有→新建（角色用 `template/tpl-character.md`，设定用 `tpl-worldbuilding.md`，beat 用 `tpl-beat.md`；替换占位符，不写 Templater 标签；frontmatter 加 `created_by: ai`）。Beat 新建：有 Fiction 草稿→`draft`，仅占位→`backlog`；新建后到对应 bible 叙事时间线加一行。
2. **来源索引**：用归档路径 `[[inbox/archived/文件名]]`。不确定处标 `[#TBD: 说明]`。
3. **归档 inbox**：顶部加 frontmatter 后移入 `inbox/archived/`：
   ```yaml
   archived: true
   archived_date: YYYY-MM-DD
   aggregated_to: [条目名或路径, ...]
   note: 可选；不完整时注明未处理部分
   ```
4. **git commit**：`inbox: 处理并归档 {文件名}，更新 {涉及实体}`。
5. **输出处理摘要**：新建 / 更新 / 无需变更 / 发现的冲突 / 已归档 / 需人类决定。

流程约束：阶段一不修改任何文件；AI 新建必标 `created_by: ai`。

## B. 采纳提案（如「采纳 P-001」）

1. **重读**：读该提案全文。
2. **重验**：按渐进式读取（AGENTS.md）先第 1 层判定相关文件，再第 2/3 层精读提案 `targets` 所列及相关 Bible/Beat，看与现有一致性、是否有新冲突。
3. **报告**：若影响分析过时则说明当前影响；否则简要确认。
4. **执行**：用户确认后，合并入 SSOT、更新 changelog；提案移入 `proposals/archive/`（项目根），`status: accepted`。

## 命名约定

### Bible
- **条目与文件名均使用中文**，与标题/主名一致，如 `佩佩.md`、`火山.md`；不含空格，多词可用短横线如 `世界观-年表.md`。
- 若工具对中文路径支持不佳，可保留拼音/英文文件名，frontmatter `id` 与正文标题写中文主名。
- frontmatter `aliases` 包含所有已知名称/变体（中文、英文、拼音），供检索用。

### Beat
- **文件名即 ID**：`id` 字段必须与文件名（不含扩展名）完全一致。
- **格式**：`{场景或角色}-{事件/情境核心词}`，如 `佩佩-维修1`、`诊室门口-年审公布`、`梦-海边`。
- **不含编排信息**：Day、D01、order 等只放 frontmatter，不放文件名。
- 类型（beat_type）放 frontmatter，命名无需重复。

## 废弃处理

禁止物理删除任何 bible 或 beat 文件。「删掉」一律按废弃处理。

### Beat 废弃
1. `status: deprecated`，changelog 记录废弃原因。文件保留在 `kb/beats/`，不移动。
2. Bible 叙事时间线不强制更新；链接保留，点入可见已废弃。

### Bible 废弃
1. frontmatter `status` 改为 `archived` 或 `deprecated`，changelog 记录原因与来源。
2. 可选移动至归档子目录，如 `kb/bible/设定/_archived/`；不删除文件。
3. 其他文件中的链接保留即可。

## 信息边界

- **Beat**：事件信息（场景、发生什么、揭示处）；时间线由 beat 驱动。
- **Bible**：非事件信息（角色、设定、静态事实）；需新建 beat 时即建，标 `backlog`。
