sybil-solutions/ai-data-extraction

extract all your personal data history from cursor, codex, claude-code, windsurf, and trae

AIコーディングアシスタント学習データ抽出ツールキット

概要 – 人気のAIコーディングアシスタント(Claude、Cursor、Codex、Gemini、OpenCodeなど)のローカルストレージをスキャンし、完全な会話履歴、コードスニペット、差分、ツール呼び出し結果、メタデータを抽出するPythonスクリプト集です。抽出されたデータは行区切りJSON (JSONL) 形式で書き出されるため、微調整やその他の機械学習研究のためのデータセット構築パイプラインに直接入力できます。

主な機能

  • OSを自動検出し、サポートされている各ツールのデフォルト設定/データフォルダを検索します。
  • 多様なストレージ形式に対応:JSONLファイル、SQLiteデータベース、Tauri .dat ファイル、コンテンツアドレス指定型blobストレージ。
  • 豊富なコンテキストを保持:ファイルパス、行範囲、コード選択範囲、提案された差分、ツール出力、タイムスタンプ、モデル識別子、セッション階層。
  • 各アシスタント用の一括実行スクリプト(extract_cursor.py、extract_claude_code.py など)と extract_all.sh ラッパー。
  • オプションのプライバシーフィルター:OpenAIのプライバシーフィルターモデルをローカルで実行し、メールアドレスや機密情報をマスクします。
  • マージ、日付によるフィルタリング、差分を含む会話のみの選択を行うヘルパーユーティリティ。
  • corpus_to_skills.py スクリプト:ローカルLLMを使用して、フィルタリングされたコーパスを再利用可能な Agent Skills に変換します。

典型的なワークフロー

  1. Python 3.6+ をインストールします(コア抽出機能に外部依存関係はありません)。
  2. 目的のスクリプトを実行します(例:python3 extract_cursor.py)。
  3. ツールが extracted_data/…jsonl ファイルを作成し、会話ごとに1つのJSONオブジェクトを格納します。
  4. 🤗 Datasets などのライブラリでJSONLファイルを読み込み、必要に応じてフィルタリングを行い、モデルの微調整に使用します。

重要性 – 高品質なコードアシスタントモデルのトレーニングには、テキストのやり取りだけでなく、周囲のコードコンテキストや編集履歴を含む、大規模で構造化されたコーパスが必要です。このツールキットは、既存のアシスタントが使用する多くの独自ストレージ形式からデータを抽出する面倒な作業を自動化し、ローカルファーストかつプライバシーに配慮した方法で、研究者がよりリッチなデータセットを構築できるようにします。

ライセンスと安全性 – MITライセンス。READMEでは、ユーザーが抽出したデータの所有権を持つこと、各ツールの利用規約を遵守すること、抽出した資料を共有する前に機密スキャンやプライバシーチェックを実行することを強く推奨しています。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト