academic-research-skills
Orchestrator for the full academic research pipeline: research -> write -> integrity check -> review -> revise -> re-review -> re-revise -> final integrity check -> finalize. Coordinates deep-research, academic-paper, and academic-paper-reviewer into a seamless 10-stage workflow with mandatory, coverage-bounded integrity checks, two-stage peer review, and auditable quality-assurance artifacts. Triggers on: academic pipeline, research to paper, full paper workflow, paper pipeline, end-to-end paper, research-to-publication, complete paper workflow, 연구부터 논문까지, 연구 주제 설정부터 논문 완성까지, 논문 전체 워크플로, flujo de trabajo académico, investigación a artículo, flujo completo de artículo, pipeline de investigación completa, publicación de investigación, flujo de trabajo completo del artículo.
1How It Works & Mechanism
It is not a single skill, but a 4-skill suite (academic-paper writing / academic-paper-reviewer peer review / deep-research study / academic-pipeline orchestration). All modes are consolidated into a single registry table: 27 modes, acting as a single source of truth; any mode changes must update this registry first.
Single source of truth for all modes across the ARS suite. **27 modes** across 4 skills.
The orchestration layer is intentionally designed to 'do no heavy lifting': it only performs stage detection, mode recommendations, dispatching, and state tracking, delegating substantial tasks entirely to the other three skills.
It does not perform substantive work — it only detects stages, recommends modes, dispatches skills, manages transitions, and tracks state.
The writing side decomposes the 8-stage pipeline into 12 role prompts, using a v3.6.6 generator-evaluator 4-call contract in full mode for physical isolation—splitting the same logic into four separate model invocations to prevent 'inspecting the manuscript first and then rationalizing the standards.'
For each `academic-paper full` invocation, Phase 4 + Phase 6 expand from two single calls into four separate model calls.
Integrity gates are mandatory and strictly block the pipeline: Stage 2.5 and Stage 4.5 must execute the 7-mode AI Research Failure Mode Checklist, blocking execution if SUSPECTED or INSUFFICIENT EVIDENCE on critical modes is triggered.
If any of the 7 modes is `SUSPECTED`, or if Modes 1/3/5/6 are `INSUFFICIENT EVIDENCE`, the pipeline **blocks**
The review side consists of a 5-member panel (Journal-Fit + 3 peer reviewers + a fixed Devil's Advocate) and is hard-constrained to be read-only—manuscript edits are prohibited.
Reviewers MUST NOT modify the submitted manuscript.
Writing scope enforcement does not rely on self-discipline but is enforced at the hook layer: PreToolUse intercepts Write/Edit/MultiEdit/Bash and forwards them to a Python guard; if the guard fails, it falls back to pass-through and will never emit an allow.
# Canonical pass-through output: no permissionDecision => falls back to the normal permission # flow (NEVER emit "allow" — that would skip every other permission rule).
Citation verification uses a deterministic four-index existence gate (Crossref / OpenAlex / arXiv / Semantic Scholar) with results cached locally, explicitly distinguishing between a user's self-reported 'I have read this' and independent evidence.
The deterministic citation-existence gate (#182) fires at the Stage 2.5 / 4.5 integrity gates or on standalone `verify_passport.py` / `verify_citation` calls, cache-through by default.
The network surface is self-disclosed and enforced via CI synchronization: any script adding a direct network import or any shell command adding curl must be registered in DATA_FLOWS.md beforehand, or CI will fail.
a script that gains a *direct* network import, or a shell script that gains a `curl`, fails CI until it has a row here.
The only default automated outbound call is the version check upon session startup: it curls upstream plugin.json for version comparison with a 24h cache, a 3s timeout, an option to disable with a single flag, and anti-poisoning version string validation.
REMOTE_URL="${ARS_UPDATE_CHECK_REMOTE_URL:-https://raw.githubusercontent.com/Imbad0202/academic-research-skills/main/.claude-plugin/plugin.json}"
2Core Capabilities
3External Dependencies
| Kind | Dependency / Endpoint |
|---|---|
| api | Semantic Scholar Graph API(引文存在性校验,key 可选,无 key 也工作) |
| api | OpenAlex API(引文存在性校验,支持 polite email) |
| api | Crossref REST API(DOI 元数据/存在性) |
| api | arXiv API(预印本存在性,无 key,≥3s 节流) |
| api | 跨模型盲评(opt-in,需 env + 逐会话同意;评审卡与论文元数据会发往外部 provider) |
| network | 会话启动版本检查(默认开启,curl 上游 plugin.json,3s 超时,ARS_UPDATE_CHECK=0 关闭) |
| cli | python3(守卫、校验、引文客户端等 ~431 个脚本;README 称核心技能是 prompt-driven,python 仅守卫与少数 opt-in 命令可选) |
| cli | Pandoc / tectonic + Source Han Serif TC(DOCX / APA 7.0 PDF 输出,可选) |
| package | 开发依赖(pytest / yaml / jsonschema),CI 内 pip install |
4Recommended Governance & Evidence
- scripts/: Local script or command execution: hooks/run_guard.sh (triggered automatically via PreToolUse) -> scripts/ars_write_scope_guard.py: intercepts Write/Edit/MultiEdit/Bash
- 网络端点: Declared external network access: Default automated: SessionStart curls https://raw.githubusercontent.com/Imbad0202/academic-research-suite/...
- 本地工作目录: File I/O and artifact output: Hook-enforced writing scope: PreToolUse intercepts all Write/Edit/MultiEdit/Bash operations, evaluated by ars_write_scope_guard.py
5Second-Pass Verification
- [ok] skill.path(任务表标『待定位』);套件条目指向哪个具体 skill — 本条目展示名『Academic Research Skills』对应的是 4-skill 套件,仓库根无集合级 SKILL.md。skill.path 现指向套件编排器 academic-pipeline —— 它是 research→write→review→revise→finalize 全流程的入口与状态机(10 阶段、强制完整性闸门、passport 续航),也是 plugin.json 描述的『Contract-audited academic research pipeline』最直接的承载者。其余 3 个并列 skill 为:academic-paper(12-agent 写作流水线)、academic-paper-reviewer(5 席评审面板)、deep-research(13-agent 研究流水线);另注意仓库内 skills/ 目录只有 4 个指向上述目录的符号链接,是给按 skills/ 查找的宿主用的发现 shim。本 JSON 的 caps/assets 覆盖全套件,evidence 逐条指向各自子目录。
- [discrepancy] official_desc 取哪一份(套件无集合级 frontmatter description) — 套件在仓库根没有集合级 SKILL.md/frontmatter description,因此官方描述有两个候选口径:代表 skill academic-pipeline 的 frontmatter description(逐字原文,含 10-stage 编排与多语触发词),或 .claude-plugin/plugin.json 的集合级 description('Contract-audited academic research pipeline for Claude Code: research → write → review → revise → finalize. 4 skills, 27 modes, 39 prompt roles…')。本条目 official_desc 采用前者(与 skill.path 指向的具体 skill 一致,满足『official_desc = SKILL.md frontmatter 原文』的取证规则);集合级口径已逐字记入 internal_assets 的 academic-pipeline/SKILL.md 条目说明,不丢失信息。注意该 description 本身在源文件里就是长触发词清单(中/韩/西多语),属原文形态而非我方截断。
- [discrepancy] 13-agent 声称 vs agents/ 实际文件数 — deep-research/SKILL.md 写 '## Agent Team (13 Agents)',而 deep-research/agents/ 实有 14 个文件(多出 timeline_extraction_agent.md)。docs/ARCHITECTURE.md §9 把它归入 v3.9.4 时间线校验咨询层('v3.9.4 temporal verification advisory layer (M1 timeline_extraction_agent + M2 5-pass verifier at Phase 4→5 + M3 IRON RULE + M6 first-party Crossref/pdftotext)'),即新增角色未回填到 SKILL.md 的 Agent Team 表——属文档滞后,不是能力夸大。其余三个 skill 的声称数与文件数一致(12/7/5)。
- [ok] 『39 prompt roles』是否有据 — 权威源 scripts/model_tiering_manifest.json 的 agents 数组恰 39 条(每条 path+tier:judgment/execution),shared/model_tiering.md 标题 '## Classification table (39 agents; frozen 2026-07-11, #517)',且 scripts/check_model_tiering.py 把该 manifest 与磁盘 *_agent.md、文档表三方钉死。磁盘 42 个 *_agent.md 中未被 manifest 收录的 3 个正是根 agents/(插件可见,model: inherit),与 plugin.json 自述一致。
- [ok] 『14 workflows』与仓库实际 — scout 记为低风险未核(只见到 13 个名字);本人 ls .github/workflows 得 14 个 yml(changelog-covers-merges / command-invariants / defer-label-gate / eval-harness / freshness-check / harness-retirement-monthly / platform-port-reminder / pr-closes-issue / pytest / release-cooldown / repository-hygiene / spec-consistency / tag-version-match / test-count-monotonic),与 ARCHITECTURE 的 'all fourteen workflows' 相符。
- [discrepancy] 引文闸门有效性(README 暗示 vs 自评) — 仓库自己的材料承认未被测量:docs/RISK_REGISTER.md 写 '**Evidence status**: `NOT_RUN` (capability matrix row `retrieval.citation_existence_gate`)' 与 '**Residual gap**: no measured hallucinated-citation catch rate';examples/showcase/README.md 更自曝 'a manual WebSearch audit of all 68 references revealed 21 issues (31%) that survived three rounds of automated integrity checking'。因此本 JSON 只陈述机制存在,不背书其检出率——这属『实现真实、效果未证』。
- [discrepancy] 校准模式是否可用于线上评审 — academic-paper-reviewer/SKILL.md 自认 'a target-specific candidate measured profile labelled `application_status: NOT_WIRED_TO_LIVE_REVIEW`',且线上评审与 Schema 6 包声明 NOT_CALIBRATED。若 README/宣传让人以为面板已校准,应以 SKILL.md 为准。
- [ok] 反注入条款的覆盖面 — 复核确认:仅 academic-paper-reviewer 及 shared/ground_truth_isolation_pattern.md 有显式条款(后者自认 'This is a guidance principle, not a runtime gate.');academic-paper / deep-research / academic-pipeline 三目录 grep injection|untrusted 零命中。已在 security.injection_surface 中按这一实况书写,未把评审侧的防线推广成整套件的能力。
6Verdict & Scenarios
c34ec0b645ba9a32…