Skip to main content

paper-write

Draft LaTeX paper section by section from an outline. Use when user says "写论文", "write paper", "draft LaTeX", "开始写", or wants to generate LaTeX content from a paper plan.

설치로 이동

소스 정보

저장소
wanshuiyin/Auto-claude-code-research-in-sleep
최근 소스 활동
2026년 9월 6일 17:32
감지된 SKILL.md 언어
영어
스타
16,461
포크
1,401

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

파일 탐색기
9 개 파일

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
name
paper-write
description
Draft LaTeX paper section by section from an outline. Use when user says "写论文", "write paper", "draft LaTeX", "开始写", or wants to generate LaTeX content from a paper plan.
argument-hint
[venue-or-section] [— style-ref: <source>]
allowed-tools
Bash(*), Read, Write, Edit, Grep, Glob, WebSearch, WebFetch, mcp__codex__codex, mcp__codex__codex-reply
# Paper Write: Section-by-Section LaTeX Generation Draft a LaTeX paper based on: **$ARGUMENTS** ## Constants - **REVIEWER_MODEL = `gpt-6-astra`** — Model used via Codex MCP for section review. Must be an OpenAI model. - **TARGET_VENUE = `ICLR`** — Default venue. Supported: `ICLR`, `NeurIPS`, `ICML`, `CVPR` (also ICCV/ECCV), `ACL` (also EMNLP/NAACL), `AAAI`, `ACM` (ACM MM, SIGIR, KDD, CHI, etc.), `IEEE_JOURNAL` (IEEE Transactions / Letters, e.g., T-PAMI, JSAC, TWC, TCOM, TSP, TIP), `IEEE_CONF` (IEEE conferences, e.g., ICC, GLOBECOM, INFOCOM, ICASSP). Determines style file and formatting. - **ANONYMOUS = true** — If true, use anonymous author block. Set `false` for camera-ready. Note: most IEEE venues do NOT use anonymous submission — set `false` for IEEE. - **MAX_PAGES = 9** — Main body page limit. For ML conferences: counts from first page to end of Conclusion section, references and appendix NOT counted. **For IEEE venues: references ARE counted toward the page limit.** Typical limits: IEEE journal = no strict limit (but 12-14 pages typical for Transactions, 4-5 for Letters), IEEE conference = 5-8 pages including references. - **DBLP_BIBTEX = true** — Fetch real BibTeX from DBLP/CrossRef instead of LLM-generated entries. Eliminates hallucinated citations. Zero install required. Set `false` to use legacy behavior (LLM search + `[VERIFY]` markers). ## Inputs 1. **PAPER_PLAN.md** — outline with claims-evidence matrix, section plan, figure plan (from `/paper-plan`) 2. **NARRATIVE_REPORT.md** — the research narrative (primary source of content) 3. **Generated figures** — PDF/PNG files in `figures/` (from `/paper-figure`) 4. **LaTeX includes** — `figures/latex_includes.tex` (from `/paper-figure`) 5. **Bibliography** — existing `.bib` file, or will create one If no PAPER_PLAN.md exists, ask the user to run `/paper-plan` first or provide a brief outline. ## Orchestra-Guided Writing Overlay Keep the existing `insleep` workflow, file layout, and defaults. Use the shared references below only when they improve writing quality: - Read `../shared-references/writing-principles.md` before drafting the Abstract, Introduction, Related Work, or when prose feels generic. - Read `../shared-references/venue-checklists.md` during the final write-up and submission-readiness pass. - Read `../shared-references/citation-discipline.md` only when the built-in DBLP/CrossRef workflow is insufficient. These references are support material, not extra workflow phases. ## Optional: Style reference (`— style-ref: <source>`, opt-in) Lets the user steer **structural** style (section ordering, theorem density, sentence cadence, figure density, bibliography style) toward a reference paper. **Default OFF — when the user does not pass `— style-ref`, do nothing differently from before.** Only when `— style-ref: <source>` appears in `$ARGUMENTS`, run the helper FIRST, before drafting: ```bash # 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) ;; # use $CACHE/style_profile.md as structural guidance 2) echo "warning: style-ref skipped (missing optional dep)" >&2 ;; 3) echo "error: --style-ref source failed; aborting draft" >&2 ; exit 1 ;; *) echo "error: helper failed unexpectedly; aborting draft" >&2 ; exit 1 ;; esac ``` Sources accepted: local TeX dir / file, local PDF, arXiv id (`2501.12345` or `arxiv:2501.12345`), http(s) URL. Overleaf URLs and project 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.md` as **structural** guidance only. Match section count, section ordering tendency, theorem-environment density, caption-length distribution, sentence cadence, math display ratio, citation style. - **Never copy prose, claims, examples, or terminology** from anything reachable through the cache. The profile is intentionally aggregate; if you need substance, use the user's own outline. - **Never pass `— style-ref` (or the cache contents) to reviewer / auditor sub-agents.** Cross-model review independence (`../shared-references/reviewer-independence.md`) requires reviewers see only the artifact and the user's prompt, not the author's stylistic context. ### `<!-- DATA_NEEDED -->` markers (when `GAP_REPORT.md` exists) If `/paper-plan` ran with `— style-ref:` it will have emitted `GAP_REPORT.md` alongside `PAPER_PLAN.md`. This file lists structural slots (ablation tables, scaling experiments, failure-case analyses, …) the exemplar implies but the user has **no evidence to fill**. When `GAP_REPORT.md` is present and a section slot is classified as `status: missing`: 1. **Do not fabricate numerical results, figure references, or qualitative claims** to fill that slot. 2. Emit an HTML-comment placeholder at the exact location the missing content would go: ```latex <!-- DATA_NEEDED: GAP_S5_ABLATION — ablation table comparing X across the 3 axes implied by exemplar --> ``` 3. Slot ID and one-line description come straight from `GAP_REPORT.md`. **Never invent Slot IDs.** Never reword the description to be more confident than the report. 4. The marker is intentionally an HTML comment so it is invisible in the rendered PDF but **searchable via `grep -r "DATA_NEEDED" sec/`** for human triage / `/experiment-bridge` follow-up. 5. For `status: partial`, write what the user has and emit `<!-- DATA_NEEDED: <Slot ID> — <what specifically is short> -->` at the gap point in the same paragraph (do not split the section). **Carve-out from "no placeholder" rule.** The default `/paper-write` discipline (no placeholders such as "see supplementary" or "TBD") still applies for everything **except** GAP_REPORT-listed missing slots. The marker is the principled way to surface genuine evidence deficits without compromising claim integrity. Original idea: @zhangpelf in [#217](https://github.com/wanshuiyin/Auto-claude-code-research-in-sleep/issues/217). ## Templates ### Venue-Specific Setup The skill includes conference templates in `templates/`. Select based on TARGET_VENUE: **ICLR:** ```latex \documentclass{article} \usepackage{iclr2026_conference,times} % \iclrfinalcopy % Uncomment for camera-ready ``` **NeurIPS:** ```latex \documentclass{article} \usepackage[preprint]{neurips_2025} % \usepackage[final]{neurips_2025} % Camera-ready ``` **ICML:** ```latex \documentclass[accepted]{icml2025} % Use [accepted] for camera-ready ``` **IEEE Journal** (Transactions, Letters): ```latex \documentclass[journal]{IEEEtran} \usepackage{cite} % IEEE uses \cite{}, NOT natbib % Author block uses \author{Name~\IEEEmembership{Member,~IEEE}} ``` **IEEE Conference** (ICC, GLOBECOM, INFOCOM, ICASSP, etc.): ```latex \documentclass[conference]{IEEEtran} \usepackage{cite} % IEEE uses \cite{}, NOT natbib % Author block uses \IEEEauthorblockN / \IEEEauthorblockA ``` ### Project Structure Generate this file structure: ``` paper/ ├── main.tex # master file (includes sections) ├── iclr2026_conference.sty # or neurips_2025.sty / icml2025.sty / IEEEtran.cls + IEEEtran.bst ├── math_commands.tex # shared math macros ├── references.bib # bibliography (filtered — only cited entries) ├── sections/ │ ├── 0_abstract.tex │ ├── 1_introduction.tex │ ├── 2_related_work.tex │ ├── 3_method.tex # or preliminaries, setup, etc. │ ├── 4_experiments.tex │ ├── 5_conclusion.tex │ └── A_appendix.tex # proof details, extra experiments └── figures/ # symlink or copy from project figures/ ``` **Section files are FLEXIBLE**: If the paper plan has 6-8 sections, create corresponding files (e.g., `4_theory.tex`, `5_experiments.tex`, `6_analysis.tex`, `7_conclusion.tex`). ## Workflow ### Step 0: Backup and Clean If `paper/` already exists, back up to `paper-backup-{timestamp}/` before overwriting. Never silently destroy existing work. **CRITICAL: Clean stale files.** When changing section structure (e.g., 5 sections → 7 sections), delete section files that are no longer referenced by `main.tex`. Stale files (e.g., old `5_conclusion.tex` left behind when conclusion moved to `7_conclusion.tex`) cause confusion and waste space. ### Step 1: Initialize Project 1. Create `paper/` directory 2. Copy venue template from `templates/` — the template already includes: - All standard packages (amsmath, hyperref, cleveref, booktabs, etc.) - Theorem environments with `\crefname{assumption}` fix - Anonymous author block 3. Generate `math_commands.tex` with paper-specific notation 4. Create section files matching PAPER_PLAN structure **Author block (anonymous mode):** ```latex \author{Anonymous Authors} ``` ### Step 2: Generate math_commands.tex Create shared math macros based on the paper's notation: ```latex % math_commands.tex — shared notation \newcommand{\R}{\mathbb{R}} \newcommand{\E}{\mathbb{E}} \DeclareMathOperator*{\argmin}{arg\,min} \DeclareMathOperator*{\argmax}{arg\,max} % Add paper-specific notation here ``` ### Step 3: Write Each Section Process sections in order. For each section: 1. **Read the plan** — what claims, evidence, citations belong here 2. **Read NARRATIVE_REPORT.md** — extract relevant content, findings, and quantitative results 3. **Draft content** — write complete LaTeX (no fabricated placeholders). **Exception:** if `GAP_REPORT.md` exists and the section has slots with `status: missing`, emit `<!-- DATA_NEEDED: <Slot ID> — <description> -->` at those points instead of inventing data — see the DATA_NEEDED markers subsection above. 4. **Insert figures/tables** — use snippets from `figures/latex_includes.tex` 5. **Add citations** — for ML conferences (ICLR/NeurIPS/ICML/CVPR/ACL/AAAI): use `\citep{}` / `\citet{}` (natbib). **For IEEE venues**: use `\cite{}` (numeric style via `cite` package). Never mix natbib and cite commands. Before drafting the front matter, re-read the one-sentence contribution from `PAPER_PLAN.md`. The Abstract and Introduction should make that takeaway obvious before the reader reaches the full method. #### Section-Specific Guidelines **§0 Abstract:** - Use the 5-part flow from `../shared-references/writing-principles.md`: what, why hard, how, evidence, strongest result - Must be self-contained (understandable without reading the paper) - Start with the paper's specific contribution, not generic field-level background - Include one concrete quantitative result - 150-250 words (check venue limit) - No citations, no undefined acronyms - No `\begin{abstract}` — that's in main.tex **§1 Introduction:** - Open with a compelling hook (1-2 sentences, problem motivation) - State the gap clearly ("However, ...") - Give a brief approach overview before the reader gets lost in details - List 2-4 specific, falsifiable contributions as a numbered or bulleted list - Preview the strongest result early instead of saving it for the experiments section - End with a brief roadmap ("The rest of this paper is organized as...") - Include the main result figure if space allows - Target: 1-1.5 pages - Methods should begin by page 2-3 at the latest **§2 Related Work:** - **MINIMUM 1 full page** (3-4 substantive paragraphs). Short related work sections are a common reviewer complaint. - Organize by category using `\paragraph{Category Name.}` - Organize methodologically, by assumption class, or by research question; do not write paper-by-paper mini-summaries - Each category: 1 paragraph summarizing the line of work + 1-2 sentences positioning this paper - Do NOT just list papers — synthesize and compare - End each paragraph with how this paper relates/differs **§3 Method / Preliminaries / Setup:** - Define notation early (reference math_commands.tex) - Use `\begin{definition}`, `\begin{theorem}` environments for formal statements - For theory papers: include proof sketches of key results in main body, full proofs in appendix - For theory papers: include a **comparison table** of prior bounds vs. this paper - Include algorithm pseudocode if applicable (`algorithm2e` or `algorithmic`) - Target: 1.5-2 pages **§4 Experiments:** - Start with experimental setup (datasets, baselines, metrics, implementation details) - Main results table/figure first - Then ablations and analysis - Every claim from the introduction must have supporting evidence here - For each major experiment, make explicit what claim it supports and what the reader should notice - Target: 2.5-3 pages **§5 Conclusion:** - Summarize contributions (NOT copy-paste from intro — rephrase) - Limitations (2-4 material, specific limits — dataset scale, compute regime, assumption X; real ones only, never invented to fill a count. This section is the ONLY home for generic caveats) - Future work (1-2 concrete directions) - Ethics statement and reproducibility statement (if venue requires) - Target: 0.5 pages **Appendix:** - Proof details (full proofs of main-body theorems) - Additional experiments, ablations - Implementation details, hyperparameter tables - Additional visualizations ### Step 3.5: Theory Paper Consistency Pass (theory papers only) Run this pass after drafting all sections and before building the bibliography.
GitHub에서 보기
이 SKILL.md는 매우 커서 SkillsMP가 여기에는 첫 섹션만 미리 보여줍니다. GitHub에서 보기