agarwalvishal/claude-chat-exporter
One-click, privacy-first exporter for Claude.ai chats — clean Markdown with artifacts and attachments, ready for Obsidian and RAG.
Claude Chat Exporter – 何であるか
Claude.ai での任意の会話を、クリーンな Markdown ファイルとしてダウンロードできる、小さなオープンソースのブラウザスクリプトです。完全にブラウザ内で実行され(サーバー不要)、Claude のプライベート API から直接生成された生の Markdown を取得し、ローカルに保存します。
なぜこのツールが必要なのか
- Web UI は長いチャットの一部しか表示できず、コピー用ボタンに脆弱な CSS セレクタに依存しています。
- UI からのエクスポートでは、アーティファクト、ファイル、チャート、添付ファイルが欠落する可能性があります。
- Obsidian や Retrieval-Augmented Generation (RAG) パイプラインなどの知識ベースツールでは、構造化され、メタデータ豊富な Markdown ドキュメントが必要です。
コア機能
| 機能 | 得られるもの |
|---|---|
| ワンクリックのブックマークレット | ボタンをブックマークバーにドラッグし、Claude チャットを開いてクリックするだけで、.md ファイルが自動的にダウンロードされます。 |
| 完全な Markdown の忠実性 | API から ソース の Markdown を読み込むため、HTML 変換なし。テーブル、数式、コードなど、すべてバイト単位で正確です。 |
| すべての要素をサポート | テーブル、LaTeX 数式、コードブロック、ネストされたリスト、リンク、見出し、アーティファクト、作成されたファイル、チャート/図(囲みコードとして)、すべての添付ファイル。 |
| Obsidian および RAG 用の出力 | YAML フロントマター(title, source, model, exported)に加え、各ターンに # Human / # Claude ヘッダーを追加。ノート作成や検索用のチャンク化に最適。 |
| タイムスタンプ | Claude の API から取得したメッセージごとのタイムスタンプ。 |
| スマートなファイル名 | API から取得した会話タイトルを使用(フォールバック:claude_conversation.md)。 |
| プライバシー最優先 | バックエンドなし、トラッキングなし。ネットワーク要求は Claude の API への認証済み GET 1回のみ。 |
| UI の変更に強い | CSS セレクタではなく、安定したデータ契約に基づいて動作します。 |
動作の概要(要約)
- 取得 –
GET /api/organizations/{orgId}/chat_conversations/{conversationId}を呼び出し(同じオリジン、セッションクッキーを使用)。レスポンスには会話タイトル、モデル、すべてのメッセージが含まれます。 - 順序の構築 –
current_leaf_message_uuidからparent_message_uuidのリンクをたどり、現在の会話ツリーの枝を再構築し、リストを逆順にします。 - 抽出 – 各メッセージの
contentブロックを順に処理し、生のtextブロックを出力し、特殊なtool_useブロック(アーティファクト、create_file、visualizeウィジェット)をラベル付きの囲みコードとしてレンダリングします。 - Markdown の構築 – YAML フロントマターを先頭に追加し、各ターンに
# Human — …/# Claude — …ヘッダーを追加、タイムスタンプを挿入、添付ファイル(画像は埋め込み、テキストファイルはブロック引用、その他のドキュメントはリンク)を配置します。 - ダウンロード – 組み立てられた
.mdファイルをブラウザのダウンロードとしてトリガーします。
使い方
- ブックマークレット – インストールページにアクセスし、「📥 Claude Export」ボタンをブックマークバーにドラッグ。Claude チャットを開き、ブックマークをクリック。スクリプトは自動的に更新されます。
- コンソールモード –
claude-chat-exporter.jsのソースをコピーし、Claude の会話ページのブラウザ開発者コンソールに貼り付け、Enter を押します。スクリプトが小さなステータスボックスを表示し、その後ファイルをダウンロードします。
プライバシーとセキュリティ
- クライアント側のみで実行。作者のサーバーには何のデータも送信されません。
- ネットワーク要求は、Web UI が既に行っているのと同じ認証済み Claude のバックエンドへの GET 1回のみ。
- ダウンロード後、データは保存されません。ブックマークレットの更新チェックは、パブリックなスクリプトファイルのみを取得します。
制限事項
- ログイン中の Claude Web UI でのみ動作します。
- Claude の非公開内部 API に依存しています – ブレイキングチェンジが発生するとスクリプトの更新が必要です。
- 二進データの添付ファイル(画像/PDF)はエクスポートされません(リンクのみ)。一部のツール呼び出し(Web検索、bash など)はスキップされます。
- ブラウザで JavaScript が有効である必要があります。
使うべき人
- Claude セッションの再現可能な記録が必要な研究者や開発者。
- Obsidian、Notion などのツールを使って知識ベースを構築する人。
- クリーンでタイムスタンプ付き、メタデータ豊富な Markdown を必要とする RAG パイプラインを構築する人。
- プロジェクトは MIT ライセンスで、作者によって維持されています。スポンサーシップは、Claude の進化する API に対応した最新化を支援します。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト