mcpField
B
babysit-pr

babysit-pr

github.com/doodledood開発78103 回インストール1 日前に更新
リポジトリ

babysit-pr について

babysit-prは、既存のPull Requestを作者側の作業フローで進め、マージ可能な状態、人によるマージ、または人の対応が必要な状態まで扱うスキルです。Manifestを作業指針とし、追記専用ジャーナルから状況を復元できますが、自らマージはしません。

主な機能

  1. 01現在のブランチからPRを推定、またはURLを指定
  2. 02PRのManifestを再開または作成
  3. 03doを通じてManifestのワークフローを実行
  4. 04試行内容と状況を追記専用ジャーナルに保存
  5. 05待機状態を報告する単発CI実行

活用シーン

  1. 01PRの対応可能なCI失敗やレビュー指摘を処理
  2. 02記録済みManifestとジャーナルからPR作業を再開
  3. 03CIの各実行でPRの状態を1段階進める
  4. 04マージせずにPRをマージ可能な状態に準備

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/doodledood/manifest-dev --skill babysit-pr

インストール後、Claude Code で/babysit-prを入力して読み込まれたか確認します。

詳細

既存の PR を見守り、Manifest ワークフローを実行して、作成者側のライフサイクルが正常な状態になり、マージ可能になるよう進めます。レビュー担当者(人またはスキル)がこの実行に到達するのは、GitHub の PR 状態を通じてのみです。

入力。 PR URL、--manifest <path>、両方、またはいずれも指定しない形式に加えて、--ci と、既定のジャーナルを無効にする --no-log を受け付けます。PR URL がない場合は、現在のブランチのアップストリームまたはオープン中の PR を推定します。PR を一意に推定できない場合は、対処方法を示すエラーで停止します。--manifest <path> は PR を最も強く根拠づけ、Manifest の新規生成を省略します。--manifest がない場合は、この PR の以前の tend をジャーナルに記録した Manifest(ロギング)から再開し、--manifest で渡された場合と同様に扱います。これにより、それ以降の修正が引き続き有効になります。記録された Manifest ファイルがもう存在しない場合に限り、define を --babysit <pr-url> --autonomous 付きで呼び出し、その Manifest complete: のパスを読み取ってから続行します。

ロギング。 --no-log が指定されていない限り、tend の間は追記専用のジャーナルを永続化し、ライフサイクルの途中でウォームセッションがコンテキストを圧縮しても、これまでに試して断念したことや、運用メモ(再トリガー、待機)を継続して把握できるようにします。これは、GitHub の状態からは再構成できない行き詰まりの記憶を保持します。すなわち、試してから元に戻した修正や、検討して却下したもののコミットには至らなかった方法です。既定のパスは ~/.manifest-dev/logs/babysit-<owner>-<repo>-<N>.md です(~ = $HOME / %USERPROFILE%。ディレクトリを作成し、ホームディレクトリに書き込めない場合に限り、書き込み可能な一時パスにフォールバックします)。パスは PR に紐づいているため、再実行時には既存のファイルを見つけて再利用し、新しい実行の区切りを追記します。ファイルがなければ作成します。実行で Manifest のパスが解決または生成されたら、Manifest: <absolute path> の行を追記し、後続の実行ではそのような行に記録された最新のパスから再開します。--no-log が指定されている場合、またはジャーナルが存在しない場合は、再開に使える記録がないため、実行のたびに新たに生成します。tend した Manifest を保持するには、--manifest を渡してください。追記のみとし、以前の記録は決して書き換えません。過去の証拠、対応方針、検証済みの修正は /do に渡し、現在の基準と PR の状態に照らして適用可能か確認します。一時的なランナーでジャーナルを利用できない場合は、GitHub から現在の PR 状態を再構成し、以前に断念した試みは復元できなかったことを記録します。

PR の根拠づけ。 Manifest は tend の意図の情報源です。--manifest で渡されたもの、ジャーナルに記録されているもの、またはプルリクエストから define が生成したもののいずれかです。コメントはシグナルであり、権威ある情報源ではありません。コメントだけを根拠に、コード変更や Manifest の修正が必要になることはありません。プロジェクトに NORTH_STAR.md がある場合(通常はプロジェクトのコンテキストファイルを通じてすでにコンテキストに含まれています)、意図の別の情報源としてではなく、その意図に対する恒常的な確認項目として適用します。このファイルはこの PR の意図について何も述べていないため、意図について述べている情報源の中で順位づけすることはできません。ここで十分に根拠づけられ、かつ明示された原則に抵触する採用済みのリクエストは、衝突の内容を明記したうえで、Manifest の修正またはエスカレーションに進めます。黙って拒否することはありません。該当する原則とは、原則の項目、または従来の 9 フィールド形式の North Star にある Never です。後者では、文書の残りの部分は判断材料にはなりますが、処理の振り分けには使われないため、確認可能な部分を指します。 無人起動。 単独の tend の開始時に、/define または /do を呼び出す前に、永続的な PR-tend の目標設定用バックストップを確立します。このバックストップは、マニフェストの検出または合成から /do までを対象とし、/define をスキップする --manifest パスも含みます。また、/do の実行中は、以下のゲート条項も引き継ぎます。これは tend 全体を対象とする外側のバックストップです。この見守り用バックストップがある間は、ネストされた /define の引き継ぎテキストや /do の無人起動テキストで、競合する、より限定的な目標を設定したり表示したりしないでください。以下のブロックを、<pr-url> を置き換えて逐語的に出力します。要約、短縮、言い換え、句読点の変更はしないでください。ハーネスに目標設定、継続、または永続的な完了条件の機能がある場合は、それを使って設定します。そのような機能がない場合は、ユーザー自身の継続の仕組みでコピー&ペーストできる形式で出力します。PR-tend の接頭辞、PR 目標ブロック、ゲート条項の順に、1 つの契約として出力します。フェンスとラベルはこのファイル内の目印であって、出力する内容の一部ではないため、独自の文で導入するラベルなしのブロックを 1 つだけ出力してください。

