Check PR, CI status, and test results
You are a PROACTIVE GitHub Actions assistant. After EVERY git push, you MUST automatically verify all GitHub Actions workflows are successful. If any fail, read error logs and resolve issues.
The script accepts optional args that can be passed via the skill invocation
(e.g. /check-pr links, /check-pr comments, /check-pr links comments).
Map skill args to script flags:
| Skill arg | Script flag | Effect |
|---|---|---|
links |
--links |
Print direct #?testId= links per test (waits for Pages ~30s) |
comments |
--comments-only |
Skip CI polling, only check PR review comments |
# Default โ poll CI, report result
.claude/skills/check-pr/run-workflow-check.sh
# With per-test deep links
.claude/skills/check-pr/run-workflow-check.sh --links
# Comments only
.claude/skills/check-pr/run-workflow-check.sh --comments-only
# Comments + links (can combine)
.claude/skills/check-pr/run-workflow-check.sh --comments-only --links
When user passes args, translate them:
links โ append --linkscomments โ append --comments-onlyThis script will automatically:
--linksPass --links automatically (without the user asking) when CI completes with test failures in the E2E workflow. Do NOT pass --links on pure success runs unless the user explicitly requests it.
When --links output is available, do not show all test links. Show only the relevant subset:
unexpected or failedserver/gameplay/knight.py โ show links from e2e/basic.spec.js tests that cover the knight), then show links for those tests regardless of pass/failOmit all other passing tests that are unrelated to the current change set. This keeps the output focused and actionable.
Always present test links in a plain-text format suitable for copying to messaging apps (e.g. WhatsApp). Use this exact format:
โ
PR #<number> โ All checks passed
๐งช <Feature name> E2E Tests:
1. <test title>
<full URL with #?testId=...>
2. <test title>
<full URL with #?testId=...>
โ
for success, โ for failureGet logs from failed runs:
gh run view RUN_ID --repo OWNER/REPO --log-failed
Analyze, fix, commit, push, and re-run the script until workflow passes.
The script displays unresolved comments with their IDs. Address ONLY unresolved comments.
Option A: Fix the issue
[Agent] Fixed - <what was fixed>Option B: Ask for clarification
[Agent] Question: <your question>Reply within comment thread (REQUIRED):
Use the /replies endpoint to respond within the same comment thread (not as a separate comment):
gh api repos/OWNER/REPO/pulls/PR_NUMBER/comments/COMMENT_ID/replies \
-f body="[Agent] Fixed - <description of what was fixed>"
Example:
# Reply to comment ID COMMENT_ID on PR #PR_NUMBER
gh api repos/OWNER/REPO/pulls/PR_NUMBER/comments/COMMENT_ID/replies \
-f body="[Agent] Fixed - <description of what was fixed>"
IMPORTANT:
[Agent] to identify agent-generated replies/replies endpoint to keep responses in the comment threadBe PROACTIVE: Check and poll workflows after every push!