跳到正文
cccskills
免费在 GitHub 公开

github:prs

PR health analysis - CI passing without review, stale PRs, merge conflicts

中文简介正在准备中。当前显示原文说明。

rossoctl/rossoctl星标 303(GitHub 303 + cccskills 0)
集成工具GitHub

实测评分 未实测

查看安装方法

包含的文件(1)

  • SKILL.md2.9 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

PR Health

Analyze open PRs to find those needing review, stuck in CI, or going stale.

Variables

Set at session start:

export OWNER=<org-or-user>
export REPO=<repo-name>

When to Use

  • Weekly PR grooming
  • Finding PRs ready to merge
  • Identifying stuck or abandoned PRs

Auto-approved: All gh commands are read-only and auto-approved.

Analysis Steps

1. All Open PRs

gh pr list --repo $OWNER/$REPO --state open --json number,title,author,createdAt,updatedAt,reviewDecision,statusCheckRollup

2. PRs Passing CI Without Review

gh pr list --repo $OWNER/$REPO --state open --json number,title,author,reviewDecision,statusCheckRollup --jq '.[] | select(.reviewDecision != "APPROVED") | select(.statusCheckRollup != null) | select([.statusCheckRollup[] | select(.conclusion == "FAILURE")] | length == 0) | "#\(.number) \(.title) (@\(.author.login))"'

3. Stale PRs (no update > 14 days)

gh pr list --repo $OWNER/$REPO --state open --json number,title,updatedAt,author --jq '.[] | select(.updatedAt < (now - 14*24*3600 | strftime("%Y-%m-%dT%H:%M:%SZ"))) | "#\(.number) \(.title) (last: \(.updatedAt))"'

4. PRs with Failing CI

gh pr list --repo $OWNER/$REPO --state open --json number,title,statusCheckRollup --jq '.[] | select(.statusCheckRollup != null) | select([.statusCheckRollup[] | select(.conclusion == "FAILURE")] | length > 0) | "#\(.number) \(.title)"'

5. PRs with Merge Conflicts

gh pr list --repo $OWNER/$REPO --state open --json number,title,mergeable --jq '.[] | select(.mergeable == "CONFLICTING") | "#\(.number) \(.title)"'

PR Health Report

## PR Health Report

### Ready to Merge (CI passing, needs review): N
- [list — prioritize these for review]

### Failing CI: N
- [list — authors should investigate]

### Stale (> 14 days): N
- [list — ping authors or close]

### Merge Conflicts: N
- [list — needs rebase]

Troubleshooting

Problem: statusCheckRollup is null for all PRs

Symptom: jq filters on CI status return no results. Fix: The repo may not have required status checks. Use gh pr checks <N> --repo $OWNER/$REPO per-PR instead.

Problem: mergeable shows UNKNOWN

Symptom: GitHub hasn't computed mergeability yet. Fix: Wait a few seconds and re-query — GitHub computes this lazily. Or open the PR in the browser to trigger the check.

Problem: Stale query returns too many results

Symptom: Old PRs with recent bot comments show as active. Fix: Filter by updatedAt AND check comments count or last human comment date.

Related Skills

  • github:last-week - Weekly summary including PRs
  • github:issues - Issue triage
  • ci:status - Detailed CI check analysis
  • repo:pr - PR creation format
  • git:rebase - Fix merge conflicts

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

auth

免费

Authentication and authorization patterns for Rossoctl services

中文简介正在准备中。当前显示原文说明。

rossoctl/rossoctl3032026年10月25日 更新

Create confidential OAuth2 clients in Keycloak for server-to-service authentication

中文简介正在准备中。当前显示原文说明。

rossoctl/rossoctl3032026年10月25日 更新

Configure MLflow with mlflow-oidc-auth plugin for Keycloak OIDC authentication

中文简介正在准备中。当前显示原文说明。

rossoctl/rossoctl3032026年10月25日 更新

Configure OpenTelemetry Collector with OAuth2 authentication for trace export

中文简介正在准备中。当前显示原文说明。

rossoctl/rossoctl3032026年10月25日 更新

ci

免费

CI pipeline monitoring, status checks, and PR validation workflows

中文简介正在准备中。当前显示原文说明。

rossoctl/rossoctl3032026年10月25日 更新

Monitor running CI jobs, wait for completion, create tasks for results

中文简介正在准备中。当前显示原文说明。

rossoctl/rossoctl3032026年10月25日 更新

查看 rossoctl 的全部技能

报告此技能的问题