MUZHILI
13 本のガイドを公開中ガイドを読む
Codex · グラフィックチュートリアル

Claude のプロジェクトとレコードを Codex に移行します

まずデータを保存し、次にアクセス方法を選択して、作業を続行します。

著者:Xiao Foye · エージェント・パイオニアチーム メンバー7 ステップ画像を見ながら操作1 ページで完結
FIG 09 · MIGRATE.MORPHLIVE
Claude から Codex への移行7のステップ
ソース
動作環境

切り替え後は、以下のステップごとに該当ルートの内容が表示されます。

01

STEP 01 / 07

まずは自分が持っている情報を確認する

今回あなたが奪うのは、プロジェクト ファイル、読みやすいチャット、そして仕事の背景です。まずデータがどこにあるかを確認してから、次の手順に従ってください。アカウントのサブスクリプションとツールのログインステータスは個別に設定する必要があります。

正常にログインできるCodexを用意してください。すでに持っている場合は、そのまま続行してください。まだインストールされていない場合でもご覧いただけます。公式の CLI 取り付け手順。

最初に見つけてください何に使われますか?
元のプロジェクトディレクトリコード、マテリアル、およびコミットされていない変更。後で Codex にこのディレクトリを開いてもらいます
%USERPROFILE%\.claude\projectsローカルセッション JSONL とプロジェクトメモリ
CLAUDE.md、.claude/プロジェクトのルール、スキル、構成。アイテムが不足している場合は整理されます

WSL、Docker、または SSH サーバーで Claude Code を実行する場合は、元の環境に移動してレコードを検索してください。セット CLAUDE_CONFIG_DIR または autoMemoryDirectory その場合、実際のディレクトリが優先されます。history.jsonl 入力履歴のみが記録され、セッション全体を置き換えることはできません。

まず編集中のコンテンツを保存し、元のディレクトリとキャッシュを一時的に保持します。次のステップはコピーを作成することです。

今回あなたが奪うのは、プロジェクト ファイル、読みやすいチャット、そして仕事の背景です。まずデータがどこにあるかを確認してから、次の手順に従ってください。アカウントのサブスクリプションとツールのログインステータスは個別に設定する必要があります。

正常にログインできるCodexを用意してください。すでに持っている場合は、そのまま続行してください。まだインストールされていない場合でもご覧いただけます。公式の CLI 取り付け手順。

最初に見つけてください何に使われますか?
元のプロジェクトディレクトリコード、マテリアル、およびコミットされていない変更。後で Codex にこのディレクトリを開いてもらいます
~/.claude/projects/ローカルセッション JSONL とプロジェクトメモリ
CLAUDE.md、.claude/プロジェクトのルール、スキル、構成。アイテムが不足している場合は整理されます

WSL、Docker、または SSH サーバーで Claude Code を実行する場合は、元の環境に移動してレコードを検索してください。セット CLAUDE_CONFIG_DIR または autoMemoryDirectory その場合、実際のディレクトリが優先されます。history.jsonl 入力履歴のみが記録され、セッション全体を置き換えることはできません。

まず編集中のコンテンツを保存し、元のディレクトリとキャッシュを一時的に保持します。次のステップはコピーを作成することです。

今回あなたが奪うのは、プロジェクト ファイル、読みやすいチャット、そして仕事の背景です。まずデータがどこにあるかを確認してから、次の手順に従ってください。アカウントのサブスクリプションとツールのログインステータスは個別に設定する必要があります。

正常にログインできるCodexを用意してください。すでに持っている場合は、そのまま続行してください。まだインストールされていない場合でもご覧いただけます。公式の CLI 取り付け手順。

このルートは、Claude Web または Chat チャットに適しています。 Web ページのレコードと Claude Code ローカル セッションは 2 つのデータ セットです。 Web ページのレコードをエクスポートするためにそれらを検索する必要はありません。 .claude/projects/。

  • 元のアカウント、バインドされたメールアドレス、独立したバックアップフォルダーを準備します。
  • プロジェクトで作業するときは、コード、添付ファイル、および Projects 命令の既存のコピーを追加で準備します。
  • チャットはアイデアを補足することはできますが、最新のコードを置き換えたり、ファイルをアップロードしたりすることはできません。

次のステップは、Claude のエクスポート ポータルから圧縮パッケージを取得することです。既製のエクスポート パッケージしかない場合は、コピーを直接保存して続行することもできます。

今回あなたが奪うのは、プロジェクト ファイル、読みやすいチャット、そして仕事の背景です。まずデータがどこにあるかを確認してから、次の手順に従ってください。アカウントのサブスクリプションとツールのログインステータスは個別に設定する必要があります。

正常にログインできるCodexを用意してください。すでに持っている場合は、そのまま続行してください。まだインストールされていない場合でもご覧いただけます。公式の CLI 取り付け手順。

このルートは、古いディスク、プロジェクト フォルダー、または既存のバックアップしかない場合に適しています。まず、見つけられるものをリストしてみましょう。

  • コード、アセット、コミットされていない変更、および現在利用可能なデプロイメントまたはリポジトリのコピー。
  • CLAUDE.md、memory/、チャットのエクスポートとタスクのメモ。
  • 古いパスと新しいパスの間の対応、および欠落したデータ。

完全な Claude Code データを取得し、インポーターを使用したい場合は、「Claude Code ローカル レコード」ルートに切り替えることができます。コードや書類だけの場合は、チャットを待たずに直接渡すことも可能です。

完了の目安
  • この確認ステップは完了しました。
02

STEP 02 / 07

まず独立したバックアップを保持してくださいエクスポートを申請して元ファイルを保存するプロジェクトと元のバックアップを分けて保存する

まず、ディスクに書き込まれていない変更を保存し、書き込み中の Claude Code セッションを閉じます。例のプロジェクト パスを独自のパスに変更します。バックアップ ディレクトリをプロジェクトの外に配置し、Claude データ ディレクトリを作成します。

で PowerShell 走る。 Fディスクがない場合も F:\AI\claude-rescue 独自のバックアップ場所に変更します。

$sourceProject = 'F:\AI\my-project'
$backupBase = 'F:\AI\claude-rescue'
$stamp = Get-Date -Format 'yyyyMMdd-HHmmss'
$backupRoot = Join-Path $backupBase $stamp
$claudeRoot = if ($env:CLAUDE_CONFIG_DIR) {
  $env:CLAUDE_CONFIG_DIR
} else {
  Join-Path $env:USERPROFILE '.claude'
}

