---
name: task-handoff
model: inherit
description: "現在着手中の Issue に進捗メモ（完了済み・残タスク・確定事項・git 状態・再開方法）をコメントで投稿する．セッション中断・引継ぎ用．solo / team 両モードで使用できる．"
argument-hint: "<追加メモ（省略可）>"
---

あなたは作業引継ぎの司令塔です．現在**着手中**の Issue に，次セッション・次メンバーが再開できるだけの情報を進捗メモとして投稿します．引継ぎメモの**中身はあなたが書き**（セッションの文脈を知っているのはあなただけ），Issue の特定・git 状態の収集・コメント投稿は **ops-runner エージェント**（軽量モデル）に委譲します．

本スキルは **solo / team 両モードで使用できる**．引継ぎ情報は Issue コメントに集約する．

- **team モード**: GUIDE_03（チーム開発ルール）の「進捗は Issues / Projects と git 履歴で追う」方針に沿う（`CLAUDE.md` に進捗は書かない）
- **solo モード**: 通常の進捗記録（`.claude/rules/progress-log.md`．`CLAUDE.md` 進捗欄＋ `docs/PROGRESS.md`）は従来どおり運用し，本スキルはタスク単位の引継ぎメモを Issue に残す補助として使う

## ステップ 1: 収集の委譲 (Collect)

ops-runner エージェントを起動し，`.claude/skills/task-start/reference.md` の「/task-handoff 実行手順」の**収集フェーズ**を実行させる．

- 「着手中 0 件」の報告なら「着手中の Issue がありません．まず `/task-start <Issue番号>` で着手してから本コマンドを使ってください．」と伝えて終了する
- 複数件の報告なら，一覧（番号・タイトル）を示して「どれを対象にしますか？」とユーザーに確認し，対象を決めて必要な収集を再委譲する

## ステップ 2: ドラフト生成 (Draft)

収集データ（Issue 本文・過去コメント・git 状態）と，直近のセッション会話から抽出した「**確定した重要な設計判断**」「**未決定で次に詰める点**」をもとに，以下のフォーマットで進捗メモを生成する．**該当なしのセクションは省略してよい**．

````markdown
## 進捗メモ (YYYY-MM-DD)

<!-- $ARGUMENTS が指定されていればここに「### 追加メモ」セクションで掲載 -->

### 完了済み

| フェーズ / タスク | 成果物 | コミット |
| --- | --- | --- |
| ... | ... | <短縮 SHA> |

### 残タスク

- ...

### 確定した重要な設計判断（再開時の文脈）

- ...

### 未決定で次に詰める点

- ...

### 現在の git 状態

- ブランチ: `<ブランチ名>`
- HEAD: `<短縮 SHA>`
- 未コミット変更: <あり / なし>

### 次セッションの再開方法

```bash
git checkout <ブランチ名>
```

<再開時の指針コメント．例: 「`/setup` を再実行するか，手動でフェーズ N から続行」>
````

### ドラフトの粒度方針

- **完了済み**: 当該セッションで積んだコミット中心．本 Issue に関わる範囲のみ
- **残タスク**: Issue 本文の TODO や未着手項目を整理
- **確定した設計判断**: セッション中にユーザーと合意して**今後の作業の前提**になるもの．既に Issue 本文や過去コメントに明記されている内容は重複させない（差分のみ）
- **未決定で次に詰める点**: 次セッションで判断が必要なもの
- **粒度感**: 1 セッション分の引継ぎ．週次レポートではない

## ステップ 3: 承認 (Approval)

ドラフトをユーザーに提示し，「**この内容で投稿しますか？ 修正点があれば指示してください．**」と確認する．

ユーザーの明示的な同意（「OK」「投稿して」「これで」等）が得られるまで投稿しない．修正指示があれば反映して再提示する．

## ステップ 4: 投稿の委譲 (Post)

ops-runner エージェントを起動し，「/task-handoff 実行手順」の**投稿フェーズ**を実行させる（承認済みの本文をそのまま渡す）．返ってきたコメント URL を控える．

## 完了サマリー (Summary)

以下を提示する:

- **Issue**: 番号・タイトル・URL
- **コメント URL**
- **次のステップ**: 「次セッションで再開する場合は `git checkout <ブランチ名>` から始めてください．」

## 注意事項 (Notes)

- 本コマンドは Issue を**クローズしない・Done に動かさない**．着手中のまま残す（作業継続前提）．完了させたい場合は別途 `/commit merge` で PR をマージ → `Closes #<番号>` で自動クローズ
- 進捗メモは**コメント**として投稿する．Issue 本文は書き換えない
- Projects 操作には `project` スコープが必要．スコープエラーの停止報告が来たら `gh auth refresh -s project` をユーザーに案内する（`.claude/skills/task-start/reference.md`「必要なスコープ」）
