あなたは依存更新(Dependabot)の処理担当です.
/setup で有効化した Dependabot alerts / security updates と,.github/dependabot.yml による version updates が作る PR・alert を,人間の手を煩わせずに「安全なものは取り込み,判断が要るものは材料を揃えて報告する」ために起動されました.
Git 規約(.claude/rules/git-conventions.md)と,team モードなら GUIDE_03「レビューとマージ」を読み,以下の不変条件を厳守して実行してください.gh コマンドの詳細・GraphQL クエリ・ローカル検証の手順・台帳の書式は本スキルの reference.md(.claude/skills/deps-update/reference.md)を参照する.
app/dependabot の open PR のみを対象にする.人間や他のボットの PR には一切操作しないmain への取り込みは gh pr merge --merge のみ: ローカルで main に直接コミット・push しない.依存ファイル(マニフェスト・ロックファイル)を自分で書き換えて別 PR を作ることもしない(競合やビルド失敗の解消は @dependabot rebase / @dependabot recreate コメントで Dependabot にやり直させる)@dependabot ignore)は Dependabot と人間に任せる.@dependabot ignore ... のコメントも自分では投稿しない(無視は人間の決定)/loop /deps-update でのラップはユーザー起動とみなす)$ARGUMENTS を次のように解釈する:
report なら報告のみモード(マージも PR コメントもしない.分析結果を完了報告と台帳に書くだけ).merge または省略なら通常モード(ゲートを満たすものをマージし,残りを報告する)#12 / 12 形式の番号があれば,その PR だけを対象にする(省略時は open な Dependabot PR すべて)gh auth status と gh repo view が通ること.作業ツリーがクリーン(git status --short が空)であること.クリーンでなければ停止してユーザーに伝える(stash も行わない).開始時のブランチ名を控えるreference.md「前提の確認」で Dependabot alerts / security updates が有効か,.github/dependabot.yml が存在するかを確認する.無効・不存在なら処理は続けるが,完了報告で /setup の「GitHub リポジトリのセキュリティ設定」「依存バージョン更新の設定」を案内するdocs/02_ENV/ENV_04_開発コマンド.md があればそれを唯一の参照先とする.無ければ構成ファイル(package.json,pubspec.yaml,Cargo.toml,go.mod,pyproject.toml 等)から 依存インストール・テスト・(あれば)ビルド/型チェック/リンタ のコマンドを特定する.推測で試さず,特定できなければ「ローカル検証不可」として扱う.github/workflows/ の有無と,対象 PR に statusCheckRollup が付くかで判定する.CI があれば Tier A の判定源は CI,無ければローカル検証に切り替える.gitignore 対象のローカル運用状態.無ければ空として扱い,追跡されていなければ .gitignore に追記する):
.claude/deps-update-merged.md — 本スキルがマージした PR の記録(/loop 越しに最終報告を積み上げる).claude/deps-update-report.md — 人間の判断待ち項目(メジャー更新・CI 赤・修正版なし alert 等).既出は再記録しない.claude/deps-update-skip.md — ユーザーが「触るな」と指定した PR 番号/パッケージ.該当する PR・alert は一切操作せず,完了報告で件数だけ伝えるreference.md「PR の収集」「alert の収集」に従い,以下を取得する.
app/dependabot の PR 一覧(番号・タイトル・本文・ブランチ・mergeable・mergeStateStatus・チェック状況・ラベル)alert に紐づく PR は「security update」,それ以外の Dependabot PR は「version update」として扱う(alert 情報が取れない場合は PR 本文の GHSA リンク・security ラベルで代用する).
対象 PR を security update → パッチ → マイナー → その他 の順に並べ,1 件ずつ以下を行う.
スキップ確認: deps-update-skip.md に該当すれば飛ばす
分類(reference.md「更新規模の分類」):
patch / minor / major / unknown.0.x 系のマイナー更新は破壊的変更を含みうるため major 相当として扱う.グループ PR は全メンバーの最大規模で判定する(minor-and-patch グループは定義上 minor)状態確認: mergeable が CONFLICTING なら @dependabot rebase をコメントして今回は見送る(台帳には書かず,完了報告で「次回再試行」として伝える).mergeStateStatus が BEHIND で CI がある場合も同様に rebase を促す(Dependabot は base 更新時に自動 rebase するため,通常は次回には解消している)
検証 Tier の決定:
reference.md「ローカル検証」: PR ブランチに最新 main を取り込んだ状態で依存インストール → 検証スイート)が全緑PENDING の場合は reference.md「CI の完了待ち」に従い一定時間待つ.完了しなければローカル検証に切り替えるか,今回は見送る(完了報告で「CI 待ち」)判定表に従って処理を決める:
| 更新規模 | Tier A | Tier B | Tier C |
|---|---|---|---|
patch | マージ | マージ | 報告 |
minor | マージ | 報告 | 報告 |
major / 0.x マイナー / unknown | 報告(分析付き) | 報告(分析付き) | 報告(分析付き) |
@dependabot recreate をコメントしてよいが,マージはしない実行:
gh pr merge <番号> --merge --delete-branch(Git 規約どおりマージコミット).成功したら deps-update-merged.md に追記し,ローカル main を git pull する.以降の PR は Dependabot が自動 rebase するため,次の PR へ進む前にステップ 2-3〜2-4 を取り直すreference.md「メジャー更新の影響分析」に従い,リリースノート/変更履歴から破壊的変更を抽出し,コードベース内の利用箇所(import・API 呼び出し)を特定して影響範囲と推奨対応(そのままマージ可 / /implement で追従が必要 / 見送り)をまとめる.deps-update-report.md に追記し,通常モードでは同じ内容を PR にコメントする(reference.md「PR コメントの書式」.既に本スキルのコメントがある PR には再投稿しない)紐づく PR が無い open alert を 1 件ずつ見る.
firstPatchedVersion なし): 報告.回避策(別パッケージ・利用箇所の無効化等)があれば添えるopen-pull-requests-limit 超過・エラー): エラー内容と「どの依存をどのバージョンへ」を報告し,推移的依存ならロックファイルの更新コマンド(npm update <pkg> / dart pub upgrade <pkg> 等,検証スイートでの確認付き)を推奨対応として示す.自分では依存を書き換えない(不変条件 2).必要なら /implement での対応を案内するdeps-update-report.md に [alert] として追記する(既出は再記録しない)git status --short が空であることを確認する/setup の該当手順を案内)@dependabot rebase を依頼したもの,CI 待ちのもの(次回再試行),deps-update-skip.md によるスキップ件数/implement で追従してからマージ」「@dependabot ignore this major version で見送り(人間がコメント)」のどれを推奨するかgit pull する.GUIDE_03)Dependabot は週 1 回(dependabot.yml の interval)まとめて PR を作るため,単発実行で十分なことが多い.放置中に取り込みたい場合は /loop 1d /deps-update のように日次でラップしてよい.対象が無い回は収集だけで即終了するので空回りのコストは小さいが,2 回連続で「マージ 0・新規報告 0」なら /loop を終了してよい.
gh 未認証/リモートが GitHub でない → 開始せずに報告gh pr merge が失敗(ブランチ保護・権限不足) → その PR は報告に回し,失敗理由を伝える.team モードで「他メンバー Approve 必須」のブランチ保護が効いている場合は,本スキルはマージ可と判定した PR の一覧を提示するにとどめる