diff --git a/.claude/skills/read-context/SKILL.md b/.claude/skills/read-context/SKILL.md index 21ea5d2..2b6ea08 100644 --- a/.claude/skills/read-context/SKILL.md +++ b/.claude/skills/read-context/SKILL.md @@ -13,12 +13,27 @@ SoT 对齐:包结构=专题-03 §4.2 **四层上下文**;字段级 aiContext 裁 1. 读 `works/<书>/装配.yaml`:拿槽位绑定与知识绑定。**未绑定的 `knowledge/` 内容一律不读**(=Layer 3 的授权门)。 2. 读 `meta/schemas/` 相关型的 `aiContext`,得出本用途的可见字段集:`true` 可见;`false` 不可见;`[用途…]` 仅列出的用途可见。 -3. 按**四层**取数并逐字段裁剪: - - **Layer 0 当前输入**(不可省略):任务目标+本章细纲(出自大纲当前章); - - **Layer 1 近邻正文**(续写不可省略):上一章末尾 1–2 个场景原文+再前一章 frontmatter 摘要+`状态.md`(伏笔台账/时间线/最新状态); - - **Layer 2 作品事实**(只读已确认):`设定.md` 四节(`generation` 裁掉「谜底与真相」「结局方向」「弃案记录」等)、大纲(`generation` 只取主线一句话+当前卷细纲+近三章细纲,「未来卷粗纲」仅 `planning`)、知识卡(只取本章出场清单涉及的卡及其关联卡,**不整库倾倒**;卡内字段同按 aiContext 裁,如「创作备忘」永不进包、「成长弧线」续写不进); - - **Layer 3 授权资料**(按场景可省):装配已绑定的公共范式卡。 -4. 产出**上下文包**:按 Layer 0→3 分节拼装;超长先摘要化 L3/L2 再截断,L0 必须完整(预算顺序对齐专题-03 §4.2)。包尾附**裁剪回显**两段:字段级=被 aiContext 挡掉的字段名与原因;来源级=omittedSources(未绑定跳过的库、出场无关未选的卡数,原因对齐 `not_authorized`/`not_relevant`/`token_budget` 枚举)。 +3. 按**四层**取数并逐字段裁剪——层是分组骨架,取数规则按**来源**逐条执行: + - **Layer 0 当前输入**(不可省略,每回合必变): + - 用户本回合意图:指令原文,不改写不转述; + - 操作对象:作品/章号/选区与 expectedRevision(改写场景必带); + - 本章细纲:出自大纲当前章条目; + - 输出合同:字数区间/frontmatter 要求/新设定申报块等(按 agent 的产出合同); + - L0 内部同按稳定度排:细纲在前(同章多轮重生成不变),本回合修改意见最后。 + - **Layer 1 近邻正文**(续写不可省略): + - 上一章末尾 1–2 个场景**原文**(衔接锚,不得摘要化); + - 再前一章只给 frontmatter 摘要(一句话概要+出场+伏笔动作); + - `状态.md` **全文**(伏笔台账/时间线/角色最新状态)——"叙事现在时"快照,归近邻层。 + - **Layer 2 作品事实**(一致性/规划不可省略;只读已确认): + - **设定**:`设定.md` 四节;`generation` 用途裁掉「谜底与真相」「结局方向」「弃案记录」等非 generation 字段; + - **大纲**:`generation` 只取主线一句话+当前卷细纲+近三章细纲;「未来卷粗纲」仅 `planning` 可见; + - **知识卡**:只取本章细纲出场清单涉及的人物/关系卡,及其**关联的地点/势力/功法/物品/事件卡**,**不整库倾倒**(planner/detector/extractor 按差异矩阵取全量索引);卡内字段同按 aiContext 裁——「创作备忘」永不进包,「成长弧线」续写不进(仅 planning/detection)。 + - **Layer 3 授权资料**(按场景可省): + - **公共范式**:仅 `装配.yaml` 已绑定的库;按本章场景类型选卡(如打斗章带打斗卡),不整库带入;extractor/judge 此层关闭(见差异矩阵)。 +4. 产出**上下文包**——两个顺序必须分开: + - **预算序**(谁不许被裁,对齐专题-03 §4.2):L0 必须完整保留;超长先摘要化 L3→L2,再截 L1,永不动 L0; + - **拼装序**(物理顺序,按稳定度递减,吃 prompt 前缀缓存):agent 系统 prompt → L3(按作品稳定) → L2(章间缓变) → L1(每章变) → **L0 尾置**(每回合变)。每回合只有尾部变化,前缀缓存全命中;任务指令尾置同时是遵循度最优位(recency)。 + 包尾附**裁剪回显**两段:字段级=被 aiContext 挡掉的字段名与原因;来源级=omittedSources(未绑定跳过的库、出场无关未选的卡数,原因对齐 `not_authorized`/`not_relevant`/`token_budget` 枚举)。 5. 回显落盘:`works/<书>/评审/上下文-第NNN章-<用途>.md`(运行噪音,gitignore 已挡,不提交)。 ## 按 agent 的差异矩阵(骨架四层不变;差异=字段可见集 × 每层取数范围 × 层必省性) @@ -38,7 +53,7 @@ SoT 对齐:包结构=专题-03 §4.2 **四层上下文**;字段级 aiContext 裁 - **检测向持有基准**(detector):比对基准要全,与 writer 互补——writer 看不见的它必须看见; - **评审向最小独立**(judge):**可见面 ≤ writer**——评委多知道的信息会变成"合理化脑补"的评分依据。 -落地与演进:阶段一矩阵写死在本 skill;PG 版随功能链节点配置入库(矩阵本身是元数据,不散进各 agent prompt)。此矩阵是实验设计稿——SoT(专题-03 §4.2)只给到 scenario 级可省略性,逐 agent 策略由这里试出来,验证后回填。 +落地与演进:阶段一矩阵写死在本 skill;PG 版随功能链节点配置入库(矩阵本身是元数据,不散进各 agent prompt)。此矩阵是实验设计稿——SoT(专题-03 §4.2)只给到 scenario 级可省略性,逐 agent 策略由这里试出来,验证后回填;「四层序=预算序、物理拼装序=稳定度递减(L0 尾置吃缓存)」这一区分 SoT 亦未言明,同为回填候选。 PG 版(闭环 C4)只换 L2/L3 取数方式(search skill 召回+授权过滤),层结构与回显合同不变。 diff --git a/README.md b/README.md index 4cd1df4..eafa036 100644 --- a/README.md +++ b/README.md @@ -79,6 +79,8 @@ SoT 第三层「知识基座」(检索/切块/入库,明文不是 app)在 ├── Layer 2 作品事实 设定四节+正式规划+状态台账+知识卡(仅出场+关联) ——只读已确认(Canonical) └── Layer 3 授权资料 绑定的公共范式库/全局知识 ——按场景可省;必须有绑定授权 预算顺序:先留输出预算 → L0 完整保留 → L1 优先 L2 优先 L3;超限先摘要化低层再截断 +拼装顺序(物理序,与预算序是两回事):按稳定度递减 系统prompt→L3→L2→L1→L0 尾置 + ——L0=本回合任务定义(用户意图+操作对象+细纲+输出合同),每回合必变;尾置则前缀缓存全命中 裁剪回显(落 评审/,验收证据):字段级=aiContext 裁剪清单(专题-06 §7) + 来源级=omittedSources(原因枚举:token_budget/not_authorized/stale_source/low_confidence/not_relevant/blocked) ```