なぜ新しいチャットはコンテキストなしで始まるのか
会話のコンテキストとは、メッセージ、返信、ファイル、ツールの実行結果など、その中にあるすべてのものを指します。新しいチャットを開始すると、その作業コンテキストは引き継がれません。新しいチャットが何を復元できるかは、memory、チャット検索、プロジェクトファイル、指示ファイルなど、会話の外でアシスタントが提供している機能に依存します。
これらの機能は役立ちますが、設計上、選択的です。OpenAI の memory に関する記事には、「Memory はすべての会話のあらゆる詳細を保持するわけではありません。ChatGPT は利用可能な情報のどれが回答に関連するかを判断し、コンテキストの変化に応じて Memory も変化する可能性があります」とあります。Claude のチャット検索は、ユーザーが求めたときに過去のチャットから関連するコンテキストをまとめます。
したがって、作業を継続するために最も重要な詳細、つまり現在の状態、半分終わったステップ、1時間前に除外した選択肢などは、運任せにするべきではありません。それこそが、引き継ぎプロンプトが運ぶべきものです。
各アシスタントが自力で復元できるもの
引き継ぎを書く前に、新しいチャットがすでに何を見つけられるかを知っておくと役立ちます。
Claude
有料プランでは、Claude は以前のチャットを検索できます。Anthropic のヘルプセンターには、「Claude に過去の会話を検索させて、セッションをまたいで関連情報を見つけたり、必要に応じて特定の詳細を参照したりするようにプロンプトを出すことができます」とあります。その例示プロンプトには、プロジェクトで中断したところから再開するよう Claude に依頼することが含まれています。範囲は限定的です。プロジェクト外のチャットはまとめて検索され、プロジェクト内の検索はそのプロジェクト内に留まります。
Claude の memory も、以前のチャットのコンテキストを新しいチャットに引き継ぐことができ、プロジェクトファイルと指示は、そのプロジェクト内のすべてのチャットで利用可能です。Anthropic の使用量に関する記事では、特定の場合に新しい会話を開始することを推奨しています。「長いチャットで使用制限に近づいている場合は、新しい会話を開始してみてください」。
Claude Code
Claude Code はセッションをマシン上に保持し、claude --continue、claude --resume、または /resume で再開できます。また、すべてのセッションの開始時に CLAUDE.md ファイルを読み込み、自動 memory はユーザーの修正や好みから Claude が自身のために書いたメモを保持します。
休憩後に長い会話を再開すると、Claude Code は再開するか新しく始めるかを尋ねることがあります。セッションのドキュメントには、新しく始めるオプションについて次のように記載されています。「Claude がこの会話を参照できるというオプションが表示されている場合、新しい会話でも以前の作業を参照できます」。Claude Code の再開警告に関するガイドでは、どのような場合にどちらの選択が適切かを説明しています。
ChatGPT
「チャット履歴の参照」がオンになっている場合、ChatGPT は過去の会話からの関連情報を使用できます。OpenAI は「ChatGPT がチャット履歴を通じて参照できる内容に、個別のストレージ制限はありません」と述べています。プロジェクト機能では、プロジェクト内のチャット間で共有されるファイルや指示を追加できます。同じ会話の中で別の方向性を試すために、ChatGPT はチャットを分岐させることもできます。これについては ChatGPT の会話を分岐させるガイドで詳しく説明しています。
Codex
Codex は保存されたセッションを /resume で再開できます。ドキュメントではこれを「最初からやり直すことなく、以前の CLI セッションから作業を継続する方法」と説明しています。/compact は表示されているチャットを要約してトークンを解放します。Codex は AGENTS.md ファイルも読み込み、ローカルの memories がオンになっている場合、同じマシン上のチャット間でコンテキストを引き継ぎます。OpenAI の memories ページには、心に留めておくべき注意書きがあります。「memories は、常に適用されなければならないルールの唯一のソースとしてではなく、役立つ想起レイヤーとして扱ってください」。
4つすべてに共通するギャップ
各アシスタントは過去の一部を見つけることができます。しかし、これらの機能のどれも、次のチャットに対して、作業が正確にどこにあるのか、どの決定が最終的なものか、何を二度と試すべきでないかを正確に伝えるようには作られていません。それが引き継ぎプロンプトの役割です。
優れた引き継ぎプロンプトに含まれる内容
引き継ぎプロンプトは短く、具体的で、何も知らない読者のために書かれるべきです。以下の要素が重要です:
- 目標。 その作業が何のためで、完了した状態がどのようなものかを1〜2文で記述します。
- 現在の状態。 何が完了し、何が進行中で、進行中の部分がどこで止まったか。
- 決定事項とその理由。 何が決まったか、そしてその理由。これにより、新しいチャットで議論が蒸し返されるのを防ぎます。
- 制約事項。 以降のすべてに適用される要件、好み、制限。
- 除外された事項。 試した、あるいは却下したアプローチと、その理由を簡単に。
- 未解決の質問。 まだ答えが必要なこと。
- 次のステップ。 新しいチャットが最初に行うべき一つのこと。
- 資料。 新しいチャットに必要なファイル、リンク、ドキュメント、および不要なもの。
決定事項を除き、そこに至るまでの経緯(履歴)は省いてください。挨拶も不要です。優れた引き継ぎは1画面に収まります。
人々が最初に試してしまうこと
古い会話をすべて貼り付ける。 ノイズを含めすべてを持ち込むことになり、Claude の場合は新しいチャットでも同じ長さの問題が発生します。
新しく始めて memory が補ってくれることを期待する。 memory や検索は役立ちますが、作業の現在の状態を確実に復元してくれるわけではありません。
記憶を頼りに要約を書く。 目標は覚えていても、2時間前に行った決定を忘れてしまうことがあります。
構造を指定せずに要約を求める。 会話の回想が得られるだけで、次のチャットが実行できるブリーフにはなりません。
解決策:古いチャットに構造化された引き継ぎを依頼し、確認してから、それを使って新しいチャットを開く
ステップ 1:離れる前に古いチャットに引き継ぎを書かせる
古いチャットにはコンテキストがあるため、最初のドラフトを書かせるべきです。回想ではなく、構造を求めてください。Claude、ChatGPT、Claude Code、Codex のいずれでも、次のようなプロンプトが有効です:
この作業を継続し、この会話の内容を一切持たない新しいチャットのための引き継ぎ(handoff)を作成してください。
以下の見出しを使用してください:目標 (Goal)、現在の状態 (Current state)、決定事項とその理由 (Decisions with reasons)、制約事項 (Constraints)、除外事項とその理由 (Ruled out with why)、未解決の質問 (Open questions)、次のステップ (Next step)、必要な資料 (Materials needed)。
具体的に記述してください:名前、数値、ファイルパス、重要な場合は正確な文言を含めてください。
1ページ以内に収めてください。決定事項を除き、ここに至るまでの経緯は含めないでください。Claude Code や Codex の場合は、変更したファイルや作業を確認するために必要なコマンドを含めるよう1行追加してください。
ステップ 2:内容を読み、間違いを修正する
ドラフトは優れていますが、完璧ではありません。3つの点を確認してください:現在の状態が自分の認識と一致しているか、重視するすべての決定事項が理由とともに含まれているか、そして次のステップが自分が選ぶべきものであるか。不足しているものがあれば追加してください。ドラフトの決定事項が間違っている場合は、新しいチャットではなく、ここで修正してください。
最終版は古いチャットの中だけでなく、自分で管理できる場所に保存してください。
ステップ 3:引き継ぎ内容で新しいチャットを開き、確認する
引き継ぎ内容を最初のメッセージとして貼り付け、リストにある資料のみを添付します。次に、新しいチャットに対して、何かを行う前に目標、現在の状態、次のステップを自分の言葉で言い換えさせます。もし言い換えがずれている場合は、引き継ぎ内容にさらにもう1行追加する必要があります。
Claude Code では、プロジェクトの慣習など、すべてのセッションに適用される部分は、各引き継ぎで繰り返すのではなく CLAUDE.md に記述してください。Codex では AGENTS.md も同様です。Claude や ChatGPT では、プロジェクト内のチャット全体に適用されるルールは、そのプロジェクトの指示(instructions)に含めます。
MemoryLake でのセットアップ
引き継ぎプロンプトは、一つの作業をあるチャットから次のチャットへと運びます。数週間にわたってこれらの引き継ぎを行うと、決定事項や制約事項が繰り返され始めます。同じ慣習、同じ好み、解決済みの同じ質問などです。これらは、使用するすべてのアシスタントにおいて、すべての新しいチャットが開始時に持っていてほしいコンテキストです。
MemoryLake は、そのような繰り返されるコンテキストを一つのリストとして維持し、ChatGPT や、接続した Claude Code、Codex などの他のアシスタントで利用できるようにするための memory レイヤーです。
エントリーはあなた自身の言葉で作成します。チャット、アシスタントの memory、プロジェクトファイル、セッション履歴、あるいはベンダーのストレージから何かが読み取られたり、書き込まれたり、削除されたりすることはありません。業務内容については、ツールの外部に保持するものに関する組織のポリシーに従ってください。
ステップ 1:APIキーを作成する
サインインし、ダッシュボードからキーを生成します。このキーは MemoryLake ワークスペースに属し、アシスタントのアカウントとは別個のものです。

