All skills
imbad0202 avatar

/academic-paper

@825afa9

12-agent academic paper writing pipeline. 11 modes (full/plan/outline/revision/revision-coach/abstract/lit-review/format-convert/citation-check/disclosure/rebuttal-audit). 6 paper types, 5 citation formats, bilingual abstracts, LaTeX/DOCX-via-Pandoc/PDF output. Style Calibration + Writing Quality Check + Anti-Patterns with IRON RULE markers. Triggers: write paper, academic paper, guide my paper, parse reviews, I got reviewer comments, revision roadmap, should we push back, conference rebuttal, grant panel response, audit my rebuttal, check my response draft, AI disclosure, check citations, citation check, check my references, verify references, look over the refs, 寫論文, 學術論文, 引導我寫論文, 審查意見, 我收到審查意見, 修訂路線圖, 評估回覆, 檢查引用, 引用檢查, 檢查參考文獻, 核對文獻, 논문 작성, 초록 작성, 논문 수정, 논문 계획을 도와줘, 심사 의견을 받았어, 심사 의견 반영, 답변서 점검, AI 사용 고지, 인용 확인, 인용 형식 검사, enmendar mi artículo, redactar artículo, guía mi artículo, analizar reseñas, auditar mi respuesta, verificar borrador de respuesta, verificar citas, divulgación de IA.

Use this Skill: https://skilld.dev/gh/imbad0202/academic-research-skills/academic-paper

This session only. Nothing lands on disk.

examplescommitment_ledger_example.md

≈2.1k tokens on demand. Your agent reads this file only when SKILL.md points to it.

Commitment Ledger Worked Example (Kong A1 / v3.11)

This example traces three reviewer comments through the Schema 11 commitment ledger — from revision_coach_agent Step 3.5 extraction through revision execution and re-review verification per the new fulfillment-verification step.

Companion to revision_recovery_example.md. Where that example focuses on RESOLVED/UNRESOLVABLE outcomes, this one focuses on per-promise lifecycle.

Setup

Reviewer R1 raises three comments on a manuscript about CNN ablations on small image datasets:

  • R1-1: "Please add an ablation on CIFAR-100 and clarify why ResNet-50 was preferred over Vision Transformer."
  • R1-2: "Discussion should acknowledge the recent Patel 2025 baseline."
  • R1-3: "It would strengthen the paper to include error bars across 5 seeds."

Step 3.5 output: commitment_extracted (per revision_coach_agent)

- concern_id: R1-1
  original_comment: "Please add an ablation on CIFAR-100 and clarify why ResNet-50 was preferred over Vision Transformer."
  commitment_extracted:
    - commitment_text: "add ablation on CIFAR-100"
      commitment_type: add_experiment
      required_evidence_type: new_table
    - commitment_text: "clarify why ResNet-50 was preferred over Vision Transformer"
      commitment_type: add_clarification
      required_evidence_type: discussion_paragraph

- concern_id: R1-2
  original_comment: "Discussion should acknowledge the recent Patel 2025 baseline."
  commitment_extracted:
    - commitment_text: "acknowledge Patel 2025 baseline in Discussion"
      commitment_type: add_citation
      required_evidence_type: new_citation

- concern_id: R1-3
  original_comment: "It would strengthen the paper to include error bars across 5 seeds."
  commitment_extracted:
    - commitment_text: "add error bars from 5-seed runs"
      commitment_type: add_experiment
      required_evidence_type: new_figure

Note R1-1 split into two commitments — compound comments decompose per Step 3.5 procedure.

After revision: author fills fulfillment_status + rationale (nested per commitment)

The lifecycle fields are appended inside each commitment object (not as separate parallel lists). A fulfilled commitment carries fulfillment_status only — no unfulfilled_rationale placeholder.

- concern_id: R1-1
  revision_location: "§4.3 Table 4; §5.2 ¶3"
  commitment_extracted:
    - commitment_text: "add ablation on CIFAR-100"
      commitment_type: add_experiment
      required_evidence_type: new_table
      fulfillment_status: fulfilled
    - commitment_text: "clarify why ResNet-50 was preferred over Vision Transformer"
      commitment_type: add_clarification
      required_evidence_type: discussion_paragraph
      fulfillment_status: fulfilled

- concern_id: R1-2
  revision_location: "§5.4 ¶1"
  commitment_extracted:
    - commitment_text: "acknowledge Patel 2025 baseline in Discussion"
      commitment_type: add_citation
      required_evidence_type: new_citation
      fulfillment_status: fulfilled

- concern_id: R1-3
  revision_location: "§4.3 Table 4 footnote"
  commitment_extracted:
    - commitment_text: "add error bars from 5-seed runs"
      commitment_type: add_experiment
      required_evidence_type: new_figure
      fulfillment_status: partial
      unfulfilled_rationale: "Computational budget allowed 3 seeds rather than 5; standard errors reported in Table 4 footnote. Five-seed replication acknowledged as future work in §6 Limitations."

Re-review output: COMMITMENT_GAP surface (per re_review_mode_protocol step 5)

