章节大纲规划技能
1. 何时使用
当用户要求"规划/规划一下这一章怎么写"或"做一个详细的大纲"时激活。本技能在写作之前运行,产出一份结构化大纲供用户确认,确认后再进入写入阶段。
2. 任务类型判定(先于一切)
先判定本次属于哪类任务,二者流程和产出差异显著:
| 类型 | 特征 | 典型场景 | 产出重心 |
|---|---|---|---|
| A. 新章规划 | 目标章节尚无内容或仅有标题占位 | 第8章《Laurent 级数》从零设计三节结构 | 完整结构方案 + 知识点表 |
| B. 补全/重构规划 | 目标章节已有大量内容,但存在缺标签、内容重复、定义臃肿、缺例题等问题 | 第9章《留数理论》补全 <prop:residue-integral> 等标签、消除重复、拆分定义、新增 <ex:residue-infinity> |
现状体检表 + 补全清单,结构只做微调 |
判定方法:Grep 目标章节的标题范围,若已有成段正文/组件,即为 B 类;B 类不要推倒重来设计新结构,只在现有骨架上修补。
3. 前置收集(并行执行)
在规划前,必须先收集以下信息:
3.1 全书章节结构
- Grep
initial.typ中所有^(=|==)标题行,获取章节骨架 - 确认当前章节在全书中的位置、前后章节的标题
- 识别可交叉引用的目标标签(已写章节中的
<def:><thm:>等)
3.2 参考资料扫描(如存在)
- 如果存在对应的
chapters/chapXX.tex,通读其内容,提取知识点清单和定义/定理顺序 - 标注用户特别强调的参考位置(如"参考 chap02.tex L104-115")
- 参考资料仅作补充,大纲以自己的思路为主线
- 无参考资料时直接跳过本步与产出要素 4.7,不要编造参考来源
3.3 已有标签盘点
- Grep
<[a-z]+:获取已有标签列表(覆盖全部前缀,不只正文行首) - 避免标签命名冲突;识别可复用的已有定义/定理标签
- 已知在用的前缀:
def:thm:prop:cor:lem:ex:eq:fig:caution:sec:
3.4 承诺扫描
- Grep 前章中"将在 §X.Y 证明"、"将在 ChX 证明"等承诺性文字(含行号)
- 列出本章需要兑现的承诺清单
- 同时扫描本章骨架中是否有需要埋下的新承诺
3.5 现状体检(仅 B 类补全任务)
对目标章节逐节 Grep/Read,产出体检表:
| 问题类型 | 检查方法 | 示例 |
|---|---|---|
| 缺标签 | 关键定理/定义/性质后无 <xx:...> |
留数积分公式没有 <prop:residue-integral> |
| 内容重复 | 同一公式/定理在章内或跨章出现两次 | 留数定理与前面 Cauchy 定理表述重叠 |
| 定义臃肿 | 一个 #definition 塞了多个独立概念 |
拆分为 <def:principal-part> 与 <def:singularity-types> |
| 缺例题 | 抽象定理后无 #example 支撑 |
补 <ex:residue-infinity> |
| 缺图片 | 长论证/几何直观强的内容无配图 | 补 fig:argument-principle |
| 组件类型误用 | prose 内容误用编号组件 | 定义性 prose 误用 #theorem,应为 #definition |
| 逻辑漏洞 | 定理陈述在边界条件下前提为空 | 改为标准表述 |
4. 大纲产出要素
4.0 章节定位与核心洞察(A 类必需,B 类简写)
章节定位:一句话说明本章在全书中的角色(承接什么、开创什么)。
核心洞察:全章的灵魂命题,一句话概括本章要传递的数学思想。这帮助确认本章的 SRP 边界,避免与前后章节职责重叠。
例(Ch6 最大模原理章):解析函数的局部性质(模的最大值、导数的估计、零点的分布)全部可以从 CIF 的积分表示统一推出——"积分公式 ⇒ 函数刚性"。
预估规模:总行数、节数、新标签数、图片数。
4.1 结构方案
- 列出 section(
==)和 subsection(===)的标题(含中文翻译) - 如需新增 section 或调整顺序,说明理由
- 每节的预估行数范围
- 组织主线参考经验:"理论(定理+证明)→ 方法与例题 → 分类/应用"的三段递进是常用骨架
4.2 组件频率预估
在规划阶段估算每类组件的数量,防止某类过多或过少,也便于评估工作量:
| 组件类型 | 数量 | 标签清单 |
|---|---|---|
#definition |
N | <def:xxx>, <def:yyy> |
#theorem |
N | <thm:xxx> |
#lemma |
N | <lem:xxx> |
#example |
N | <ex:xxx> |
| ... |
实际写入时允许微调,但偏差超过 30% 应回头审视结构。
4.3 知识点与组件规划
每个 section 用表格列出:
| 内容 | 组件/标签 | 备注 |
|---|---|---|
| 知识点描述 | #definition <def:xxx> |
定义/定理/性质/例/注等;回链 @label |
组件选择遵循 typst-writing-conventions SKILL.md §9 的组件选择指南。
备注列应包含:
- 回链:该知识点引用了哪些前章标签
- 证明策略简述:对定理/引理,一句话说明证明路线
- 前瞻:该知识点会被哪些后续章节消费
4.4 逻辑链路图
用 ASCII/文字流程图展示知识点间的依赖关系,标注三类链路:
- 向上:依赖前置章节的哪些定义/定理(标明标签名 + 行号)
- 横向:本章各节之间的依赖(含分支、汇聚)
- 向下:哪些远期章节会兑现本章埋的伏笔
格式规范和示例见 ref/logic-chain-patterns.md。
4.5 承诺追踪
列出本章需要兑现的前章承诺和埋下的新承诺:
| 类型 | 位置 | 内容 | 处理 |
|---|---|---|---|
| 兑现 | ChY L### | "§X.Z 证明" — 某定理的证明承诺 | 本节 <thm:xxx> 的证明 |
| 埋下 | 本节 #note |
"将在 ChW 证明" | ChW 写入时处理 |
| 闭环 | @thm:xxx |
holo ⟺ analytic 双向证明完成 | 标注"闭环" |
4.6 证明策略表
对每个需要完整证明的定理,预先规划证明路线:
| 定理 | 证明策略 | 关键工具 |
|---|---|---|
<thm:xxx> |
CIF + 核展开引理 → 逐项积分 | @lem:geometric-kernel, @thm:cif |
<thm:yyy> |
反证法 + 主部分和逼近 | @def:principal-part |
这避免写作时才发现证明需要的前置知识尚未建立。
4.7 标签系统设计
- 列出本章所有标签,前缀完整清单:
def:thm:prop:cor:lem:ex:eq:fig:caution:sec: - 引理用
lem:(如<lem:laurent-kernel>),不要漏掉 - 确认命名与已有标签风格一致(全小写连字符,如
two-sided-series) - 标注哪些标签会被后续章节交叉引用
4.8 公式编号规划
列出需要显式编号的关键公式(用 <eq:xxx> 标签),不需要编号的用行内数学或无标签 display math。编号公式通常是后续多次引用的核心定义式。
4.9 图片规划
按 typst-writing-conventions SKILL.md §5 的图片工作流。详细必要性判断标准和提示词撰写规范见 ref/image-planning.md。
必要性判断(每章 1-3 张为宜,拒绝硬凑):
| 优先级 | 判断标准 | 典型类型 |
|---|---|---|
| A 必需 | 文字描述效率远低于图形;核心几何直觉 | 域映射双面板、奇点分类对比、轮廓变形 |
| B 推荐 | 能显著提升理解效率的概念总结图 | Taylor/Laurent 圆盘示意、多概念对比 |
| C 省略 | 单对象简单示意、纯公式推导无几何内容 | 单个圆/矩形、纯代数推导配图 |
产出内容:
- 列出本章需要的图片:文件名(如
laurent-annulus.svg)、标签(<fig:xxx>)、内容描述、布局建议、优先级(A/B/C) - 标注哪些是核心图、哪些可选
- 规划完成后,写作时用
0.Wiki/null.svg占位(复制到img/改名为实际图片名;图片统一 SVG 格式) - 图片提示词在任务结束时集中输出,规划阶段只需登记清单
4.10 参考资料对照(仅当存在参考资料)
- 列出与参考资料的知识点对应关系
- 标注差异点(如"chap02 用公理式定义,我改为幂级数定义,理由...")
- 确认用户强调的参考位置是否已落实
4.11 写作顺序建议
基于依赖分析,建议写入顺序(不是章节编号顺序):
- 引理先于定理、定义先于例题
- 每写完一节即编译验证(分批编译策略)
- 标注每步的编译检查点
4.12 补全清单(仅 B 类任务)
以表格列出每项修补动作,作为写作阶段的执行清单:
| 位置 | 动作 | 具体内容 |
|---|---|---|
| L2100 定理后 | 补标签 | 添加 <prop:residue-integral> |
| §9.2 | 删重复 | 与 §9.1 重复的积分公式段落删除 |
| §9.3 | 拆定义 | 奇点定义拆为主部定义 + 奇点分类两个 #definition |
| §9.4 | 新增例题 | <ex:residue-infinity> 无穷远点留数计算 |
5. 交互流程
Step 1: 任务类型判定(A/B)
↓
Step 2: 前置收集(并行 Grep/Read;B 类加现状体检 + 承诺扫描)
↓
Step 3: 产出大纲(A 类: 4.0-4.11;B 类: 体检表 + 4.12 + 微调说明)
↓
Step 4: 对关键决策点用 AskUserQuestion 征求用户意见
↓
Step 5: 用户确认后进入写入阶段
5.1 决策点规则
- 只对真正影响结构且用户可能有偏好的决策提问(如"奇点分类独立成节 vs 并入展开方法节"、"是否配插图")
- 每个问题给 2-3 个选项,标注推荐项(
(Recommended)) - 不超过 3 个问题
- 不对细节(如标签名、具体措辞)提问——这些自己决定
6. 规范检查清单
大纲产出后自检:
- 任务类型已判定(A/B),B 类有体检表和补全清单
- 章节定位和核心洞察已撰写(A 类必需,B 类简写)
- 所有 section 标题含中文翻译(
== Title // 中文) - 组件频率预估已完成,各类型数量合理
- 组件选择符合 SRP 原则(不重复其他章节已有定义)
- 标签前缀正确且完整(
def:thm:prop:cor:lem:ex:eq:fig:caution:) - 新标签名与已有标签无冲突(用 Grep 验证唯一性)
- 交叉引用的标签名与已有标签匹配(用 Grep 验证)
- 逻辑链路图标注了向上/横向/向下三类链路,且使用具体标签名
- 承诺追踪表完整:所有"兑现"有对应"埋下",闭环已标注
- 证明策略表覆盖所有需要完整证明的定理
- 图片规划含文件名、标签、布局建议、优先级(A/B/C)
- 每张规划图片通过必要性检验(非 C 类硬凑):文字无法高效传递的信息确实存在
- 图片提示词要素完整(数学内容、几何元素表、面板布局、配色、数学验证)——写作阶段输出时检查
- 写作顺序基于依赖分析而非章节编号
- (如有参考资料)差异点已标注
7. 大纲输出格式模板
完整模板见 ref/chapter-outline-template.md,包含:
- A 类模板:零(章节定位)→ 一(结构方案)→ 二(组件频率)→ 三(知识点表)→ 四(逻辑链路)→ 五(承诺追踪)→ 六(证明策略)→ 七(公式编号)→ 八(图片)→ 九(参考资料)→ 十(写作顺序)→ 十一(决策点)
- B 类模板:零(章节定位)→ 一(体检表)→ 二(补全清单)→ 三(结构调整)→ 四(承诺追踪)→ 五(图片)→ 六(决策点)
8. 写作阶段衔接
大纲确认后,进入写入阶段时:
- 按
typst-writing-conventionsSKILL.md 的所有规范执行 - 按大纲建议的写作顺序(§4.11)逐节写入,每节一个 Edit
- 分批编译:每 1-2 节编译一次,比全文一次性编译更容易定位错误
- 每节写完后立即检查 Typst 语法陷阱(见
ref/writing-pitfalls.md) - 图片用
0.Wiki/null.svg占位(复制到img/改名为实际图片名;图片统一 SVG 格式) - B 类补全任务逐项勾销补全清单,确认无遗漏
- 兑现承诺时,在证明开头标注"兑现 ChX L### 的承诺"
- 全部写完后编译验证,以
typst compile退出码 0 为完成标准 - 最后汇总输出所有图片的提示词。提示词格式严格按
ref/image-planning.md§2 的结构化模板:含数学内容、几何元素表(每项标注精确坐标/半径/颜色 hex)、面板布局、配色方案、数学验证表。提示词的消费者是另一个 AI,它会据此编写 Python/Matplotlib 脚本生成 SVG,因此所有数值必须精确到小数点后 1-2 位,不可用模糊描述。每张图注明目标路径img/xxx.svg和对应标签<fig:xxx>
9. 参考文件索引
| 文件 | 内容 | 何时查阅 |
|---|---|---|
ref/chapter-outline-template.md |
A/B 两类大纲的完整格式模板 | 产出大纲时 |
ref/logic-chain-patterns.md |
逻辑链路图的格式规范、ASCII 图示例、承诺追踪模式 | 绘制链路图时 |
ref/writing-pitfalls.md |
Typst 语法陷阱、内容组织陷阱、工程陷阱 | 写入阶段 |
ref/image-planning.md |
图片必要性判断(A/B/C 三级)、提示词结构化模板、复分析常见图类型、完整示例 | 规划图片清单和撰写提示词时 |