babysit-pr-to-pass-ci

Monitor and drive selected GitHub Actions workflows to green on an SGLang pull request.

33.0k|8.4k|Updated Jan 8, 2024
One-click install
npx skills add https://github.com/sgl-project/sglang --skill babysit-pr-to-pass-ci
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: babysit-pr-to-pass-ci
Source: https://github.com/sgl-project/sglang/tree/main/.claude/skills/babysit-pr-to-pass-ci
Command: npx skills add https://github.com/sgl-project/sglang --skill babysit-pr-to-pass-ci

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Pull request CI on the SGLang repository requires persistent attention: workflows like lint.yml, pr-test.yml, and pr-test-extra.yml can fail for flaky infrastructure reasons, missing opt-in labels, or genuine code regressions, and someone must keep watching, diagnosing, retrying, and fixing until the latest head commit passes.

Core Features & Use Cases

  • Persistent CI monitoring: Creates a durable goal that tracks only the selected workflows on the PR's latest head SHA, polling runs and ignoring unselected workflows entirely.
  • Failure triage and bounded retries: Classifies each failure as PR-related, unrelated/infrastructure, or uncertain, and reruns failed jobs only (never full workflows) up to 10 times per workflow and head SHA.
  • Guarded auto-fixing: Implements, validates, commits, and pushes fixes only when they are clean, non-tricky, and at most 100 changed lines; otherwise it stops for user review.
  • SGLang gate awareness: Understands label gates such as run-ci and run-ci-extra, draft PR blocks, and AMD workflow variants, and can add authorized opt-in labels.
  • Use Case: After pushing changes to PR 12345, ask the agent to babysit lint.yml and pr-test-extra.yml; it adds missing labels, retries a flaky GPU runner failure twice, and reports green runs with links once both workflows pass on the final head SHA.

Quick Start

Ask the agent to babysit the current pull request until lint.yml and pr-test.yml pass, optionally naming extra workflows such as pr-test-extra.yml or an AMD workflow.

Frequently Asked Questions about babysit-pr-to-pass-ci

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I monitor a GitHub pull request until CI passes?

Invoke the skill with a PR number or URL and optional workflow names, for example $babysit-pr-to-pass-ci 12345 pr-test-extra.yml. It creates a durable goal, polls current-head runs every 30-60 seconds, and continues until every selected workflow concludes success on the latest head SHA.

How do I retry only failed GitHub Actions jobs?

Use gh run rerun <RUN_ID> --failed to rerun only the failed jobs in the current run. The skill applies this automatically for unrelated or infrastructure failures, capped at 10 retries per workflow and head SHA, and never triggers a full workflow rerun.

Why is pr-test.yml not running on my SGLang pull request?

pr-test.yml requires the run-ci label for relevant PR changes, and pr-test-extra.yml requires both run-ci and run-ci-extra. The skill detects missing-label gate failures and adds the authorized opt-in labels, which may create a fresh run for label-listening workflows.

Can the skill automatically fix failing CI and push to my PR?

Yes, but only when the fix is clean, non-tricky, and at most 100 changed lines with a focused validation available. It commits only skill-authored files and pushes non-forcibly to the PR head branch; larger or risky fixes stop for user review before any editing.

What happens when a new commit is pushed while CI is being monitored?

The skill re-reads the PR head SHA on every monitoring cycle, discards stale run selections, resets retry counters, and begins tracking runs for the new head. Green results on older SHAs are never counted toward completion.

When should I not use automated PR CI babysitting?

Avoid it when a workflow cannot be safely triggered for the PR head, when fixes require broad redesigns or dependency migrations, or when a different unfinished goal is already active. In these cases the skill reports the blocker and waits for explicit user direction.