babysit について
babysitは、Claude Codeでオープン中のプルリクエストを管理する単独のpstackスキルです。gh CLIで競合、チェック、レビューコメントを確認し、修正と再確認を進め、PRの準備が整うか判断が必要になるまで対応します。
主な機能
- 01ghでプルリクエストの状態を取得
- 02競合、失敗チェック、レビューを優先順に処理
- 03修正と間隔を置いた再確認を支援
- 04停止または判断を求める条件を設定
- 05変更とPRの状態を報告
活用シーン
- 01オープン中のPRのチェック通過を維持
- 02失敗チェックやレビューコメントへの対応
- 03準備完了または判断が必要になるまでPRを監視
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ ericlitman/ open-pstack --skill babysitインストール後、Claude Code で/babysitを入力して読み込まれたか確認します。
詳細
PRを見守る
Cursor組み込みの/babysitに相当するClaude Codeの機能です。gh CLIと、ペース配分に使うClaude Codeのloopスキルを組み合わせたループで実装されています。
プラットフォームに関する注意。 CodexやClaude以外のランタイムでは、以下に記載するClaudeのツール名とClaude組み込みスキル(loop、AskUserQuestion)はClaudeのデフォルトです。codex-tools.mdを参照して解決してください。
poteto-modeでは、Babysitプレイブック(../poteto-mode/playbooks/babysit.mdがこのスキルに優先します。このプレイブックがモード宣言、マージの境界、スタックの安全性、watch-prウォッチャーを管理します。このスキルは、poteto-modeの実行外で単一のPRを見守る、スタンドアロンの/babysitエントリーポイントとして機能します。
使用するタイミング
- オープンなPRがあり、ユーザーが明示的にその状態を保つよう求めていて、すでにpoteto-modeの実行中ではない場合(そのケースはプレイブックが管理します)。
- ユーザーが
/babysitを直接呼び出した場合。 - PRを作成したサブエージェントは見守りを行いません。親に戻り、親に判断を委ねてください。
手順
-
PRの状態を取得します。
gh pr view <number> --json number,title,state,mergeable,reviewDecision,statusCheckRollup,mergeStateStatus,comments,reviews -
優先順位に沿ってトリアージします。
- マージコンフリクト(
mergeStateStatus == DIRTY):mainをリベースまたはマージし、解決します。ブランチが自分のもので共有されていない場合に限り、強制プッシュしてください。 - 失敗したチェック(
conclusion: FAILUREのエントリがあるstatusCheckRollup):gh run view <run-id> --log-failedでログを取得します。失敗の根本原因を特定し、コードまたはテストを修正して、コミットしてプッシュしてください。 - 人間のレビュアーからのレビューコメント(
gh pr view --json comments,reviews):実際に同意できるフィードバックだけに対応してください。コメントへの回答が単純な機械的作業(名前の変更、ガード節、フォーマットの軽微な修正)だけで済む場合は、編集を行い、コミットメッセージにコメントを引用してください。判断を要する場合や、要求内容がわからない場合は、推測せずそのままにして、何をしようとしたかを返信してください。 - レビューボットのコメント(Bugbotなどの自動化ツール):
../poteto-mode/references/bugbot-triage.mdに従って、修正、却下、または対応前に確認のいずれかに分類してください。セキュリティ、データ、重大度の高い指摘を含め、ルーブリックの「デフォルトで確認する」カテゴリに従ってください。
- マージコンフリクト(
-
ループします。 Claude Codeの
loopスキルを使って再確認の間隔を調整します。監視対象に応じて間隔を選んでください。- CIが実行中の場合:
gh pr checks --watchをポーリングします(チェックが完了するまでブロックするため、別途ループ間隔を設定する必要はありません)。 - レビュアーの返答待ちの場合:20〜30分間隔で確認します。
- 新しいコメントを見逃したくないものの、動きがない場合:1時間ごとに確認します。
- CIが実行中の場合:
-
停止するタイミング。
- ビルドが成功し、すべてのコメントに対応済みで、ブランチが問題なくマージできる場合 → 準備完了とします。
- 修正 → プッシュ → 再確認を3回行っても完全に成功しない場合 → 停止し、未解決の問題を要約して、制御をユーザーに戻します。
- 次の修正で設計上の判断が必要になる場合 → 一時停止し、
AskUserQuestionでユーザーに確認します。
-
報告します。 適用した修正、対応したコメント、保留したコメント(理由を含む)、現在のPRの状態を要約してください。各コミットはSHAで示してください。
厳守事項
- 他の人が取得した可能性のあるブランチで、履歴を書き換えないでください。リベースや強制プッシュが必要と思われる場合は、事前にユーザーの承認を得てください。
- パスさせるためだけにテストの期待値を変更しないでください。動作が実際に変わり、アサーションが変更前の動作を前提としていた場合にのみ、アサーションを変更してください。
- フックをスキップしないでください(
--no-verify)。 - 失敗したチェックを必須ではないものとして扱い、回避しないでください。
- すべてのチェックが成功し、未解決のレビューコメントが残っていない場合にのみ、
gh pr readyを実行してください。
関連項目
- PRを作成した後、
poteto-modeはここに移行します。 - 差分に意見の対立がある場合は、PRを作成する前に
interrogateを使ってください。作成後はbabysitが引き継ぎます。 - ここで書く文章(PRコメント、コミットメッセージ、状況報告)には
unslopを使ってください。
出典
これは Cursor の /babysit の Claude Code 版であり、移植版ではありません。Cursor の実装はクローズドソースです。このスキルは独自に作成されており、独自の文章と構成を備えています。ワークフローは、Cursor の公開されている /babysit の動作を参考にしています。他の PR ツールと共通するのは、実行する gh CLI コマンドだけです。これらは機能を実行するための呼び出しであり、テキストをコピーしたものではありません。