mcpField
L
lit-synthesis

lit-synthesis

github.com/nealcaren生産性9153 回インストール2 週間前に更新
リポジトリ

lit-synthesis について

lit-synthesis は、論文コーパスから分野の理解を整理する社会学研究者向けのスキルです。精読に加え、理論・テーマ・論争をマッピングし、文献レビューの執筆を支援します。

主な機能

  1. 01コーパスの網羅性と読書優先度の確認
  2. 02論文ごとの構造化ノート作成
  3. 03理論的伝統と引用関係の整理
  4. 04テーマや方法による論文の分類
  5. 05論争と貢献の余地の特定

活用シーン

  1. 01文献レビュー執筆前の論文整理
  2. 02コーパス内の理論的伝統の比較
  3. 03研究成果と学術的な対立の整理

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/nealcaren/social-data-analysis --skill lit-synthesis

インストール後、Claude Code で/lit-synthesisを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

mcp/
zotero-setup.md
phases/
phase0-corpus-audit.md
phase1-deep-reading.md
phase2-theoretical-mapping.md
phase3-thematic-clustering.md
phase4-debate-mapping.md
phase5-field-synthesis.md
scripts/
ingest.py
pdf-to-md.sh
rag.py
read-paper.sh
reading-agent-prompt.md

詳細

文献の統合

以下のスクリプトパスは、このスキルのベースディレクトリ(スキルの読み込み時に Claude Code が報告する $SKILL_DIR)からの相対パスです。

社会学者が論文コーパスから分野を深く理解できるよう支援します。論文の検索(lit-search)と、自分で文献レビューを書くことをつなぐ分析上の橋渡しです。

プロジェクトとの連携

このスキルは、利用可能な場合に project.yaml を読み取ります。

# From project.yaml
paths:
  lit_synthesis: literature/synthesis/

プロジェクトの種類: このスキルはすべてのプロジェクトの種類で利用できます。文献の統合は、質的研究、量的研究、混合研究法のいずれにも不可欠です。

完了時に progress.yaml を更新します。

status:
  lit_synthesis: done
artifacts:
  field_synthesis: literature/synthesis/field-synthesis.md

このスキルの位置づけ

このスキルは、lit-search の後続工程を担います。

スキル役割主な成果物
lit-searchOpenAlex を介して論文を検索database.json、references.bib、ダウンロードチェックリスト
lit-synthesisローカルライブラリを介して分析・整理field-synthesis.md(理論マップ、テーマ別クラスター、論争マップを各セクションに含む)

入力:library/ 内の Markdown ファイル(PDF から変換したもの)と、references.bib(lit-search またはユーザー既存のライブラリから取得) 出力:文献レビューを支える、分野について整理された理解

このスキルを使うタイミング

次のような場合にこのスキルを使用します。

  • 論文コーパスがある(lit-search で検索したもの、または独自のコレクション)
  • 執筆前に理論的な全体像を把握する必要がある
  • 論争、緊張関係、対立する立場を特定したい
  • 論文をテーマ別、または理論的伝統別に整理する必要がある
  • メタデータの抽出だけでなく、深い読み込みノートが必要である

基本原則

  1. 広く読むより、深く読む:50本の論文を表面的に読むより、15本を徹底的に理解する方が有益です。

  2. 理論的伝統は重要です:論文は知的な系譜の中に存在します。誰が誰を、なぜ引用しているのかをマッピングします。

  3. 論争は宝です:対立する立場は、新たな貢献の余地を生み出します。緊張関係を見つけます。

  4. 整理は執筆に役立てます:作成するクラスターやマップが、文献レビューの構成となるようにします。

  5. 可能な限り全文を読む:要旨からは「何が」分かり、全文からは「どのように」「なぜ」が分かります。

ファイル管理

このスキルでは、各フェーズの進捗を追跡するために git を使用します。新しいフェーズで出力ファイルを変更する前に、次の手順を行います。

  1. 現在の状態をステージングしてコミットします:git add [files] && git commit -m "lit-synthesis: Phase N complete"
  2. その後、変更を進めます。

バージョン番号を付けたコピー(例:-v2、-final、-working)は作成しないでください。バージョンの履歴には git の履歴を使用します。


ローカルライブラリとの連携

このスキルは、書誌メタデータ用の references.bib とあわせて、Markdown に変換された PDF のローカルライブラリから論文を読み取ります。

想定されるライブラリの構成
project/
├── references.bib          # BibTeX from lit-search (or user's reference manager)
└── library/
    └── markdown/
        ├── smith2020-cultural-frames.md
        ├── jones2019-institutional.md
        └── ...             # One .md per paper, converted from PDF
PDF を Markdown に変換する

ingest スクリプトを使って、論文をライブラリに追加します。

uv run "$SKILL_DIR"/scripts/ingest.py --file /path/to/paper.pdf

