citation-diversifier について
citation-diversifierは、サーベイ草稿の引用不足を診断し、適用範囲に沿った引用予算レポートを作る執筆スキルです。既存かつ対象範囲内の文献だけを提案し、新たな事実や主張は加えません。
主な機能
- 01固有引用キーの不足を診断
- 02小節ごとの引用予算配分
- 03範囲内の既存文献キーを使用
- 04引用位置の案内
- 05予算レポートの作成
活用シーン
- 01草稿の引用不足への対処
- 02H3小節間で文献引用を配分
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ willoscar/ research-units-pipeline-skills --skill citation-diversifierインストール後、Claude Code で/citation-diversifierを入力して読み込まれたか確認します。
同梱ファイルscripts/run.py
詳細
Citation Diversifier(予算を制約として扱う)[新しい事実の追加禁止]
トリガーとルーティング
- トリガー:引用の強化、引用予算、ユニークな引用が少なすぎる、引用を追加、参考文献の密度を高める、引用が少なすぎる、引用を増やす、引用密度。
目的:調査論文でよくある次の失敗を修正します。
- 草稿の引用が不足している(または同じ少数の引用をどこでも繰り返し使っている)
- パイプラインがグローバルなユニーク引用のゲートを通過できない
このスキル自体は文章を変更しません。
制約シート output/CITATION_BUDGET_REPORT.md を作成します。
入力
output/DRAFT.mdoutline/outline.yml(H3 の ID/タイトル。サブセクションごとの予算配分に使用)outline/writer_context_packs.jsonl(各 H3 のallowed_bibkeys_{selected,mapped,chapter,global}の参照元)citations/ref.bib
出力
output/CITATION_BUDGET_REPORT.md
絶対条件(新しい事実の追加禁止)
citations/ref.bibに存在する引用キーのみを提案してください。- 対象の H3 のスコープ内のキーのみを提案してください(サブセクションのスコープを優先し、本当に分野横断的な場合に限り章/全体のスコープを使用します)。
- 新たな主張や数値の追加が必要になる「水増し引用」は提案しないでください。
適切な予算レポートの条件(仕様)
レポートは、ランダムなリストではなく、制約シートとしてまとめます。
- 基準となるポリシー目標と、目標までの不足分(不足しているユニークなキーの数。デフォルトのポリシーは
recommended)を明記します。 - 各 H3 について、不足分を実際に埋められるよう、スコープに配慮した予算を提案します。
- 不足分が少ない場合:H3 あたり 3~6 件で十分なことがよくあります
course_paper:提案は H3 あたり 3~6 件までとし、プロファイルのグローバル予算 24/32 を目標にします- A150++ で不足分がある場合:H3 あたり約 6~12 件を計画し(H3 間での重複を避けます)
- 新しい事実を追加せずに、サブセクションのどこへ引用キーを埋め込めるか、配置の指針を示します。
必須の標準(解析可能な)行(後続のバリデーターが依存します):
- 目標は
queries.md:citation_targetから導出します(A150++ のデフォルトはrecommended)。 - Global target (policy; blocking): >= <N> ...- Gap: <K>(目標までの不足分。0の場合、引用の挿入は何もせず PASS にできます)
任意(常に報告します。citation_target によってはブロッキング条件になる場合があります):
- Global recommended target: >= <N> ...- Gap to recommended: <K>
推奨する優先順位(スコープに配慮):
allowed_bibkeys_selected→allowed_bibkeys_mapped→allowed_bibkeys_chapterallowed_bibkeys_globalは、次の場合に限り使用します。- ベンチマーク/プロトコルの論文
- 広く使われているデータセット/スイート
- 複数の章で参照される分野横断的なサーベイ/手法の論文
執筆との連携(LLM 優先)
予算レポートを作成した後:
citation-injectorを使って適用します(output/DRAFT.mdを LLM で編集し、新しい事実は追加しません)。- 次に
draft-polisherを実行し、引用キーは変更せず、「予算を押し付けるような文体」を取り除きます。
重要:citation-injector はLLM 優先です。スクリプトは検証のみを行います。
ワークフロー
- グローバルな状況を診断する
output/DRAFT.mdを読み、「ユニークキーの不足分」を推定します(またはpipeline-auditorの FAIL 理由を使用します)。
- H3 ごとに予算を配分する(スコープを優先)
outline/outline.ymlを使い、論文内の順序で H3 を列挙します。- 各 H3 について、
outline/writer_context_packs.jsonlから使用可能なキーのセットを確認します。 - 新しい主張を必要とせず、位置付けを強化できる未使用のキーを少数選びます。
output/CITATION_BUDGET_REPORT.mdを作成する 必須の構成:
- Status: PASS|FAIL- Global target (policy; blocking): >= <N> ...- Gap: <K>## Summary(不足分+方針)## Per-subsection budgets(H3 の ID/タイトル → 提案するキー → 配置のヒント)
スクリプト(任意;決定的なレポート生成ツール)
決定的な初回予算レポートを作成する場合は、ヘルパースクリプトを実行してください。これをベースラインとして扱い、必要に応じて計画を調整します。
クイックスタート
uv run python .codex/skills/citation-diversifier/scripts/run.py --helpuv run python .codex/skills/citation-diversifier/scripts/run.py --workspace <workspace>
すべてのオプション
--workspace <dir>--unit-id <U###>(任意)--inputs <semicolon-separated>(まれに上書きする場合に使用。既定値の使用を推奨)--outputs <semicolon-separated>(まれに上書きする場合に使用。既定ではoutput/CITATION_BUDGET_REPORT.mdに書き込みます)--checkpoint <C#>(任意)
使用例
- 既定の入出力:
uv run python .codex/skills/citation-diversifier/scripts/run.py --workspace <workspace>
完了条件
output/CITATION_BUDGET_REPORT.mdが存在し、実行可能でスコープ内の予算が記載されています。citation-injectorを使って計画を適用した後、グローバルな一意の引用に関してpipeline-auditorが FAIL しなくなります。
コメント
Markdown 対応