research-pipeline
Full end-to-end research pipeline: from a broad research direction through idea discovery, experiments, and review all the way to a polished paper PDF
Install / Use
npx skills add wanshuiyin/Auto-claude-code-research-in-sleep --skill research-pipelineInstalls into whichever agent you are using.
SKILL.md
Installable skill definition
Quality Score
Category
AutomationSupported Platforms
Our assessment of research-pipeline
research-pipeline scores 98/100 on our quality scale, 80th of 1,943 Automation skills we index (top 5%).
Its SKILL.md is 22 KB long, well organised into 21 sections with 13 code examples: a thorough specification that gives an agent plenty to work with.
With 16,644 GitHub stars, it is one of the more widely adopted skills in the catalogue.
Maintenance, license and trust
- The repository was last updated 9 days ago, so research-pipeline is actively maintained.
- It is released under the MIT license, a permissive license that allows use, modification and commercial use with attribution.
- Its trust signals score 100/100, with no cautions. These come from repository metadata, not a code audit — read the skill file before letting an agent act on it.
research-pipeline compared with similar skills
All 4 of these similar skills score higher than research-pipeline; compare them before choosing.
| Skill | Score | Stars | Updated | Format |
|---|---|---|---|---|
| research-pipeline (this skill)by wanshuiyin | 98 | 16.6k | 9d ago | SKILL.md |
| Agent-Reachby Panniantong | 100 | 85.8k | 12d ago | CLAUDE.md |
| headroomby headroomlabs-ai | 100 | 74.0k | 1d ago | CLAUDE.md |
| rufloby ruvnet | 100 | 73.4k | today | CLAUDE.md |
| CowAgentby zhayujie | 100 | 47.1k | today | CLAUDE.md |
Frequently asked questions
- How do I install research-pipeline?
- Run
npx skills add wanshuiyin/Auto-claude-code-research-in-sleep --skill research-pipeline. The install tabs above show the steps for each supported agent. - Which AI agents does research-pipeline work with?
- It is written for OpenAI Codex, as a SKILL.md file. Other agents that read the same format can often use it too.
- Is research-pipeline safe to use?
- It is MIT-licensed and scores 100/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
- Is research-pipeline still maintained?
- The repository was last updated 9 days ago, so research-pipeline is actively maintained.
Skill content
View source on GitHubname: research-pipeline description: "Full end-to-end research pipeline: from a broad research direction through idea discovery, experiments, and review all the way to a polished paper PDF. Use when user says "全流程", "full pipeline", "从找idea到投稿", "end-to-end research", or wants the complete autonomous research lifecycle." argument-hint: "[research-direction] [— resume <run_id>]" allowed-tools: Bash(*), Read, Write, Edit, Grep, Glob, WebSearch, WebFetch, Skill, mcp__codex__codex, mcp__codex__codex-reply
Full Research Pipeline: Idea → Experiments → Submission
⏱ External cadence: non-judgmental heartbeat only. An overnight
/loop/CronCreateheartbeat may wake, detect a stalled phase (no progress, dead process, blocked on a freed resource) and nudge it forward — it may NEVER decide the work is good (paper good enough, proof holds, claim supported). Every such verdict stays on its own skill's internal cadence and terminates in the cross-model jury. A heartbeat may say "keep going," never "good enough." Seeshared-references/external-cadence.md(overnight-pipeline rule + stall detection & forced structural pivot). At heartbeat startup, touch the run state first each tick and register this run with the watchdoglooptype (so a silent death surfaces as STALE); unregister on completion. The watchdog only detects — it never acquits. Each tick also record the new-finding count via theiteration_log.pyhelper (resolve through the canonical.aris/tools → tools → $ARIS_REPO/tools → $ARIS_REPO/tools via ~/.aris/repochain, integration-contract §2; warn-and-skip if unresolved):python3 "$ITER_LOG" note <root> <run_id> <phase> <n>. On the returnedpivot=structural(stale ≥ 2) the nudge must change a STRUCTURAL constraint and pick an untried direction; onpivot=human(stale ≥ 4) flag for attention. Counting only — never a quality verdict.
End-to-end autonomous research workflow for: $ARGUMENTS
Constants
-
AUTO_PROCEED = true — When
true, every selection checkpoint is informational: report the choice and continue in the same turn. Whenfalse, ask for explicit user confirmation and end the turn at the checkpoint. -
ARXIV_DOWNLOAD = false — When
true,/research-litdownloads the top relevant arXiv PDFs during literature survey. Whenfalse(default), only fetches metadata via arXiv API. Passed through to/idea-discovery→/research-lit. -
HUMAN_CHECKPOINT = false — When
true, the auto-review loops (Stage 3) pause after each round's review to let you see the score and provide custom modification instructions before fixes are implemented. Whenfalse(default), loops run fully autonomously. Passed through to/auto-review-loop. -
REVIEWER_DIFFICULTY = medium — How adversarial the reviewer is.
medium(default): standard MCP review.hard: adds reviewer memory + debate protocol.nightmare: GPT reads repo directly viacodex exec+ memory + debate. Passed through to/auto-review-loop. -
CODE_REVIEW = true — GPT-6-Astra xhigh reviews experiment code before deployment. Catches logic bugs before wasting GPU hours. Set
falseto skip. Passed through to/experiment-bridge. -
BASE_REPO = false — GitHub repo URL to use as base codebase. When set,
/experiment-bridgeclones the repo first and implements experiments on top of it. Whenfalse(default), writes code from scratch or reuses existing project files. Passed through to/experiment-bridge. -
COMPACT = false — When
true, generates compact summary files for short-context models and session recovery. Passed through to/idea-discoveryand/experiment-bridge. -
AUTO_WRITE = false — When
true, automatically invoke Workflow 3 (/paper-writing) after Stage 4.VENUEis needed only when Stage 5 begins — a missing venue defers paper writing; it never blocks Stages 1-4. Whenfalse(default), Stage 4 generatesNARRATIVE_REPORT.mdand stops — user invokes/paper-writingmanually. -
VENUE = (unset) — Target venue for paper writing; bound only when Stage 5 begins. Options:
ICLR,NeurIPS,ICML,CVPR,ACL,AAAI,ACM,IEEE_CONF,IEEE_JOURNAL. No default: a missing venue defers paper writing — it never blocks Stages 1-4 and is never guessed. -
RENDER_HTML = true — When
true(default), auto-renderNARRATIVE_REPORT.mdto HTML at Stage 4 completion via/render-html. Uses--no-review(this is an internal handoff doc to/paper-writing, not a reviewer-facing final artifact — the upstream Stage 3 auto-review loop already cross-model-reviewed the claims). Setfalseto skip, or pass— render html: false. Non-blocking: if/render-htmlfails or Codex MCP is unavailable, log the failure and continue — the HTML view is a nice-to-have, not a Stage 4 prerequisite. -
RESUMABLE = true — When
true(default), the pipeline records per-stage state to.aris/runs/<run_id>.jsonso a crashed/interrupted run can resume via/research-pipeline — resume <run_id>instead of restarting. Stage status splitsdone(executor finished writing) fromaccepted(the stage's cross-model gate / deterministic verifier passed); resume re-validates anydone-but-unaccepted stage. Seeshared-references/resumable-runs.md.
💡 Override via argument, e.g.,
/research-pipeline "topic" — AUTO_PROCEED: false, human checkpoint: true, difficulty: nightmare, code review: false, base repo: https://github.com/org/project, auto_write: true, venue: NeurIPS.
Checkpoint execution rule
Resolve AUTO_PROCEED once from $ARGUMENTS before Stage 1 and pass that
resolved value to nested workflows.
AUTO_PROCEED=trueis non-blocking. A checkpoint is a progress update, not a question. State the result and the automatically selected next action, then continue executing in the same turn. Do not ask for confirmation, request user input, sleep, wait for silence, or end the turn at a checkpoint.AUTO_PROCEED=falseis blocking. Present the options, ask the user, and end the turn. Resume only after an explicit reply.
Never implement auto-proceed as “ask, then continue if there is no response.” Once a turn ends, silence cannot resume the pipeline. The user can still interrupt a non-blocking run at any time.
This rule governs only AUTO_PROCEED-controlled selection checkpoints. If the
user explicitly enables a Feishu interactive gate, that external approval
or reply is an intentional blocking exception; wait for that user-controlled
gate rather than treating it as a silence timeout. Feishu off/push-only modes
remain non-blocking under AUTO_PROCEED=true.
Overview
This skill chains the entire research lifecycle into a single pipeline:
/idea-discovery → /experiment-bridge → /auto-review-loop → /paper-writing (optional)
├── Workflow 1 ──┤├── Workflow 1.5 ──┤├── Workflow 2 ───┤ ├── Workflow 3 ──┤
It orchestrates up to four major workflows in sequence. Workflow 3 (paper writing) is optional and controlled by AUTO_WRITE.
Resumable runs (— resume <run_id>)
This pipeline is long and can fail mid-run; it tracks per-stage state via
run_state.py so you can resume instead of restarting (see
shared-references/resumable-runs.md).
Skip this whole section if RESUMABLE = false.
Resolve the helper via the canonical chain (integration-contract §2):
.aris/tools/run_state.py → tools/run_state.py → $ARIS_REPO/tools/run_state.py
→ $ARIS_REPO/tools/run_state.py via ~/.aris/repo
(warn-and-skip if unresolved — never block the pipeline).
Phases, in order: idea-discovery, experiment-bridge, auto-review-loop, summary, paper-writing.
-
At start: if
— resume <run_id>was passed, runrun_state.py resume <root> <run_id>— it prints the first non-acceptedphase; begin the pipeline at that stage (re-run arunning/failedstage; re-audit adone-but-unaccepted stage). Otherwise derive<run_id>from the direction slug + date andrun_state.py start <root> <run_id> --phases "idea-discovery,experiment-bridge,auto-review-loop,summary,paper-writing". -
Per stage:
set <run_id> <phase> runningon entry;set <run_id> <phase> done --artifact <path>once the stage's artifact is written. -
Mark
acceptedONLY after the stage's gate passes — never on the executor's own say-so (run_state.py acceptrequires a recorded verdict id + reviewer):| phase | what sets
accepted| record as reviewer | |-------|----------------------|--------------------| |idea-discovery| Gate 1 cross-model jury / novelty-check passed |codex-gpt-6-astra+ thread id | |experiment-bridge| experiments actually ran (jobs completed) — deterministic |deterministic:experiment-bridge| |auto-review-loop| the loop hit its positive STOP (score>=6 AND verdict∈{ready,almost}— codex's verdict) |codex-gpt-6-astra+ final review trace id | |summary|NARRATIVE_REPORT.mdwritten (+ rendered ifRENDER_HTML) — deterministic |deterministic:summary| |paper-writing| submission audits passed (verify_paper_audits.shexit 0) — deterministic |deterministic:verify_paper_audits.sh|
If AUTO_WRITE = false (default), paper-writing is not part of this run:
after summary is accepted, set <run_id> paper-writing skipped so resume
reports COMPLETE instead of pointing forever at a pending stage. Record each
accept verdict_id as a durable handle — the codex thread/trace id, or the
path/sha of the deterministic verifier's report (e.g. the verify_paper_audits.sh
output JSON) — not just the reviewer label.
A stage left done (gate failed/ambiguous, or the run crashed before the gate)
is re-validated on the next resume — the acceptance obligation is never skipped.
Overnight heartbeat: stall detection → forced structural pivot
Only when an unattended heartbeat is driving this run (overnight /loop /
CronCreate). Skip otherwise. Doctrine + rationale:
shared-references/external-cadence.md
→ "Stall detection & forced structural pivot". This is a Type-A signal — it counts
findings and changes direction, never judges quality.
Resolve the helper via the canonical chain (integration-contract §2), warn-and-skip if unresolved (never block the run):
ITER_LOG=".aris/tools/iteration_log.py"
[ -f "$ITER_LOG" ] || ITER_LOG="tools/iteration_log.py"
[ -f "$ITER_LOG" ] || ITER_LOG="${ARIS_REPO:-}/tools/iteration_log.py"
[ -f "$ITER_LOG" ] || { [ -z "${ARIS_REPO:-}" ] && [ -f "$HOME/.aris/repo" ] && ARIS_REPO="$(cat "$HOME/.aris/repo" 2>/dev/null)"; } || true
[ -f "$ITER_LOG" ] || ITER_LOG="${ARIS_REPO:-}/tools/iteration_log.py"
[ -f "$ITER_LOG" ] || { echo "WARN: iteration_log.py not resolved; skipping stall detection" >&2; ITER_LOG=""; }
Then, each heartbeat tick, record how many concrete new findings the current
stage produced and read the returned pivot:
[ -n "$ITER_LOG" ] && python3 "$ITER_LOG" note "$ROOT" "$RUN_ID" "$STAGE" "$N_NEW_FINDINGS"
# → {"stale_count": N, "pivot": "none|structural|human"}
Act on pivot:
none— keep going.structural(stale ≥ 2) — the next nudge must change a structural constraint (frame / objective / data / representation), not a tactical parameter, and pick a direction different from every one already tried. Record the chosen frame so future ticks can avoid it:python3 "$ITER_LOG" note "$ROOT" "$RUN_ID" "$STAGE" 0 --direction "<the new frame>".human(stale ≥ 4) — stop nudging blindly; flag for human attention (escalate, do not silently abandon).
The heartbeat may say "keep going / change direction," never "good enough" — every
quality verdict still terminates in the cross-model jury (acceptance-gate.md).
Pipeline
Stage 1: Idea Discovery (Workflow 1)
If `RESEAR
Truncated for display — read the full file on GitHub.
Related Skills
Agent-Reach
85.8kGive your AI agent eyes to see the entire internet. Read & search Twitter, Reddit, YouTube, GitHub, Bilibili, XiaoHongShu — one CLI, zero API fees.
headroom
74.0kCompress tool outputs, logs, files, and RAG chunks before they reach the LLM. 20% fewer tokens for coding agents, 60-95% fewer tokens for JSON, same answers. Library, proxy, MCP server.
ruflo
73.4k🌊 The original agent harness. Deploy intelligent multi-player swarms, coordinate autonomous workflows, and build conversational AI systems. Features adaptive memory, self-learning intelligence, federation, vector RAG integration, and native Claude Code / Codex / Hermes and many more Integrated
CowAgent
47.1kOpen-source super AI assistant & Agent Harness. Plans tasks, runs tools and skills, self-evolves with memory and knowledge. Multi-agent, multi-model, multi-channel. Lightweight, extensible, one-line install.
Languages
Trust signals
From repository metadata: license, adoption, age and documentation. Not a code audit — see the Safety scan above for what the skill file itself contains.
