Paper Writing
Workflow 3: Full paper writing pipeline that goes from a narrative report to a polished, submission-ready PDF. Use when user says \"写论文全流程\", \"write paper pipeline\", \"从报告到PDF\", \"paper writing\", or wants the complete paper generation workflow.
- Skill ID
- wanshuiyin/auto-claude-code-research-in-sleep/paper-writing
- Publisher
- wanshuiyin
- Repository
- auto-claude-code-research-in-sleep
- Installs
- 0
- Files
- 1
- Synced
- Sep 23, 2026
Open any RiverX project, open the Skills panel in the chat, and search for this identifier. The files are fetched from the source repository at install time.
wanshuiyin/auto-claude-code-research-in-sleep/paper-writingInstalls these files- SKILL.md
What this skill tells the agent
Workflow 3: Paper Writing Pipeline
Orchestrate a complete paper writing workflow for: $ARGUMENTS
Overview
This skill chains five sub-skills into a single automated pipeline:
/paper-plan → /paper-figure → /paper-write → /paper-compile → /auto-paper-improvement-loop
(outline) (plots) (LaTeX) (build PDF) (review & polish ×2)Each phase builds on the previous one's output. The final deliverable is a polished, reviewed paper/ directory with LaTeX source and compiled PDF.
In this hybrid pack, the pipeline itself is unchanged, but paper-plan and paper-write use Orchestra-adapted shared references for stronger story framing and prose guidance.
Constants
- VENUE = `ICLR` — Target venue. Options:
ICLR,NeurIPS,ICML,CVPR,ACL,AAAI,ACM,IEEE_JOURNAL(IEEE Transactions / Letters),IEEE_CONF(IEEE conferences). Affects style file, page limit, citation format. - MAX_IMPROVEMENT_ROUNDS = 2 — Number of review→fix→recompile rounds in the improvement loop.
- REVIEWER_MODEL = `gpt-6-astra` — Model used via Codex MCP for plan review, figure review, writing review, and improvement loop.
- AUTO_PROCEED = true — Auto-continue between phases. Set
falseto pause and wait for user approval after each phase. - HUMAN_CHECKPOINT = false — When
true, the improvement loop (Phase 5) pauses after each round's review to let you see the score and provide custom modification instructions. Whenfalse(default), the loop runs fully autonomously. Passed through to/auto-paper-improvement-loop. - ILLUSTRATION = `figurespec` — Architecture/illustration generator for Phase 2b:
figurespec(default, deterministic JSON→SVG via/figure-spec, best for architecture/workflow/topology),gemini(AI-generated via/paper-illustration, best for qualitative method illustrations; needsGEMINI_API_KEY),codex-image2(AI-generated via/paper-illustration-image2through the local Codex native image bridge — no external API key, uses your ChatGPT Plus/Pro quota; experimental),mermaid(Mermaid syntax via/mermaid-diagram, free, best for flowcharts), orfalse(skip Phase 2b, manual only).
Override inline:/paper-writing "NARRATIVE_REPORT.md" — venue: NeurIPS, illustration: gemini, human checkpoint: trueIEEE example:/paper-writing "NARRATIVE_REPORT.md" — venue: IEEE_JOURNAL
Inputs
This pipeline accepts one of:
- `NARRATIVE_REPORT.md` (best) — structured research narrative with claims, experiments, results, figures
- Research direction + experiment results — the skill will help draft the narrative first
- Existing `PAPER_PLAN.md` — skip Phase 1, start from Phase 1.5 (the contract negotiation still runs; only resuming a genuine pre-1.5 legacy run may skip it, and then Phase 6.0's row 0 records "no contract")
The more detailed the input (especially figure descriptions and quantitative results), the better the output.
Optional: Style reference (— style-ref: <source>, opt-in)
Lets the user steer structural style (section ordering, theorem density, sentence cadence, figure density, bibliography style) of the generated paper toward a reference paper they admire. Default OFF — when the user does not pass `— style-ref`, do nothing differently from before.
When — style-ref: <source> is in $ARGUMENTS, run the helper FIRST, before Phase 1 (paper-plan):
# Resolve $STYLE_HELPER via the canonical strict-safe chain (see
# shared-references/integration-contract.md §2). Policy A — gate:
# unresolved helper means --style-ref cannot be satisfied, so abort.
cd "$(git rev-parse --show-toplevel 2>/dev/null || pwd)" || exit 1
if [ -z "${ARIS_REPO:-}" ] && [ -f .aris/installed-skills.txt ]; then
ARIS_REPO=$(awk -F'\t' '$1=="repo_root"{print $2; exit}' .aris/installed-skills.txt 2>/dev/null) || true
fi
if [ -z "${ARIS_REPO:-}" ] && [ -f "$HOME/.aris/repo" ]; then
ARIS_REPO=$(cat "$HOME/.aris/repo" 2>/dev/null) || true
fi
STYLE_HELPER=".aris/tools/extract_paper_style.py"
[ -f "$STYLE_HELPER" ] || STYLE_HELPER="tools/extract_paper_style.py"
[ -f "$STYLE_HELPER" ] || { [ -n "${ARIS_REPO:-}" ] && STYLE_HELPER="$ARIS_REPO/tools/extract_paper_style.py"; }
[ -f "$STYLE_HELPER" ] || {
echo "ERROR: extract_paper_style.py not resolved at .aris/tools/, tools/, \$ARIS_REPO/tools/, or via ~/.aris/repo." >&2
echo " Fix: rerun bash tools/install_aris.sh or smart_update.sh (refreshes ~/.aris/repo), export ARIS_REPO, or copy the helper to tools/." >&2
echo " --style-ref cannot be satisfied; aborting." >&2
exit 1
}
STYLE_STATUS=0
CACHE=$(python3 "$STYLE_HELPER" --source "<source>") || STYLE_STATUS=$?
case "$STYLE_STATUS" in
0) ;; # share $CACHE/style_profile.md with downstream WRITER phases only
2) echo "warning: style-ref skipped (missing optional dep)" >&2 ;;
3) echo "error: --style-ref source failed; aborting pipeline" >&2 ; exit 1 ;;
*) echo "error: helper failed unexpectedly; aborting pipeline" >&2 ; exit 1 ;;
esacThen forward — style-ref: <source> only to the writer-side sub-skills:
/paper-plan(Phase 1) — outline structure/paper-write(Phase 3) — section-by-section prose/paper-illustration(Phase 2b) — figure structural matching, optional
Sources accepted: local TeX dir / file, local PDF, arXiv id, http(s) URL. Overleaf URLs/IDs are rejected — clone via /overleaf-sync setup <id> first and pass the local clone path.
Strict rules (full contract in tools/extract_paper_style.py docstring):
- Use
style_profile.mdas structural guidance only. Match section-count tendency, theorem density, caption-length distribution, sentence cadence, math display ratio, citation style. - Never copy prose, claims, examples, or terminology from anything reachable through the cache.
- Never pass `— style-ref` (or the cache contents) to reviewer / auditor sub-skills — Phase 4.5 (
/proof-checker), Phase 4.7 / 5.5 (/paper-claim-audit), Phase 5 (/auto-paper-improvement-loopreviewer), Phase 5.8 (/citation-audit) MUST run on the artifact alone. Cross-model review independence (../shared-references/reviewer-independence.md).
Pipeline
Phase 0: Assurance Setup
Resolve the active assurance level and persist it so Phase 6's external verifier reads the same value. Run once at pipeline start, before Phase 1.
Resolution order (first match wins):
- Explicit
— assurance: draft | submissionin$ARGUMENTS - Derived from
— effort:
lite/balanced→draft(default, zero change from current behavior)max/beast→submission
- Default:
draft
Action:
mkdir -p paper/.aris
echo "<resolved-level>" > paper/.aris/assurance.txt # draft or submissionWhat each level does downstream:
- `draft` — Existing behavior. Audits run only when their content detector matches (Phase 4.5 / 4.7 / 5.5 / 5.8). Missing artifacts are non-blocking. Silent-skip allowed.
- `submission` — The four mandatory audits (proof-checker, paper-claim-audit, citation-audit, kill-argument) are treated as load-bearing gates. Each sub-audit must emit its JSON artifact (PASS / WARN / FAIL / NOT_APPLICABLE / BLOCKED / ERROR) — never silent-skip. Phase 6 runs
verify_paper_audits.sh(canonical name; resolved per `shared-references/integration-contract.md` §2); a non-zero exit blocks the Final Report.
Escape hatch: a user wanting the old "beast = depth-only, no audit gate" can pass — effort: beast, assurance: draft explicitly. Legal but discouraged for actual submissions. See shared-references/assurance-contract.md for the full contract.
Announce the resolved level in-line before Phase 1:
📋 Assurance: <level> (derived from effort: <effort>)More from wanshuiyin
Use this skill in a project
Open any RiverX project, search the Skills panel for wanshuiyin/auto-claude-code-research-in-sleep/paper-writing, and install it in one click.