PDF を library/markdown/ 内の Markdown に変換し、メタデータを references.bib に追加します。

セマンティック検索

ライブラリ全体から概念検索・セマンティック検索を行う場合(正確な用語が異なっていても、ある概念に関する箇所を見つける場合など)は、RAG インデックスを使用します。

# Build/update the index (run after adding new papers)
uv run "$SKILL_DIR"/scripts/rag.py index

# Search by meaning
uv run "$SKILL_DIR"/scripts/rag.py search "cultural capital and educational attainment"

正確なキーワードを検索する場合は、Markdown ファイルを直接 grep します。

grep -ril "cultural capital" library/markdown/
reading-agent スキルの使用

構造化された読み込みノートには、同梱の reading-agent スキルを使用します。

/reading-agent

Paper: [Author Year - Title]
PDF: /path/to/paper.pdf
DOI: [doi]

reading-agent スキルは、PDF の変換を処理し、次の項目を含む構造化ノートを作成します。

  • 書誌情報と識別子
  • 中心的な論点と理論的枠組み
  • 方法と実証的な分析戦略
  • 主な知見と貢献に関する主張
  • ページ番号付きの重要な引用
一括処理

複数の論文を一括処理する場合:

  1. PDF を変換する:各論文に対して "$SKILL_DIR"/scripts/ingest.py --file を実行します
  2. reading-agent を一括モードで使用する:
    /reading-agent
    
    Batch process these papers:
    - /papers/smith2020.pdf (DOI: 10.1086/123456)
    - /papers/jones2019.pdf (OpenAlex: W2123456789)
    
  3. 出力を集める:ノートは reading-notes/ ディレクトリに保存されます

ワークフローの各フェーズ

フェーズ 0:コーパスの監査

目標:コーパスの内容を評価し、不足している点を特定します。

プロセス:

  • lit-search(またはユーザーの参考文献ライブラリ)のデータベースを確認します
  • 年、ジャーナル、著者、理論的伝統ごとに論文数を数えます
  • カバレッジに不足している可能性のある点を特定します
  • 精読が必要な論文と、ざっと目を通せばよい論文の優先順位を決めます

出力:コーパス監査の結果を、統計情報と読書の優先順位として会話内に提示します。

一時停止:ユーザーがコーパスのカバレッジと読書の優先順位を確認します。


フェーズ 1:精読

目標:優先度の高い論文を精読し、分析上の知見を抽出します。

プロセス:

  • 優先度の高い各論文について、library/markdown/ から全文を読みます
  • 論証の構成、理論的枠組み、主要概念、方法論的アプローチを抽出します
  • 理論がどのように展開されているか、主張を支える根拠は何か、認識されている限界は何かを記録します
  • 構造化した読書ノートを作成します

出力:論文ごとのノートを収めた reading-notes/ ディレクトリ。

一時停止:ユーザーが主要な論文の読書ノートを確認します。


フェーズ 2:理論的マッピング

目標:知的伝統と系譜を特定します。

プロセス:

  • 論文全体に見られる理論的枠組みを特定します
  • uv run "$SKILL_DIR"/scripts/rag.py search "theoretical concept" を使い、ライブラリ全体から概念的に関連する箇所を探します
  • 引用関係(誰が誰を引用しているか)をマッピングします
  • 基礎となる文献とその後継を記録します
  • 「陣営」や思想学派を特定します
  • 主要な概念とその使われ方を記録します

出力:field-synthesis.md に ## 理論的マップ セクションを作成します。

一時停止:ユーザーが理論的な全体像を確認します。


フェーズ 3:テーマ別クラスタリング

目標:何をどのように研究しているかに基づいて論文を整理します。

プロセス:

  • 実証的な焦点(対象集団、設定、現象)に基づいて論文をグループ化します
  • 理論的アプローチに基づいて論文をグループ化します
  • 方法論的戦略に基づいて論文をグループ化します
  • 複数のクラスターをつなぐ論文を特定します
  • クラスター内の合意点と見解の相違を記録します

出力:field-synthesis.md に ## テーマ別クラスター セクションを追加します。

一時停止:ユーザーがクラスタリングの論理を確認します。


フェーズ 4:論争のマッピング

目標:緊張関係、意見の相違、競合する立場を特定します。

プロセス:

  • 明示的な意見の相違(互いを批判している論文)を探します
  • 暗黙の緊張関係(矛盾する知見や両立しない前提)を探します
  • この分野で未解決のまま取り組まれている問いを特定します
  • 根拠が混在している、または議論の的となっている箇所を記録します
  • それぞれの緊張関係について「議論の現状」を記録します

出力:field-synthesis.md に ## 論争マップ セクションを追加します。

一時停止:ユーザーが論争を確認し、重点領域を選択します。


フェーズ 5:分野の統合

