mcpField
H
handover

handover

github.com/davidleeエージェントワークフロー2146 回インストール3 日前に更新
リポジトリ

handover について

永続的なプロジェクト記録を最新に保ちながら、エージェント間の引き継ぎを準備するスキルです。収集情報の鮮度を確認し、管理対象の設計実行を再開するか、簡易プロンプトまたは詳細なコンテキストパケットを作成できます。

主な機能

  1. 01引き継ぎ前に収集情報の鮮度を確認
  2. 02管理対象の設計実行から継続情報を再利用
  3. 03簡易または詳細な引き継ぎを選択
  4. 04一時的な引き継ぎコンテキストを作成
  5. 05永続記録を重複せず参照

活用シーン

  1. 01エージェント間で作業を継続
  2. 02フェーズ境界で作業を引き継ぐ
  3. 03ディスパッチ終了後にコンテキストを準備
  4. 04管理対象の設計実行を再開

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/davidlee/doctrine --skill handover

インストール後、Claude Code で/handoverを入力して読み込まれたか確認します。

詳細

引き継ぎ

まず記録し、それから続行します。永続的な記録が最新であることを確認してから、次のエージェントが開始する一時的な続行指示を出力します。

基本原則:既存の永続的な成果物には、引き継ぎに適したコンテキストがすでに含まれているはずです。このスキルでは、それらの永続的な成果物から省かれている一時的な指針を使って、トークン効率を向上させるとともに、成果物の状態が良好であることを確認します。

まず記録する — 常に、どちらの分岐でも

何かを出力する前に、記録の処理が最新であることを確認します。

  • 統括するスライス: ## Harvest が最新である必要があります。fresh-as-of のスタンプが現在のライフサイクル上の位置(フェーズ/ステージとヘッドコミット)に一致していることを確認してください。古い場合は、まず /harvest を実行します。ハーベストですでに調査済みの内容を再調査してはいけません。
  • 別の統括成果物(RFC、仕様書、レビューなど): 記録の処理は引き続き実行します。lib:reference/harvest.md §5 に従って、生成した内容/把握した内容/未解決事項をそれぞれの記録先に振り分けます。 オリエンテーションでは、エンティティクエリに切り替えます。

フェーズの状態が正確であること、作業がコミット済みであること(または未コミット状態が明記されていること)も、並行して確認してください。

設計作業では短絡します

管理対象の実行内にあるスライス設計には、独自の続行情報がすでに含まれています。ダイヤルを使う前に、実行が有効かどうかを確認してください。

doctrine design show <SLICE> --format status

実行が出力された場合 — 短絡します。実行がすでに保持している内容を再記述することになるため、パケットや続行プロンプトを作成してはいけません。

  1. 上記のハーベストによって、永続的な記録が最新になります。そのうえで、今回のセッションで確定した内容のうち、実行にまだ反映されていないものを記録します。ステータスには未完了の義務と、宣言されたベースラインからの変更が報告されるため、記憶ではなく手元の情報と照合してください。

  2. 続行情報として再開コマンドを出力します。

    doctrine design resume <SLICE>
    

    このコマンドは実行 ID ではなくスライスを指定するため、実行をまたいでも有効です。別の実行を誤って再開せず、実行が一致しない場合に拒否させるには、--run <uid> を追加します。

  3. 実行にも永続的な記録にも表現できない、具体的に特定できるコンテキストがある場合に限り、補足説明を追加します。ステージ、カーソル、未解決の質問、判断、セクションのレビュー状態は実行に含まれています。それらを書き写すと、書いた瞬間から古くなり始めます。

実行がない場合 — コマンドはエラーになり、次の2つのケースのどちらかが示されます。 何も開始されていない場合は、短絡先がないため、ダイヤルを使って続行します。または、design.md は存在するもののスナップショットが失われている場合は、エラーに doctrine design start <SLICE> --from-design と表示されます。引き継ぐものを作り出すために、このコマンドを実行してはいけません。 作成されるのは記述済みの内容からの新しい実行であり、証明、レシート、ゲートのクリア状態は引き継がれません。その参照先を引き継ぐと、実際以上の内容が保持されているかのように伝わってしまいます。喪失を報告し、ダイヤルを使って引き継いでください。

これは管理対象の設計実行に適用されます。それ以外には、短絡先となる実行はありません。

ダイヤル

