research-paper-writing
Write ML papers for NeurIPS/ICML/ICLR: design→submit.
Install
mkdir -p .claude/skills/research-paper-writing-toqsick && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/16870" && unzip -o skill.zip -d .claude/skills/research-paper-writing-toqsick && rm skill.zipInstalls to .claude/skills/research-paper-writing-toqsick
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Write ML papers for NeurIPS/ICML/ICLR: design→submit.About this skill
Research Paper Writing Pipeline
End-to-end pipeline for producing publication-ready ML/AI research papers targeting NeurIPS, ICML, ICLR, ACL, AAAI, and COLM. This skill covers the full research lifecycle: experiment design, execution, monitoring, analysis, paper writing, review, revision, and submission.
This is not a linear pipeline — it is an iterative loop. Results trigger new experiments. Reviews trigger new analysis. The agent must handle these feedback loops.
<!-- ascii-guard-ignore -->┌─────────────────────────────────────────────────────────────┐
│ RESEARCH PAPER PIPELINE │
│ │
│ Phase 0: Project Setup ──► Phase 1: Literature Review │
│ │ │ │
│ ▼ ▼ │
│ Phase 2: Experiment Phase 5: Paper Drafting ◄──┐ │
│ Design │ │ │
│ │ ▼ │ │
│ ▼ Phase 6: Self-Review │ │
│ Phase 3: Execution & & Revision ──────────┘ │
│ Monitoring │ │
│ │ ▼ │
│ ▼ Phase 7: Submission │
│ Phase 4: Analysis ─────► (feeds back to Phase 2 or 5) │
│ │
└─────────────────────────────────────────────────────────────┘
When To Use This Skill
Use this skill when:
- Starting a new research paper from an existing codebase or idea
- Designing and running experiments to support paper claims
- Writing or revising any section of a research paper
- Preparing for submission to a specific conference or workshop
- Responding to reviews with additional experiments or revisions
- Converting a paper between conference formats
- Writing non-empirical papers — theory, survey, benchmark, or position papers
- Designing human evaluations for NLP, HCI, or alignment research
- Preparing post-acceptance deliverables — posters, talks, code releases
Core Philosophy
- Be proactive. Deliver complete drafts, not questions. Scientists are busy — produce something concrete they can react to, then iterate.
- Never hallucinate citations. AI-generated citations have ~40% error rate. Always fetch programmatically. Mark unverifiable citations as
[CITATION NEEDED]. - Paper is a story, not a collection of experiments. Every paper needs one clear contribution stated in a single sentence. If you can't do that, the paper isn't ready.
- Experiments serve claims. Every experiment must explicitly state which claim it supports. Never run experiments that don't connect to the paper's narrative.
- Commit early, commit often. Every completed experiment batch, every paper draft update — commit with descriptive messages. Git log is the experiment history.
Proactivity and Collaboration
Default: Be proactive. Draft first, ask with the draft.
| Confidence Level | Action |
|---|---|
| High (clear repo, obvious contribution) | Write full draft, deliver, iterate on feedback |
| Medium (some ambiguity) | Write draft with flagged uncertainties, continue |
| Low (major unknowns) | Ask 1-2 targeted questions via clarify, then draft |
| Section | Draft Autonomously? | Flag With Draft |
|---|---|---|
| Abstract | Yes | "Framed contribution as X — adjust if needed" |
| Introduction | Yes | "Emphasized problem Y — correct if wrong" |
| Methods | Yes | "Included details A, B, C — add missing pieces" |
| Experiments | Yes | "Highlighted results 1, 2, 3 — reorder if needed" |
| Related Work | Yes | "Cited papers X, Y, Z — add any I missed" |
Block for input only when: target venue unclear, multiple contradictory framings, results seem incomplete, explicit request to review first.
Phase Overview
Eight phases, each detailed in its own reference file. Each reference has the same heading convention: # Phase N: Title.
| # | Phase | Goal | Reference |
|---|---|---|---|
| 0 | Project Setup | Establish workspace, identify contribution | phase0-setup.md |
| 1 | Literature Review | Find papers, gather verified citations (never hallucinate BibTeX) | phase1-literature.md |
| 2 | Experiment Design | Map claims → experiments, define baselines & evaluation protocol | phase2-experiment-design.md |
| 3 | Execution & Monitoring | Run reliably, recover from failures, track via cron + journal | phase3-execution.md |
| 4 | Result Analysis | Statistics, story, figures; write experiment_log.md as bridge to writing | phase4-analysis.md |
| 5 | Paper Drafting | Narrative principle, sections, LaTeX preamble, TikZ, algorithm2e, latexdiff | phase5-drafting.md |
| 6 | Self-Review & Revision | Ensemble + VLM + claim-verification passes; rebuttal writing | phase6-review.md |
| 7 | Submission Preparation | Anonymize, validate, compile, submit; covers Phase 8 + workshop + paper types | phase7-submission.md |
Cross-cutting reference docs (used across phases)
Note: Diese cross-cutting reference docs sind als zukünftige Erweiterungen geplant. Die Inhalte zu writing quality, citations, checklists, reviewer guidelines, experiment patterns, autoreason, human evaluation, paper types und sources sind aktuell in den jeweiligen Phase-Referenzen (
references/phaseN-*.md) inline eingebettet. Beim späteren Ausbau können diese Docs aus den Phase-Files extrahiert werden.
LaTeX templates live in templates/ (NeurIPS 2025, ICML 2026, ICLR 2026, ACL, AAAI 2026, COLM 2025). See templates/README.md for compilation setup.
Common Pitfalls (Top Warnings)
Never hallucinate citations. AI-generated BibTeX has ~40% error rate. Always fetch via DOI programmatically and mark unverifiable ones as
[CITATION NEEDED].
Every experiment must map to a claim. No orphan experiments. If you can't point to the paper claim it supports, don't run it.
Read papers as a story, not a list. Related work is grouped by methodology, not paper-by-paper. ("One line of work uses X [refs] whereas we use Y because...")
Never copy LaTeX preambles between templates. When converting venues, start fresh from the target template and copy only content.
Commit experiments and drafts continuously. Git log is the experiment history. Use
experiment_journal.jsonlto track the reasoning tree (hypothesis → result → next-step), not just file changes.
Simulated reviews need negative bias. LLMs default to positive; explicitly instruct reviewers to flag weaknesses and not give "the benefit of the doubt."
Verify every claim in the draft against the actual result files. Delegate this to a fresh sub-agent with no shared memory to prevent confirmation bias.
See references/phase6-review.md for the full review protocol and references/phase4-analysis.md for handling negative/null results.
Hermes Agent Integration
This skill is designed for the Hermes agent — uses terminal, process, execute_code, read_file/write_file/patch, web_search/web_extract, delegate_task, todo, memory, cronjob, clarify, and send_message.
Supersedes ml-paper-writing (all its content plus the experiment/analysis pipeline and autoreason methodology).
Related skills
| Skill | When to Use | How to Load |
|---|---|---|
| arxiv | Phase 1: arXiv search, BibTeX, Semantic Scholar | skill_view("arxiv") |
| subagent-driven-development | Phase 5: parallel section writing + 2-stage review | skill_view("subagent-driven-development") |
| plan | Phase 0: structured plans before execution | skill_view("plan") |
| qmd | Phase 1: local knowledge bases (BM25+vector) | skill_manage("install", "qmd") |
| diagramming | Phase 4-5: Excalidraw architecture diagrams | skill_view("diagramming") |
| data-science | Phase 4: Jupyter live kernel for analysis | skill_view("data-science") |
Standard patterns
Parallel section drafting — each delegate_task runs as a fresh subagent with no shared context; include all needed info in the prompt.
Experiment monitoring loop:
terminal("ps aux | grep <pattern>")
→ terminal("tail -30 <logfile>")
→ terminal("ls results/")
→ execute_code("analyze results JSON, compute metrics")
→ terminal("git add -A && git commit -m '<msg>' && git push")
→ send_message("Experiment complete: <summary>")
Session startup: todo("list") → memory("read") → git log --oneline -10 → ps aux | grep python → ls results/ | tail -20 → report status.
Notify vs [SILENT]: notify on experiment completion / unexpected finding / draft ready / deadline approaching; stay [SILENT] for in-progress experiments and routine no-change checks.
Use patch (not write_file) for targeted edits to large .tex files.
Reviewer Evaluation Criteria
| Criterion | What They Check |
|---|---|
| Quality | Technical soundness, well-supported claims, fair baselines |
| Clarity | Clear writing, reproducible by experts, consistent notation |
| Significance | Community impact, advances understanding |
| Originality | New insights (doesn't require new method) |
NeurIPS 6-point scale: 6 = Strong Accept → 1 = Strong Reject. See references/reviewer-guidelines.md for detailed guidelines and re
Content truncated.