目標:執筆に備え、分野について包括的な理解を形成します。

プロセス:

  • 各フェーズの内容を統合し、分野について一貫した理解を形成します
  • 貢献につながる、最も有望な研究上の空白を特定します
  • 候補となる貢献と、それぞれがユーザーのプロジェクトにどう適合するかを概説します

出力:フェーズ 2~4 で追加したセクションを基に、統合的な理解と貢献の機会を盛り込んだ field-synthesis.md を完成させます。


出力ファイル

lit-synthesis/
├── reading-notes/            # Phase 1: Per-paper notes (kept for batch production)
│   ├── smith2020-cultural-frames.md    # Filename: author-year-short-title
│   ├── jones2019-institutional.md
│   └── ...                             # Each file has identifier frontmatter
└── field-synthesis.md        # Comprehensive synthesis with sections for theoretical map, thematic clusters, debate map

注:ファイル名は人が読みやすいように author-year-short-title.md を使用しますが、ノートと元の論文を照合する際には、フロントマターの識別子(citation_key、OpenAlex ID、DOI)が正式な照合手段となります。下流の執筆スキルで [@citationKey] という Pandoc 引用構文を使用できるため、citation_key が推奨されます。

読書ノートのテンプレート

フェーズ 1 で各論文のノートを作成する際、ワークフロー全体を通じて確実に検索できるよう、ノートには識別子のフロントマターを必ず含める必要があります。

---
# Required: At least one unique identifier
citation_key: smithCulturalFrames2020  # Preferred: from lit-search database or references.bib
openalex_id: W2123456789    # From lit-search database
doi: 10.1086/123456         # Digital Object Identifier

# Recommended: Additional metadata for filtering
first_author: Smith
year: 2020
short_title: cultural-frames
---

# Smith 2020 - Cultural Frames

## Bibliographic Info
- Full citation: [from references.bib or database]
- DOI: [link]
- OpenAlex: https://openalex.org/W2123456789

## Core Argument
[1-2 sentences: What is the paper arguing?]

## Theoretical Framework
- Tradition: [e.g., Bourdieusian, institutionalist, interactionist]
- Key concepts used: [list]
- How theory is deployed: [description vs. extension vs. critique]

## Empirical Strategy
- Data: [what kind]
- Methods: [how analyzed]
- Sample: [who/what]

## Key Findings
1. [Finding 1]
2. [Finding 2]
3. [Finding 3]

## Contribution Claim
[What does the paper claim to contribute?]

## Limitations (as noted by authors)
- [Limitation 1]
- [Limitation 2]

## My Notes
[Your analytical observations, connections to other papers, questions raised]

## Key Quotes
> "[Quote 1]" (p. X)

> "[Quote 2]" (p. Y)

## Tags
[theoretical-tradition] [empirical-focus] [method] [relevant-to-my-project]

モデルの推奨

フェーズモデル理由
フェーズ 0: コーパスの監査Sonnetデータ処理、統計
フェーズ 1: 精読Sonnet変換済み Markdown の分析的な読解
フェーズ 2: 理論のマッピングOpusパターン認識、思想史
フェーズ 3: テーマ別クラスタリングSonnet整理、分類
フェーズ 4: 論争のマッピングOpus緊張関係の特定、ニュアンスの把握
フェーズ 5: 分野の統合Opus統合、戦略的判断

統合の開始

ユーザーが開始する準備ができたら、次の手順に進みます。

  1. コーパスを特定する:

    「論文はどこにありますか? PDF のフォルダーですか? lit-search の references.bib ですか? 論文は全部で何本ありますか?」

  2. ローカルライブラリの設定を確認する:

    「library/markdown/ に Markdown に変換済みの PDF はありますか? ない場合は、フェーズ 1 の前に各 PDF に対して "$SKILL_DIR"/scripts/ingest.py --file を実行します。」

  3. 優先順位を設定する:

    「プロジェクトの中心となる論文はどれですか? まずそれらを精読し、残りはざっと読みます。」

  4. 目標を明確にする:

    「この分野について何を理解しようとしていますか? 研究の空白、論争、特定の理論的伝統のどれを探していますか?」

  5. フェーズ 0 に進み、コーパスを監査します。

主な注意事項

  • 識別子は必須です: 各読書メモのフロントマターには、少なくとも 1 つの一意な識別子(citation_key、OpenAlex ID、または DOI)が必要です。利用できる場合は citation_key を優先してください。
  • 読む前に変換する: フェーズ 1 の開始前に、各 PDF に対して uv run "$SKILL_DIR"/scripts/ingest.py --file <pdf> を実行します
  • 量より質を重視する: 論文 50 本をざっと読むより、15 本を精読する方が効果的です
  • 論争は機会です: 見つかった緊張関係はすべて、貢献できる可能性のある領域です

コメント