Communityライティング&編集github.com

BorisW269/skills - 引用管理

学術研究のための包括的な引用管理。OpenAlex、PubMed、Google Scholarで論文を検索し、正確なメタデータを抽出し、引用を検証し、適切にフォーマットされたBibTeXエントリを生成します。このスキルは、論文の検索、引用情報の確認、DOIからBibTeXへの変換、または科学執筆における参考文献の正確性を確保する必要がある場合に使用します。

skills - 引用管理 とは?

このスキルは、学術研究のための包括的な引用管理を提供するAIエージェント向けツールです。OpenAlex、PubMed、Google Scholarといった複数の学術データベースから論文を検索し、CrossRef、PubMed、arXivなどの信頼できるソースから正確なメタデータを抽出できます。また、抽出したメタデータを検証し、BibTeX形式で整然とした引用リストを生成します。特に、DOIやPMD、arXiv IDからワンクリックでBibTeXエントリを作成できる点が強力で、研究者や学生が文献管理に費やす時間を大幅に削減します。このスキルは、文献レビューや科学執筆など、他の研究スキルとシームレスに統合でき、研究ワークフロー全体の効率化に貢献します。主な機能には、検索、メタデータ抽出、BibTexフォーマット、引用検証が含まれ、重複排除やフォーマットの標準化も自動化されています。

対応~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/BorisW269/skills/tree/HEAD/skills/citation-management

Installed? Explore more ライティング&編集 skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

引用管理

概要

研究および執筆プロセス全体を通じて、引用を体系的に管理します。このスキルは、学術データベース(Google Scholar、PubMed)の検索、複数の情報源(CrossRef、PubMed、arXiv)からの正確なメタデータ抽出、引用情報の検証、および適切にフォーマットされたBibTeXエントリの生成のためのツールと戦略を提供します。

引用の正確性を維持し、参照エラーを回避し、再現可能な研究を保証するために重要です。文献レビュースキルとシームレスに統合し、包括的な研究ワークフローを実現します。

このスキルを使用するタイミング

以下の場合にこのスキルを使用します:

  • Google ScholarまたはPubMedで特定の論文を検索する
  • DOI、PMD、またはarXiv IDを適切にフォーマットされたBibTeXに変換する
  • 引用の完全なメタデータ(著者、タイトル、ジャーナル、年など)を抽出する
  • 既存の引用の正確性を検証する
  • BibTeXファイルのクリーニングとフォーマット
  • 特定の分野で高被引用論文を見つける
  • 引用情報が実際の出版物と一致することを確認する
  • 原稿や論文の参考文献リストを作成する
  • 重複する引用を確認する
  • 一貫した引用フォーマットを確保する

これらの引用から構築されたドキュメントに図が必要な場合は、科学図式スキルを使用してください。


コアワークフロー

引用管理は体系的なプロセスに従います。以下の各フェーズは標準的なコマンドを示しています。すべてのバリエーション、オプション、メタデータソースの詳細は、references/core_workflow.mdにあります。

フェーズ1: 論文の発見と検索

関連する論文を見つけます。複数のデータベースを検索してください。データベースごとにカバレッジが大きく異なり、単一の情報源に依存することが、偏った参考文献リストの最も一般的な原因です。

# OpenAlex: 学際的なREST API。オプションのOPENALEX_API_KEYでアカウントクォータ
python scripts/search_openalex.py "CRISPR遺伝子編集" --limit 50 --output results.json

# PubMed: 生物医学および生命科学の権威ある情報源(3500万件以上の引用)
python scripts/search_pubmed.py "アルツハイマー病治療" --limit 100 --output alz.json

# Google Scholar: 最も広範囲をカバーするが、スクレイピングベースでレート制限があり、ブロックされやすい
python scripts/search_google_scholar.py "CRISPR遺伝子編集" --limit 50 --output scholar.json

プライマリソースとしてはOpenAlexまたはPubMedを優先してください。Google ScholarにはAPIがありません。scholarlyはスクレイピングを行い、結果間に2~5秒のインターバルを置きますが、ブロックされる頻度が高いため、補助的な手段として使用し、依存すべきではありません。

クエリ演算子、フィールドタグ、MeSH用語の構築については、references/search_strategies.mdを参照してください。

フェーズ2: メタデータの抽出

識別子(DOI、PMID、PMCID、arXiv ID、URL)を完全なメタデータに変換します。CrossRefはDOIの主要な情報源です。

python scripts/doi_to_bibtex.py 10.1038/s41586-021-03819-2         # 単一のDOIを素早く変換
python scripts/extract_metadata.py --pmid 34265844                  # DOI/PMID/PMCID/arXiv/URLから抽出
python scripts/extract_metadata.py --input identifiers.txt --output citations.bib

