Borrowing it
Nothing to install: this file belongs to parawanderer/OpenTagViewer. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/parawanderer/OpenTagViewer/main/.claude/skills/watch-pr/SKILL.mdgit clone --depth 1 https://github.com/parawanderer/OpenTagViewerWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/parawanderer/opentagviewer/watch-pr)<a href="https://agentmods.dev/skills/parawanderer/opentagviewer/watch-pr"><img src="https://agentmods.dev/badge/skills/parawanderer/opentagviewer/watch-pr/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/parawanderer/opentagviewer/watch-pr"><img src="https://agentmods.dev/badge/skills/parawanderer/opentagviewer/watch-pr.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00029 | $0.01803 |
| Opus 5 | $0.00015 | $0.00901 |
| Sonnet 5 | $0.00006 | $0.00361 |
| Haiku 4.5 | $0.00003 | $0.00180 |
Grade A, and why
watch-pr scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 10d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 141 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Watching a PR through to a verdict
A pushed PR is not finished work. It is work awaiting a verdict that gh can read — so read it,
and say what happened. Offer this every time a PR is pushed, unless told otherwise.
Arm a Monitor. Do not poll in a loop, and do not go idle waiting. The notification arrives
on its own; keep working on the next thing in the meantime.
The trap this skill exists for
A monitor that emits nothing looks exactly like a monitor watching something that has not happened yet. Silence is not success. One was armed on PR #97 here, produced nothing for its whole lifetime, and exited 0 — and the PR's status was found by hand, while the monitor was still believed to be running.
So: run the poll body once in the foreground first, and see it print. One Bash call. If it
prints nothing there, it will print nothing for the next half hour either.
# Prove it emits BEFORE arming anything.
PR=99
gh pr view "$PR" --json statusCheckRollup --jq \
'.statusCheckRollup[] | select(.status == "COMPLETED") | "\(.name): \(.conclusion)"'
First check whether this PR gets checks at all
An empty rollup is not "too early" — it may mean nothing will ever run.
gh pr view <n> --json statusCheckRollup,baseRefName \
--jq '{base: .baseRefName, checks: (.statusCheckRollup | length)}'
Two independent reasons it comes back zero, and the second one is invisible in the diff:
- Path filters. Every workflow here is filtered (
app/**,scripts/**,gradle/**,pyrightconfig.json,.flake8), so a PR touching only docs,.gitattributes,.claude/, or.github/itself produces nothing. - A base that is not
main. Every workflow ispull_request: branches: [ "main" ], so a stacked PR gets no checks whatsoever, however much application code it touches. This is the one that catches you out: the obvious test — "does the diff touch a filtered path?" — says yes, and still nothing runs. Seen on #105, which changedapp/**heavily and had a rollup of zero because it was based on the branch of #104.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 10d ago First seen · 141 lines · 29 tokens per session scan A 09a19043c387
watch-pr is a skill published in the GitHub repository parawanderer/OpenTagViewer (380 stars, last pushed 2d ago), licensed MIT. It adds 29 tokens to every session and 1,803 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
shepherd
Use when asked to shepherd, babysit, monitor, or poll open pull requests or merge requests, including triaging review feedback, CI failures, and routine follow-up.
shepherd
Use when asked to shepherd, babysit, monitor, or poll open pull requests or merge requests — including triaging review comments, detecting CI failures, fixing trivial CI issues, and keeping PRs/MRs moving without manual intervention.
app-store-compliance
Run an enterprise pre submission compliance audit on a mobile app project before uploading to the Apple App Store or Google Play. Use when the user is about to submit, ship, or release an iOS or Android app, when an app was rejected and needs a fix plan, when reviewing App Store Review Guidelines or Google Play policy…
golden-examples
A library of approved writing examples for commit messages, Japanese interface text, code-review comments, and completion reports. It is designed to preserve the wording and tone a team has previously accepted.
github-pr-workflow
Full pull request lifecycle — create branches, commit changes, open PRs, monitor CI status, auto-fix failures, and merge. Works with gh CLI or falls back to git + GitHub REST API via curl.
github
GitHub operations via gh CLI: issues, PRs, CI runs, code review, API queries. Use when: (1) checking PR status or CI, (2) creating/commenting on issues, (3) listing/filtering PRs or issues, (4) viewing run logs. NOT for: complex web UI interactions requiring manual browser flows (use browser tooling when available)…