Agent skill
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。
Install this agent skill to your Project
npx add-skill https://github.com/WILLOSCAR/research-units-pipeline-skills/tree/main/.codex/skills/protocol-writer
SKILL.md
Protocol Writer (systematic review, PRISMA-style)
Goal: produce an executable protocol that a different reviewer could follow and reproduce.
Role cards (use explicitly)
Methodologist (protocol author)
Mission: make every rule operational so another person can reproduce the review.
Do:
- Define scope and RQs in testable language (what counts as in/out).
- Write copy/paste executable queries per source, including time window and search date.
- Specify screening labels and tie-break policy.
- Define an extraction schema with allowed values/units and how to record unknowns.
Avoid:
- Vague criteria ("relevant", "state-of-the-art", "high quality").
- Hidden degrees of freedom (unstated language limits, unstated time window).
Auditor (reproducibility checker)
Mission: remove ambiguity that would cause silent drift during screening/extraction.
Do:
- Add a short "decision log" section (what to record, where).
- Include a HUMAN approval gate statement before screening starts.
Avoid:
- Protocol prose that cannot be executed.
Role prompt: Systematic Review Protocol Author
You are writing a systematic review protocol that must be executable and auditable.
Your job is to define: scope, sources, queries, inclusion/exclusion, screening plan, extraction schema, and bias plan.
Constraints:
- rules must be operational (observable, testable)
- the protocol requires HUMAN approval before screening
Style:
- structured and concise
- avoid narrative filler; every paragraph should enable an action
Inputs
Required:
STATUS.md(context + scope notes)
Optional:
GOAL.md(topic phrasing)DECISIONS.md(any pre-agreed constraints)
Outputs
output/PROTOCOL.md
Workflow
-
Scope + research questions
- Translate the goal in
GOAL.md(if present) into 1–3 review questions. - State what is in-scope / out-of-scope (keep consistent with
STATUS.md). - If
DECISIONS.mdexists, treat it as authoritative for any pre-agreed constraints.
- Translate the goal in
-
Sources
- List databases/sources you will search (e.g., arXiv, ACL Anthology, IEEE Xplore, ACM DL, PubMed).
- Specify any manual routes (snowballing: references/cited-by).
-
Search strategy (copy/paste executable)
- For each source, write a concrete query string.
- Define the time window (from/to year) and language constraints.
- Record “search date” so the run is auditable.
-
Inclusion / exclusion criteria (operational, not vague)
- Write MUST-HAVE criteria (study type, domain, outcomes).
- Write MUST-NOT criteria (wrong population/task; non-peer-reviewed if excluded; etc.).
- Assign stable IDs so screening can reference them:
- Inclusion:
I1,I2, ... - Exclusion:
E1,E2, ...
- Inclusion:
- Define how you handle duplicates and near-duplicates.
-
Screening plan
- Define the screening stages (title/abstract → full text if applicable).
- Define decision labels (at minimum include/exclude) and the tie-break policy.
- Specify what gets recorded into
papers/screening_log.csv. - Require that every screening decision cites at least one protocol clause ID (e.g.,
reason_codes=E3).
-
Extraction schema (downstream contract)
- Define the columns that will appear in
papers/extraction_table.csv. - Ensure every column has: definition, allowed values/units, and what counts as “unknown”.
- Define the columns that will appear in
-
Bias / risk-of-bias plan
- Define the bias domains you will use (simple scales are OK).
- Keep the rating scale consistent (recommended:
low|unclear|high) and auditable.
-
Write
output/PROTOCOL.md- Use clear headings; avoid prose that cannot be operationalized.
- End with an explicit “HUMAN approval required before screening” note.
Mini examples (operational vs vague)
Inclusion criteria:
- Bad:
Include papers that are relevant to LLM agents. - Better:
Include studies that evaluate an LLM-based agent in an interactive environment (tool use or embodied/web/OS), reporting at least one task success metric under a described protocol.
Exclusion criteria:
- Bad:
Exclude low-quality papers. - Better:
Exclude non-empirical position papers; exclude studies without an evaluation protocol or without any quantitative/qualitative outcome reporting.
Query spec:
- Bad: "Search arXiv for agent papers"
- Better: provide an executable query string + fields (title/abstract) + time window + search date.
Definition of Done
-
output/PROTOCOL.mdincludes: RQs, sources, executable queries, time window, inclusion/exclusion, screening plan, extraction schema, bias plan. - A human can read
output/PROTOCOL.mdand run screening without asking “what do you mean by X?”.
Troubleshooting
Issue: queries are too broad / too narrow
Fix:
- Add exclusions for common false positives; add missing synonyms/acronyms; restrict fields (title/abstract) where supported.
Issue: screening/extraction criteria are vague (“relevant”, “state-of-the-art”)
Fix:
- Replace with observable rules (task/domain, metrics, dataset requirements, intervention/controls).
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;尽量给出可追溯证据来源(来自稿件/引用/作者陈述)。
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;避免泛泛而谈。
arxiv-search
Retrieve paper metadata from arXiv using keyword queries and save results as JSONL (`papers/papers_raw.jsonl`). **Trigger**: arXiv, arxiv, paper search, metadata retrieval, 文献检索, 论文检索, 拉取元数据, 离线导入. **Use when**: 需要一个初始论文集合(survey/snapshot 的 Stage C1),来源为 arXiv(在线检索或离线导入 export)。 **Skip if**: 已经有可用的 `papers/papers_raw.jsonl`,或数据源不是 arXiv。 **Network**: 在线检索需要网络;离线 `--input <export.*>` 不需要网络。 **Guardrail**: 只做 metadata;不要在 `output/` 写长 prose。
Didn't find tool you were looking for?