关于 openscite
openscite 是用于分析引用用户所提供学术 PDF 的论文的可恢复工作流。它引导证据审查,并以用户指定语言生成报告,使用无需 API 密钥的 OpenAlex。
主要功能
- 01可恢复的引文分析工作流
- 02将引用论文与提供的 PDF 匹配
- 03按论点标注引用立场
- 04生成带覆盖情况的证据报告
适用场景
- 01审查引用目标论文的研究
- 02人工筛选后继续分析
- 03部分全文不可用时报告证据
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ mo7yw4ng/ openscite --skill openscite安装后在 Claude Code 中输入/openscite确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
LICENSEREADME.mdREADME.zh-TW.md.gitignoreagents/openai.yamlreferences/labeling.mdfulltext-processing.mdproviders.mdoutput-schema.mdranking.mduser-interaction.mdscripts/openscite.py__init__.pyrender_report.pydocuments.pyopenscite_core.pytests/test_openscite_core.py详细介绍
OpenScite
分析引用一篇用户提供的学术 PDF 的论文。上传的 PDF 是目标论文,而不是要跟进其参考文献的来源。保留用户文件名,并以用户使用的语言撰写报告,同时保留标题和引文原文语言。使用无密钥的 OpenAlex。
使用可恢复运行器
将此技能的目录解析为 <skill-dir>。从用户的工作区运行命令,以便默认产物创建在该目录中。不要生成替代流水线脚本。
python "<skill-dir>/scripts/openscite.py" prepare "<target.pdf>" --language <zh-TW|en> [--n N] [--run-dir <dir>]
将 prepare 作为首个 PDF 操作。它会运行最新的本地 Anydoc 版本、缓存输出、按 DOI/标题匹配任意收件箱文件名,并且仅在其产物记录了提取失败时才使用回退方案。只有在需要精确页码定位时才添加 --require-page-aware;这会有意使用支持页码定位的回退方案。仅将 --rule-triage 用于诊断。
每次重试都使用相同的目标、运行目录、N、模式和语言。根据返回的状态执行:
needs_user_selection:如有需要,先创建target-claims.json,然后读取references/user-interaction.md,仅询问候选列表大小,并使用--n N重新运行。建议使用 20;如果已有正数N,则直接复用,无需询问。needs_target_claims:读取target-analysis-packet.json,从目标论文中提取离散主张,将 JSON 数组写入target-claims.json,然后重新运行。每项必须包含claim_id、claim和source;在有依据时,纳入人群、干预/暴露、结果、方向和页码。不要向用户询问这项内部分析。needs_abstract_triage:读取references/ranking.md,加载一次triage-context.json,并且仅分析triage-pending.jsonl。如果可用子 Agent,则在一个并行批次中分派最多四个互不重叠的批次。将结果追加到triage-results.jsonl,保留每项 ID/哈希,然后重新运行prepare。needs_analysis:读取references/labeling.md,加载一次analysis-context.json,并且仅分析analysis-pending.jsonl。每组论文交由同一个工作者处理;如果可用子 Agent,则在一个并行批次中分派最多四组论文。将每条陈述的一个结果追加到analysis-results.jsonl,保留 ID/哈希并设置label_source: model,然后运行:
python "<skill-dir>/scripts/openscite.py" finalize --run-dir "<run-dir>"
needs_user_files:读取references/user-interaction.md。如果可使用交互式浏览器功能,则询问一次是否使用用户当前的浏览器会话(包括机构/VPN 访问权限)下载fulltext-requests.md中列出的授权 PDF。若用户同意,则使用有界并行浏览器流程;否则提供链接,并接受附件或fulltext/inbox/中的文件。保留原始文件名,并在文件到达后重新运行相同的prepare命令。partial或complete:交付report.md并简要说明覆盖范围。如果无法获取全文或上下文未绑定的情况明确标记为unknown,则partial也是有效的证据报告。
仅重试待处理行;有效的结果行仍可复用。如果 finalize 返回 needs_analysis,处理重新生成的待处理文件并重新运行它。
如果 fulltext-manifest.json 包含有歧义的匹配项,请读取 references/user-interaction.md 并提出一个映射问题。将确认的映射保存到 file-mappings.json:
{"mappings":[{"file_name":"original-name.pdf","citing_work_id":"W123"}]}
然后重新运行 prepare。子 Agent 将记录返回给主 Agent,不会询问用户或编辑共享产物。
证据和访问规则
提供方/开放获取问题请阅读 references/providers.md;解析或匹配失败请阅读 references/fulltext-processing.md;仅在扩展产物时阅读 references/output-schema.md。
使用用户提供的文件和合法的开放获取 URL。验证 PDF 文件标识;在进行托管 OCR 前征得明确同意。不要在 report.md 中包含诊断信息和排名内部信息。
针对每段与目标绑定的引文内容判定立场。仅出现在参考文献中的命中、仅涉及主题的命中以及缺少证据的情况均标记为 unknown;规则输出不得作为模型标签。
完成检查
必须包含 run.json、target.json、selection.json、citing-works.json、citations.json、fulltext-requests.md 和 report.md。每条非 unknown 声明都需要精确的上下文、不可变哈希、置信度、理由以及 label_source: model|human。报告中先列出论文数量,再列出段落数量,并使用用户的语言,不包含调试元数据。