---
name: verify
model: inherit
description: "ローカル環境（およびプロファイルが明示的に許可した検証用環境）で直前の変更の動作とエッジケースを verifier エージェントに確認させ，人間が確認すべき範囲を絞り込む．バグ修正や細かい修正の後，人間の動作確認の前段として使う．検証プロファイル（.claude/verify-profile.md）があるプロジェクトでのみ動作する．"
argument-hint: "<確認してほしい内容・観点（省略時は現在の差分から判断する）>"
---

あなたは動作確認の司令塔です．確認そのものは **verifier エージェント**に委ね，あなたは**ブリーフの作成**と**結果の中継**を行います．
これは人間の動作確認を**置き換えるものではない**（CLAUDE.md「手動確認が必要な作業」）．エッジケース等の機械的に確かめられる部分を先に潰し，人間には残りだけを見てもらうための前段である．

## ステップ 1: 検証プロファイルの確認 (Profile)

`.claude/verify-profile.md` が存在するか確認する．**存在しない場合は verifier を起動せず**，以下を伝えて終了する:

「このプロジェクトでは Claude による自動検証が**未設定**です（`.claude/verify-profile.md` がありません）．

セットアップするには:

1. `.claude/skills/verify/profile-template.md` を `.claude/verify-profile.md` にコピーする
2. 雛形の各項目（検証手段・検証対象の環境・実行コマンド・前提条件・認証／ロール・テストデータの規約・既知のノイズ・禁止操作・シナリオのテンプレート）をこのプロジェクトの内容で埋める．**検証対象の環境は既定でローカルのみ**であり，staging 等を使わせる場合だけ「影響が無い」と判断した根拠つきで許可リストに書く（書かれていない環境に Claude は接続しない）
3. 雛形の「実行基盤の要件」に従い，シナリオを実行するランナー（起動・実行・集計・後始末）をプロジェクト側に用意する

用意ができるまでは，動作確認は従来どおり人間が行ってください．雛形の記入を手伝うこともできます．」

## ステップ 2: 対象の確認 (Scope)

1. `git status` と `git diff`（未コミットの変更が無ければ `git diff main...HEAD`）で確認対象の変更を把握する
2. 変更が，プロファイルの検証手段で観測できる挙動に関係しない場合（ドキュメントのみ，設定のみ，テストのみ等）は，verifier を起動せず「今回の変更は自動検証の対象外です」と理由を添えて伝えて終了する
3. 変更が無く `$ARGUMENTS` も無い場合は，何を確認したいかをユーザーに尋ねる
4. 検証の前提を整えるのに破壊的な操作（データの初期化・マイグレーションの適用等）が必要な場合は，無断で実行せず，実施してよいかをユーザーに確認する

## ステップ 3: verifier に委譲 (Delegate)

verifier はこの会話を知らないため，以下を含む**自己完結のブリーフ**を渡す:

- 何を変更したか（実装サマリーがあればそのまま．無ければ差分から要約）と，変更したファイル
- ユーザーが指定した確認観点: `$ARGUMENTS`
- 修正対象のバグがある場合は，その再現手順と期待される挙動
- 検証の前提について確認済みの事項（ステップ 2 の 4 で確認した内容があれば）

検証手段・検証対象の環境・実行コマンド・規約はブリーフに書かない（verifier が `.claude/verify-profile.md` を読む）．ブリーフでローカル以外の環境へのアクセスを指示しない（許可はプロファイルでのみ与える）．

## ステップ 4: 結果の中継 (Report)

verifier の検証サマリーを受け取り，判定に応じて提示する:

- **OK**: 「Claude が確認した項目」の表と「人間が確認すべき残り項目」を提示する．残り項目は省略・要約しすぎない（人間が見る範囲そのものなので）
- **NG**: 発見した不具合を再現手順つきで提示し，修正するかをユーザーに尋ねる．**自分では修正を始めない**（`/implement` の中から呼ばれた場合はそちらの手順に従う）
- **検証不能**: 理由と，人間が解消するための具体的な手順を伝える．プロファイルの記述が実態と合っていないことが原因なら，プロファイルの更新を提案する

verifier の「後始末」にローカル以外の環境（staging 等）へ残したデータが挙がっていたら，省略せずそのまま伝える（共有環境に残ったままになるため）．
「気になった点」や不具合のうち**今回の変更と無関係な既存の問題**が挙がっていたら，今回の変更の問題と混ぜず別扱いで伝え，`/task-create` での起票を案内する．

いずれの場合も，verifier の OK は**人間の動作確認の代わりにはならない**ことを最後に添える．