The re-reviewer walks each commitment_extracted entry:

  • R1-1, both commitments: locate §4.3 Table 4 (new ablation table) + §5.2 ¶3 (ResNet vs ViT rationale) — both present and substantive. Status confirmed fulfilled.
  • R1-2: locate §5.4 ¶1 — Patel 2025 cited. Status confirmed fulfilled.
  • R1-3: locate §4.3 Table 4 footnote — finds 3-seed error bars + future-work acknowledgment in §6 Limitations. Author status partial is internally consistent (rationale form (c) "deferred to future work"). No COMMITMENT_GAP surfaced — rationale is present and one of the three valid forms.

Contrast: a case that DOES surface COMMITMENT_GAP

If R1-3 instead had:

- concern_id: R1-3
  revision_location: "§4.3 Table 4"
  commitment_extracted:
    - commitment_text: "add error bars from 5-seed runs"
      commitment_type: add_experiment
      required_evidence_type: new_figure
      fulfillment_status: not-fulfilled
      # unfulfilled_rationale absent on a not-fulfilled commitment — Schema 11 validation flags this

…the re-reviewer would surface:

COMMITMENT_GAP (R1-3): commitment "add error bars from 5-seed runs" status not-fulfilled with no rationale. Author must provide one of: done-elsewhere pointer, rejection reasons, or future-work acknowledgment before final submission.

This is advisory — final responsibility rests with the author. Re-review does not block submission; it surfaces the gap so the author can act.

Granular and uncategorizable evidence: prose_edit and other

The seven structural manuscript-evidence types cover the typical experiment / clarification / citation / restructure cases. Two further values handle the long tail of reviewer comments that would otherwise be misclassified or silently dropped:

Suppose R2 raises two more comments:

  • R2-1: "Fix the typo in the definition of consistency on page 4 and correct the equation formatting in §3.2."
  • R2-2: "The submission feels incomplete somewhere in the framing, please tighten it."
- concern_id: R2-1
  original_comment: "Fix the typo in the definition of consistency on page 4 and correct the equation formatting in §3.2."
  commitment_extracted:
    - commitment_text: "fix typo in 'consistency' definition, p.4 (other: copy-edit, no structural change)"
      commitment_type: other
      required_evidence_type: prose_edit
    - commitment_text: "correct equation formatting in §3.2 (other: formatting fix, no structural change)"
      commitment_type: other
      required_evidence_type: prose_edit

- concern_id: R2-2
  original_comment: "The submission feels incomplete somewhere in the framing, please tighten it."
  commitment_extracted:
    - commitment_text: "tighten framing (reviewer unspecified — clarify location at re-review)"
      commitment_type: other
      required_evidence_type: other

R2-1's two commitments use prose_edit: both are sentence-/equation-level changes too granular to bucket as methods_paragraph or new_section, yet they ARE manuscript changes (so acknowledgment_only would be the wrong semantics). They verify at revision_location in the revised manuscript like any other manuscript-evidence type.

R2-2 is genuinely uncategorizable — the reviewer did not name a location or a deliverable. It uses required_evidence_type: other. At re-review this surfaces an EVIDENCE_TYPE_UNSPECIFIED advisory (distinct from COMMITMENT_GAP): the re-reviewer cannot pin the evidence and prompts the author to specify where the change landed. If the author populates revision_location, the re-reviewer verifies there; if not, the commitment is reported as unverifiable alongside the advisory.

Both values exist because commitment_type already carries an other escape hatch — without the matching required_evidence_type values, the agent's instruction to "extract commitments from every parsed comment" would force a typo fix into methods_paragraph (wrong) or omit it entirely (violates the every-comment rule).

Why this matters (Kong §7.4.3 anchor)

Per Kong et al. 2026 §7.4.3, ICLR 2025 [21] documents a measurable commitment-fulfillment gap: persuasive rebuttal text + matrix saying "Verified: Y" can still hide that the actual experiment was not run. The commitment ledger forces per-promise lifecycle traceability — extracted promises, classified outcomes, mandated rationale — closing the gap at the artifact level instead of relying on reviewer vigilance.


See also: revision_recovery_example.md, shared/handoff_schemas.md Schema 11, academic-paper-reviewer/references/re_review_mode_protocol.md step 5.

Source: SKILL.md on GitHub

1 alert1d5 checks · Risk SAFE
  • Gen Agent Trust Hub1d

    This skill provides a highly structured 12-agent academic paper writing pipeline. It contains robust internal defenses, including explicit 'instruction-data' boundaries and sanitization of user-provided content. However, the skill's complexity, its reliance on shell command execution for document processing and utility scripts, and its heavy ingestion of untrusted third-party materials (such as reviewer comments and external research content) present a surface for potential misuse and indirect prompt injection.

  • Socket1d

    No alerts

  • Snyk1d

    Risk: LOW · No issues

  • Runlayer6mo

    7/44 files flagged

  • ZeroLeaks5mo

    Score: 93/100 · 2 sections analyzed

Signed by skilld at 825afa9. This ties the file your Agent reads to that commit on GitHub. It does not review the instructions.

Last checked against GitHub 2 days ago.

Activeupdated last week
Other metadata
metadata
{
  "version": "3.3.1",
  "last_updated": "2026-08-15",
  "status": "active",
  "data_access_level": "raw",
  "task_type": "open-ended",
  "related_skills": [
    "deep-research",
    "academic-paper-reviewer",
    "academic-pipeline"
  ]
}

README badge

README badge for imbad0202/academic-research-skills/academic-paper