| name | paper-orchestra |
| description | EZMM writer-stage adapter for the vendored PaperOrchestra skill pack. Use by default during pipeline/04-paper-writing for outline-first paper drafting, literature-review planning, section writing, and refinement discipline. The adapter maps EZMM runtime artifacts to PaperOrchestra-style inputs, runs PaperOrchestra-first writing automatically, and returns EZMM-compatible paper.md. |
paper-orchestra adapter for EZ Math Model
This is the EZMM-facing adapter for the vendored upstream PaperOrchestra pack at
external/paper-orchestra/. It lets the EZMM writer call PaperOrchestra's
writing skills without changing EZMM's contest-paper contract.
Upstream source: https://github.com/Ar9av/PaperOrchestra
Paper citation: Song et al., "PaperOrchestra: A Multi-Agent Framework for
Automated AI Research Paper Writing", arXiv:2604.05018, 2026.
When writer calls this
Load this adapter in pipeline/04-paper-writing before drafting paper.md.
Use it to create a structured writing workspace, generate or refresh a paper
outline, organize literature-review tasks, draft the body, and run a refinement
pass.
Do not use this adapter to bypass EZMM hard rules. The final paper.md must
still satisfy prompts/writer.md, references/roles/writer-guide.md, and
pipeline/05-quality-audit.md.
Source roots
All paths below are relative to skills/ez-math-model/.
| Purpose | Path |
|---|
| EZMM adapter | tools/paper-orchestra/SKILL.md |
| Vendored upstream pack | external/paper-orchestra/ |
| Upstream orchestrator | external/paper-orchestra/skills/paper-orchestra/SKILL.md |
| Upstream outline agent | external/paper-orchestra/skills/outline-agent/SKILL.md |
| Upstream literature agent | external/paper-orchestra/skills/literature-review-agent/SKILL.md |
| Upstream section writer | external/paper-orchestra/skills/section-writing-agent/SKILL.md |
| Upstream refinement agent | external/paper-orchestra/skills/content-refinement-agent/SKILL.md |
| Upstream shared writing checks | external/paper-orchestra/skills/shared/writing_quality_check.md |
When running upstream helper scripts, set the working directory to
external/paper-orchestra/ so upstream examples like
python skills/paper-orchestra/scripts/validate_inputs.py ... resolve
correctly.
Default mode: PaperOrchestra-first writing
The writer runs PaperOrchestra-first by default. Do not wait for a separate
PaperOrchestra request. Build the PaperOrchestra workspace automatically from
EZMM runtime artifacts, run the upstream outline,
literature, section-writing, and refinement protocol as far as the local inputs
and tools allow, then bridge the result back to EZMM's required
runtime/{task_id}/paper.md.
When a usable LaTeX template and TeX toolchain are available or can be safely
scaffolded, also produce the upstream-style package under
runtime/{task_id}/paper_orchestra/final/. The EZMM-compatible paper.md
remains mandatory because downstream quality audit and packaging consume it.
Create a local workspace:
runtime/{task_id}/paper_orchestra/
├── inputs/
│ ├── idea.md
│ ├── experimental_log.md
│ ├── conference_guidelines.md
│ └── figures/
├── outline.json
├── refs/
├── drafts/
│ ├── paper.tex
│ └── paper.md
├── refinement/
│ └── worklog.json
├── final/
│ ├── paper.tex
│ └── paper.pdf
└── adapter_report.md
Map EZMM inputs into PaperOrchestra-style inputs:
| PaperOrchestra input | EZMM source |
|---|
idea.md | problem.md, intake.json, modeling_plan.md, and the intended contribution of each quesN |
experimental_log.md | execution_log.md, src/*.py final print blocks, `results/*.csv |
conference_guidelines.md | contest name, language, run_mode, section requirements from templates/chapter_outline.toml, plus EZMM no-bullet and no-leakage rules |
inputs/figures/ | copies or references to figures/*.png with usable_in_paper=true |
The adapter report must record which EZMM files were consumed, which accepted
figures must appear in the paper, and whether any PaperOrchestra sub-step was
degraded or skipped.
Writing workflow
- Read upstream
outline-agent/SKILL.md and use its schema discipline to
produce paper_orchestra/outline.json. For EZMM, section_plan must map to
the contest sections in templates/chapter_outline.toml.
- Read upstream
literature-review-agent/SKILL.md for search, verification,
deduplication, and citation-pool discipline. Prefer EZMM
tools/scholar/SKILL.md or tools/paper_search/SKILL.md for actual
metadata retrieval, because those tools already follow the EZMM env and
setup policy.
- Read upstream
section-writing-agent/SKILL.md for single-pass global
coherence, table construction, figure-text alignment, and citation-key
discipline. Prefer the upstream LaTeX draft path when the workspace has a
usable template; then convert or mirror the accepted content into EZMM
Markdown. If LaTeX inputs or tools are unavailable, adapt LaTeX-only
instructions directly to Markdown:
- figures stay as
;
- tables stay as Markdown tables unless
paper_*.md template requires
otherwise;
- formulas stay in pandoc-compatible
$...$ / $$...$$;
- do not introduce LaTeX preamble,
\section, \cite, or BibTeX in
paper.md.
- Read upstream
content-refinement-agent/SKILL.md and run refinement by
default unless the draft is blocked by missing factual inputs. Accept a
revision only when it improves correctness, figure-text binding, citation
integration, or clarity without weakening EZMM constraints.
- Write the final Markdown to
runtime/{task_id}/paper.md only after the
adapter's self-check passes.
Upstream LaTeX package
Run the upstream orchestrator automatically when the required
workspace/inputs/template.tex and workspace/inputs/conference_guidelines.md
can be supplied from EZMM templates or local contest metadata. Use
external/paper-orchestra/skills/paper-orchestra/SKILL.md unchanged for that
sub-run and write outputs under paper_orchestra/final/.
If the full LaTeX route is not runnable, do not ask the user. Record the reason
in adapter_report.md, continue with the Markdown adaptation path, and keep the
same PaperOrchestra outline/literature/section/refinement discipline.
Required self-check before returning to writer
Before this adapter hands control back to the writer stage, confirm:
paper_orchestra/outline.json exists or adapter_report.md explains why it
was skipped.
adapter_report.md records whether the full upstream LaTeX route ran or
which missing input/tool caused an automatic Markdown adaptation.
- Every
chart_manifest.json entry with status=accepted and
usable_in_paper=true is listed in adapter_report.md.
paper.md references only figures allowed by EZMM chart manifest.
- No PaperOrchestra workspace paths, upstream script paths,
runtime/,
adapter_report.md, or outline.json leak into the paper body.
- Citations are unique and compatible with EZMM's
{[^N] ...} protocol.
- Any skipped PaperOrchestra sub-step is recorded as a quality-audit note.
Licensing note
The vendored upstream pack is MIT licensed. Keep the upstream LICENSE,
CITATION.cff, and README under external/paper-orchestra/, and cite
PaperOrchestra when its workflow materially shapes the final paper.