关于 opener-variator
opener-variator 是一款针对论文小节开头段落的编辑 Skill,供写作者修正重复的叙述式开场。它限定修改范围并保留论证与引文,同时依据自检报告处理被标记的小节。
主要功能
- 01定位被标记的小节文件
- 02改写开头段落或句子
- 03保留论证结构与引文
- 04提供多种开场组织方式
- 05通过 writer-selfloop 复查
适用场景
- 01减少多个小节开头的重复
- 02将概述式开场改为内容导向
- 03按自检报告修订论文段落
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ willoscar/ research-units-pipeline-skills --skill opener-variator安装后在 Claude Code 中输入/opener-variator确认已加载。
附带文件scripts/run.py
详细介绍
开头变体器(重写 H3 首段)
触发词与路由
- 触发词:opener variator、opener rewrite、rewrite openers、overview opener、开头改写、小节开头、去overview、去旁白。
目的:修复一种能通过结构门槛的高信号自动化痕迹:
- 许多 H3 都以相同的修辞结构开头
- 用“概述”式旁白取代承载内容的框定方式
此技能的适用范围有意设得很窄:
- 仅重写被标记 H3 文件的首段(或前 2–4 句)
- 保留论证推进方式和引文
输入
必需:
output/WRITER_SELFLOOP_TODO.md(Style Smells 部分)- 其中提及的
sections/S<sub_id>.md文件
可选(有助于保持一致):
outline/writer_context_packs.jsonl(使用opener_mode、tension_statement、thesis)
输出
在 style-harmonizer 之后、逻辑润色之前立即运行此定向检查。确定性脚本是一个认证适配器:如果最新的 writer-selfloop 报告仍列出了被标记的文件,或其时间早于任何 sections/*.md 文件,它就会拒绝创建标记。通过此技能或由负责的上游写作者进行语义重写,重新运行 writer-selfloop,然后再次尝试适配器。通过后生成的标记会记录经过认证的 Section 树 SHA256。
- 已更新的
sections/S<sub_id>.md文件(仍然只有正文;不含标题)
工作流(依据自循环报告路由)
- 打开
output/WRITER_SELFLOOP_TODO.md,找到## Style Smells。 - 将标记的
sections/S*.md文件列表视为本次检查的唯一范围。 - 对每个被标记的文件:
- 可选:在
outline/writer_context_packs.jsonl中查找对应条目,并阅读opener_mode/tension_statement/thesis,以保持一致。 - 在
subsection-writer或chapter-lead-writer中进行实际的上游重写;不要依赖盲目的本地正则处理。 - 开头段落优选采样(推荐):拟写 2-3 个候选开头段落(采用不同的开头模式),然后保留内容承载性最强、在各 H3 之间重复最少的一个。
- 可选:在
- 重新运行
writer-selfloop,并确认 Style Smells 列表缩短。
角色提示词:开头编辑(论文风格)
You are rewriting the opening paragraph of a survey subsection.
Goal:
- replace narration/overview openers with a content-bearing framing
- vary opener cadence across subsections so the paper reads authored
Constraints:
- do not invent facts
- do not add/remove/move citation keys
- do not change the subsection’s thesis
Checklist:
- sentence 1 is content-bearing (tension/decision/failure/protocol/contrast), not “what we do in this section”
- paragraph 1 ends with a clear thesis/takeaway
- no slide navigation (“Next, we…”, “In this subsection…”, “This section provides an overview…“)
应删除的内容(高信号旁白)
如果开头包含以下任意内容,请立即重写:
- “本节/本小节概述……”
- “在本节/本小节中,我们……”
- “本小节综述/论证……”
- “接下来,我们转向……”
- 重复使用开头标签(“关键结论:”刷屏)
可替换为的内容(开头方式)
每个 H3 选择一种开头模式(写作者资料包可能会建议 opener_mode)。
不要照抄标签;使用自然行文。
允许的开头方式(选择 1 种;保持具体):
- 先提出矛盾:说明真实的权衡及其重要性;以论点收尾。
- 先提出决策:在约束条件下界定构建者的选择;以论点收尾。
- 先提出失败:从一种促使我们采用该视角的失败模式切入;以论点收尾。
- 先提出协议:从可比性约束(预算/工具访问)切入;以论点收尾。
- 先作对比:以 A 与 B 的对比句开篇,然后解释原因;以论点收尾。
- 先提出视角:说明本章的视角,并聚焦到本小节的问题。
简短示例(改写;不要照抄)
不佳(概述式旁白):
This subsection provides an overview of tool interfaces for agents.
较好(承载内容):
Tool interfaces define what actions are executable; interface contracts therefore determine which evaluation claims transfer across environments.
不佳(过程式旁白):
In this subsection, we discuss memory mechanisms and then review retrieval methods.
较好(先提出矛盾):
Memory improves long-horizon coherence, but it also expands the failure surface: retrieval can be stale, wrong, or adversarial, and agents rarely know which.
完成检查清单
- 没有任何被标记的文件以“概述/叙述”类词语开头。
- 第 1 段以论点/结论收尾(含义相同)。
- 引用键保持不变(不新增、不删除、不移动)。
-
writer-selfloop仍然通过,且 Style Smells 减少。
脚本
快速开始
uv run python .codex/skills/opener-variator/scripts/run.py --workspace <workspace>
所有选项
--workspace <dir>(必填)--unit-id <U###>--inputs <semicolon-separated>--outputs <semicolon-separated>--checkpoint <C#>
示例
- 重写调查工作区中的开篇:
uv run python .codex/skills/opener-variator/scripts/run.py --workspace workspaces/survey-llm-agents
评论
支持 Markdown