name: handover description: 現セッションの内容を整理・文書化してファイルへ書き出し、後で読み返して作業を再開できるようにする。
Handover
現セッションの内容を整理・文書化してファイルへ書き出し、後で読み返して作業を再開できるようにする。
手順
1. 内容を整理する
現セッションを以下の5観点で整理する:
- ゴール: ユーザーが最終的に達成したいこと。手段ではなく目的。
- 指示・制約: ユーザーがセッション中に明示的に伝えた作業上のルール・制約。
- 経緯: ここに至るまでに何を試し、何が分かったか。
- 現在地: 今この瞬間、何が完了していて何が未完了か。どこまで決まっているか。未解決の問題は何か。
- 次の選択肢: 次にやり得ることの候補。
2. 空ファイルを作成する
ルールやフックを確実に発動させるため、次のファイルパスに touch で空ファイルを作成し、Read ツールで一度開く: ${user_config.HANDOVER_OUTPUT_PATH_FORMAT}
- Bash コマンド置換ライクなプレースホルダーは、適宜実行し解決すること
- 中間ディレクトリが存在しない場合は
mkdir -pで作成すること
3. 本文を書く
手順2で作成した空ファイルへ本文を書き込む。
フォーマット:
---
claude_session_id: ${CLAUDE_SESSION_ID} # プリプロセッシングされた現セッションのID。このコメントを除いてそのまま転記すること。
---
# <タイトル>
## ゴール
...
## 指示・制約
...
## 経緯
...
## 現在地
...
## 次の選択肢
...
## 関連ファイル・リンク
...
- 現セッションが
/handover:takeover <直前のセッションからのハンドオーバ文書>から始まっている場合は、直前のセッションからのハンドオーバ文書を Read ツールで読み、現セッションでの新しい発見・指示を加味した上で「ゴール」と「指示・制約」を引き継ぐ。これによりハンドオーバーを N 回チェーンしてもゴールや指示が薄れない。 - 「指示・制約」は会話の連続性を保つために重要。例えばユーザーが「〜しないで」と伝えた内容を漏らすと、新セッションで同じ指摘を繰り返させることになる。
- 文脈を共有しない読者が理解できるよう、「経緯」は省略せずに記述する。会話中にコードの変更を行っていた場合、その変更内容も「経緯」に含める。
- 「次の選択肢」はユーザーからの指示がある場合はそれを踏まえた内容にする。指示がない場合は現在地から考えられる合理的な選択肢を提示する。
4. 作業の完了を報告する
書き出したハンドオーバ文書のパスをユーザーに伝える。