Drive the pull request at <pr-url> until it is mergeable, a person merges it, or a blocker requires a person and no useful independent work remains. Never press merge. In CI one-shot mode, report an external wait as pending once no actionable work remains; otherwise keep tending through waits. Discover or synthesize the Manifest for this pull request. Record its path in a checkpoint note as soon as it exists.
Work until the Outcome and every current Acceptance Criterion and Global Invariant in the Manifest hold, each with fresh evidence, the workflow's bounded mandatory build work is settled, and completion has been reported.

The Manifest changes only through the skill that wrote it, never by direct edit. Working claims and evidence methods may be revised on evidence while preserving the Outcome and hard requirements; those need their source's authorization to change. Overall plan approval does not harden agent choices. A changed claim or evidence method returns affected results unverified.

Record compact checkpoint notes as work proceeds: what changed, what was verified, what remains, blockers.

Assume the user is AFK; make authorized decisions without asking questions. Surface blockers promptly and continue useful independent work. Stop after reporting completion, a blocker requiring a person when no useful independent work remains, an external wait that this run's no-wait policy makes terminal, or a person settling from outside everything the work still owes, such as by merging the pull request that carries all of it. Continue while authorized, actionable work remains.
Track the Outcome and every Acceptance Criterion and Global Invariant in the Manifest: its id, its latest verdict, the evidence behind that verdict, and whether that evidence is still fresh relative to the last relevant change to the gate's subject. Completion requires the Outcome and every current gate to hold on fresh evidence, with bounded mandatory build work settled and no unresolved amendment or necessary missing evidence. Unverified, failing, stale, actionably blocked, or escalation-pending gates do not satisfy successful completion. A terminal wait is reported as pending, never as success. A substantive change to a gate's subject after it passed marks it stale until re-judged, while re-reading, re-examining, and cosmetic or no-op edits do not. Never accept unevidenced self-attestation, "looks done", or a summary claim in place of the evidence the gate names.

実行。 マニフェストのパスを解決した後、そのマニフェストに対して do を呼び出します。--ci の場合は、CI のワンショット/待機なしのコンテキストを /do に渡します。--no-log が指定されていない場合は、解決したジャーナルのパスを /do に渡し、実行前に過去のコンテキストを読み込み、実行後に追記するようにします。--no-log が指定されている場合は、それも /do に渡して、そこでのオプトアウトも有効にします。そうしないと、/do 自身のデフォルトの実行ログによって、ユーザーが記録しないことを選んだ記録が再作成されてしまいます。後続のコマンドを主な結果として表示しないでください。このスキルは define→do の連鎖を担います。その後の実行は /do が担い、tend は 実行の終了方法 に記載された終端パスのいずれかで終了します。

CI モード。 --ci は、状態を完全に 1 回進めたら終了することを意味します。信頼できる自動修正、テスト、コミット、プッシュ、再実行、安全な説明の同期、安全な返信や解決を含め、すぐに実行可能なすべてのステップを実行します。待機だけが残ったら、待機状態を報告して正常終了します。長いスリープでランナーを稼働させ続けないでください。次の GitHub イベント、スケジュール実行、または手動ディスパッチによって、スキルが再び呼び出されます。PR ごとに一度に 1 つの tend だけ実行します。CI では、PR をキーとする同時実行グループを設定し、新しい実行が進行中の実行の後ろに待機するようにします。2 つの実行が同時に状態を読み取ると同じ返信を投稿してしまうため、CI tend のセットアップ時にこの点をユーザーに伝え、レポートでは、実行中に別の tend との重複が確認された場合にのみ伝えます。

変更の境界。 PR のヘッドが信頼でき、書き込み可能な場合に限り、自動修正してプッシュします。通常のプッシュ権限があり、ヘッドブランチが保護ブランチまたはベースブランチではなく、特権シークレットを使う信頼できないフォーク経由の PR ではなく、修正前にローカルのチェックアウトが現在の PR のヘッド SHA と一致し、プッシュが通常のファストフォワードによるブランチ更新であることが条件です。ファストフォワードではないとしてプッシュが拒否された場合、実行中にヘッドが更新されています。PR を再取得し、古いチェックアウトからは何もプッシュしないでください。--ci の場合、実行は保留で終了し、新しいヘッドによって開始される実行を待ちます。レポートには新しいヘッドを記載し、次の実行がそこから開始されるようにします。それ以外の場合は、新しいヘッドから続行します。マージボタンを押さないでください。強制プッシュを行わず、ベースブランチにもプッシュしないでください。目標はマージ可能な状態であり、マージ済みの状態ではありません。

失敗時の処理。 PR の推定に失敗した場合、define が利用できない場合、マニフェストのパスが返されない場合、または PR URL が拒否された場合は、停止して理由を提示します。ユーザーが --manifest を指定した場合は、その内容を根拠として読み込みますが、/do の前に書き換えないでください。以降の新たなスコープや競合するコメントは、/do の変更またはエスカレーションの経路で処理します。

コメント