ステップ 2:最初の memories をアップロードする
最近の引き継ぎの「決定事項」と「制約事項」セクション、つまり次の作業にも適用される部分から始めてください。1エントリーにつき1項目とし、日付を入れ、所属するプロジェクトのラベルを付けます。

ステップ 3:AI とエージェントを接続する
ChatGPT や、使用している他のアシスタントを接続します。永続的なコンテキストがすでにそこにあるため、次の引き継ぎはより短く済むようになります。

実践で何が変わるか
第一の違いは、チャットを離れても作業の損失(コスト)が発生しなくなることです。新しいチャットは、最初のメッセージで目標、状態、次のステップを把握した状態で始まります。
第二に、決定事項が維持されます。理由も一緒に引き継がれるため、新しいチャットが、一度却下した選択肢を再び提案してくることはありません。
第三に、チャット間を移動するのと同じくらい簡単に、アシスタント間を移動できるようになります。Claude で書かれた引き継ぎは、ChatGPT、Claude Code、Codex でも機能します。もし新しいチャットではなく別の人にチャットを引き継ぐ場合は、Claude のチャット共有と、そこで除外されるコンテキストに関するガイドでそのケースをカバーしています。
引き継ぎプロンプトのベストプラクティス
古いチャットに書かせる。 あなたが忘れてしまうようなコンテキストを保持しています。
固定の見出しを使用する。 構造化されていることが、使いやすさの鍵です。
すべての決定に理由を含める。 理由のない決定は蒸し返されます。
除外された事項をリストアップする。 新しいチャットが行き止まりを繰り返すのを防ぎます。
1画面に収める。 長すぎる引き継ぎは、解消しようとした問題を再発させます。
貼り付ける前に確認する。 状態と決定事項は自分で修正してください。
永続的なルールは指示ファイルに移動する。 CLAUDE.md、AGENTS.md、またはプロジェクトの指示を活用し、引き継ぎを短く保ちます。
新しいチャットに計画を言い換えさせる。 引き継ぎが成功したかどうかを確認する最も手っ取り早いテストです。
Codex セッションの記録を保持しつつ引き継ぎたい場合は、Codex チャットのエクスポートに関するガイドで会話全体の保存方法を説明しています。
結論
新しいチャットは、古いチャットの作業コンテキストなしで始まります。memory、チャット検索、再開、指示ファイルなどはその一部を復元できますが、現在の状態、確定した決定事項、次のステップを確実に復元できるわけではありません。
引き継ぎプロンプトはそのギャップを埋めます。古いチャットに固定の見出しで書かせ、確認・修正し、それを使って新しいチャットを開いてください。すべてのセッションに適用されるルールはアシスタントの指示ファイルに入れ、繰り返される決定事項は自分で管理できる場所に保管しましょう。もし Claude 自体が以前のチャットを見失っているように見える場合は、Claude に以前の会話を覚えさせる方法に関するガイドで、それを制御する設定について説明しています。