Run this repo’s Units+Checkpoints research pipelines end-to-end (survey/brief/paper-review/evidence-review/idea/tutorial/graduate-paper), with workspaces + checkpoints. **Trigger**: run pipeline, kickoff, 继续执行, 自动跑, 写一篇, survey/brief/review/调研/教程/系统综述/审稿. **Use when**: 用户希望端到端跑流程(创建 `workspaces/<name>/`、生成/执行 `UNITS.csv`、遇到 HUMAN checkpoint 停下等待)。 **Skip if**: 用户明确要手工逐条执行(用 `unit-executor`),或你不应自动推进到 prose 阶段。 **Network**: depends on selected pipeline (arXiv/PDF/citation verification may need network; offline import supported where available). **Guardrail**: 必须尊重 checkpoints(无 Approve 不写 prose);遇到 HUMAN 单元必须停下等待;禁止在 repo root 创建 workspace 工件。
Installation
Details
Usage
After installing, this skill will be available to your AI coding assistant.
Verify installation:
npx agent-skills-cli listSkill Instructions
name: research-pipeline-runner
description: |
Run this repo’s Units+Checkpoints research pipelines end-to-end (survey/brief/paper-review/evidence-review/idea/tutorial/graduate-paper), with workspaces + checkpoints.
Trigger: run pipeline, kickoff, 继续执行, 自动跑, 写一篇, survey/brief/review/调研/教程/系统综述/审稿.
Use when: 用户希望端到端跑流程(创建 workspaces/<name>/、生成/执行 UNITS.csv、遇到 HUMAN checkpoint 停下等待)。
Skip if: 用户明确要手工逐条执行(用 unit-executor),或你不应自动推进到 prose 阶段。
Network: depends on selected pipeline (arXiv/PDF/citation verification may need network; offline import supported where available).
Guardrail: 必须尊重 checkpoints(无 Approve 不写 prose);遇到 HUMAN 单元必须停下等待;禁止在 repo root 创建 workspace 工件。
Research Pipeline Runner
Goal: let a user trigger a full pipeline with one natural-language request, while keeping the run auditable (Units + artifacts + checkpoints).
This skill is coordination:
- semantic work is done by the relevant skills’
SKILL.md - scripts are deterministic helpers (scaffold/validate/compile), not the author
Inputs
- User goal (one sentence is enough), e.g.:
- “给我写一个 agent 的 arxiv-survey-latex”
- Optional:
- explicit pipeline path (e.g.,
pipelines/arxiv-survey-latex.pipeline.md) - constraints (time window, language: EN/中文, evidence_mode: abstract/fulltext)
- explicit pipeline path (e.g.,
Outputs
- A workspace under
workspaces/<name>/containing:STATUS.md,GOAL.md,PIPELINE.lock.md,UNITS.csv,CHECKPOINTS.md,DECISIONS.md- pipeline-specific artifacts (papers/outline/sections/output/latex)
Non-negotiables
- Use
UNITS.csvas the execution contract; one unit at a time. - Respect checkpoints (
CHECKPOINTS.md): no long prose until required approvals are recorded inDECISIONS.md(survey default:C2). - Stop at HUMAN checkpoints and wait for explicit sign-off.
- Never create workspace artifacts in the repo root; always use
workspaces/<name>/.
Decision tree: pick a pipeline
User goal → choose:
- Survey/综述/调研 + Markdown draft →
pipelines/arxiv-survey.pipeline.md - Survey/综述/调研 + PDF output →
pipelines/arxiv-survey-latex.pipeline.md - Research brief / rapid review / 速览 →
pipelines/research-brief.pipeline.md - Paper review / paper critique / 审稿 →
pipelines/paper-review.pipeline.md - Evidence review / systematic review / 系统综述 →
pipelines/evidence-review.pipeline.md - Idea finding / 选题 / 点子 / 找方向 →
pipelines/idea-brainstorm.pipeline.md - Tutorial/教程 →
pipelines/source-tutorial.pipeline.md
Recommended run loop (skills-first)
- Initialize workspace (C0):
- create
workspaces/<name>/ - write
GOAL.md, lock pipeline (PIPELINE.lock.md), seedqueries.md
- Execute units sequentially:
- follow each unit’s
SKILL.mdto produce the declared outputs - only mark
DONEwhen acceptance criteria are satisfied and outputs exist
- Stop at HUMAN checkpoints:
- default survey checkpoint is
C2(scope + outline) - write a concise approval request in
DECISIONS.mdand wait
- Writing-stage self-loop (when drafts look thin/template-y):
- prefer local fixes over rewriting everything:
writer-context-pack(C4→C5 bridge) makes packs debuggablesubsection-writerwrites per-file unitswriter-selfloopfixes only failingsections/*.mdparagraph-curator/style-harmonizer/opener-variatorconverge structure and de-template the proseevaluation-anchor-checkeris the late section-level numeric hygiene sweep before mergedraft-polisherremoves generator voice without changing citation keys
Strict-mode behavior (by design)
In --strict runs, several semantic C3/C4 artifacts are treated as scaffolds until explicitly marked refined.
This is intentional: it prevents bootstrap JSONL from silently passing into C5 writing (a major source of hollow/templated prose).
Create these markers only after you have manually refined/spot-checked the artifacts:
outline/subsection_briefs.refined.okoutline/chapter_briefs.refined.okoutline/evidence_bindings.refined.okoutline/evidence_drafts.refined.okoutline/anchor_sheet.refined.okoutline/writer_context_packs.refined.ok
The runner may BLOCK even if the JSONL exists; add the marker after refinement, then rerun/resume the unit.
- Finish:
- merge → audit → (optional) LaTeX scaffold/compile
Optional CLI helpers (debug only)
- Kickoff + run (optional; convenient, not required):
python scripts/pipeline.py kickoff --topic "<topic>" --pipeline <pipeline-name> --run --strict - Resume:
python scripts/pipeline.py run --workspace <ws> --strict - Approve checkpoint:
python scripts/pipeline.py approve --workspace <ws> --checkpoint C2 - Mark refined unit:
python scripts/pipeline.py mark --workspace <ws> --unit-id <U###> --status DONE --note "LLM refined"
Handling common blocks
- HUMAN approval required: summarize produced artifacts, ask for approval, then record it and resume.
- Quality gate blocked (
output/QUALITY_GATE.mdexists): treat current outputs as scaffolding; refine per the unit’sSKILL.md; markDONE; resume. - No network: use offline imports (
papers/imports/orarxiv-search --input). - Weak coverage: broaden queries or reduce/merge subsections (
outline-budgeter) before writing.
Quality checklist
-
UNITS.csvstatuses reflect actual outputs (noDONEwithout outputs). - No prose is written unless
DECISIONS.mdexplicitly approves it. - The run stops at HUMAN checkpoints with clear next questions.
- In strict mode, scaffold/stub outputs do not get marked
DONEwithout refinement.
More by WILLOSCAR
View allGenerate and verify BibTeX entries from paper notes, writing `citations/ref.bib` and `citations/verified.jsonl`. **Trigger**: citation, BibTeX, ref.bib, verified.jsonl, references, 引用, 参考文献. **Use when**: 已有 `papers/paper_notes.jsonl`,需要为 prose/LaTeX 准备可追溯的引用(每条都有 url/date/title 验证记录)。 **Skip if**: 还没有 paper notes(或本次产出不需要引用/参考文献)。 **Network**: 自动验证通常需要网络;无网络时可先 record,再标注 needs manual verification。 **Guardrail**: 每个 BibTeX entry 必须对应一条 `citations/verified.jsonl` 记录;prose 只能使用已存在于 `citations/ref.bib` 的 citation keys。
Write the tutorial content (`output/TUTORIAL.md`) from an approved module plan, including exercises and answer outlines. **Trigger**: write tutorial, tutorial modules, 教程写作, TUTORIAL.md. **Use when**: tutorial pipeline 的写作阶段(C3),且 `DECISIONS.md` 已记录 HUMAN 对 scope/running example 的批准(C2)。 **Skip if**: module plan 未完成/未批准(先跑 `module-planner`/`exercise-builder` 并通过 Approve C2)。 **Network**: none. **Guardrail**: 只写已批准范围;保持 running example 一致;每模块包含练习与答案要点。
Use when a reader-facing deliverable exists and needs a deterministic PASS/FAIL quality gate. **Trigger**: self loop, self-loop, polish deliverable, quality gate, fix-on-fail, 收敛, 自循环, 质量门. **Use when**: A pipeline has produced a reader-facing deliverable (`output/*.md`) and you want deterministic convergence to PASS. **Skip if**: You are still pre-approval for prose or the upstream evidence/structure artifacts are missing. **Network**: none. **Guardrail**: Do not invent papers/citations/results. Only use in-scope inputs already present in the workspace.
Download PDFs (when available) and extract plain text to support full-text evidence, writing `papers/fulltext_index.jsonl` and `papers/fulltext/*.txt`. **Trigger**: PDF download, fulltext, extract text, papers/pdfs, 全文抽取, 下载PDF. **Use when**: `queries.md` 设置 `evidence_mode: fulltext`(或你明确需要全文证据)并希望为 paper notes/claims 提供更强 evidence。 **Skip if**: `evidence_mode: abstract`(默认);或你不希望进行下载/抽取(成本/权限/时间)。 **Network**: fulltext 下载通常需要网络(除非你手工提供 PDF 缓存在 `papers/pdfs/`)。 **Guardrail**: 缓存下载到 `papers/pdfs/`;默认不覆盖已有抽取文本(除非显式要求重抽)。