if (-not (Test-Path -LiteralPath $sourceProject -PathType Container)) {
  throw '项目目录不存在,请检查 sourceProject'
}
$projectFull = (Resolve-Path -LiteralPath $sourceProject -ErrorAction Stop).Path.TrimEnd('\')
$claudeFull = [IO.Path]::GetFullPath($claudeRoot).TrimEnd('\')
$backupFull = [IO.Path]::GetFullPath($backupRoot).TrimEnd('\')
foreach ($sourceFull in @($projectFull, $claudeFull)) {
  if ($backupFull.Equals($sourceFull, [StringComparison]::OrdinalIgnoreCase) -or
      $backupFull.StartsWith($sourceFull + '\', [StringComparison]::OrdinalIgnoreCase)) {
    throw '备份位置在源目录内,请改到独立目录或磁盘'
  }
}
if (Test-Path -LiteralPath $backupRoot) {
  throw '备份目录已存在,停止以避免覆盖'
}
New-Item -ItemType Directory -Path $backupRoot -ErrorAction Stop | Out-Null
Copy-Item -LiteralPath $sourceProject -Destination (Join-Path $backupRoot 'project') -Recurse -Force -ErrorAction Stop
if (Test-Path -LiteralPath $claudeRoot -PathType Container) {
  Copy-Item -LiteralPath $claudeRoot -Destination (Join-Path $backupRoot 'claude-data') -Recurse -Force -ErrorAction Stop
} else {
  Write-Warning '项目已备份;Claude 数据目录未找到,请检查原运行环境后补充备份'
}
$extraConfig = Join-Path $env:USERPROFILE '.claude.json'
if (Test-Path -LiteralPath $extraConfig) {
  Copy-Item -LiteralPath $extraConfig -Destination $backupRoot -ErrorAction Stop
}
Get-ChildItem -LiteralPath $backupRoot -Force

完了したら、バックアップを開きます project そして claude-data、ファイルが実際に読み取れるかどうかをスポットチェックします。 Claude データ ディレクトリが見つからない場合でも、プロジェクトはバックアップされますが、元の環境に戻ってレコードを再度検索する必要があります。外部メモリ、シンボリック リンク、または junction が指す別の場所にコピーを保存します。

はい Git: 現在のワークスペースのステータスを記録します

これらのコマンドはステータスを表示するだけです。 Git がない場合はスキップしますが、コミットされていないファイルとローカル マテリアルを保存する必要があります。

git status --short
git branch --show-current
git log -5 --oneline
git diff --stat

プライベート チャットや認証情報を含む完全バックアップは、お客様の管理下にあるストレージに残ります。パッケージ全体をパブリック リポジトリに送信しないでください。

まず、ディスクに書き込まれていない変更を保存し、書き込み中の Claude Code セッションを閉じます。例のプロジェクト パスを独自のパスに変更します。バックアップ ディレクトリをプロジェクトの外に配置し、Claude データ ディレクトリを作成します。

で Bash または Zsh 走る。 WSL Claude Code が動作する Linux ユーザー環境をご利用ください。

source_project='/path/to/my-project'
claude_root="${CLAUDE_CONFIG_DIR:-$HOME/.claude}"
backup_root="$HOME/claude-rescue/$(date +%Y%m%d-%H%M%S)"

backup_claude() {
  [ -d "$source_project" ] || { printf '项目目录不存在\n' >&2; return 1; }
  [ ! -e "$backup_root" ] || { printf '备份目录已存在\n' >&2; return 1; }
  project_full=$(cd "$source_project" && pwd -P) || return 1
  mkdir -p "$(dirname "$backup_root")" || return 1
  backup_parent=$(cd "$(dirname "$backup_root")" && pwd -P) || return 1
  backup_full="$backup_parent/$(basename "$backup_root")"
  case "$backup_full/" in
    "$project_full/"*) printf '备份位置在项目内,请换位置\n' >&2; return 1 ;;
  esac
  if [ -d "$claude_root" ]; then
    claude_full=$(cd "$claude_root" && pwd -P) || return 1
    case "$backup_full/" in
      "$claude_full/"*) printf '备份位置在 Claude 数据内,请换位置\n' >&2; return 1 ;;
    esac
  fi
  mkdir "$backup_root" || return 1
  cp -a "$source_project" "$backup_root/project" || return 1
  if [ -d "$claude_root" ]; then
    cp -a "$claude_root" "$backup_root/claude-data" || return 1
  else
    printf '项目已备份;Claude 数据未找到,请检查原运行环境后补充备份\n' >&2
  fi
  if [ -f "$HOME/.claude.json" ]; then
    cp -a "$HOME/.claude.json" "$backup_root/" || return 1
  fi
  printf '备份位置:%s\n' "$backup_root"
  ls -la "$backup_root"
}
backup_claude

完了したら、バックアップを開きます project そして claude-data、ファイルが実際に読み取れるかどうかをスポットチェックします。 Claude データ ディレクトリが見つからない場合でも、プロジェクトはバックアップされますが、元の環境に戻ってレコードを再度検索する必要があります。外部メモリ、シンボリック リンク、または junction が指す別の場所にコピーを保存します。

はい Git: 現在のワークスペースのステータスを記録します

これらのコマンドはステータスを表示するだけです。 Git がない場合はスキップしますが、コミットされていないファイルとローカル マテリアルを保存する必要があります。

git status --short
git branch --show-current
git log -5 --oneline
git diff --stat

プライベート チャットや認証情報を含む完全バックアップは、お客様の管理下にあるストレージに残ります。パッケージ全体をパブリック リポジトリに送信しないでください。

  1. Claudeの設定も入力できたら、開きます Settings → Privacy → Export data。 Web ページと Claude Desktop はエクスポートの開始をサポートします。携帯電話 App はクライアントからエクスポートを開始できません。
  2. アカウントが制限されている場合はログインしてください claude.ai制限されたページが利用可能かどうかを確認するには Export data。エクスポート可能な範囲は実際のアカウントの入力に依存します。
  3. バインドされた電子メール アドレスに移動して、ZIP をダウンロードしてエクスポートします。ダウンロード中はログインしたままにしてください。電子メールのリンクが送信された後 24時間期限切れです。有効期限が切れた後は再申請できます。
  4. 元の ZIP はバックアップとして保存され、別のコピーが後続の処理のために解凍されます。プロジェクト ファイル、アップロード添付ファイル、および Projects コマンドが含まれるかどうかは、個別に確認する必要があります。不足しているものは既存のコピーから埋められます。
Team/Enterpriseアカウント

通常のメンバーは、組織の所有者によって有効にされている場合、チャットをエクスポートできます。このエクスポートには、アップロードされたファイルは含まれません。組織の完全なデータは次のもので構成されています Primary Owner 組織データおよびプライバシー ポータルから操作します。必要な権限が利用できない場合は、組織のリーダーに問い合わせてください。

エクスポート パッケージを既に持っている場合は、元の ZIP の未変更のコピーを保持して続行します。

  1. 必要な項目を古いディスクまたはバックアップから現在のコンピュータにコピーします。最初に元のコピーを保持します。
  2. 現在の作業コピーの独立したバックアップを残します。ファイル マネージャーがコピーすると、隠しファイル、コミットされていない変更、追跡されていないファイル、および必要なマテリアルが持ち込まれます。 re-clone リポジトリにはこれらのコンテンツは含まれません。
  3. 利用可能なルール、思い出、チャット、クエストメモを同じリストに保存し、古いパスと新しいパスを記録します。ディレクトリ リンクが指す外部ファイルは個別にコピーされます。

唯一のバックアップで直接パスを整理、名前変更、またはバッチ置換しないでください。チャットがない場合は、まずチャットが欠落としてマークされ、既存のファイルが引き継ぎに引き続き使用されます。

完了の目安
  • この確認ステップは完了しました。
03

STEP 03 / 07

アクセス方法を選択してくださいWeb ページのレコードを読み取り可能なデータに整理するCodex でプロジェクトのコピーを開きます

三つの方法1つ選択してくださいそれだけです。 Codex がプロジェクトを直接引き継ぐ必要がある場合は、ローカルの CLI が最初に使用されます。インポーターが利用できない場合は、手動アクセスを継続することもできます。

アクセス方法 ・どちらかを選択するだけ

すでに Codex を実行できる場合は、プロジェクトを入力して開始できます。次の npm update コマンドでは、Node.js と npm がローカル マシンにインストールされている必要があります。他のチャネルを通じてインストールされたコーデックスは、元のチャネルに従って更新する必要があります。

npm install -g @openai/codex@latest
codex --version

プロジェクトへのパスを変更し、PowerShell で起動します。

try {
  Set-Location -LiteralPath 'F:\AI\my-project' -ErrorAction Stop
  codex
} catch {
  Write-Error '没有成功进入项目目录,请检查路径'
}

Codex にログインした後、そのチャット入力ボックスシステム端末やクロード コードではなく、次の行を入力します。

/import
  1. 「クロード・コード」を選択し、今回挑戦するプロジェクトを選択します。
  2. コマンド、設定、最近のチャットのリストを表示し、必要に応じてインポートします。
  3. インポートされていない項目、再度ログインする必要がある項目、または互換性がないことを示すメッセージが表示された項目をメモし、これらの不足している項目のみを次の手順で入力します。
/import が表示されないか、データが別のマシン上にあります

/import のためだけにローカルのアイドル状態の Codex CLI インタラクティブ インターフェイス。タスクの実行、リモート セッション、またはローカルのアプリサーバー デーモンへの接続には使用できません。 CLI は最大でインポートします過去 30 日間で 50 件のチャット。

更新後、新しいローカル アイドル セッションを作成し、再試行してください。それでも利用できない場合は、手動アクセスを選択してください。リモートデータ、カスタマイズ CLAUDE_CONFIG_DIR 認識されない場合は、そのマシン上でローカル CLI を使用するか、手動ハンドオーバー用にバックアップを保存することができます。インポーターを収容するためにデフォルトのディレクトリを上書きしないでください。

すでに Codex を実行できる場合は、プロジェクトを入力して開始できます。次の npm update コマンドでは、Node.js と npm がローカル マシンにインストールされている必要があります。他のチャネルを通じてインストールされたコーデックスは、元のチャネルに従って更新する必要があります。

npm install -g @openai/codex@latest
codex --version

プロジェクトへのパスを変更し、Bash または Zsh で開始します。

cd '/path/to/my-project' && codex

Codex にログインした後、そのチャット入力ボックスシステム端末やクロード コードではなく、次の行を入力します。

/import
  1. 「クロード・コード」を選択し、今回挑戦するプロジェクトを選択します。
  2. コマンド、設定、最近のチャットのリストを表示し、必要に応じてインポートします。
  3. インポートされていない項目、再度ログインする必要がある項目、または互換性がないことを示すメッセージが表示された項目をメモし、これらの不足している項目のみを次の手順で入力します。
/import が表示されないか、データが別のマシン上にあります

/import のためだけにローカルのアイドル状態の Codex CLI インタラクティブ インターフェイス。タスクの実行、リモート セッション、またはローカルのアプリサーバー デーモンへの接続には使用できません。 CLI は最大でインポートします過去 30 日間で 50 件のチャット。

更新後、新しいローカル アイドル セッションを作成し、再試行してください。それでも利用できない場合は、手動アクセスを選択してください。リモートデータ、カスタマイズ CLAUDE_CONFIG_DIR 認識されない場合は、そのマシン上でローカル CLI を使用するか、手動ハンドオーバー用にバックアップを保存することができます。インポーターを収容するためにデフォルトのディレクトリを上書きしないでください。

Web ページの ZIP を Codex CLI に直接渡すことはできません /import;このステップでは、まず読み取り可能なデータに変換します。解凍後は、 conversations.json マークダウンに変換できます。

ダウンロード後、スクリプトを独自のツール ディレクトリに保存します。必要です Python 3.10以降、標準ライブラリのみを使用します。このマシンではオフラインで実行されるため、Claude にログインしたり、モデルを呼び出したりする必要はありません。

export_claude.py をダウンロード

以下はスクリプトとして保存されます F:\AI\claude-rescue たとえば、パスを実際の場所に置き換えるには、次のようにします。

python 'F:\AI\claude-rescue\export_claude.py' 'F:\AI\claude-rescue\web-export\conversations.json' --out 'F:\AI\claude-rescue\archive-web'

--out 後でなければなりませんまだ存在しないディレクトリ以外の新しいディレクトリを入力します。すでに同名のディレクトリが存在する場合は、名前を変更してください。古い結果を削除して再度実行しないでください。変換後に開く INDEX.md、おなじみの会話をスポットチェックします。

変換範囲と終了コード

このスクリプトは、認識されたユーザー/アシスタントの表示テキストを抽出し、思考ブロック、ツール呼び出し、およびツールの結果をスキップし、分岐された最終的な会話チェーンを再構築しません。 Markdown は人間が判読できるマテリアルであり、Codex のネイティブ セッションとして使用することはできません。 resumeまた、元のログ バックアップを置き換えることもできません。

終了コード 0: 今回はデータのギャップは報告されませんでした。1: 失敗または有効なセッションがありません。2: ギャップのある部分的なアーカイブが生成されました。現れる 2 まず端末の警告を確認し、 INDEX.mdをクリックして、元のファイルを確認します。たとえ 0、また、スクリプトでサポートされている表示テキストのみをオーバーライドします。

スクリプトは自動的に感度を解除しません。 Codex には、タスクに関連する精査されたデータのみを読み取らせます。モデルが読み取った内容がリクエストに組み込まれる可能性があります。

そうでない場合 conversations.json, まずエクスポート パッケージを開いて構造を確認します。サフィックスを変更して強制的に変換しないで、読み取り可能なファイルを維持してください。変換可能なチャットがない場合でも、既存のコードとドキュメントを使用してハンドオーバーを続行できます。

Web ページの ZIP を Codex CLI に直接渡すことはできません /import;このステップでは、まず読み取り可能なデータに変換します。解凍後は、 conversations.json マークダウンに変換できます。

ダウンロード後、スクリプトを独自のツール ディレクトリに保存します。必要です Python 3.10以降、標準ライブラリのみを使用します。このマシンではオフラインで実行されるため、Claude にログインしたり、モデルを呼び出したりする必要はありません。

export_claude.py をダウンロード

以下はスクリプトとして保存されます ~/claude-rescue たとえば、パスを実際の場所に置き換えるには、次のようにします。

python3 ~/claude-rescue/export_claude.py ~/claude-rescue/web-export/conversations.json --out ~/claude-rescue/archive-web

--out 後でなければなりませんまだ存在しないディレクトリ以外の新しいディレクトリを入力します。すでに同名のディレクトリが存在する場合は、名前を変更してください。古い結果を削除して再度実行しないでください。変換後に開く INDEX.md、おなじみの会話をスポットチェックします。

変換範囲と終了コード

このスクリプトは、認識されたユーザー/アシスタントの表示テキストを抽出し、思考ブロック、ツール呼び出し、およびツールの結果をスキップし、分岐された最終的な会話チェーンを再構築しません。 Markdown は人間が判読できるマテリアルであり、Codex のネイティブ セッションとして使用することはできません。 resumeまた、元のログ バックアップを置き換えることもできません。

終了コード 0: 今回はデータのギャップは報告されませんでした。1: 失敗または有効なセッションがありません。2: ギャップのある部分的なアーカイブが生成されました。現れる 2 まず端末の警告を確認し、 INDEX.mdをクリックして、元のファイルを確認します。たとえ 0、また、スクリプトでサポートされている表示テキストのみをオーバーライドします。

スクリプトは自動的に感度を解除しません。 Codex には、タスクに関連する精査されたデータのみを読み取らせます。モデルが読み取った内容がリクエストに組み込まれる可能性があります。

そうでない場合 conversations.json, まずエクスポート パッケージを開いて構造を確認します。サフィックスを変更して強制的に変換しないで、読み取り可能なファイルを維持してください。変換可能なチャットがない場合でも、既存のコードとドキュメントを使用してハンドオーバーを続行できます。

コーデックスで開く現在の作業コピー。プロジェクト パス、古いバックアップ パス、および最初にコンパイルしたファイル リストを指定します。最初に存在しないチャットを復元する必要はありません。

  1. はい README、CLAUDE.md またはタスクのメモは、まずプロジェクトの資料として保管してください。
  2. Markdown チャット ファイルがあるので、正確なパスを書き留めておき、後でタスクに関連する部分だけを読みます。
  3. コードのみで続行することもできます。既知のターゲットと不足している背景を個別に書き留め、5 番目のステップでハンドオーバーを形成します。

完全なクロード コード データを取得し、インポーターを使用したい場合は、データ ソースを切り替えることができます。このルートでは、Claude Code を再インストールする必要はありません。

完了の目安
  • この確認ステップは完了しました。
04

STEP 04 / 07スキップ可能

不足している情報のみを入力してください必要に応じて添付ファイルやプロジェクト情報を補足します必要に応じてルールと背景を完成させる

インポート後、不足している項目はなく、直接次のステップに進むことができます。手動でアクセスする場合、またはデータの一部だけが欠落している場合は、必要に応じて対応する項目を展開します。

アイテムのセッションまたはメモリが見つかりません

バックアップ中 claude-data\projects ディレクトリ名だけでなく、時間、作業パス、おなじみのメッセージによってプロジェクトを確認します。

Get-ChildItem -LiteralPath 'F:\AI\claude-rescue\你的备份目录\claude-data\projects' -Filter '*.jsonl' -Recurse -File |
  Sort-Object LastWriteTime -Descending |
  Select-Object -First 20 FullName, LastWriteTime, Length

memory/MEMORY.md はインデックスであり、参照されるサブジェクト ファイルと一緒に保持されます。サブエージェントの結論を追跡する必要がある場合は、関連するセクションを確認してください。 subagents/ 記録する。

完全なプロジェクト ルール、メモリ、またはツール設定
何が足りないのかそれを補う方法
プロジェクト CLAUDE.mdプロジェクト AGENTS.md; 既存のファイルが最初に比較されてからマージされます。
個人的な世界的な好みコーデックスグローバル AGENTS.md;CODEX_HOME カスタマイズ時に実際のディレクトリを使用する
プロジェクトメモリdocs/ai-handoff/memory/、プロジェクト説明書に読み取りエントリを書き込みます
カスタムスキルプロジェクト .agents/skills/ またはユーザー ~/.agents/skills/、パスと依存関係を確認します
MCP、フック、権限、プラグインCodexがサポートする構成に応じて項目ごとに設定し、必要なサービスがあれば再度ログインします

メモをコピーしたからといって、Codex は自動的にロードされません。チェックする AGENTS.md 同じレイヤーとの優先順位 AGENTS.override.md; グローバル ディレクティブとプロジェクト ディレクティブを合わせたデフォルトの制限は 32 KiB で、長い履歴はアーカイブに残され、オンデマンドで読み取られます。置いたら CLAUDE.md バックアップファイル名として設定されている同じディレクトリが見つかりました AGENTS.md 、2 つのコピーは自動的に読み込まれなくなります。

置かないでください settings.json 名前を直接変更する config.toml。形式、権限、フック イベントは両側で異なります。資格情報を独自のストレージまたは環境に保管し、チャット内の古いトークンから新しい構成をつなぎ合わせないでください。

未インポートの履歴を読み取る必要がある: Markdown へのオフライン変換

ダウンロード後、スクリプトを独自のツール ディレクトリに保存します。必要です Python 3.10以降、標準ライブラリのみを使用します。このマシンではオフラインで実行されるため、Claude にログインしたり、モデルを呼び出したりする必要はありません。

export_claude.py をダウンロード

実際のバックアップの場所へのパスを変更し、PowerShell で実行します。

python 'F:\AI\claude-rescue\export_claude.py' 'F:\AI\claude-rescue\你的备份目录\claude-data\projects' --out 'F:\AI\claude-rescue\archive-code'

--out 後でなければなりませんまだ存在しないディレクトリ以外の新しいディレクトリを入力します。すでに同名のディレクトリが存在する場合は、名前を変更してください。古い結果を削除して再度実行しないでください。変換後に開く INDEX.md、おなじみの会話をスポットチェックします。

変換範囲と終了コード

このスクリプトは、認識されたユーザー/アシスタントの表示テキストを抽出し、思考ブロック、ツール呼び出し、およびツールの結果をスキップし、分岐された最終的な会話チェーンを再構築しません。 Markdown は人間が判読できるマテリアルであり、Codex のネイティブ セッションとして使用することはできません。 resumeまた、元のログ バックアップを置き換えることもできません。

終了コード 0: 今回はデータのギャップは報告されませんでした。1: 失敗または有効なセッションがありません。2: ギャップのある部分的なアーカイブが生成されました。現れる 2 まず端末の警告を確認し、 INDEX.mdをクリックして、元のファイルを確認します。たとえ 0、また、スクリプトでサポートされている表示テキストのみをオーバーライドします。

スクリプトは自動的に感度を解除しません。 Codex には、タスクに関連する精査されたデータのみを読み取らせます。モデルが読み取った内容がリクエストに組み込まれる可能性があります。

インポート後、不足している項目はなく、直接次のステップに進むことができます。手動でアクセスする場合、またはデータの一部だけが欠落している場合は、必要に応じて対応する項目を展開します。

アイテムのセッションまたはメモリが見つかりません

バックアップ中 claude-data/projects/ ディレクトリ名だけでなく、時間、作業パス、おなじみのメッセージによってプロジェクトを確認します。

find "$HOME/claude-rescue/你的备份目录/claude-data/projects" -type f -name '*.jsonl'

memory/MEMORY.md はインデックスであり、参照されるサブジェクト ファイルと一緒に保持されます。サブエージェントの結論を追跡する必要がある場合は、関連するセクションを確認してください。 subagents/ 記録する。

完全なプロジェクト ルール、メモリ、またはツール設定
何が足りないのかそれを補う方法
プロジェクト CLAUDE.mdプロジェクト AGENTS.md; 既存のファイルが最初に比較されてからマージされます。
個人的な世界的な好みコーデックスグローバル AGENTS.md;CODEX_HOME カスタマイズ時に実際のディレクトリを使用する
プロジェクトメモリdocs/ai-handoff/memory/、プロジェクト説明書に読み取りエントリを書き込みます
カスタムスキルプロジェクト .agents/skills/ またはユーザー ~/.agents/skills/、パスと依存関係を確認します
MCP、フック、権限、プラグインCodexがサポートする構成に応じて項目ごとに設定し、必要なサービスがあれば再度ログインします

メモをコピーしたからといって、Codex は自動的にロードされません。チェックする AGENTS.md 同じレイヤーとの優先順位 AGENTS.override.md; グローバル ディレクティブとプロジェクト ディレクティブを合わせたデフォルトの制限は 32 KiB で、長い履歴はアーカイブに残され、オンデマンドで読み取られます。置いたら CLAUDE.md バックアップファイル名として設定されている同じディレクトリが見つかりました AGENTS.md 、2 つのコピーは自動的に読み込まれなくなります。

置かないでください settings.json 名前を直接変更する config.toml。形式、権限、フック イベントは両側で異なります。資格情報を独自のストレージまたは環境に保管し、チャット内の古いトークンから新しい構成をつなぎ合わせないでください。

未インポートの履歴を読み取る必要がある: Markdown へのオフライン変換

ダウンロード後、スクリプトを独自のツール ディレクトリに保存します。必要です Python 3.10以降、標準ライブラリのみを使用します。このマシンではオフラインで実行されるため、Claude にログインしたり、モデルを呼び出したりする必要はありません。

export_claude.py をダウンロード

パスを実際のバックアップの場所に変更し、Bash または Zsh で実行します。

python3 ~/claude-rescue/export_claude.py ~/claude-rescue/你的备份目录/claude-data/projects --out ~/claude-rescue/archive-code

--out 後でなければなりませんまだ存在しないディレクトリ以外の新しいディレクトリを入力します。すでに同名のディレクトリが存在する場合は、名前を変更してください。古い結果を削除して再度実行しないでください。変換後に開く INDEX.md、おなじみの会話をスポットチェックします。

変換範囲と終了コード

このスクリプトは、認識されたユーザー/アシスタントの表示テキストを抽出し、思考ブロック、ツール呼び出し、およびツールの結果をスキップし、分岐された最終的な会話チェーンを再構築しません。 Markdown は人間が判読できるマテリアルであり、Codex のネイティブ セッションとして使用することはできません。 resumeまた、元のログ バックアップを置き換えることもできません。

終了コード 0: 今回はデータのギャップは報告されませんでした。1: 失敗または有効なセッションがありません。2: ギャップのある部分的なアーカイブが生成されました。現れる 2 まず端末の警告を確認し、 INDEX.mdをクリックして、元のファイルを確認します。たとえ 0、また、スクリプトでサポートされている表示テキストのみをオーバーライドします。

スクリプトは自動的に感度を解除しません。 Codex には、タスクに関連する精査されたデータのみを読み取らせます。モデルが読み取った内容がリクエストに組み込まれる可能性があります。

エクスポートされたチャットが読み取り可能になり、添付ファイルが完成したら、次のステップに直接進みます。

エクスポート パッケージに添付ファイルまたはプロジェクト ディレクティブがありません

元のプロジェクト、古いディスク、ネットワーク ディスク、または保存した添付ファイルのコピーを表示します。見つかった内容とチャットを照合し、引き継ぎ文書に不足している部分をリストします。見つからないファイルは移行されたものとして扱わないでください。

変換が失敗したか、部分的な結果しか得られなかった

元の ZIP と元の JSON を保持し、ターミナルの警告とメッセージを確認します。 INDEX.md。終了コード 2 ギャップがあることを示します。サポートされていない構造は、読み取り可能なコンテンツに従って最初に手動で編成されます。元のファイルを上書きしたり、サフィックスのみを変更したりしないでください。

Web レコードにプロジェクト ルールがあります

まだ有効な目標、コミットメント、制約を選択し、プロジェクトに統合します。 AGENTS.md または引き継ぎ書類。既存のルールが最初に比較されます。履歴全体をコマンド ファイルに詰め込む必要はありません。

既存のドキュメントを引き継ぐのに十分な場合は、次のステップに直接進みます。現在のタスクに関連するコンテンツのみを追加します。

クロード プロジェクト ルールを Codex に転送する
何が足りないのかそれを補う方法
プロジェクト CLAUDE.mdプロジェクト AGENTS.md; 既存のファイルが最初に比較されてからマージされます。
個人的な世界的な好みコーデックスグローバル AGENTS.md;CODEX_HOME カスタマイズ時に実際のディレクトリを使用する
プロジェクトメモリdocs/ai-handoff/memory/、プロジェクト説明書に読み取りエントリを書き込みます
カスタムスキルプロジェクト .agents/skills/ またはユーザー ~/.agents/skills/、パスと依存関係を確認します
MCP、フック、権限、プラグインCodexがサポートする構成に応じて項目ごとに設定し、必要なサービスがあれば再度ログインします

メモをコピーしたからといって、Codex は自動的にロードされません。チェックする AGENTS.md 同じレイヤーとの優先順位 AGENTS.override.md; グローバル ディレクティブとプロジェクト ディレクティブを合わせたデフォルトの制限は 32 KiB で、長い履歴はアーカイブに残され、オンデマンドで読み取られます。置いたら CLAUDE.md バックアップファイル名として設定されている同じディレクトリが見つかりました AGENTS.md 、2 つのコピーは自動的に読み込まれなくなります。

置かないでください settings.json 名前を直接変更する config.toml。形式、権限、フック イベントは両側で異なります。資格情報を独自のストレージまたは環境に保管し、チャット内の古いトークンから新しい構成をつなぎ合わせないでください。

古いマシンのパスが変更されました

「古いパス → 新しいパス」の比較を保持し、作業コピー内のドキュメント参照、スキル スクリプト パス、MCP コマンドを修正します。元のバックアップはバッチで置き換えられません。現在のタスクが依存していないツールは、当面は未構成のままにしておくことができます。

チャットやタスクの履歴はありません

現在のコード、README、Git 履歴、既知の要件から検証可能な事実を照合します。推測と未確認の項目を分けてリストします。存在しない履歴を書き込んだり、既存のプロジェクトの引き継ぎを妨げたりしないでください。

完了の目安
  • 完了する必要があるコンテンツは処理されました。
05

STEP 05 / 07

現在のタスクを明確に引き継ぎます

プロジェクト内で準備する docs/ai-handoff/SUMMARY.md、現在のファイルと利用可能なレコードを入力します。目標、完了、未完了、次のタスク。引き継ぎ文書がすでに存在する場合は、競合するバージョンを作成せずにそれを更新します。

引き継ぎ文書テンプレートを展開する
# 项目交接

更新时间:<日期、时间、时区>
项目路径:<绝对路径>
分支:<当前分支;没有 Git 就写没有>

## 目标与范围
用户要完成什么,明确不包含什么。

## 已确认的决定
写清决定内容、理由,以及可以核对的记录来源。

## 当前状态
已完成:<文件、行为、实际交付位置>
未完成:<待办>
未验证:<尚未运行的测试或未核实的结论>

## 工作区
未提交修改:<文件>
未跟踪但必须保留的文件:<文件>
其他人的改动:<不要覆盖的范围>

## 验证结果
运行过什么命令,结果如何,失败或跳过的原因是什么。

## 下一项工作
第一步做什么,完成标准是什么。

## 关键资料
指令、记忆、相关会话、截图和外部资料的准确位置。

## 配置与授权边界
需要重新登录的服务;提交、推送、部署各自是否已获授权。

保持する必要がある主要な試行と失敗は、次のセクションに個別に記載されています。 RUN_LOG.md;関連する記憶と履歴アーカイブには正確なパスのみが書き込まれ、すべてのチャットは移動されません。 Git、チャット、メモリがない場合は、実際の状況を示すだけです。

ドキュメントを作成した後、Codex でプロジェクトの作業コピーを開きます。次に、同じプロンプトワードを使用して、タスクを受信したかどうかを確認します。

コード プロジェクトがある場合は、その作業コピーを使用します。チャットとドキュメントのみがある場合は、まずデータ作業フォルダーを作成し、Codex で開きます。

プロジェクト内で準備する docs/ai-handoff/SUMMARY.md、現在のファイルと利用可能なレコードを入力します。目標、完了、未完了、次のタスク。引き継ぎ文書がすでに存在する場合は、競合するバージョンを作成せずにそれを更新します。

引き継ぎ文書テンプレートを展開する
# 项目交接

更新时间:<日期、时间、时区>
项目路径:<绝对路径>
分支:<当前分支;没有 Git 就写没有>

## 目标与范围
用户要完成什么,明确不包含什么。

## 已确认的决定
写清决定内容、理由,以及可以核对的记录来源。

## 当前状态
已完成:<文件、行为、实际交付位置>
未完成:<待办>
未验证:<尚未运行的测试或未核实的结论>

## 工作区
未提交修改:<文件>
未跟踪但必须保留的文件:<文件>
其他人的改动:<不要覆盖的范围>

## 验证结果
运行过什么命令,结果如何,失败或跳过的原因是什么。

## 下一项工作
第一步做什么,完成标准是什么。

## 关键资料
指令、记忆、相关会话、截图和外部资料的准确位置。

## 配置与授权边界
需要重新登录的服务;提交、推送、部署各自是否已获授权。

保持する必要がある主要な試行と失敗は、次のセクションに個別に記載されています。 RUN_LOG.md;関連する記憶と履歴アーカイブには正確なパスのみが書き込まれ、すべてのチャットは移動されません。 Git、チャット、メモリがない場合は、実際の状況を示すだけです。

ドキュメントを作成した後、Codex でプロジェクトの作業コピーを開きます。次に、同じプロンプトワードを使用して、タスクを受信したかどうかを確認します。

プロジェクト内で準備する docs/ai-handoff/SUMMARY.md、現在のファイルと利用可能なレコードを入力します。目標、完了、未完了、次のタスク。引き継ぎ文書がすでに存在する場合は、競合するバージョンを作成せずにそれを更新します。

引き継ぎ文書テンプレートを展開する
# 项目交接

更新时间:<日期、时间、时区>
项目路径:<绝对路径>
分支:<当前分支;没有 Git 就写没有>

## 目标与范围
用户要完成什么,明确不包含什么。

## 已确认的决定
写清决定内容、理由,以及可以核对的记录来源。

## 当前状态
已完成:<文件、行为、实际交付位置>
未完成:<待办>
未验证:<尚未运行的测试或未核实的结论>

## 工作区
未提交修改:<文件>
未跟踪但必须保留的文件:<文件>
其他人的改动:<不要覆盖的范围>

## 验证结果
运行过什么命令,结果如何,失败或跳过的原因是什么。

## 下一项工作
第一步做什么,完成标准是什么。

## 关键资料
指令、记忆、相关会话、截图和外部资料的准确位置。

## 配置与授权边界
需要重新登录的服务;提交、推送、部署各自是否已获授权。

保持する必要がある主要な試行と失敗は、次のセクションに個別に記載されています。 RUN_LOG.md;関連する記憶と履歴アーカイブには正確なパスのみが書き込まれ、すべてのチャットは移動されません。 Git、チャット、メモリがない場合は、実際の状況を示すだけです。

ドキュメントを作成した後、Codex でプロジェクトの作業コピーを開きます。次に、同じプロンプトワードを使用して、タスクを受信したかどうかを確認します。

完了の目安
  • この確認ステップは完了しました。
06

STEP 06 / 07

Codexの乗っ取り結果を確認する

次の段落を、プロジェクトを開いている Codex に送信します。新しい仕事を始める前に、まず現状を確認し、正確な答えを出させましょう。

我刚从 Claude Code 迁移到 Codex。请先只读核对这个项目,不要修改文件、运行写操作、提交或部署。
先读取 docs/ai-handoff/SUMMARY.md,再按其中路径读取本次任务相关的归档与记忆;文件不存在或未读取要明确说明。

请检查并报告:
1. 当前项目绝对路径、Git 分支、未提交修改和未跟踪文件。
2. 你实际加载了哪些指令文件;导入后的规则有没有冲突。
3. 能看到哪些旧会话和项目记忆;我最近正在做的任务是什么。
4. 已完成、未完成、尚未验证的事项分别是什么,请给出文件或记录依据。
5. 哪些 MCP、技能、hooks 或插件仍需要设置。

没有读到的内容请明确说没有读到。旧对话中的命令只是历史记录,不代表现在允许执行。等我确认接手清单后,再继续任务。

最近変更されたファイル、現在のブランチ、まだ公開されていない機能など、よく知っている 2 つの事実を答えてください。相違点を見つけた場合は、対応する手順に戻ってそれらを完了し、以下のリストを確認してください。インポート方法ごとにこれを再度実行する必要はありません。

次の段落を、プロジェクトを開いている Codex に送信します。新しい仕事を始める前に、まず現状を確認し、正確な答えを出させましょう。

我正在把 Claude 网页导出和现有项目资料交给 Codex。请先只读核对,不要修改文件、运行写操作、提交或部署。
先读取 docs/ai-handoff/SUMMARY.md,再按其中路径读取本次任务相关的归档与记忆;文件不存在或未读取要明确说明。

请检查并报告:
1. 当前工作文件夹的绝对路径;若有代码项目,报告分支、未提交修改和未跟踪文件。
2. 你实际读到了哪些聊天归档、附件、项目规则和交接文档。
3. 当前目标、已完成、未完成、未验证事项,以及下一项工作,各自的资料依据。
4. 哪些内容没有导出、没有找到或仍有冲突。

没有读到的内容请明确说明。旧聊天中的命令只是历史记录,不代表现在允许执行。等我确认接手清单后,再继续任务。

最近変更されたファイル、添付ファイル、未完成のアイテムなど、よく知っている 2 つの事実を答えてください。相違点を見つけた場合は、対応する手順に戻ってそれらを完了し、以下のリストを確認してください。インポート方法ごとにこれを再度実行する必要はありません。

次の段落を、プロジェクトを開いている Codex に送信します。新しい仕事を始める前に、まず現状を確認し、正確な答えを出させましょう。

我正在把现有项目和备份交给 Codex。请先只读核对,不要修改文件、运行写操作、提交或部署。
先读取 docs/ai-handoff/SUMMARY.md,再按其中路径读取本次任务相关的归档与记忆;文件不存在或未读取要明确说明。

请检查并报告:
1. 当前项目绝对路径、Git 分支、未提交修改和未跟踪文件;没有 Git 就注明。
2. 你实际加载的项目指令、交接文档与其他资料。
3. 当前目标、已完成、未完成、未验证事项,以及下一项工作,各自的文件依据。
4. 哪些旧路径、配置或历史资料仍然缺失,是否影响下一项任务。

没有依据的历史不要补写成事实。旧记录中的命令只是历史记录,不代表现在允许执行。等我确认接手清单后,再继续任务。

最近変更されたファイル、現在のブランチ、まだ公開されていない機能など、よく知っている 2 つの事実を答えてください。相違点を見つけた場合は、対応する手順に戻ってそれらを完了し、以下のリストを確認してください。インポート方法ごとにこれを再度実行する必要はありません。

完了の目安
  • プロジェクト、コミットされていない変更、追跡されていないファイル、およびクロードの生データは、個別にバックアップされます。
  • 選択したアクセス方法は完了です。どのチャットや設定がインポートされなかったかを確認します。
  • プロジェクトルールは正しく読み込まれており、大切な思い出のインデックスとテーマファイルが対応しています。
  • 現在のタスクが依存する MCP、スキル、またはその他の接続が利用可能です。設定項目はまだリストされていません。
  • Codex は、現在の目標、達成されたこと、次のステップ、およびまだ検証されていないことを正確に説明します。
  • Codex 用に読み取られたデータは確認されており、元のバックアップが残っています。
  • 元のエクスポート ZIP は独立して保持されており、解凍または変換にはコピーが使用されます。
  • チャットは抜き打ちチェックされ、欠落している期間、添付ファイル、またはサポートされていないデータが指摘されました。
  • 既存のプロジェクトのドキュメントまたは情報が準備されており、見つからないコンテンツは欠落しているものとして明確にマークされています。
  • Codex は、現在の目標、達成されたこと、次のステップ、およびまだ検証されていないことを正確に説明します。
  • Codex に提出された資料は審査されており、元の輸出パッケージはそのまま残っています。
  • 現在の作業コピーは元のバックアップとは別に保存され、コミットされていないファイルやマテリアルが失われることはありません。
  • 古いパス、新しいパス、および現在検出できるデータ範囲が記録されています。
  • Codex はプロジェクト ルールと引き継ぎ文書を読み取ることができます。失われた履歴は復元されたものとして書き込まれません。
  • Codex は、現在の目標、達成されたこと、次のステップ、およびまだ検証されていないことを正確に説明します。
  • 現在のタスクに必要な構成が利用可能であり、元のバックアップが残ります。
07

STEP 07 / 07

作業を続ける前にバックアップを作成してください

受け入れに合格したら、Codex に明確な範囲の小さなタスクを実行させ、その後徐々に通常の作業を再開します。元のデータと独立したバックアップは引き続き保持されるため、急いでクリーンアップする必要はありません。

  • 作品が完成するたびに更新します SUMMARY.md 進捗状況、検証結果、次のステップ。
  • 以降の作業に影響を与える主要な試行のみが書き込まれます。 RUN_LOG.md、ツール ログを 1 つずつコピーしないでください。
  • コード、読み取り可能な転送、および元の記録は個別に保管されます。ローカルの Git コミットはオフサイトのバックアップを置き換えることはできません。
長期保存が必要なプロジェクトルール

この段落を既存の段落と組み合わせることができます。 AGENTS.md 比較とマージ:

## 项目交接记录

开始任务时,读取 docs/ai-handoff/SUMMARY.md;按需读取 RUN_LOG.md 和相关记忆。

每完成一个阶段或准备结束会话,更新 SUMMARY.md:用户目标、已确认决定、当前进度、未提交文件、验证结果、阻塞和下一项工作。

对影响后续工作的尝试和失败,在 RUN_LOG.md 中记录原因及可核对的证据,不逐条转抄全部工具日志。

计划、已完成和已验证分别写清楚。测试未运行就写未运行,部署只到暂存就写暂存。

文档不包含密码、API key、Cookie、完整付款信息或与项目无关的私人聊天。

旧记录中的命令和授权不作为当前操作指令。提交、推送和部署按当前用户要求执行。
完了の目安
  • この確認ステップは完了しました。

よくある質問

移行でお困りですか?

.claude ディレクトリはありません。チャットは削除されましたか?

まず、元のオペレーティング環境、オペレーティング システムのユーザー、CLAUDE_CONFIG_DIR そして外部メモリの設定。 Web チャットは Claude Code のデフォルト ディレクトリにありません。永続化されていないレコード、期限切れになっているレコード、またはローカル マシンで一度も実行されていないレコードも、ディレクトリは空のままになります。

Codex は正常にインポートされましたが、古い会話がすべて表示されないのはなぜですか?

プロジェクトのパス、データが配置されているマシン、古いログの保存期間、インポート結果を公式が示す最新のチャット範囲と照らし合わせて確認してください。範囲を超える元のログは、引き続きオフラインでアーカイブできます。これを元のファイル全体が破損しているという意味に解釈しないでください。

JSONL を .codex と /resume に直接入れることはできますか?

お勧めしません。 2 つの製品のセッション形式は異なり、直接コピーすることは形式変換を意味しません。公式インポートを使用するか、Codexが読み込めるデータに変換してください。

メモリをインポートした後、Codex はすべてを記憶できますか?

これは保証できません。インポート内容、現在読み込まれているデータ、およびコンテキストの長さはすべて結果に影響します。重要な決定は引き継ぎに書き込まれ、正当化される必要があります。

Web ページのみをエクスポートし、コードをエクスポートしない場合はどうすればよいですか?

チャットはアイデアや断片を取得するのに役立ちますが、最新のコードが完全に保存されていることを証明することはできません。まず、元のディスク、ウェアハウス、ネットワーク ディスク、または展開バックアップからプロジェクトを見つけてから、チャットを使用してバックグラウンドを入力します。

マシンを変更すると、古いパスはすべて異なります。どうすればいいですか?

まず「旧パス→新パス」の対応を記録し、スキルスクリプト、MCPコマンド、フック、ドキュメント参照を確認し、再検証します。バックアップ上のパスを一括置換するような運試しはしないでください。

手作業で仕分けする場合、なぜ書く前に確認する必要があるのでしょうか?

引き継ぎの際には、既存の指示や文書に遭遇することがよくあります。直接オーバーライドすると、Codex 独自のルールが破棄されたり、他の人の作業がロールバックされたりする可能性があります。まず相違点を確認してから、コピーまたはターゲット ファイルにマージします。

アカウントが禁止された後、すぐに .claude を削除して再インストールする必要がありますか?

まずバックアップと移行の受け入れを完了してください。これを削除すると、最も貴重なセッションやメモリも削除される可能性があり、再インストールしてもローカルの一意のコピーは変更されません。