1つのスキルに2つの重みがあります。

  • light — 続行プロンプトを出力します。何も書き込みません。
  • full — handover.md コンテキストパケットを書き込み、それを参照する手順を出力します。

デフォルトはコンテキストに応じて選びます。フェーズの切り替わり、ディスパッチの完了、または複雑な進行中の状態では full、単純に「新しいコンテキストで続ける」場合は light です。ユーザーからの明示的な指示があれば、そちらを優先します。

Light:続行プロンプト

次を出力します。

/route
(path to the governing artifact and the next obvious task)

次のタスクが実装に関するものである場合は、読むべき具体的な成果物(design.md、plan.toml、アクティブなランタイムフェーズシート)を含め、次のエージェントが準備完了と判断する前に評価すべき未解決の前提や設計上の質問を明記します。続行プロンプトでは、統括するスライスの ## Harvest にある未解決の ID、つまり未解決の DEC/QUE/ASM(判断/質問/前提)を引用してください。これにより、次のエージェントは古い説明ではなく、現在も未解決の項目を引き継げます。

Full:コンテキストパケット

.doctrine/*/<nnn>/handover.md を作成します。これは、次のPhaseを引き継ぐエージェント、または作業を続けるエージェント向けの、使い捨てでGitの追跡対象外となる「まずここを読む」ファイルです。

これは次のセッションに向けた足場であり、永続的な記録ではありません。永続的な事実は、永続化された成果物、notes.md、またはメモリーストア(doctrine memory)に記録します。handover はそれらを参照し、直近の作業を示すだけです。

Phaseの場合:

  • 直前に完了した state/.../phases/phase-NN.md(調査結果、次への引き継ぎ)と、スライスの notes.md の ## Harvest セクションで、生成/学習/未解決のIDを確認します。
  • plan.toml で次のPhaseのスコープを確認します(EX/VTが正式な情報源です)。
  • ディスパッチを完了する際: slice verify-vt <id> のVTサマリーブロック と 1行のリグレッション状況(verify のビートにおける check regression diff の結果)をパケットに含めます。監査時ではなく、引き継ぎ時に UNCHECKABLE/WAIVED/Fail のギャップを明示します。
  • 以下のセクションを handover.md に出力します。
  • 次のエージェントに宛てて、handover.md へのパスを含む指示を出力します。

別の成果物の場合:

  • 必要に応じて調整します。ただし、上記のハーベスト優先の手順は引き続き適用します。
  • 最も関連性の高い成果物のフォルダーに handover.md を作成または置き換えます。
  • 次のエージェントに宛てて、handover.md へのパスを含む指示を出力します。

handover.md へのパスを含めた明確な起動指示(例:/route)を必ず記載します。

その後:停止します。

形式(Phaseパケットに出力するセクション)
  • 現在の状況 — Phaseのステータスの推移とコミット参照。完了したこと、現在の状況。
  • 参照リスト — 設計/計画/ノートへのポインター、関連するその他の成果物/コード、主要なソースの file:line。次のエージェントが効率よくコンテキストを把握するために読むべきもの。
  • 成果物/ポインター — スコープ/設計/計画/ノート/仕様。任意の参考資料。
  • 地形 — 乗り入れる対象。フォークし直す対象ではありません。例:直前のPhaseで構築したもの。別の場所にある説明を参照するか、説明がなければ要約します。
  • 次のアクション — 文字どおりの doctrine slice phase <ID> PHASE-NN --status in_progress(--status はフラグであり、末尾に置く位置引数ではありません)/その他の明白で直近の次のステップ。
  • 手順と注意事項 — リスク、不明点、未決事項。プロセス上のガードレール(コマンド、シートへの記入、TDD、コミット、ステータスの切り替えなど)。
  • 環境メモ — ビルド/ゲート/Lintの詳細、変更前から存在するためそのままにしておくべきダーティファイル。

ルール

  • handover はGitの追跡対象外で、削除されます。永続的な事実の唯一のコピーをここに置かないでください。
  • 永続的な成果物を参照し、その内容を繰り返さないでください。
  • 古くなったノートは明示的に置き換え、矛盾する指示を残さないでください。
  • スキルのコマンドや手順を要約しないでください。 スキルは読み飛ばされます。ミスは起こります。 スキル自体は参照し、関連する状況を説明してください。
  • 簡潔に。断片的な記述でも構いません。読み手は人間のレビュー担当者ではなく、エージェントです。

コメント