Claude Codeのメモリは、複数のPCで共有できる? 覚えていることを一つの場所にまとめた

  • Claude Code
  • CLAUDE.md
  • メモリー
  • 複数PC
  • git
  • AI

私は、Claude Codeを複数のPCで使っています。

しばらくのあいだ、AIが覚えていることは、PCごとに分かれていました。あるPCで話したことを、別のPCのAIは知らないままでした。

今の私は、覚えていてほしいことを一つの場所にまとめて、どのPCからも同じものを読んでもらっています。どうしてそうしたのかと、まとめてから変わったことを書きます。

メモリは、PCの中にある

Claude Codeは、会話をまたいで覚えておくことを、二つのファイルに書いています。

  • CLAUDE.md:AIに守ってほしい決まりごと
  • メモリ:会話の中で分かったことを、AIが書き残すメモ

どちらも、会話が始まるときに読み込まれます。ただ、置き場所はそのPCの中です。ユーザー全体のCLAUDE.mdは ~/.claude/CLAUDE.md、メモリはプロジェクトごとに ~/.claude/projects/<プロジェクト>/memory/ にあります。

なので、何もしなければ、PCごとに別のことを覚えていきます。

私が困っていたのは、同じことを何度も話すことでした。あるPCで話して決めたことを、別のPCでもう一度話さないといけません。この話はこの間もしたな、と思いながら、話し直していました。

一つのリポジトリにまとめた

そこで私は、覚えておいてほしいことを全部、一つのリポジトリに入れました。GitHubに置いて、使うPCそれぞれにcloneしています。中身は、おおまかに三つです。

  • 全部のプロジェクトに共通のCLAUDE.md
  • 私についてのメモ
  • プロジェクトごとのメモリ

各PCの ~/.claude/CLAUDE.md は、このリポジトリのCLAUDE.mdを読み込む一行だけにしています。

@~/<リポジトリを置いた場所>/CLAUDE.md

メモリのほうは、~/.claude/projects/<プロジェクト>/memory を、リポジトリの中のフォルダへのリンクにしています。Macはシンボリックリンク、Windowsはジャンクションです。Claude Codeはいつもの場所にメモリを書いているつもりで、実際にはリポジトリの中に書いています。

会話の始めと終わりに、フックで自動でコミットとpull・pushをして、どのPCでも最新の状態になるようにしています。

まとめてから変わったこと

同じことを、もう一度話さなくていい

あるPCで話して決めたことを、別のPCのAIも知っています。一度話したことは、どのPCでも話し直さなくてよくなりました。私にとっては、これが一番大きな変化です。

どのプロジェクトで話していても、共通の場所に書ける

これまでのメモリは、そのとき開いていたプロジェクトの中にしか書けませんでした。あるプロジェクトの作業中に、私自身のことや、ほかでも使う決まりが出てきても、書く場所はそのプロジェクトのメモリでした。

今は、どのプロジェクトで話していても、共通のことは共通の場所に書いてもらえます。

CLAUDE.mdを一か所で直せる

全部のプロジェクトに効く決まりは、リポジトリのCLAUDE.mdを一か所直せば、どのPCにも届きます。PCごとに同じものを書き直さなくてよくなりました。

まとめ

PCごとにAIの覚えていることが分かれてしまうなら、置き場所を一つにしてみてください。

  • CLAUDE.mdとメモリを、一つのリポジトリに入れる
  • 各PCの ~/.claude/CLAUDE.md は、そこを読み込む一行だけにする
  • メモリの場所は、リポジトリの中へのリンクにする
  • 会話の始めと終わりに、フックでpullとpushをする
← 記事一覧に戻る