用途:通过 DOI 或精确标题,从合法开放获取来源获取学术论文 PDF,并原子化保存已校验的文件及相邻的来源清单(provenance manifest)。需要用户明确指定最终输出目录,不得猜测研究目录。
主要能力:自动解析顺序为 Unpaywall、Semantic Scholar OA、arXiv,最后为浏览器接管。结果提交前要求具备经校验的文件、SHA-256、大小及相邻清单。支持 DOI 或精确标题查询,标题可加作者与年份辅助消歧;出版方 URL 需先解析或确认为 DOI 后再传入 fetch.py,CLI 不接受出版方 URL 作为输入。
使用方式:先将已安装技能目录解析为绝对路径,例如 SKILL_DIR='/absolute/path/to/academic-paper-download'。安装后创建锁定的 CLI 运行时并做离线冒烟测试: python3 "$SKILL_DIR/scripts/runtime.py" bootstrap --locked --json python3 "$SKILL_DIR/scripts/runtime.py" smoke --offline --json 按 DOI 获取: python3 "$SKILL_DIR/scripts/runtime.py" fetch '10.48550/arXiv.1706.03762' --out ./papers --format json --pretty 按精确标题获取: python3 "$SKILL_DIR/scripts/runtime.py" fetch --title 'A precise paper title' --author 'First Author' --year 2024 --out ./papers --format json --pretty 退出码:0 完成,1 未解析,3 无效输入,4 可重试传输失败。
适用场景:需要合法获取开放获取论文并保留访问与许可来源记录时使用。
限制:自动 OA 来源耗尽或出版方页面需要登录、机构访问或交互时,需显式选择浏览器后端并阅读 references/browser-handoff.md,优先使用已具机构授权的当前 Chrome 会话,登录失败后不得静默切换后端。使用 CloakBrowser 需另读 references/cloakbrowser-handoff.md,且保持其在 PaperTransport 之外,不得用其隐身或拟人化功能解决 CAPTCHA、Turnstile、付费墙、安全警告或认证。运行时位于已安装技能目录之外,适用于复制、符号链接和只读安装。不得从成功访问推断再分发许可,须保留 access_basis、license_status 和来源声明的许可字段。不得选择 Downloads 中最新文件,也不得接受 HTML、截断 PDF、符号链接、部分下载、凭据、Cookie、密码或会话令牌。运行时配置见 references/env.md;嵌入库或注入来源记录传输时见 references/integration.md。