16# Academic Paper — Academic Paper Writing Agent Team
17
18A general-purpose academic paper writing tool — 12-agent pipeline covering all disciplines, with higher education domain as the default reference.
19
20**v2.5** adds two writing quality features:
21- **Style Calibration** (intake Step 10, optional) — Provide 3+ past papers and the pipeline learns your writing voice (sentence rhythm, vocabulary preferences, citation integration style). Applied as a soft guide during drafting; discipline conventions always take priority. See shared/style_calibration_protocol.md.
22- **Writing Quality Check** (references/writing_quality_check.md) — A writing quality checklist applied during the draft self-review step. Catches overused AI-typical terms, em dash overuse, throat-clearing openers, uniform paragraph lengths, and monotonous sentence rhythm. These are good writing rules, not detection evasion.
23
24> **Routing discipline (v3.9.2):** see .claude/CLAUDE.md "Routing Discipline (v3.9.2)" + shared/references/intent_clarification_protocol.md for cross-skill routing rules. This skill assumes routing has already settled — ambiguous cross-phase materials should have been clarified upstream.
25
26## Quick Start
27
28**Minimal command:**
29```
30Write a paper on the impact of AI on higher education quality assurance
31```
32
33```
34Write a paper on the impact of declining birth rates on private university management strategies
35```
36
37**Execution flow:**
381. Configuration interview — paper type, discipline, citation format, output format
392. Literature search — systematic search strategy, source screening
403. Architecture design — paper structure, outline, word count allocation
414. Argumentation construction — claim-evidence chains, logical flow
425. Full-text drafting — section-by-section draft, register adjustment
436. Citation compliance + bilingual abstract (parallel)
447. Peer review — five-perspective categorical assessment, revision suggestions
458. Output formatting — LaTeX/DOCX (via Pandoc)/PDF/Markdown
46
47---
48
49## Trigger Conditions
50
51### Trigger Keywords
52
53**English**: write paper, academic paper, paper outline, write abstract, revise paper, literature review paper, check citations, convert to LaTeX, convert format, format paper, conference paper, journal article, thesis chapter, research paper, guide my paper, help me plan my paper, step by step paper, draft manuscript, write methodology, write discussion, parse reviews, revision roadmap, help me with my revision, I got reviewer comments, convert citations
54
55**繁體中文**: 寫論文, 學術論文, 論文大綱, 寫摘要, 修改論文, 文獻回顧論文, 檢查引用, 轉 LaTeX, 轉換格式, 研討會論文, 期刊文章, 學位論文, 研究論文, 引導我寫論文, 幫我規劃論文, 逐步寫論文, 寫方法論, 寫討論, 審查意見, 修訂路線圖, 幫我修改, 我收到審查意見, 轉換引用格式
56
57**한국어**: 논문 작성, 논문 초안, 논문 개요, 초록 작성, 논문 수정, 인용 확인, 인용 형식 검사, LaTeX 변환, 서식 변환, 학위논문 작성, 학술지 논문 작성, 학회 논문 작성, 논문 계획을 도와줘, 단계별로 논문 쓰기, 심사 의견을 받았어, 심사 의견 반영, 답변서 점검, AI 사용 고지
58
59### Plan Mode Activation
60
61Activate plan mode when the user wants guidance, step-by-step planning, or expresses uncertainty about paper structure. **Default rule**: when ambiguous between plan and full, prefer plan.
62
63> See references/plan_mode_protocol.md for full intent signals and activation rules.
64
65### Does NOT Trigger
66
67| Scenario | Use Instead |
68|----------|-------------|
69| Deep research / fact-checking (not paper writing) | deep-research |
70| Reviewing a paper (structured review) | academic-paper-reviewer |
71| Full research-to-paper pipeline | academic-pipeline |
72
73### Distinction from deep-research
74
75| Feature | academic-paper | deep-research |
76|---------|-------------------|-----------------|
77| Primary output | Publishable paper draft | Research report |
78| Structure | Journal-ready (IMRaD, etc.) | APA 7.0 report |
79| Citation | Multi-format (APA/Chicago/MLA/IEEE/Vancouver) | APA 7.0 only |
80| Abstract | Bilingual (zh-TW + EN) | Single language |
81| Peer review | Simulated 5-dimension review | Editorial review |
82| Output format | LaTeX/DOCX (via Pandoc)/PDF/Markdown | Markdown only |
83| Revision loop | Max 2 rounds with targeted feedback | Max 2 rounds |
84
85---
86
87## Agent Team (12 Agents)
88
89| # | Agent | Role | Phase |
90|---|-------|------|-------|
91| 1 | intake_agent | Configuration interview: paper type, discipline, journal, citation format, output format, language, word count; Handoff detection; Plan mode simplified interview | Phase 0 |
92| 2 | literature_strategist_agent | Search strategy design, source screening, annotated bibliography, literature matrix | Phase 1 |
93| 3 | structure_architect_agent | Paper structure selection, detailed outline, word count allocation, evidence mapping | Phase 2 |
94| 4 | argument_builder_agent | Argument construction, claim-evidence chains, logical flow, counter-argument handling; Plan mode argument stress test | Phase 3 / Plan Step 3 |
95| 5 | draft_writer_agent | Section-by-section full draft writing, discipline register adjustment, word count tracking | Phase 4 |
96| 6 | citation_compliance_agent | Citation format verification, reference list completeness, DOI checking | Phase 5a |
97| 7 | abstract_bilingual_agent | Bilingual abstract (zh-TW + EN), 5-7 keywords each | Phase 5b |
98| 8 | peer_reviewer_agent | Simulated double-blind review, five-perspective categorical assessment, revision suggestions (max 2 rounds) | Phase 6 |
99| 9 | formatter_agent | Convert to LaTeX/DOCX (via Pandoc)/PDF/Markdown, journal formatting, cover letter, citation format conversion (APA 7 / Chicago / MLA / IEEE / Vancouver) | Phase 7 |
100| 10 | socratic_mentor_agent | Plan mode Socratic mentor: chapter-by-chapter guidance, convergence criteria (4 signals), question taxonomy (4 types), INSIGHT extraction | Plan Step 0-3 |
101| 11 | visualization_agent | Parse paper data and generate publication-quality figure code (Python matplotlib / R ggplot2) with APA 7.0 formatting, colorblind-safe palettes, and LaTeX integration | Phase 4 / Phase 7 |
102| 12 | revision_coach_agent | Parse unstructured reviewer comments into a Revision Roadmap, or explicitly identified real-committee comments into the separate #668 source-accounted concern tracker; works standalone | Revision-Coach mode |
103
104---
105
106## Output Formats
107
108### Text Formats
109LaTeX (.tex + .bib), DOCX (via Pandoc), PDF (via LaTeX or Pandoc), Markdown.
110
111### Figures
112When the paper contains quantitative results, the visualization_agent can generate publication-ready figures in Python (matplotlib/seaborn) or R (ggplot2) with APA 7.0 formatting and colorblind-safe palettes. Figures are delivered as runnable code + LaTeX \includegraphics integration code. See references/statistical_visualization_standards.md for chart type decision trees and code templates.
113
114### Citation Formats
115APA 7.0 (default), Chicago (Author-Date or Notes-Bibliography), MLA 9, IEEE, Vancouver. The formatter_agent supports late-stage citation format conversion between any two supported formats via "Convert citations to [format]".
116
117---
118
119## Orchestration Workflow (8 Phases)
120
121```
122Phase 0: CONFIG -> [intake_agent] -> Paper Configuration Record
123Phase 1: RESEARCH -> [literature_strategist] -> Search Strategy + Source Corpus
124Phase 2: ARCHITECTURE -> [structure_architect] -> Paper Outline + Evidence Map
125Phase 3: ARGUMENTATION -> [argument_builder] -> Argument Blueprint
126Phase 4: DRAFTING -> [draft_writer] -> Complete Draft
127Phase 5a: CITATIONS -> [citation_compliance] ──┐ -> Citation Audit Report
128Phase 5b: ABSTRACT -> [abstract_bilingual] ─┘ -> Bilingual Abstract + Keywords (parallel)
129Phase 6: PEER REVIEW -> [peer_reviewer] -> Review Report (max 2 revision loops)
130Phase 7: FORMAT -> [formatter] -> Final Output Package
131```
132
133> See references/workflow_phase_details.md for detailed per-phase agent behavior and output descriptions.
134
135### Review-target criteria binding (#684)
136
137When Phase 0 has produced an author-confirmed ReviewTargetContext (#683), the
138orchestrator initializes one pointer-only ReviewCriteriaBindingManifest and
139uses it unchanged across the formative, internal-evaluator, and external-panel
140consumers. The normative lifecycle, exact marker, closed roles, and explicit
141degraded path are defined in
142shared/references/review_criteria_consumer_protocol.md.
143
144- Phase 2 owns the FORMATIVE receipt. The Structure Architect maps selected
145 criterion ids to planned sections and evidence needs; later writing phases
146 reuse that receipt and do not re-resolve the target.
147- Phase 6a receives the same pointer authority and Target Criteria Brief while
148 remaining paper-blind; its pre-commitment artifact owns the INTERNAL
149 receipt. Phase 6b receives that unchanged artifact, may assess applicability
150 after it sees the draft, and owns any Critical/Major constructive finding
151 sidecar.
152- Scientific validity, venue fit, and submission readiness remain distinct.
153 Criteria never authorize invented evidence, results, methods, or changes to
154 the author's contribution claim.
155
156Binding validation is a handoff-conformance check only. It never supplies an
157editorial verdict, severity, checkpoint state, or author triage. If the binding
158is unavailable, disclose criteria_binding_unavailable; do not claim venue
159alignment and do not silently reconstruct a target from model memory.
160
161### Checkpoint Rules
162
1631. ⚠️ **IRON RULE**: User must confirm Paper Configuration Record before proceeding to Phase 1
1642. **Phase 2 -> 3**: User must approve outline (can request restructuring)
1653. ⚠️ **IRON RULE**: Max 2 revision loops; unresolved items -> "Acknowledged Limitations"
1664. **Peer Review** Critical-severity issues block progression to Phase 7
1675. User can skip Phase 1 (literature) if providing own sources
168
169---
170
171> **v3.4.0 compliance (applies to full mode):** Before finalization, compliance_agent runs RAISE principles-only check (warn-only; primary research is outside PRISMA-trAIce scope). Warnings are listed in the disclosure statement but never block the pipeline. See shared/raise_framework.md §Scope disclaimer.
172
173## Phase-by-phase Invocation Contract (v3.9.2)
174
175academic-paper pipeline runs in 8 phases (Phase 0 intake → 7 formatting). Two invocation modes:
176
177**Mode A — orchestrator-driven (default):** pipeline_orchestrator_agent (in academic-pipeline skill) runs all phases end-to-end with state tracking via Material Passport.
178
179**Mode B — phase-by-phase (cross-session resume):** User invokes one agent per phase across sessions for long-running projects. Common pattern: write the draft in one session, return next week to citation-check / abstract / peer-review independently.
180
181In Mode B, **single-phase agents (Bucket A per docs/design/2026-05-18-ars-v3.9.2-agent-phase-classification.md) stay strictly within their assigned phase for writes**. The 7 Bucket A agents in academic-paper are: literature_strategist (P1), structure_architect (P2), draft_writer (P4/P6 per invocation), citation_compliance (P5a), abstract_bilingual (P5b), peer_reviewer (P6), formatter (P7). Reads from upstream phases are allowed.
182
183Multi-phase agents (Bucket B: argument_builder P3+Plan, visualization P4+P7) do exactly the work specified by the caller's invocation for that phase — no extension to other phases in the same call. The v3.6.6 generator-evaluator contract below additionally constrains draft_writer and peer_reviewer sub-phase behavior (Phase 4a/4b, Phase 6a/6b).
184
185Routing into Mode B requires explicit user signal — /ars-<mode> slash command or [direct-mode] prefix. Ambiguous cross-phase input defaults to clarification per .claude/CLAUDE.md Routing Discipline + shared/references/intent_clarification_protocol.md.
186
187**Enforcement (v3.9.2):** Phase Boundary blocks on Bucket A agents + advisory verifier (scripts/check_pipeline_integrity.py) + a deterministic PreToolUse write-scope guard in hook-enabled runtimes (#134 rescope, PR #294). Multi-phase envelope remains forward-scope (#134 Slices 3-5).
188
189## v3.6.6 Generator-Evaluator Contract Protocol
190
191> Authoritative orchestration block for the v3.6.6 contract-gated phase splits inside academic-paper full mode. Schema 13.1 since v3.6.6 (shared/sprint_contract.schema.json). Templates: shared/contracts/writer/full.json + shared/contracts/evaluator/full.json. Design spec: docs/design/2026-04-27-ars-v3.6.6-generator-evaluator-contract-design.md §5.
192>
193> **Applies to academic-paper full mode only.** Nine non-full modes (plan, outline-only, revision, revision-coach, abstract-only, lit-review, format-convert, citation-check, disclosure) are byte-equivalent across v3.6.5 → v3.6.6 and do not invoke this protocol. (The later-added rebuttal-audit mode is likewise non-full and does not invoke this protocol.) Pipeline boundary unchanged: academic-pipeline Stage 2 dispatches academic-paper in plan or full mode (full only invokes this protocol); Stage 3 dispatches the separate academic-paper-reviewer skill (5-panel external editorial review). The in-pair Phase 6 evaluator under this protocol and the Stage 3 reviewer are different review layers — see design doc §5.1 audit conclusion 2.
194
195### Overview
196
197v3.6.6 splits Phase 4 (writer drafting) and Phase 6 (in-pair evaluator review) into paper-blind / paper-visible call pairs gated by the writer_full and evaluator_full contracts. The split mirrors academic-paper-reviewer/references/sprint_contract_protocol.md (the v3.6.2 reviewer pattern) but adapts it for single-agent generator modes that have no panel and (for the writer) no scoring_plan.
198
199The load-bearing mechanism is the **physical separation of calls**: writer Phase 4a never sees the runtime drafting artefacts; evaluator Phase 6a never sees the writer Phase 4b draft. This destroys the "read the paper, then rationalise the standard" drift path on the in-pair self-quality gate.
200
201### Four-call structure
202
203For each academic-paper full invocation, Phase 4 + Phase 6 expand from two single calls into four separate model calls. Each call has its own system prompt and user content per the system-vs-user content discipline below.
204
2051. **Phase 4a — writer paper-blind pre-commitment.**
206 - System prompt: ### Phase 4a — Writer paper-blind pre-commitment sub-section in academic-paper/agents/draft_writer_agent.md § "v3.6.6 Generator-Evaluator Contract Protocol".
207 - User content: writer_full contract JSON + paper metadata only (title, field, word_count).
208 - Output: ## Acceptance Criteria Paraphrase section + terminal [PRE-COMMITMENT-ACKNOWLEDGED] tag.
209 - Lint: 3 structural checks (see § "Phase 4a / 6a output lint" below).
2102. **Phase 4b — writer paper-visible drafting + self-scoring.**
211 - System prompt: ### Phase 4b — Writer paper-visible drafting + self-scoring sub-section in the same agent file.
212 - User content: writer_full contract JSON (re-injected) + Phase 4a output wrapped in <phase4a_output>...</phase4a_output> data delimiter + upstream drafting artefacts (Paper Configuration Record, Paper Outline, Argument Blueprint, Annotated Bibliography incl. its Search Strategy / Schema 2 search_strategy (#548 — the bound the writer fills into search-bounded novelty claims), optional Style Profile, optional Knowledge Isolation Directive).
213 - Output: ## Draft Body → ## Dimension Scores → ## Failure Condition Checks → ## Writer Decision.
214 - Lint: 4 structural checks (see § "Phase 4b / 6b output lint" below).
2153. **Phase 6a — evaluator paper-blind pre-commitment.**
216 - System prompt: ### Phase 6a — Evaluator paper-blind pre-commitment sub-section in academic-paper/agents/peer_reviewer_agent.md § "v3.6.6 Generator-Evaluator Contract Protocol".
217 - User content: evaluator_full contract JSON + paper metadata + the writer's most recent <phase4a_output> (the writer artefact the evaluator must verify per disagreement_handling.pre_commitment_check_protocol.check_writer_artifact) +, when active, the pointer-only #684 manifest/Target Criteria Brief/INTERNAL marker.
218 - Output: ## Contract Paraphrase + ## Scoring Plan (per-dimension dimension_id / what_to_look_for / what_triggers_block / what_triggers_warn) + pointer-only binding commitment (or criteria_binding_unavailable) + terminal [PRE-COMMITMENT-ACKNOWLEDGED] tag. No additional H2 is introduced.
219 - Lint: 5 structural checks.
2204. **Phase 6b — evaluator paper-visible scoring + decision.**
221 - System prompt: ### Phase 6b — Evaluator paper-visible scoring + decision sub-section in the same agent file.
222 - User content: evaluator_full contract JSON (re-injected) + Phase 6a output wrapped in <phase6a_output>...</phase6a_output> + the writer's <phase4a_output> (unconditional per pre_commitment_check_protocol.check_writer_artifact) + the writer Phase 4b draft (the artefact under review) + the unchanged #684 authority when it was supplied in Phase 6a.
223 - Output: ## Dimension Scores → ## Failure Condition Checks → ## Review Body → ## Evaluator Decision, plus the role marker/unavailable disclosure and a separately validated constructive sidecar when applicable.
224 - Lint: 5 structural checks.
225
226### System prompt vs user content discipline
227
228Mirrors sprint_contract_protocol.md §2 reviewer pattern verbatim:
229
230- **System prompt carries invariant policy text only**: the phase sub-section instructions from the agent file's ## v3.6.6 Generator-Evaluator Contract Protocol block, the lint description, and the phase-boundary tag conventions.
231- **User content carries the contract JSON (re-injected per call) plus the runtime inputs allowed at that phase**: paper metadata, <phase4a_output> / <phase6a_output> delimiter blocks, upstream drafting artefacts, the paper draft.
232
233All dynamic LLM output (Phase Na runtime emissions, paper content) lives in user content via data delimiters, never in the system prompt. This prevents accidental elevation of dynamic per-paper content into the invariant policy surface.
234
235### Schema field name vs runtime emission distinction
236
237pre_commitment_artifacts (snake_case, backticks) is the schema field name in shared/sprint_contract.schema.json — a configuration declaration in the frozen contract baseline. The "writer Phase 4a pre-commitment output" is the runtime emission — the actual Markdown text the writer agent emits in Phase 4a. The runtime emission lives inside <phase4a_output> and gets handed off to Phase 4b / Phase 6a / Phase 6b. Same pattern for disagreement_handling (schema field) vs "evaluator Phase 6a pre-commitment output" (runtime emission). Mixing the two leads to confusion between contract baseline configuration and LLM-generated content.
238
239### Phase 4a / 6a output lint
240
241Mode-specific structural check counts, per sprint_contract_protocol.md §4 enumeration convention:
242
243- **Writer Phase 4a (3 checks)**: required sections in order (## Acceptance Criteria Paraphrase, terminal [PRE-COMMITMENT-ACKNOWLEDGED]); paraphrase paragraph count ≥ pre_commitment_artifacts.acceptance_criteria_paraphrase.minimum_dimensions; Phase 4a content references contract JSON + paper metadata only. **No ## Scoring Plan section** — writer_full carries no scoring_plan.
244- **Evaluator Phase 6a (5 checks)**: required sections in order (## Contract Paraphrase, ## Scoring Plan, terminal [PRE-COMMITMENT-ACKNOWLEDGED]); paraphrase paragraph count ≥ disagreement_handling.paraphrase_minimum_dimensions; one ### <Dn>: <name> subsection per acceptance dimension; each scoring_plan subsection contains disagreement_handling.scoring_plan.per_dimension_criteria four-field shape (dimension_id, what_to_look_for, what_triggers_block, what_triggers_warn); Phase 6a content references contract JSON + paper metadata + the writer's <phase4a_output> plus the paper-blind #684 pointer authority only (no full draft / paper content). The binding commitment is unbulleted pointer data after Scoring Plan, not an additional H2.
245
246Retry semantics: lint failure on the first attempt → retry once with the specific lint gap hinted in the system prompt; second failure → mark this role unusable per § "Single-agent generator unusable handling" below.
247
248### Phase 4b / 6b output lint
249
250- **Writer Phase 4b (4 checks)**: required sections in order — ## Draft Body, ## Dimension Scores, ## Failure Condition Checks, ## Writer Decision; Dimension Scores one-to-one across the seven writer dimensions D1–D7 (per shared/contracts/writer/full.json); Failure Condition Checks one-to-one across F1 / F4 / F2 / F3 / F0; Writer Decision derivable from F-condition severity precedence. **No multi-dissent retry** (writer has no scoring_plan to dissent against). **No consistency check** (writer Phase 4a emits no scoring_plan trigger tokens).
251- **Evaluator Phase 6b (5 checks)**: required sections in order — ## Dimension Scores, ## Failure Condition Checks, ## Review Body, ## Evaluator Decision; Dimension Scores one-to-one across the five evaluator dimensions D1–D5 (per shared/contracts/evaluator/full.json); Failure Condition Checks one-to-one across F1 / F2 / F3 / F6 / F4 / F5 / F0; consistency check (Phase 6b score substring-matches Phase 6a disagreement_handling.scoring_plan.per_dimension_criteria trigger tokens); Evaluator Decision derivable from F-condition severity precedence. **No multi-dissent retry** (evaluator's intra-phase disagreement is encoded as F-condition action via disagreement_handling.disagreement_resolution, not as a retry trigger).
252
253Multi-dissent retry remains reviewer-only (academic-paper-reviewer skill); generator modes have no panel and no scoring_plan dissent anchor.
254
255Lint count summary across the three modes:
256
257| Phase | Reviewer (zero-touch) | Writer | Evaluator |
258|---|---|---|---|
259| Phase 1 / 4a / 6a | 5 | 3 | 5 |
260| Phase 2 / 4b / 6b | 6 | 4 | 5 |
261
262### Single-agent generator unusable handling
263
264When a writer or evaluator phase becomes unusable (Phase Na lint twice fail OR Phase Nb lint fail), academic-paper emits a phase-level abort tag and routes to user intervention:
265
266- **Writer Phase 4 unusable** → [GENERATOR-PHASE-ABORTED: role=writer, contract=<id>, reason=<lint_failure_kind>] → abort academic-paper Phase 4 → user intervention decides retry / fallback / regression to Phase 3 (Argument Blueprint).
267- **Evaluator Phase 6 unusable** → [GENERATOR-PHASE-ABORTED: role=evaluator, contract=<id>, reason=<lint_failure_kind>] → abort academic-paper Phase 6 → user intervention decides retry / fallback / regression to Phase 5 (Drafting completion).
268
269[GENERATOR-PHASE-ABORTED] does **not** constitute a valid Phase 6b emission and cannot enter Stage 3 reviewer dispatch. Two valid Stage 3 entry paths exist (per design doc §5.1):
270
271- **Standard path**: evaluator Phase 6b emits F0 evaluator_decision=accept or F4 evaluator_decision=accept_with_dissent_note.
272- **Exceptional path**: evaluator Phase 6b emits F5 evaluator_decision=flag_for_reviewer_stage after the in-pair revision loop exhausts at round 2 with mandatory-dimension block recurring.
273
274academic-paper carries no panel cardinality invariant for writer / evaluator (no panel_size field — Schema 13.1 §3.3.5 reviewer-conditional). There is no [PANEL-SHRUNK] analogue at the generator side; [GENERATOR-PHASE-ABORTED] is phase-level abort.
275
276**Operational monitor**: track [GENERATOR-PHASE-ABORTED] rate over the first three months of v3.6.6 deployment. The denominator is **per academic-paper full run** — one user-perceived top-level invocation. The 5% threshold is (runs_with_any_abort) / (total_runs). If the rate exceeds 5%, v3.6.7 introduces graceful-degradation fallback (see § "Known limitations" below).
277
278### Cross-session resume scope
279
280The v3.6.6 generator-evaluator round (Phase 4a + Phase 4b + Phase 6a + Phase 6b + in-pair revision loop) is an **in-session atomic unit**. Manual session split mid-round → writer Phase 4a output is lost; new session must restart academic-paper full mode from Phase 0.
281
282The v3.6.3 ARS_PASSPORT_RESET=1 reset_boundary[] mechanism (per academic-pipeline/references/passport_as_reset_boundary.md) operates at academic-pipeline Stage boundaries, not at academic-paper internal phase boundaries. academic-paper internal phases (4a / 4b / 6a / 6b) are **not** boundary points; no kind: boundary ledger entry is emitted between them. v3.6.7+ may introduce pre_commitment_history[] to persist writer Phase 4a artefacts across sessions if operational data warrants — see § "Known limitations" below.
283
284## Known limitations
285
286- **No graceful-degradation fallback in v3.6.6**: when the writer or evaluator phase aborts via [GENERATOR-PHASE-ABORTED], academic-paper full aborts and routes to user intervention. v3.6.7 may introduce a fallback that degrades the affected phase to v3.6.5 single-call behaviour and logs the degradation. v3.6.6 ships with abort-only behaviour. See § "Single-agent generator unusable handling" above for the operational 5% / three-month monitor.
287- **No cross-session resume mid-round**: the four-phase generator-evaluator round is an in-session atomic unit. Manual session split mid-round loses the writer Phase 4a artefact and forces restart from Phase 0. v3.6.7+ may introduce a pre_commitment_history[] ledger entry in Schema 9 to persist the writer Phase 4a artefact across session boundaries; v3.6.6 does not implement.
288- **In-pair Phase 6 evaluator vs academic-paper-reviewer external review**: the in-pair peer_reviewer_agent (Phase 6 evaluator with the v3.6.6 contract gate) and the standalone academic-paper-reviewer skill (Stage 3 5-panel external editorial review) serve different review layers and remain documented as known technical debt per design doc §1 known limitations. Routing / merge decisions are deferred to v3.7.x.
289
290## Operational Modes (11 Modes)
291
292See references/mode_selection_guide.md for details.
293
294| Mode | Trigger | Agents | Output |
295|------|---------|--------|--------|
296| full | "Write a paper" | All 9 (+ 11 if quantitative) | Complete paper draft (with figures if applicable) |
297| outline-only | "Paper outline" | 1->2->3 | Detailed outline + evidence map |
298| revision | "Revise paper" | 8->5->6 | Patch document + deterministically applied revised draft + apply report (#390; revision log via templates/revision_tracking_template.md) |
299| abstract-only | "Write abstract" | 1->7 | Bilingual abstract + keywords |
300| lit-review | "Literature review" | 1->2 | Annotated bibliography + synthesis |
301| format-convert | "Convert to LaTeX" / "Convert citations to [format]" | 9 only | Formatted document; includes citation format conversion (APA 7 / Chicago / MLA / IEEE / Vancouver) |
302| citation-check | "Check citations" | 6 only | Citation error report |
303| plan | "guide my paper" / "help me plan my paper" | 1->10->3->4 | Chapter Plan + INSIGHT Collection |
304| revision-coach | "parse reviews" / "revision roadmap" / "I got reviewer comments" / "should we push back" / "conference rebuttal" / "grant panel response" / explicitly identified real committee correspondence | 12 only | Peer-review path: immutable Roadmap core + explicit author sidecar + optional Tracking Template/Response Skeleton. Committee path: separate #668 concern tracker + placeholder response skeleton; no Schema 11, reviewer obligation/severity, or determination. |
305| **disclosure** (v3.2) | **"AI disclosure for Nature" / "generate AI usage statement"** | **9 only** | **Default venue path: REQUIRED / ACTION_ONLY / NOT_REQUIRED / UNKNOWN applicability plus typed halt status; policy-anchor path: anchor-specific render** |
306| **rebuttal-audit** | **"audit my response" / "check my rebuttal" / "did I miss any reviewer comment"** (requires BOTH reviewer comments AND an existing rebuttal draft) | **12 only (parse-only)** | **Rebuttal QA report: per-comment coverage + gaps + risk flags. No new response generated; advisory only. Does NOT emit Schema 11 / Material Passport / verified status.** |
307
308**Disclosure dispatch contract:** when mode=disclosure, agent 9 takes its standalone branch and MUST load references/disclosure_mode_protocol.md before producing text. It does not run normal Phase 7 formatting or substitute the generic full-pipeline AI statement; the protocol selects the venue database or policy-anchor path and owns all halt/render decisions.
309
310### Quick Mode Selection Guide
311
312| Your Situation | Recommended Mode | Spectrum |
313|----------------|-----------------|----------|
314| Starting from scratch with a clear RQ | full | balanced |
315| Need help planning before writing | plan | originality |
316| Just need an outline | outline-only | balanced |
317| Have a draft, received review feedback | revision | fidelity |
318| Have unstructured reviewer comments | revision-coach | balanced |
319| Have comments from a real committee/institutional review office to track | revision-coach committee-correspondence variant | fidelity |
320| Just need an abstract | abstract-only | fidelity |
321| Need to check/fix citations | citation-check | fidelity |
322| Need to convert format (LaTeX, DOCX) or citation style | format-convert | fidelity |
323| Want a systematic literature review paper | lit-review | fidelity |
324| Need a venue-specific AI-usage disclosure bundle for submission | disclosure | fidelity |
325| Have a written rebuttal draft to QA against reviewer comments | rebuttal-audit | fidelity |
326
327**Spectrum** (v3.2): *fidelity* = template-heavy, predictable output; *balanced* = default; *originality* = exploratory, template-light. See shared/mode_spectrum.md for the full cross-skill spectrum table.
328
329Not sure? Start with plan — it will guide you step by step. disclosure is a finishing step — run it after the paper is drafted, targeting the venue you plan to submit to.
330
331**Committee-correspondence routing:** use the revision-coach variant only when the
332user explicitly identifies a real committee/institutional review office. Load
333references/committee_correspondence_protocol.md; do not infer official authority
334from tone. The separate artifact is a source-accounted drafting aid and never enters
335peer-review Schema 11.
336
337### Mode Selection Logic
338
339> See references/mode_selection_guide.md for trigger-to-mode mappings and the full selection flowchart.
340
341---
342
343## Rebuttal-Audit Mode
344
345rebuttal-audit evaluates an author's **existing** rebuttal / response-to-reviewers draft for coverage, tone, and evidence. It is advisory QA — it does **not** write or rewrite the response.
346
347**Input gate (routing):** activate rebuttal-audit only when the user supplies BOTH (a) the reviewer comments / decision letter AND (b) an existing rebuttal/response draft to evaluate. If only (a) is present (no draft yet), route to revision-coach (which *generates* a response skeleton). If intent is ambiguous, clarify rather than guess.
348
349**What it produces:**
350- Per-comment coverage table — every reviewer concern marked addressed / partially / missing in the draft.
351- Gap list — concerns the draft fails to answer.
352- Risk flags — tone too combative, claims made without evidence, or a response that misreads the reviewer's actual point.
353- Improvement suggestions (advisory).
354
355**IRON RULE — integrity boundary (no false certification):** rebuttal-audit reuses revision_coach_agent's comment-parsing capability, but a standalone invocation runs **outside** the pipeline and therefore never passes Stage 4.5 final integrity. It **MUST NOT** emit a Schema 11 commitment_extracted ledger, **MUST NOT** write to the Material Passport, and **MUST NOT** mark the package ready_to_submit or any verified status. Producing a Schema 11 artifact would falsely imply the response entered the pipeline's traceability system. The output is an advisory QA report only.
356
357**Boundary vs re-review:** academic-paper-reviewer's re-review mode verifies the **revised manuscript** (did the author's claimed changes actually appear in the paper) and runs inside the pipeline. rebuttal-audit verifies the **response letter itself** (does the rebuttal cover every comment, is its tone/evidence sound) and runs standalone, advisory. Different artifacts, different layers.
358
359---
360
361## Revision Mode Patch Protocol (#390)
362
363In revision mode, draft_writer_agent does NOT re-emit the complete paper. The round runs **anchorize → patch → deterministic apply → finalizer**, confining the regeneration surface to the blocks the revision explicitly touches (DELEGATE-52 blast-radius containment; spec docs/design/2026-06-10-390-diff-patch-revision-mode-spec.md):
364
3651. **Anchorize** the draft (scripts/ars_anchorize_draft.py — idempotent, content-neutral): every block gets a stable <!--block:BNNNN--> marker and an exact manifest. Nothing rewrites the draft before apply.
3662. **Bind explicit authority (#670):** validate the immutable revision-roadmap/1.0, exact registered claim surfaces, and complete author-adjudication/1.0. The roadmap keeps severity, obligation, cost scope, and bounded consequence independent; author triage and exact targets live only in the separate explicit sidecar.
3673. **The writer emits current patch 1.1** (shared/contracts/patch/revision_patch.schema.json) as a sidecar — every op cites only will_address items, stays inside exact target/operation scopes, and explicitly declares claim/collateral arrays. Registered claim movement needs an exact author-approved replacement; declined overlap needs exact collateral authority.
3684. **Deterministic apply** (scripts/ars_apply_revision_patch.py) replays every binding before structural analysis or write. Current report format 1.3 carries the mechanically derived authorization witness and the honest unregistered_claim_drift_review_required E6 boundary. If E6 later detects a drift on an unregistered surface, the checkpoint has no default-open route: the author must explicitly choose restore, authorize_with_reason, or pause. Build and replay validation bind each choice to one explicitly named run-local raw session-event artifact; the sidecar retains its recomputed digest but neither path nor message. Untouched blocks remain byte-identical.
3695. **Continuous evidence:** every review write, all-declined no-op, and integrity-correction round enters revision-evidence-bundle/1.0, from an exact integrity-PASS draft to the exact final draft. A scope escalation requires a new explicit sidecar or a narrower patch; legacy full re-emission cannot claim current authorization PASS.
370
371Orchestrated runs follow pipeline_orchestrator_agent.md § Revision-Round Patch Sequencing; Mode B users run the same scripts by hand — exact commands in references/revision_patch_protocol.md. Honest boundary: registered surfaces and exact edit authority are machine-replayed, but unregistered semantic drift still requires E6 review. scripts/claim_strength_drift_disposition.py closes explicit handling of reported rows only; it does not make model-mediated detection deterministic or complete. The academic-paper full in-pair Phase 6→4 loop is outside this standalone/pipeline revision contract.
372
373---
374
375## Plan Mode: Chapter-by-Chapter Guided Planning
376
377Socratic mode that guides users through paper planning one chapter at a time. Builds a complete Paper Blueprint through structured dialogue.
378
379> See references/plan_mode_protocol.md for the full chapter-by-chapter dialogue flow and Paper Blueprint structure.
380
381---
382
383## Handoff Protocol: deep-research -> academic-paper
384
385intake_agent automatically detects deep-research materials (RQ Brief /
386Bibliography / Synthesis / INSIGHT Collection) and skips redundant steps. It
387also requires the exact builder-produced preregistration-artifact/1.0 handoff
388receipt and, when provided, its explicitly named companion. Intake validates and
389carries those bytes unchanged; it does not infer status, repair/rebuild the
390sidecar, follow its display path, or substitute a planning template. A later
391explicit user supply must be represented by a new sidecar from the named
392deterministic builder. See deep-research/SKILL.md Handoff Protocol and
393shared/references/cross_document_consistency_advisory_protocol.md.
394
395---
396
397## Failure Paths
398
399See references/failure_paths.md for details. Quick reference:
400
401| Failure Scenario | Handling Strategy |
402|---------|---------|
403| Insufficient research foundation | Recommend running deep-research first |
404| Wrong paper structure selected | Return to Phase 2, suggest alternative structure |
405| Word count significantly over/under target | Identify problematic chapters, suggest trimming/expansion |
406| Citation format entirely wrong | Re-run the entire citation phase |
407| Peer review rejection | Analyze rejection reasons, suggest major revision or restructuring |
408| Plan mode not converging | Suggest switching to outline-only mode |
409| Incomplete handoff materials | List missing items, suggest supplementing or re-running |
410| User abandons midway | Save completed Chapter Plan |
411
412---
413
414## Full Academic Pipeline
415
416See academic-pipeline/SKILL.md for the complete workflow.
417
418---
419
420## Phase 0: Configuration Interview
421
422See agents/intake_agent.md for the complete field definitions of the Phase 0 configuration interview. The interview covers 9 core items: paper type, discipline, target journal, citation format, output format, language, abstract, word count, and existing materials — plus co-authors, funding, optional style calibration, the domain evidence profile (Step 12), the citation-verification level (Step 13, #392), and the independent retraction policy (Step 14, #651). Both citation policies are mark-only by default with explicit strict opt-in, seeding terminal_policies.citation_existence and terminal_policies.retraction respectively. When an author confirms a venue/track/type target, Phase 0 also resolves the #683 ReviewTargetContext and initializes the #684 pointer-only binding manifest before any criteria-aware consumer runs; absence uses the explicit field-general criteria_binding_unavailable path. Outputs a Paper Configuration Record, awaiting user confirmation.
423
424---
425
426## File Structure
427
428**Agent definitions**: agents/{agent_name}.md — one file per agent (12 total, matching Agent Team table above).
429
430**References** (28 files in references/):
431- Citation: apa7_extended_guide, apa7_chinese_citation_guide, citation_format_switcher
432- Writing: academic_writing_style, writing_quality_check, writing_judgment_framework
433- Structure: paper_structure_patterns (6 types), abstract_writing_guide, intro_title_rhetoric_guide (CARS moves + title checklist)
434- Domain: hei_domain_glossary (bilingual), journal_submission_guide, latex_template_reference, domain_evidence_profiles (advisory screening profiles)
435- Process: failure_paths (12 scenarios), mode_selection_guide (11 modes), plan_mode_protocol, workflow_phase_details, revision_patch_protocol (#390 Mode B commands + marker lifecycle)
436- Ethics: credit_authorship_guide (CRediT 14 roles), funding_statement_guide, statistical_visualization_standards
437- Disclosure (v3.2): disclosure_mode_protocol (default venue applicability/status bundle: REQUIRED, ACTION_ONLY, NOT_REQUIRED, UNKNOWN, plus typed halts; separate policy-anchor rendering), venue_disclosure_policies (v2 database: ICLR, NeurIPS, Nature, Science, ACL, EMNLP, plus medical-publishing policy targets — ICMJE, NEJM, The Lancet, JAMA, BMJ, PLOS, Frontiers, publisher-wide Chinese Nursing Journals Publishing House 中华护理杂志社, journal-level International Eye Science 国际眼科杂志)
438- Integrity (v3.3): anti_leakage_protocol (knowledge isolation), vlm_figure_verification (optional VLM figure check)
439- Policy anchors (#108): policy_anchor_table, policy_anchor_disclosure_protocol
440- Meta: changelog (version history)
441- Also: deep-research/references/apa7_style_guide.md (base reference, extended here)
442
443**Templates** (11 files in templates/): imrad, literature_review, case_study, theoretical_paper, policy_brief, conference_paper, latex_article_template.tex, bilingual_abstract, credit_statement, funding_statement, revision_tracking (4 status types).
444
445**Examples** (9 files in examples/): imrad_hei_example, literature_review_example, plan_mode_guided_writing, chinese_paper_example, revision_mode_example, revision_recovery_example, clinical_citation_verification_checklist, clinical_epistemic_status_example, version_family_reconciliation_example.
446
447---
448
449## Anti-Patterns
450
451Explicit prohibitions to prevent common failure modes:
452
453| # | Anti-Pattern | Why It Fails | Correct Behavior |
454|---|-------------|-------------|-----------------|
455| 1 | **AI-typical overused terms** | "delve into", "crucial", "it is important to note" = instant AI detection | Use discipline-specific vocabulary; see references/writing_quality_check.md |
456| 2 | **Em dash abuse** | More than 2 em dashes per page signals AI writing | Use parentheses, commas, or restructure the sentence |
457| 3 | **Throat-clearing openers** | "In this section, we will discuss..." adds no information | Start with the claim or finding directly |
458| 4 | **Uniform paragraph lengths** | Every paragraph is 4-5 sentences = monotonous AI rhythm | Vary paragraph length naturally (2-8 sentences) |
459| 5 | **⚠️ IRON RULE: Fabricated citations** | Inventing plausible-sounding references that don't exist | Every citation must be verified via DOI or WebSearch; see academic-pipeline/agents/integrity_verification_agent.md |
460| 6 | **Sycophantic revision** | Accepting all reviewer feedback without critical evaluation | Use REVIEWER_DISAGREE status when reviewer is wrong; justify with evidence |
461| 7 | **Scope creep during revision** | Adding unrequested sections/analyses to "improve" the paper | Revision addresses reviewer concerns only; new content requires explicit user approval |
462| 8 | **Ignoring failure paths** | Continuing despite desk-reject signals or fatal methodology flaws | Check references/failure_paths.md; invoke F11 Desk-Reject Recovery when triggered |
463
464---
465
466## Quality Standards
467
468### Writing Quality
4691. **Every claim must have a citation** or be supported by the paper's own data — or, for #548 absence/novelty claims, carry documented-search provenance plus the named nearest prior work where one exists (the explicit absence-of-adjacent-work statement suffices otherwise; no source can cite an absence)
4702. **Zero citation orphans** — in-text citations <-> reference list must perfectly match
4713. **Consistent register** — academic tone appropriate for the discipline
4724. **Logical flow** — clear transitions between paragraphs and sections
4735. **Word count compliance** — within +/-10% of target
474
475### Bilingual Abstract Quality
4766. **Independent writing** — zh-TW and EN abstracts are independently composed, NOT mechanical translations
4777. **Structural alignment** — both abstracts cover the same key points in the same order
4788. **Keywords** — 5-7 per language, reflecting the paper's core concepts
4799. **Word count** — EN: 150-300 words; zh-TW: 300-500 characters
480
481### Citation Quality
48210. **Format compliance** — 100% adherence to selected citation style
48311. ⚠️ IRON RULE: **DOI inclusion** — every source with a DOI must include it; every citation must be verified via DOI or WebSearch
48412. **Currency** — flag sources older than 10 years (unless seminal works)
48513. **Self-citation ratio** — flag if >15%
486
487### Peer Review
48814. **Five criterion-bound dimensions** — Originality, Methodological Rigor, Evidence Sufficiency, Argument Coherence, and Writing Quality; report categorical judgements with evidence and no numerical aggregation
48915. **Actionable feedback** — every criticism must include a specific suggestion
49016. **Max 2 revision rounds** — unresolved items become Acknowledged Limitations
491
492### Mandatory Inclusions
493⚠️ **IRON RULE**: Every paper MUST include: Data Availability Statement, Ethics Declaration, Author Contributions (CRediT), Conflict of Interest Statement, Funding Acknowledgment.
49417. **AI-use reporting** — normal full / format-convert flows include the existing generic AI tool-usage statement; standalone disclosure mode instead follows the selected venue applicability/status or policy-anchor rendering contract
49518. **Limitations section** — explicitly discuss study limitations
49619. **Ethics statement** — when applicable (human subjects, sensitive data)
497
498---
499
500## Output Language
501
502Follows the user's language. Academic terminology is kept in English. Bilingual abstracts are always provided regardless of the main text language.
503
504---
505
506## Integration with Other Skills
507
508```
509academic-paper + tw-hei-intelligence -> Evidence-based HEI paper with real MOE data
510academic-paper + deep-research -> Deep research phase -> paper writing phase (auto-handoff)
511academic-paper + report-to-website -> Interactive web version of the paper
512academic-paper + notebooklm-slides-generator -> Presentation slides from paper
513academic-paper + academic-paper-reviewer -> Peer review -> revision loop
514```
515
516---
517
518## Model Tiering (#517, optional)
519
520When ARS_MODEL_TIERING is set, the dispatching session routes this skill's agents per shared/model_tiering.md (canonical: the full 39-agent judgment/execution table + rules). Compact rule:
521
522- **Unset (default):** every agent inherits the session model — byte-equivalent pre-#517 behavior.
523- **economy** (frontier-tier session): execution-type agents dispatch ONE tier below the session model — floor Opus-class, never lower; judgment-type agents stay on the session model. No-op at or below the floor (announce once).
524- **quality-boost** (below-frontier session): judgment-type agents at the checkpoint surfaces (Stage 2.5/4.5 gates; the opt-in Stage 4→5 claim–ref audit; final review) jump UP to the frontier tier (however many tiers away — not a single increment); nothing is ever downgraded. No-op at the frontier (announce once).
525- Unknown values → warn once, behave as unset. Tiers are relative positions, never hard-pinned model ids. When a direction is active, route repeated same-stage calls to the SAME worker so its prompt cache accumulates; unset means dispatch shapes stay byte-equivalent too.
526
527---
528
529## Version Info
530
531| Item | Content |
532|------|---------|
533| Skill Version | 3.3.1 |
534| Last Updated | 2026-08-15 |
535| Maintainer | Cheng-I Wu |
536| Dependent Skills | deep-research v1.0+ (upstream), academic-paper-reviewer v1.0+ (downstream) |
537
538---
539
540## Version History
541
542> See references/changelog.md for full version history.
543