パス内にDOIを含まないURLは、出版社が記事ページに埋め込むcitation_doiメタタグを介して解決され、CrossRefに渡されます。プロデューサーは共有の引用キースキームを使用しますが、メタデータの違いにより異なるキーが生成される可能性があります。DOIと書誌的同一性に基づいて重複を確認してください。

フェーズ2.5: Web検索によるメタデータのエンリッチメント(必須)

APIは日常的に不完全なレコードを返します。これは抽出後かつフォーマット前に実行してください。欠落している書誌フィールドについて出版社のレコードを調査し、各情報源をログに記録します。オンラインファーストの記事には巻・ページがない場合があり、記事番号を使用するものやDOIがないものもあります。実際の出版状態を保持し、スタイルに適した記事番号フィールドを使用し、ページ、巻、DOIを決して創作しないでください。利用不可/該当なしのフィールドを監査ログに記録し、読者にとって有用であるか、引用スタイルで要求される場合にのみ、レンダリングされたnoteを追加します。

まずはコストの低い情報源を確認します。OpenAlexやCrossRefのレコードには、PubMedが省略したフィールドが含まれていることがよくあります。

python scripts/search_openalex.py "<正確なタイトル>" --limit 1

抽出されたメタデータは信頼できないものとして扱ってください。 著者、タイトル、ジャーナルの文字列は、出版社が管理するレコードからそのまま取得されます。$(...)、バッククォート、引用符を含むタイトルは、コマンドに貼り付けられた瞬間にシェル構文になります。メタデータはシェル文字列を構築するのではなく、subprocessの引数リストとして渡してください。シェルを使用する必要がある場合は、すべての置換値をシングルクォートで囲み、埋め込まれた引用符を'\''のようにエスケープしてください。パスに到達する前に、引用キーが^[A-Za-z0-9]+$に一致することを検証してください。

フィールドごとの検索戦略、4つの検索オプション、およびログ形式については、references/core_workflow.mdを参照してください。

フェーズ3: BibTeXのフォーマット

クリーンで一貫性のあるエントリを生成します。エントリタイプと必須フィールドについては、references/bibtex_formatting.mdを参照してください。

python scripts/format_bibtex.py references.bib --output clean.bib --deduplicate
python scripts/format_bibtex.py references.bib --output clean.bib --rekey --deduplicate

書き込みはオプトインです。--output(または--in-place)なしの場合、結果は標準出力に送られ、入力ファイルはそのまま残ります。複数のソースからの結果をマージする場合は--rekeyを使用すると、同じ論文が1つのエントリにまとめられます。

フェーズ4: 引用の検証

完全性、対象会場への準拠、および原稿との一致をチェックします。

python scripts/validate_citations.py references.bib --report report.json
python scripts/validate_citations.py references.bib --venue nature
python scripts/validate_citations.py references.bib --manuscript paper.tex
python scripts/validate_citations.py references.bib --check-dois     # 遅い;CrossRefにアクセス

必須フィールドの欠落、不正な年、未解決の引用、または明示的な--min-countを下回る数など、重大度の高いエラーがある場合、スクリプトはゼロ以外のステータスで終了します。会場の参考文献数の数値は編集上の経験則であり、投稿要件ではないため、数値に達していなくても警告のみです。

検証ルールと会場標準については、references/citation_validation.mdを参照してください。

フェーズ5: 執筆ワークフローとの統合

検索、抽出、フォーマット、検証、そして引用。エンドツーエンドのシーケンス(文献レビューおよびZotero/pyzoteroエクスポートパスを含む)については、references/core_workflow.mdおよびreferences/example_workflows.mdを参照してください。

API契約は2026年9月30日時点の公式ドキュメントに照らしてレビュー済みです。エンドポイント、認証、ページネーション、および検証制限については、references/api_contracts.mdを参照してください。リファレンス内のネットワーク例は、そこでライブスモークテストとして記録されていない限り、参考用です。

リファレンスファイル

避けるべき一般的な落とし穴

  1. 単一情報源バイアス: 1つのデータベースのみを使用する

    • 解決策: 少なくともOpenAlexとPubMedを検索し、format_bibtex.py --rekey --deduplicateでマージする
  2. メタデータを盲目的に受け入れる: 抽出された情報を検証しない

    • 解決策: 抽出されたメタデータを元の情報源とスポットチェックする
  3. DOIエラーを無視する: 参考文献内の壊れた、または正しくないDOI

    • 解決策: 最終提出前に検証を実行する
  4. フォーマットの不一致: 引用キーのスタイルやフォーマットが混在している

    • 解決策: format_bibtex.pyを使用して標準化する
  5. 重複エントリ: 同じ論文が異なるキーで複数回引用されている

    • 解決策: 検証で重複検出を使用する
  6. 必須フィールドの欠落: 不完全なBibTeXエントリ(巻、ページ、DOIがない)

    • 解決策: 出版社のレコードを確認し、欠落と該当なし/未割り当てを区別し、メタデータを創作せずに未解決フィールドをログに記録する。
  7. 古いプレプリント: 公開版が存在するのにプレプリントを引用している

    • 解決策: プレプリントが公開されているか確認し、ジャーナル版に更新する
  8. 特殊文字の問題: 文字が原因でLaTeXのコンパイルが壊れる

    • 解決策: BibTeXで適切なエスケープまたはUnicodeを使用する
  9. 提出前の検証漏れ: 引用エラーがある状態で提出する

    • 解決策: 最終チェックとして必ず検証を実行する
  10. 手動BibTeX入力: エントリを手で入力する

    • 解決策: スクリプトを使用して常にメタデータソースから抽出する

