sn-prepare-citations について
sn-prepare-citationsは、sn-deep-researchのレポート向け引用整形スキルです。エビデンスファイルから出典を集め、本文の引用に番号を付け、アウトラインに基づく要約レイヤーと目次を追加できます。
主な機能
- 01evidence.jsonから出典を収集
- 02URL単位で重複排除し引用を採番
- 03claim IDの漏出を検出して処理
- 04アウトラインから要約と目次を追加
- 05レポートと引用状態JSONを出力
活用シーン
- 01調査レポートの出典と番号付き引用の整形
- 02孤立引用とclaim ID漏出の確認
- 03レポートへの目次と参考文献の追加
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ opensensenova/ sensenova-skills --skill sn-prepare-citationsインストール後、Claude Code で/sn-prepare-citationsを入力して読み込まれたか確認します。
同梱ファイルscripts/prepare_citations.py
詳細
プロジェクトの README よりsn-prepare-citations(引用渲染)
处理 sn-deep-research 的 stitched.md:从 evidence.json 收集 sources[],将正文中的 [^source_id] 转换为 [N] 编号引用,插入 L0/TOC,并追加参考文献。
推荐用法(sn-deep-research v2)
python3 scripts/prepare_citations.py \
--report <report_dir>/stitched.md \
--evidence <report_dir>/sub_reports/d1.evidence.json <report_dir>/sub_reports/d2.evidence.json \
--outline <report_dir>/outline.json \
--output <report_dir>/report.md
参数
| 参数 | 说明 |
|---|---|
--report | 输入 markdown。sn-deep-research 中通常是 stitched.md |
--evidence | 全部 d*.evidence.json,用于收集 source 元数据和修复 claim-id 泄漏 |
--outline | 可选但推荐。提供 L0、TOC 和标题结构信息 |
--output | 输出 markdown。sn-deep-research 中通常是 report.md |
--no-l0 | 关闭 L0 摘要层渲染 |
--no-toc | 关闭 TOC 渲染 |
处理逻辑
- 从所有 evidence.json 的
sources[]收集引用元数据。 - 按 URL 归一化去重,同 URL source 合并为同一编号。
- 检测
[^dN.cM]claim-id 引用泄漏;能映射到 claim evidence 时替换为对应source_id,不能映射则报告 unresolved。 - 扫描正文中的
[^source_id],按首次出现顺序分配编号。 - 替换
[^source_id]→[N],移除脚注定义行。 - 根据 outline 插入或校准 L0 / TOC。
- 追加
## 参考文献。 - 写出
report.md和同目录citations.json。 - stdout 输出结构化 JSON,包含 orphan citations、claim-id leakage、TOC 和 L0 状态。
控制器处理要求
orphan_citations非空:不要交付,回 writer/stitcher 修正引用或删除 unsupported 内容。claim_id_leakage.unresolved非空:不要交付,回 writer 修正[^dN.cM]。claim_id_leakage.resolved非空但 unresolved 为空:可以继续,但记录为警告;writer 后续应直接输出[^source_id]。
旧兼容模式
不传 --outline / --output 时,脚本会覆写 --report 指向的文件,仅做引用编号和参考文献追加。sn-deep-research 正常流程不使用该模式。
コメント
Markdown 対応