mcpField
S
style-harmonizer

style-harmonizer

github.com/willoscar文档处理51746 次安装3 周前更新
代码仓库

关于 style-harmonizer

style-harmonizer 是面向论文草稿的定点编辑技能,用于在结构检查通过后处理重复句式和生成器式文风。它只修改报告标出的文件,并要求保持事实与引用键不变。

主要功能

  1. 01定位并改写风格问题文件
  2. 02减少重复的计数式开头
  3. 03调整重复的衔接语与句子节奏
  4. 04保持事实和引用键不变
  5. 05通过复检追踪风格问题

适用场景

  1. 01多个章节反复使用相同开头
  2. 02草稿出现目录式叙述或模板表达
  3. 03统一章节节奏但不进行全文重写

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/willoscar/research-units-pipeline-skills --skill style-harmonizer

安装后在 Claude Code 中输入/style-harmonizer确认已加载。

附带文件scripts/run.py

详细介绍

风格统一器(去槽位编辑器)

触发条件与路由

  • 触发词:style harmonizer、de-template stems、remove slot phrases、discourse stems、写作风格统一、去槽位句式、去生成器味。
  • 适用场景:writer-selfloop 已通过,但 output/WRITER_SELFLOOP_TODO.md 标记了风格问题(例如,反复使用基于数量的开头),或草稿读起来像是许多章节都采用了相同的节奏。

目的:消除可能逃过结构检查的细微生成器腔调信号。

这项技能不是全面重写,而是有针对性的重写队列:

  • 只修改 ## Style Smells 下标记的特定 sections/*.md 文件
  • 保持事实和引用键不变

输入

