Claude Code Mac間移行の手引き | チャット履歴を失わずに新マシンへ引っ越す方法

Claude Code Mac間移行の手引き | チャット履歴を失わずに新マシンへ引っ越す方法

2025.08.31

こんにちは!エノカワです。

先日、MacBookを新しいマシンに移行する機会がありました。
その際、開発環境とともにClaude Codeで作業していたフォルダも新しいMacに移行しました。
しかし、新しいMacでClaude Codeを起動すると、チャット履歴が空になっており、旧Macでの作業履歴が引き継がれていないことに気づきました。

はじめに

この記事では、Mac間でClaude Codeの設定とチャット履歴を完全に移行する方法をご紹介します。

以下のような状況でお困りの方は、ぜひ参考にしてみてください。

  • Claude Codeのチャット履歴が新しいMacに引き継がれない
  • プロジェクトごとの設定や文脈を保持したい

実行環境

今後のバージョンアップによって仕様が変更される可能性があるため、この記事執筆時点での環境を明記しておきます。

  • Claude Code: 1.0.98
  • macOS: Sequoia 15.6.1

Claude Codeのファイル構成

まずは、Claude Codeがどのようにデータを管理しているか確認してみましょう。
一般的にClaude Codeは以下のディレクトリ構造でデータを管理しています。

~/.claude/
├── settings.json              # ユーザー設定
├── CLAUDE.md                  # グローバルユーザー設定
├── projects/                  # プロジェクト別のチャット履歴
│   └── -path-to-project/     # パスがエンコードされたディレクトリ
│       └── *.jsonl           # プロジェクト固有の履歴ファイル
├── agents/                    # ユーザーレベルのサブエージェント
├── ide/                       # IDE関連の設定
├── plugins/                   # プラグイン
├── shell-snapshots/           # シェルのスナップショット
├── statsig/                   # 統計情報
└── todos/                     # Todoリストの履歴

プロジェクト設定ファイル

プロジェクトごとの設定は、各プロジェクトディレクトリ内に保存されます。

<プロジェクトディレクトリ>/
├── .claude/
│   ├── settings.json        # チームで共有する設定
│   ├── settings.local.json  # 個人用設定
│   ├── agents/              # プロジェクト固有のサブエージェント
│   └── commands/            # カスタムコマンド
├── CLAUDE.md                # プロジェクト固有のコンテキスト
└── .mcp.json               # MCP設定(使用している場合)

移行対象ファイル

ここからが本題です。
移行時に必要なファイルは以下のとおりです。

必須ファイル

  1. ~/.claude/projects/
    • プロジェクト別のチャット履歴が保存されているディレクトリ
    • 各プロジェクトのパスがエンコードされたディレクトリ内に.jsonl形式で保存
    • 例:/Users/username/project-Users-username-project
  1. ~/.claude/settings.json
    • 個人の設定ファイル(モデル選択、権限設定、環境変数など)

推奨ファイル

  1. プロジェクト内の.claude/ディレクトリ

    • プロジェクト固有の設定
    • settings.json:チームで共有する設定
    • settings.local.json:個人用設定
    • agents/:プロジェクト固有のサブエージェント
    • commands/:カスタムコマンド
  2. ~/.claude/todos/

    • Todoリストの履歴(タスク管理を使用している場合)

オプション

  1. ~/.claude/agents/

    • ユーザーレベルのサブエージェント設定(使用している場合)
  2. ~/.claude/CLAUDE.md

    • グローバルユーザー設定(作成している場合)
  3. ~/.claude/ide/

    • IDE関連の設定や状態
  4. ~/.claude/shell-snapshots/

    • シェルのスナップショット
    • コマンド履歴や状態を保持
  5. ~/.claude/plugins/

    • プラグイン設定(使用している場合)

移行手順

1. 旧Macでのバックアップ作成

まずは旧Mac側でバックアップを作成します。

# 1. Claude Codeのディレクトリ全体をアーカイブ
cd ~
tar -czf claude-backup.tar.gz .claude/

# 2. プロジェクト設定がある場合は個別にバックアップ
# 例:開発プロジェクトがある場合
cd ~/development/my-project
tar -czf project-claude-settings.tar.gz .claude/ CLAUDE.md .mcp.json 2>/dev/null

2. バックアップファイルの転送

次に、作成したバックアップファイルを新しいMacに転送します。
AirDrop、USBドライブ、クラウドストレージなど、お好みの方法でファイルを転送してください。

3. 新しいMacへの復元

新しいMac側で、転送したバックアップを展開します。

# 1. Claude Codeをインストール(まだの場合)
npm install -g @anthropic-ai/claude-code

# 2. 既存の.claudeディレクトリをバックアップ(念のため)
if [ -d ~/.claude ]; then
    mv ~/.claude ~/.claude.backup
fi

# 3. バックアップを展開
cd ~
tar -xzf claude-backup.tar.gz

# 4. プロジェクト設定を復元(該当する場合)
cd ~/development/my-project
tar -xzf project-claude-settings.tar.gz

4. 動作確認

最後に、移行が正しく完了したか確認します。

# 1. Claude Codeを起動
claude

# 2. 設定を確認
claude config list

# 3. 過去のチャット履歴が表示されることを確認
# プロジェクトディレクトリで起動して履歴を確認
cd ~/development/my-project
claude --continue

トラブルシューティング

認証エラーが発生する場合

移行後に認証エラーが発生した場合は、再ログインが必要です。

# Claude Codeに再ログイン
claude login

認証情報はClaude Code内部で管理されており、マシンを変更した場合は再ログインが必要になることがあります。

チャット履歴が表示されない場合

移行したはずのチャット履歴が表示されない場合には、以下を確認してください。

# projectsディレクトリの存在を確認
ls -la ~/.claude/projects/

# プロジェクト履歴のパスエンコーディングを確認
# 例:/Users/username/project → -Users-username-project
# 各プロジェクトディレクトリ内に.jsonlファイルが存在するか確認
ls -la ~/.claude/projects/-Users-username-project/*.jsonl

設定が反映されない場合

個人設定が反映されていないように見える場合には、設定の優先順位を確認しましょう。

  1. エンタープライズ管理ポリシー
  2. コマンドライン引数
  3. ローカルプロジェクト設定(.claude/settings.local.json
  4. 共有プロジェクト設定(.claude/settings.json
  5. ユーザー設定(~/.claude/settings.json
# 現在の設定値を確認
claude config get <key>

# 必要に応じて設定を更新
claude config set <key> <value>

まとめ

以上、Claude CodeをMac間で完全移行する方法を紹介しました。

Claude Codeの移行は、適切なファイルをバックアップ・復元することで、スムーズに行うことができます。

特に重要なポイントは以下の点です。

  1. ~/.claude/ディレクトリ全体をバックアップすることで、ほぼすべての設定と履歴を保持できる
  2. プロジェクト固有の設定.claude/CLAUDE.md)も忘れずに移行する
  3. 定期的なバックアップを取ることで、将来の移行や障害に備える

実際にこの手順を試したところ、新しいMacでも以前と全く同じ環境でClaude Codeを使い続けることができました。
チャット履歴も完全に引き継がれ、プロジェクトごとの文脈も保持されたため、作業の継続性が保たれました。

今後、Claude Codeに公式の移行ツールが提供されることを期待しつつ、現時点で実行可能な移行手順のご紹介でした。

参考

この記事をシェアする

facebookのロゴhatenaのロゴtwitterのロゴ

© Classmethod, Inc. All rights reserved.