关于 alterlab-citation-mgmt
用于研究与写作流程的引文管理技能,面向需要构建准确、规范参考文献的研究者。它涵盖文献检索、元数据提取、BibTeX 整理和引文信息校验。
主要功能
- 01检索 Google Scholar 和 PubMed
- 02从标识符提取文献元数据
- 03生成并整理 BibTeX
- 04检查字段完整性与重复项
- 05按 DOI 校验引文信息
适用场景
- 01为论文或学位论文构建参考文献表
- 02将 DOI、PMID 或 arXiv ID 转为 BibTeX
- 03清理并排序现有 BibTeX 文件
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ alterlab-ieu/ alterlab-academic-skills --skill alterlab-citation-mgmt安装后在 Claude Code 中输入/alterlab-citation-mgmt确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
assets/bibtex_template.bibcitation_checklist.mdevals/evals.jsonreferences/bibtex_formatting.mdcitation_validation.mdexample_workflows.mdgoogle_scholar_search.mdmetadata_extraction.mdpubmed_search.mdscript_cli_reference.mdsearch_strategy_reference.mdscripts/doi_to_bibtex.pyextract_metadata.pyformat_bibtex.pysearch_google_scholar.pysearch_pubmed.pyvalidate_citations.py详细介绍
引文管理
概述
在研究和写作过程中系统地管理引文:搜索学术数据库(Google Scholar、PubMed),从多个来源(CrossRef、PubMed、arXiv、DataCite)提取准确的元数据,验证引文信息,并生成格式规范的 BibTeX。这对于确保引文准确、避免参考文献错误和开展可复现研究至关重要。与 alterlab-literature-review 集成。
何时使用此技能
适用于以下场景:
- 在 Google Scholar 或 PubMed 上搜索特定论文
- 将 DOI、PMID 或 arXiv ID 转换为格式规范的 BibTeX
- 提取完整元数据(作者、标题、期刊、年份等)
- 验证现有引文的准确性或检查重复项
- 清理、排序和格式化 BibTeX 文件
- 查找某个领域中被高度引用的论文或奠基性论文
- 为手稿或学位论文编制参考文献目录
不适用场景
| 场景 | 请改用 |
|---|---|
| 证明每条参考文献确实存在、查出幻觉或伪造的引文,或检查撤稿情况 | alterlab-citation-verifier |
| 读取或编辑 Zotero 文献库(条目、分类、标签、附件) | alterlab-pyzotero |
| 开展完整的系统综述——跨多个数据库搜索、PRISMA 筛选、主题综合 | alterlab-literature-review |
| 围绕种子论文绘制引文/共被引网络 | alterlab-citation-graph |
| 撰写围绕参考文献展开的手稿正文 | alterlab-scientific-writing |
核心工作流
引文管理分为五个阶段。每个阶段都对应一个脚本(完整 CLI 说明见
references/script_cli_reference.md)和一份深入参考文档。
阶段 1 — 发现论文
搜索 Google Scholar(覆盖面广,跨学科)和 PubMed(生物医学,按 MeSH 编索引)。
python scripts/search_google_scholar.py "CRISPR gene editing" --limit 50 --output results.json
python scripts/search_pubmed.py "Alzheimer's disease treatment" --limit 100 --output alz.json
运算符、MeSH/字段标签、复杂查询和高影响力论文的启发式方法:
references/search_strategy_reference.md、references/google_scholar_search.md、
references/pubmed_search.md。
阶段 2 — 提取元数据
将任意标识符(DOI、PMID、arXiv ID、URL)转换为完整元数据。CrossRef 是
主要 DOI 来源(extract_metadata.py);PubMed E-utilities 和 arXiv API 分别处理 PMID
和 arXiv ID。doi_to_bibtex.py 使用 doi.org 内容协商,也可解析
DataCite DOI(数据集、软件)。
python scripts/doi_to_bibtex.py 10.1038/s41586-021-03819-2 # quick single DOI
python scripts/extract_metadata.py --pmid 34265844 # any identifier type
python scripts/extract_metadata.py --input identifiers.txt --output citations.bib # batch
来源和提取字段:references/metadata_extraction.md 以及
references/search_strategy_reference.md 中的“元数据来源”部分。
阶段 3 — BibTeX 格式化
生成简洁、标准化的条目。常见类型:@article、@book、
@inproceedings、@incollection、@phdthesis、@misc。使用 {} 保护标题的大小写,
页码范围使用 --,现代出版物应包含 DOI。
python scripts/format_bibtex.py references.bib --deduplicate --sort year --descending \
--output clean_references.bib
条目类型、必填字段和格式规则:references/bibtex_formatting.md。
阶段 4 — 验证
检查是否包含必填字段、数据是否一致,以及是否存在重复项。
DOI 解析需要联网,且默认处于关闭状态——添加 --check-dois 才会实际访问 doi.org/CrossRef(速度较慢)。validate_citations.py 只生成报告,不会重写
文件。要应用修复(页码连接号、作者分隔符、去重),请运行 format_bibtex.py。
python scripts/validate_citations.py references.bib --check-dois \
--report validation.json --verbose
验证标准和报告格式:references/citation_validation.md 以及
references/search_strategy_reference.md 中的“验证检查”摘要。
阶段 5 — 与写作集成
将经过验证的 BibTeX 导出到 LaTeX 手稿中(\bibliography{final_references})。
与 alterlab-literature-review(搜索/综合)、alterlab-scientific-writing
(手稿参考文献)和 alterlab-venue-templates(特定格式样式)配合使用。提交前,
对最终的 .bib 运行 alterlab-citation-verifier,确认每条记录都真实存在 —
此技能检查字段和格式,不检查记录是否存在。
端到端示例(构建参考文献列表、转换 DOI 列表、清理杂乱的 .bib、查找奠基性论文):references/example_workflows.md。
最佳实践
搜索:先广泛搜索,再逐步缩小范围;使用多个来源;利用“被引用次数”查找 奠基性论文;记录查询内容和日期。
元数据:优先使用 DOI(最可靠,CrossRef 元数据最完整);核实作者姓名、 出版物、年份;妥善处理预印本(有已发表版本时,使用已发表版本);统一 作者姓名和期刊缩写格式。
BibTeX 质量:使用有意义的引用键(FirstAuthor2024keyword);用 {} 保护
标题大小写;移除冗余字段;定期验证语法;按项目整理并谨慎合并,以避免重复。
验证:尽早且频繁地验证;及时修正无效 DOI 和缺失字段;手动审查重要引用。
常见问题
- 偏信单一来源 → 搜索多个数据库。
- 盲目接受元数据 → 对照原始来源抽查。
- 忽略 DOI 错误 → 提交前进行验证。
- 格式不一致 → 使用
format_bibtex.py统一格式。 - 条目重复 → 使用重复检测。
- 缺少必需字段 → 验证完整性。
- 预印本过时 → 更新为已发表版本。
- 特殊字符问题 → 在 BibTeX 中转义字符或使用 Unicode。
- 未进行最终验证 → 始终将验证作为最后一项检查。
- 手动输入 BibTeX 条目 → 始终从元数据来源提取。
随附资源索引
参考资料(references/)
script_cli_reference.md— 各脚本的完整功能和 CLI 用法example_workflows.md— 四个端到端工作流示例search_strategy_reference.md— 高影响力研究启发式方法、Scholar 运算符、MeSH/字段标签、元数据来源google_scholar_search.md— 完整的 Google Scholar 搜索指南pubmed_search.md— PubMed 和 E-utilities API 文档metadata_extraction.md— 元数据来源和字段要求citation_validation.md— 验证标准和质量检查bibtex_formatting.md— BibTeX 条目类型和格式规则
脚本(scripts/)
search_google_scholar.py、search_pubmed.py、extract_metadata.py、
validate_citations.py、format_bibtex.py、doi_to_bibtex.py。
资源文件(assets/)
bibtex_template.bib(包含所有类型的示例条目)、citation_checklist.md(QA 检查清单)。
外部资源
- Google Scholar:https://scholar.google.com/ · PubMed:https://pubmed.ncbi.nlm.nih.gov/
- CrossRef API:https://api.crossref.org/ · PubMed E-utilities:https://www.ncbi.nlm.nih.gov/books/NBK25501/
- arXiv API:https://arxiv.org/help/api/ · DataCite API:https://api.datacite.org/
- MeSH 浏览器:https://meshb.nlm.nih.gov/search · DOI 解析器:https://doi.org/
依赖项
# All network scripts (CrossRef, doi.org, E-utilities, arXiv)
uv pip install requests
# Optional: Google Scholar search (search_google_scholar.py). scholarly scrapes Scholar,
# which has no official API and rate-limits or CAPTCHAs automated traffic.
uv pip install scholarly
format_bibtex.py 和 validate_citations.py(不带 --check-dois)只需要标准库。为 PubMed
设置 NCBI_EMAIL(以及可选的 NCBI_API_KEY)。
总结
此技能提供搜索(Scholar + PubMed)、自动提取元数据(DOI/PMID/ arXiv/URL)、引用验证(DOI 验证 + 完整性)、BibTeX 格式化与清理,以及质量保证 — 所有流程都可通过有文档记录的搜索和提取方法重现。使用它来维护准确、符合发表要求的参考文献列表。