必需:

  • output/WRITER_SELFLOOP_TODO.md(Style Smells 部分)
  • 所引用的 sections/*.md 文件

可选(有助于确保改写不超出范围):

  • outline/writer_context_packs.jsonl(允许使用的引用 + opener_mode 提示)

输出

在 writer-selfloop 之后、opener-variator 和逻辑润色之前运行这轮定向处理。如果报告生成后发生了重大修改,请重新运行 writer-selfloop,让 ## Style Smells 反映当前文本。确定性脚本是认证适配器:如果最新报告仍列出已标记的文件,或报告生成时间早于任何 sections/*.md 文件,它就会拒绝创建标记。通过此技能或负责的上游写作者完成语义改写,重新运行 writer-selfloop,然后再次尝试运行适配器。通过后生成的标记会记录经认证的 Section 树 SHA256。

  • 已更新的 sections/*.md 文件(文件名不变;仍然只包含正文;不含标题)
  • 重新运行 writer-selfloop 作为审查记录(Style Smells 应有所减少)。
  • 完成后创建 sections/style_harmonized.refined.ok(空文件)(流水线契约信号;如果此单元标记为 DONE,则必须创建)。

角色卡(明确使用)

风格统一器(编辑)

任务:在保持含义不变的前提下,去除槽位短语和句式重复。

应做:

  • 改写表层形式(开头/结尾/节奏),而不是论点
  • 确保每段都包含实质内容(承接论证,而非指路)
  • 优先进行小范围局部修改,而不是全局风格重构

避免:

  • 添加新的事实论断或引用
  • 将引用移至其他段落或子章节
  • 改写证据不足的章节;应将其转交上游以补充证据
证据维护者(审慎者)

任务:避免风格修改演变为内容漂移。

应做:

  • 每次改写后,抽查所有引用论断是否仍与原句一致
  • 如果觉得必须添加新内容才能让文句听起来更好,请停止并转交上游

常见风格问题及修正方法

1)基于数量的开头槽位(两项局限……、三个要点……)

为何信号明显:它会产生可在各个 H3 标题下重复使用的句式槽位。

改写方法(任选其一):

  • 将限定条件融入对比段落的最后一句:说明会改变解读的边界。
  • 使用一句不带数量的限定条件作为开头,但在各个 H3 标题下轮换使用(避免重复相同的句式开头):“这些结果取决于……”/“解读有赖于……”/“证据不足的情况是……”/“需要注意的是……”(谨慎使用)。
  • 如果确实需要列举,可隐藏数量:在一个句子中使用两个并列分句,或变换句式(不要在多个章节中重复)。

简短示例(仅供改写参考):

  • 不佳:Two limitations stand out. First, ...
  • 更佳:这些结果取决于……;这很重要,因为它会改变结果在不同协议间的适用方式。
2)重复使用话语句式开头(关键在于……)

改写方法:

  • 换成以下表达之一:“一项实际启示是……”、“一个要点是……”、“理解这些结果的一种有效方式是……”。
  • 改变节奏:先用一个简短句子陈述论点,再用后续句子说明条件或原因。
3)多个 H3 标题下的开篇节奏雷同

改写方法:

  • 为本节切换开篇模式(张力优先/决策优先/协议优先/对比优先)。
  • 将泛泛的连接词(Additionally/Moreover)换成承载具体内容的转折语(“在协议层面,……”/“在预算受限的情况下,……”)。
4)概述/叙述式开篇(“本节概述……”)

为什么这是强烈信号:读起来像自动生成的目录说明,而不是论文论证。

改写方法:

  • 用承载具体内容的视角替代“概述”式叙述:张力/决策/失效/协议/对比。
  • 让首句具备可证伪性:点明约束及其重要性(而不是说明你接下来要做什么)。

简短示例(仅作意译):

  • 不佳:This section 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.
5)段落反复以连接副词开头(Moreover、In addition、Therefore、Overall、As a result)

为什么这是强烈信号:即使内容扎实,文章读起来也会像是机械拼接起来的(每段都以相同的连接词开头)。

改写方法:

  • 保留逻辑关系,但把连接词移到句中:先以主语开头(例如,“工具目录还……”),再在句中补充关系(“……,进而……”)。
  • 使用从句结构,而非以副词开头:“虽然……,……”/“尽管……,……”/“因为……,……”。
  • 总结时,不要默认使用“Overall,”作为标签;直接用陈述句表达结论。

简短示例(仅作意译):

  • 明显问题:“Moreover, ...”(在多段中反复出现)
  • 更佳:以内容名词短语开头(“一项影响是……”/“一项实际约束是……”),再在句中表达关系。
6)内部简写混入论文语体(将“token(s)”用作协议名词)

为什么这是强烈信号:在 NLP 语境之外(如 token 预算/上下文窗口),“token”看起来像内部简写。在这个流程中,它通常源自数据包/架构,并被直接复制到正文中,让草稿显得像中间产物。

改写方法:

  • 将“X tokens”替换为面向读者的名词:“X 项协议细节/假设/字段/参数/维度”。
  • 如果确实指大模型 token,则使用具体数字(例如,“60k-token 的上下文窗口”、“token 预算”);避免将“token”泛指协议元数据。
  • 避免使用“三个 token:……”这样的占位表达;可以(a)直接陈述结论,或(b)使用“三个报告字段”,并自然地融入句中。

简短示例(仅作意译):

  • 不佳:Overall, self-improvement should be reported as a protocol with three explicit tokens: the feedback channel, the update rule, and the accounting rule.
  • 更佳:Self-improvement results are easiest to compare when papers make three reporting fields explicit: the feedback channel, the update rule, and the accounting assumptions.

工作流(精简版)

1)阅读 output/WRITER_SELFLOOP_TODO.md

  • 找到 ## Style Smells 和文件列表。

2)仅改写被标记的文件

  • 优先修复导致节奏问题的上游写作技能,而非依赖局部正则清理。
  • 如果仍需局部改写,请小幅调整:开篇/结尾句式、句子结构、连接词变化。
  • 二选一改写(推荐):对你改动的每个段落拟写 2 种替代表达,并保留符合以下条件的版本:(a)去掉固定句式;(b)不会在多个 H3 标题下造成新的重复节奏。
  • 如有需要,可查阅 outline/writer_context_packs.jsonl 中的 opener_mode 提示,并确保改写不超出引文适用范围。
  • 不要改动引文键。

3)重新运行 writer-selfloop

  • 预期:PASS 仍为 PASS。
  • 预期:Style Smells 部分会缩短(或消失)。

完成检查清单

  • 同一槽位短语不会在多个 H3 标题中重复出现(尤其是基于数量的开头)。
  • 未添加、删除或移动任何引文键。
  • writer-selfloop 仍报告 PASS,且 Style Smells 数量有所减少。

脚本

快速开始
  • uv run python .codex/skills/style-harmonizer/scripts/run.py --workspace <workspace>
所有选项
  • --workspace <dir>(必填)
  • --unit-id <U###>
  • --inputs <semicolon-separated>
  • --outputs <semicolon-separated>
  • --checkpoint <C#>
示例
  • 在调查工作区中统一风格:
    • uv run python .codex/skills/style-harmonizer/scripts/run.py --workspace workspaces/survey-llm-agents

评论

支持 Markdown