update-plan

会話のコンテキストと Issue コメントのフィードバックを元に、既存の実装プランを更新する。

Update Plan Skill

既存の実装プランを、会話のコンテキストと Issue コメントのフィードバックを元に更新する。

このスキルは既存プランの更新のみを行う。 プランの新規作成は /create-plan スキルを使用すること。

前提条件

  • gh CLI が認証済みであること
  • 対象の Issue に <!-- claude:plan --> マーカー付きのプランコメントが既に存在すること

手順

1. 既存プランコメントの取得

引数に Issue 番号を指定する(必須)。

Issue のコメント一覧から <!-- claude:plan --> マーカー付きコメントを取得する。

gh api 'repos/{owner}/{repo}/issues/<issue-number>/comments' --jq '[.[] | select(.body | contains("<!-- claude:plan -->"))] | last | {id: .id, created_at: .created_at, body: .body}'

プランコメントが見つからない場合: プランが未作成であることをユーザーに報告し、/create-plan の使用を案内して終了する。

2. フィードバックの収集

2つのソースからフィードバックを収集する。

2a. Issue コメントからのフィードバック

プランコメントの 投稿日時以降 に投稿されたコメント(プランコメント自体を除く)を取得する。

gh api 'repos/{owner}/{repo}/issues/<issue-number>/comments' --jq --arg since "<プランの投稿日時>" '.[] | select(.created_at > $since) | select(.body | contains("<!-- claude:plan -->") | not)'

以下のようなフィードバックがないかを確認する:

  • プランの「確認事項」に対する回答や判断
  • 設計判断に対する指摘やフィードバック
  • 追加の要件や制約の指摘
  • 実装ステップに対する修正依頼

2b. 会話コンテキストからのフィードバック

現在の会話でユーザーと議論した内容を確認し、プランに反映すべき合意事項を特定する。

例:

  • 対象ファイルの変更に関する合意
  • 設計アプローチの変更に関する合意
  • 確認事項への回答

3. フィードバックの分類と反映方針の決定

収集したフィードバックを以下のように分類し、反映方針を決定する。

分類反映方針
直接反映誤り指摘、ファイルパス修正、具体的な修正依頼該当箇所をそのまま修正
確認事項への回答(影響なし)「別 Issue は不要」確認事項をチェック済みにする
確認事項への回答(影響あり)「このプランに含めて」該当セクションを再設計して反映
方針変更設計アプローチの変更関連セクション全体を見直す

方針変更や影響ありの回答の場合: 変更がプランの他のセクション(影響範囲、ファイル構成、テスト戦略等)に波及しないかを確認し、必要に応じてそれらも更新する。波及確認のためにコードベースの該当箇所を最小限に調査してよいが、フル調査は行わない。

4. プランの更新

既存プランの該当箇所を修正し、PATCH で更新する。

gh api 'repos/{owner}/{repo}/issues/comments/<comment-id>' \
  --method PATCH \
  --field body='<更新されたプラン本文>'

更新時は、プラン本文の末尾に変更履歴セクションを追加・更新する:

<details><summary>変更履歴</summary>

- v2: ○○を修正(Issue コメントでの指摘を反映)
- v1: 初版作成
</details>

変更履歴には変更の出典を明記する:

  • Issue コメントからの反映: (Issue コメントでの指摘を反映)
  • 会話での合意からの反映: (会話での合意を反映)

PATCH が失敗した場合: 新規コメントとして POST する。同一 Issue に <!-- claude:plan --> マーカー付きコメントが複数存在する場合、常に最新(最後に投稿された)コメントが有効なプランとして扱われる。

API エラー時のフォールバック

コメントの更新・投稿が失敗した場合は、ローカルファイルにフォールバック出力する。

  • 出力先: .claude/outputs/plans/PLAN-<Issue番号>-<Issueタイトルをケバブケースに変換>.md
  • ユーザーに API エラーが発生した旨と、手動で Issue にコメントをコピーするよう案内する

注意事項

  • フィードバックの反映は最小限の変更に留め、フィードバックと無関係な箇所は変更しないこと
  • フィードバックの内容がコードベースの事実確認を必要とする場合は、該当箇所のみを確認すること(フル調査は行わない)
  • 変更履歴は正確に記録し、何が変わったかを後から追跡できるようにすること
  • 複数のフィードバックがある場合は、1回の更新でまとめて反映すること