write-survey 是一个学术综述写作与维护技能,来源于 vincenzoimp/academic-research-skills。它的目标是产出或维护 survey/survey.tex,使其成为覆盖整个 SOTA(最新研究现状)的单一、完整、详细的阅读参考。按照技能描述,读完该综述后,绝大多数问题都不需要再重新打开 synthesis 或 PDF。
用途
该技能用于在项目已消化 SOTA 之后撰写综述,或在 SOTA 发生变化后更新综述。它强调综述应自包含,详细程度足以在大多数场景下替代重新阅读 SOTA,且没有长度限制,完整性优先。
主要能力
技能支持两种模式。创建模式:当 survey/coverage.md 中没有 citekey 时进入;用户也可以强制进行完整重写,同样视为创建模式。更新模式:当 coverage.md 中已有 citekey 时进入。
创建模式包含一个硬性门槛:必须读取每一个 synthesis。具体做法是列出 sota/index.md 中所有已消化的 citekey,读取每个 sota/papers/<citekey>/synthesis.md,并在写下任何综述正文之前确认数量匹配。随后根据所读内容设计分组,可以是主题、概念、方法论等最适合该 SOTA 的组织方式,并先用 LaTeX 章节注释写出大纲。接着逐节撰写:对每个分组深入讨论每篇论文的贡献和值得注意的方面,比较不同方法,指出张力与矛盾。撰写时须遵守每个 synthesis 的“Safe claims / do-not-claim”部分。引用仅使用 \cite{<citekey>},且每个 key 都必须在根 references.bib 中可解析。之后撰写强制性的最终内容章节“Gaps and Research Directions”,依据 references/survey-content.md 并基于整体图景。最后用所有已整合的 citekey 填充 survey/coverage.md,执行构建(make survey)和校验(make check),并修复所有错误。
更新模式先做差异比较:to_add 是 sota/index.md 中已消化但 coverage.md 中缺失的 key;to_remove 是已覆盖但现已被排除或不存在的 key。然后读取 to_add 的 synthesis 及其所属的综述章节,将新增内容整合进正确的分组——当新论文改变某分组的内部逻辑时,应扩展或重构该分组,而不是简单追加。对于移除项,删除其讨论,修复引用了它们的比较和过渡,并重新检查 gaps 章节。最后更新 coverage.md,重新构建并运行 make check。
使用方式
技能描述中列出了应先阅读的文件:survey/README.md(综述契约)、sota/index.md(SOTA 当前包含的内容)、survey/coverage.md(综述当前整合的内容)、references/survey-content.md(内容清单与风格)。综述按 survey/README.md 使用 biblatex style=authoryear 渲染作者-年份引用,因为论述性综述比编号 [1] 更易读。
规则
关于论文的每一条陈述都必须由其 synthesis 支撑(需要更多深度时可用其 PDF),绝不能依赖模型记忆。综述必须自包含。不得通过该技能编辑 references.bib:如果缺少条目,说明 SOTA 工作不完整,应停止并报告。
完成条件
coverage.md 等于已消化的 citekey 集合(或用户批准的子集),survey.pdf 已重建,且 make check 通过。
适用场景与限制
该技能适用于已有 SOTA 消化成果、需要撰写或维护学术综述的项目。其限制包括:必须依赖 synthesis 或 PDF 而非模型记忆;不得编辑 references.bib;创建模式必须先完整读取所有 synthesis 并确认数量匹配;更新模式必须进行差异比较并整合而非追加。关于收费、价格、平台支持等事实,资料中暂未提供。