他のスキルとの統合

文献レビュースキル

引用管理は文献レビューに技術的基盤を提供します:

  • 文献レビュー: 複数データベースの系統的検索と統合
  • 引用管理: メタデータの抽出と検証

組み合わせワークフロー:

  1. 文献レビューを使用して系統的検索方法論を適用
  2. 引用管理を使用して引用を抽出・検証
  3. 文献レビューを使用して結果を統合
  4. 引用管理を使用して参考文献の正確性を確保

科学執筆スキル

引用管理は科学執筆のための正確な参考文献を保証します:

  • LaTeX原稿で使用するために検証済みのBibTeXをエクスポート
  • 引用が出版基準に一致することを確認
  • ジャーナルの要件に従って参考文献をフォーマット

会場テンプレートスキル

引用管理は会場テンプレートと連携し、投稿準備が整った原稿を作成します:

  • 異なる会場では異なる引用スタイルが必要
  • 適切にフォーマットされた参考文献を生成
  • 引用が会場の要件を満たしているか検証

リソース

バンドルリソース

リファレンス(references/内):

  • 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_openalex.py: OpenAlex検索クライアント(オプションのアカウントAPIキー)
  • search_pubmed.py: PubMed E-utilities APIクライアント
  • search_google_scholar.py: Google Scholar検索自動化
  • extract_metadata.py: 汎用メタデータ抽出器
  • validate_citations.py: 引用の検証と確認
  • format_bibtex.py: BibTeXフォーマッターとクリーナー
  • doi_to_bibtex.py: DOIからBibTeXへのクイックコンバーター
  • _common.py: 共有BibTeXパーサー、レンダラー、引用キースキーム

アセット(assets/内):

  • bibtex_template.bib: すべてのタイプのBibTeXエントリ例
  • citation_checklist.md: 品質保証チェックリスト

外部リソース

検索エンジン:

メタデータAPI:

ツールとバリデーター:

引用スタイル:

依存関係

必須のPythonパッケージ

uv pip install requests  # CrossRef、PubMed、OpenAlex、arXivへのHTTPアクセス

BibTeXのパース、レンダリング、重複排除、検証は標準ライブラリ(scripts/_common.py)です。format_bibtex.pyはサードパーティパッケージを必要としません。validate_citations.pyは、ローカルのみの検証も含め、requestsをインポートします。

オプション

uv pip install scholarly  # search_google_scholar.pyのみ

認証情報の送信先

キーは基本的な使用にはオプションです。各認証情報は対応するサービスのみに送信され、環境変数をまとめて送信するスクリプトはありません。OpenAlexは、ドキュメント化されたアカウント予算を使用し、約束されたメールベースのクォータ増加は使用しません。取得に失敗したページはエラーで終了し、部分的な検索を完了としてエクスポートしません。

変数送信先のみ目的
NCBI_API_KEYeutils.ncbi.nlm.nih.govEntrezのレート制限を引き上げます
NCBI_EMAILeutils.ncbi.nlm.nih.gov, pmc.ncbi.nlm.nih.govNCBIから要求される呼び出し元の識別
OPENALEX_EMAILapi.openalex.orgオプションの連絡先識別子
OPENALEX_API_KEYapi.openalex.orgオプションのアカウントクォータ。Authorizationヘッダーで送信

api.openalex.org、api.crossref.org、api.datacite.org、export.arxiv.org、pmc.ncbi.nlm.nih.gov、doi.org、eutils.ncbi.nlm.nih.govは、これらが設定されていない場合、認証情報なしでクエリされます。

まとめ

引用管理スキルは以下を提供します:

  1. 包括的な検索機能: OpenAlex、PubMed、Google Scholar向け
  2. 自動メタデータ抽出: DOI、PMID、PMCID、arXiv ID、URLから
  3. 引用検証: DOIの確認と比較

…

[翻訳のため一部省略]

Individual skills in this repo

This repo contains 2 individual skills — each has its own dedicated page.

関連スキル