smart-sourcing について
検証の価値に基づき、どの主張に出典が必要かを判断するためのスキルです。変化しやすい事実や重大な影響のある情報を優先し、一般概念や例への不要な出典付与を避けます。
主な機能
- 01出典が必要な主張の特定
- 02検証の価値とコストの比較
- 03バージョンやセキュリティ情報の引用
- 04必要に応じた不確実性の明示
- 05重要な調査のエスカレーション
活用シーン
- 01技術的な主張を含む回答の作成
- 02セキュリティや API の情報確認
- 03研究やコンプライアンス資料の準備
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ athola/ claude-night-market --skill smart-sourcingインストール後、Claude Code で/smart-sourcingを入力して読み込まれたか確認します。
詳細
スマートソーシング
検証の価値に見合う場合にのみ引用を求める、インテリジェントなソーシングです。
考え方
すべての情報源を網羅するのは、コストがかかりすぎます(トークンが10~16倍に増加します)。スマートソーシングでは、検証によって正確性が大きく向上する、価値の高い主張を対象にします。
情報源が必要な場合
情報源が必要
| 主張の種類 | 例 | 情報源が必要な理由 |
|---|---|---|
| バージョン番号 | 「Python 3.12で追加された…」 | バージョンは変更されるため、簡単に確認できます |
| パフォーマンスに関する主張 | 「…より30%高速」 | 定量的な主張には根拠が必要です |
| セキュリティに関する推奨事項 | 「…にはbcryptを使用してください」 | セキュリティに関する助言は最新である必要があります |
| API仕様 | 「この関数は…を受け取ります」 | APIはバージョン間で変更されます |
| リリース日 | 「2025年第4四半期にリリース」 | 事実であり、検証可能です |
| 価格/制限 | 「無料プランでは1000件のリクエストが可能」 | ビジネス条件は変更されます |
| 非推奨の機能 | 「XはバージョンYで削除されました」 | 破壊的変更には検証が必要です |
情報源は不要
| 主張の種類 | 例 | 情報源が不要な理由 |
|---|---|---|
| 一般的な概念 | 「非同期処理は並行性を高めます」 | 基礎的な知識です |
| コード例 | 説明用のスニペット | 例示であり、事実の主張ではありません |
| 意見/好み | 「…の使用を検討してください」 | 提案であることが明確です |
| 一般常識 | 「Gitは変更を追跡します」 | 広く知られています |
| 論理的な導出 | 「したがって、XはYを意味します」 | 事実の主張ではなく、推論です |
| 構文 | 「関数にはdefを使用します」 | 言語のドキュメントは安定しています |
判断の枠組み
Is this a factual claim?
├── No → No source needed
└── Yes → Would being wrong cause harm?
├── No (minor inconvenience) → No source needed
└── Yes → Is verification cost-effective?
├── No (>5k tokens for low-value claim) → State uncertainty
└── Yes → Perform web search, cite source
実装
インライン引用
情報源が必要な場合:
Python 3.12 introduced `type` statement for type aliases[1].
Sources:
1. [PEP 695](https://peps.python.org/pep-0695/)
不確実性マーカー
コストに見合うソーシングが難しい一方で、不確実性がある場合:
Python 3.12 introduced the `type` statement (verify in release notes for your version).
確信度
| 確信度 | 対応 |
|---|---|
| 高(安定した事実) | そのまま記述します |
| 中(変更されている可能性あり) | 検証に関する注記を追加します |
| 低(不確か) | 情報源を示すか、不確実性を明記します |
トークンコストの分析
| 方法 | トークンコスト | 使用場面 |
|---|---|---|
| ソーシングなし | 基準値 | 一般知識 |
| 不確実性マーカー | +5~10トークン | 確信度が中程度 |
| 情報源1件 | +2~5kトークン | 価値の高い主張 |
| 複数の情報源 | +10~20kトークン | 調査タスク |
例
良い例:バージョン固有の主張に情報源を示す
User: What's new in FastAPI 0.109?
Response: FastAPI 0.109 added Pydantic v2 support as default[1] and
improved OpenAPI schema generation[2].
Sources:
1. [FastAPI Release Notes](https://fastapi.tiangolo.com/release-notes/)
2. [GitHub Release 0.109.0](https://github.com/tiangolo/fastapi/releases/tag/0.109.0)
良い例:一般的な概念には情報源を示さない
User: How does async/await work?
Response: Async/await enables non-blocking I/O by allowing coroutines
to yield control while waiting for operations. The event loop manages
execution, resuming coroutines when their awaited operations complete.
良い例:不確実性マーカー
The connection pool default is typically 10 connections (verify in your
database driver documentation as this varies by library and version).
統合
以下と連携します:
conserve:response-compression- 情報源を示した回答を簡潔に保ちますconserve:token-conservation- 情報源のコストと価値を比較しますmemory-palace:knowledge-intake- ナレッジコーパス向けに網羅的なソーシングを行います
すべての情報源を網羅する場合
使用しない場合
- 引用が不要な内部プロジェクトのコード
- 事実の主張を含まないカジュアルな会話
以下の場合は、すべての情報源を網羅する方法に切り替えます(高いトークンコストを受け入れます):
- ナレッジコーパスのエントリー(恒久的なドキュメント)
- セキュリティに関する注意事項(安全上重要)
- コンプライアンス/法務に関する主張(監査要件)
- 調査タスク(ユーザーが徹底した調査を期待)
このような場合は、網羅的なソーシング向けに設計されたmemory-palace:knowledge-intakeワークフローを使用してください。
終了条件
- 出典が必要と分類されたすべての主張(バージョン番号、 パフォーマンスに関する主張、セキュリティ上の推奨事項、API 仕様、リリース 日、価格/制限、非推奨機能)に、インライン 引用または検証に関する注記がある
- 一般的な概念、コード例、意見、一般常識、論理的な導出、安定した構文に分類された主張について、ウェブ検索が行われていない
- 確信度が中程度の主張には、事実として断定したり、多大なトークンコストをかけて出典を付けたりするのではなく、「お使いのバージョンのリリースノートで確認してください」などの明示的な不確実性を示す表現が付いている
- 判断ツリーが適用されている:事実に関する主張 → 誤りの場合の影響 → 検証に費用対効果がある → 出典を付ける。確信度が中程度を超える主張について、各分岐が明示的にたどられている
コメント
Markdown 対応