Agent skill
redundancy-pruner
Remove repeated boilerplate across sections (methodology disclaimers, generic transitions, repeated summaries) while preserving citations and meaning. **Trigger**: redundancy, repetition, boilerplate removal, 去重复, 去套话, 合并重复段落. **Use when**: the draft feels rigid because the same paragraph shape and disclaimer repeats across many subsections. **Skip if**: you are still drafting major missing sections (finish drafting first). **Network**: none. **Guardrail**: do not add/remove citation keys; do not move citations across subsections; do not delete subsection-specific content.
Install this agent skill to your Project
npx add-skill https://github.com/WILLOSCAR/research-units-pipeline-skills/tree/main/.codex/skills/redundancy-pruner
SKILL.md
Redundancy Pruner
Purpose: make the survey feel intentional by removing “looped template paragraphs” and consolidating global disclaimers, while keeping meaning and citations stable.
Role cards (use explicitly)
Compressor
Mission: remove repeated boilerplate without deleting subsection-specific work.
Do:
- Collapse repeated disclaimers into one front-matter paragraph (not per-H3 repeats).
- Delete repeated narration stems and empty glue sentences.
- Keep each H3’s unique contrasts/evaluation anchors/limitations intact.
Avoid:
- Cutting unique comparisons because they sound similar.
- Turning pruning into a rewrite (this skill is subtraction-first).
Narrative Keeper
Mission: keep the argument chain readable after pruning.
Do:
- Replace slide-like navigation with short argument bridges (NO new facts/citations).
- Ensure each H3 still has a thesis, contrasts, and at least one limitation.
Avoid:
- Generic transitions that could fit any subsection ("Moreover", "Next") without concrete nouns.
Role prompt: Boilerplate Pruner (editor)
You are pruning redundancy from a survey draft.
Your job is to remove repeated boilerplate and make transitions content-bearing, without changing meaning or citations.
Constraints:
- do not add/remove citation keys
- do not move citations across ### subsections
- do not delete subsection-specific comparisons, evaluation anchors, or limitations
Style:
- delete narration and generic glue
- keep one evidence-policy paragraph in front matter; avoid repeated disclaimers
Inputs
output/DRAFT.md- Optional (helps avoid accidental drift):
outline/outline.yml(subsection boundaries)output/citation_anchors.prepolish.jsonl(if you are enforcing anchoring)
Outputs
output/DRAFT.md(in-place edits)
Workflow
Use the role cards above.
Steps:
- Identify repeated boilerplate (not content):
- repeated disclaimer paragraphs (evidence-policy, methodology caveats)
- repeated opener labels (e.g.,
Key takeaway:spam) - repeated slide-like narration stems (e.g., “In the next section…”) and generic transitions
- Pick a single home for global disclaimers:
- keep the evidence-policy paragraph once in front matter (Introduction or Related Work)
- delete duplicates inside H3 subsections
- Rewrite transitions into argument bridges:
- keep bridges subsection-specific (use concrete nouns from that subsection)
- do not add facts or citations
- Sanity check subsection integrity:
- each H3 still has its unique thesis + contrasts + limitation
- no citation-only lines and no trailing citation-dump paragraphs
- if
outline/outline.ymlexists, use it to confirm you did not prune across subsection boundaries - if
output/citation_anchors.prepolish.jsonlexists, treat it as a regression anchor (no cross-subsection citation drift)
Guardrails (do not violate)
- Do not add/remove citation keys.
- Do not move citations across
###subsections. - Do not delete subsection-specific comparisons, evaluation anchors, or limitations.
Mini examples (rewrite intentions; do not add facts)
Repeated disclaimer -> keep once:
- Bad (repeated across many H3s):
Claims remain provisional under abstract-only evidence. - Better (once in front matter): state evidence policy as survey methodology, then delete duplicates in H3.
Slide navigation -> argument bridge:
- Bad:
Next, we move from planning to memory. - Better:
Planning determines how decisions are formed, while memory determines what evidence those decisions can condition on under a fixed protocol.
Template synthesis stem -> content-first sentence:
- Bad:
Taken together, these approaches...(repeated many times) - Better: state the specific pattern directly (e.g.,
Across reported protocols, X trades off Y against Z...).
Troubleshooting
Issue: pruning removes subsection-specific content
Fix:
- Restrict edits to obviously repeated boilerplate; keep anything that encodes a unique comparison/limitation for that subsection.
Issue: pruning changes citation placement
Fix:
- Undo; citations must remain in the same subsection and keys must not change.
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
thesis-compile-review
对中文毕业论文进行编译、warning 分级、模板模式检查、数据与引用复查,并把问题回写成可继续迭代的 review checklist。 **Trigger**: 毕业论文编译检查, thesis compile review, warning 分级, 终稿复查, main.pdf 检查. **Use when**: 论文已经回写到 TeX 交付层,需要确认是否真正达到“可提交”的质量,而不是只做到能编译。 **Skip if**: 还处于中间层重构阶段,`chapters/*.tex` 尚未形成稳定交付稿。 **Network**: none. **Guardrail**: 不在这里重构章节主线;如果发现结构问题,明确回退到上游修复。
front-matter-writer
Write the survey's front matter files (Abstract, Introduction, Related Work, Discussion, Conclusion) in paper voice, with high citation density and a single evidence-policy paragraph. **Trigger**: front matter writer, introduction writer, related work writer, abstract writer, discussion writer, conclusion writer, 引言, 相关工作, 摘要, 讨论, 结论. **Use when**: you are in C5 (prose allowed) and need the paper-like shell to stop the draft reading like stitched subsections. **Skip if**: `Approve C2` is missing in `DECISIONS.md`, or `citations/ref.bib` is missing. **Network**: none. **Guardrail**: no invented facts/citations; no pipeline jargon in final prose; no repeated evidence disclaimers; only use keys present in `citations/ref.bib`.
thesis-question-list
维护中文毕业论文的 `codex_md/question_list.md`:把本轮问题、边界、优先级、协作方案和验收口径结构化,作为整条 thesis pipeline 的控制面。 **Trigger**: 毕业论文问题清单, thesis question list, 论文修改清单, 本轮目标, 结构问题梳理, review问题整理. **Use when**: 你已经有一批材料或上一轮 review 结果,需要明确这一轮到底修什么、不修什么,并给后续重构与编译复查提供统一入口。 **Skip if**: 当前只是在做一次性局部措辞修改,且没有形成新一轮结构/证据/编译问题。 **Network**: none. **Guardrail**: 不在这里写正文;不把问题单写成长篇散文;每条问题必须可执行、可验收。
novelty-matrix
Create a novelty/prior-work matrix comparing the submission’s contributions against related work (overlaps vs deltas). **Trigger**: novelty matrix, prior-work matrix, overlap/delta, 相关工作对比, 新颖性矩阵. **Use when**: peer review 中评估 novelty/positioning,需要把贡献与相关工作逐项对齐并写出差异点证据。 **Skip if**: 缺少 claims(先跑 `claims-extractor`)或你不打算做新颖性定位分析。 **Network**: none (retrieval of additional related work is out-of-scope unless provided). **Guardrail**: 明确 overlap 与 delta;尽量给出可追溯证据来源(来自稿件/引用/作者陈述)。
protocol-writer
Write a systematic review protocol into `output/PROTOCOL.md` (databases, queries, inclusion/exclusion, time window, extraction fields). **Trigger**: protocol, PRISMA, systematic review, inclusion/exclusion, 检索式, 纳入排除. **Use when**: systematic review pipeline 的起点(C1),需要先锁定 protocol 再开始 screening/extraction。 **Skip if**: 不是做 systematic review(或 protocol 已经锁定且不允许修改)。 **Network**: none. **Guardrail**: protocol 必须包含可执行的检索与筛选规则;需要 HUMAN 签字后才能进入 screening。
rubric-writer
Write a rubric-based peer review report (`output/REVIEW.md`) using extracted claims and evidence gaps (novelty/soundness/clarity/impact). **Trigger**: rubric review, referee report, peer review write-up, 审稿报告, REVIEW.md. **Use when**: peer-review pipeline 的最后阶段(C3),已有 `output/CLAIMS.md` + `output/MISSING_EVIDENCE.md`(以及可选 novelty matrix)。 **Skip if**: 上游产物未就绪(claims/evidence gaps 缺失)或你不打算输出完整审稿报告。 **Network**: none. **Guardrail**: 给可执行建议(actionable feedback),并覆盖 novelty/soundness/clarity/impact;避免泛泛而谈。
Didn't find tool you were looking for?