fetch-abstract-to-kb について
データベースから対象となるDOIを取得し、DOI単位で抄録を一括登録するスキルです。ジャーナル情報の管理に使え、抄録が空のレコードだけを更新します。
主な機能
- 01条件に合うDOIの取得
- 02取得件数の指定
- 03DOI単位の抄録一括登録
- 04抄録が空のレコードのみ更新
活用シーン
- 01抄録がないジャーナルレコードの検索
- 02複数DOIの抄録補完
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ tiangong-ai/ agent-skills --skill fetch-abstract-to-kbインストール後、Claude Code で/fetch-abstract-to-kbを入力して読み込まれたか確認します。
詳細
抄録を KB に取得
主な目的
- DB 操作を次の 2 つのみに限定します。
journalsから DOI 候補を取得します。- DOI を指定して
abstractを一括更新します。
必須の環境変数
KB_DB_HOSTKB_DB_PORTKB_DB_NAMEKB_DB_USERKB_DB_PASSWORD
ワークフロー
- DOI リストを取得します(デフォルトは 10 行です)。
python3 scripts/fetch_abstract_to_kb.py fetch-doi
- 必要に応じて行数の上限を変更します。
python3 scripts/fetch_abstract_to_kb.py fetch-doi --limit 10
- 一括更新用の JSON 入力を準備します(次の 2 つの形式のいずれかを使用します)。
[
{"doi": "10.1000/a", "abstract": "text A"},
{"doi": "10.1000/b", "abstract": "text B"}
]
または
{
"10.1000/a": "text A",
"10.1000/b": "text B"
}
- DOI を指定して抄録を一括書き込みします。
python3 scripts/fetch_abstract_to_kb.py write-abstracts --input abstracts.json
クエリ/書き込みの仕様
- 取得時のフィルター:
doiが空ではないauthorが空ではない(authorが利用できない場合はauthorsを使用します)abstractが空(NULLまたは空白)
- 取得順:
ORDER BY created_at DESC NULLS LAST
- 取得時のデフォルト上限:
10
- 書き込み時のガード:
- 対象行の
abstractがまだ空の場合にのみ更新します。
- 対象行の
スクリプト
scripts/fetch_abstract_to_kb.py
コメント
Markdown 対応