Borrowing it
Nothing to install: this file belongs to xsovad06/sova. 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/xsovad06/sova/main/.agents/skills/sova-review-pr/SKILL.mdgit clone --depth 1 https://github.com/xsovad06/sovaWrote 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/xsovad06/sova/sova-review-pr)<a href="https://agentmods.dev/skills/xsovad06/sova/sova-review-pr"><img src="https://agentmods.dev/badge/skills/xsovad06/sova/sova-review-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/xsovad06/sova/sova-review-pr"><img src="https://agentmods.dev/badge/skills/xsovad06/sova/sova-review-pr.svg" alt="Reviewed on agentmods" width="80" height="20"></a>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.00027 | $0.05462 |
| Opus 5.5 | $0.00011 | $0.02185 |
| Sonnet 5.5 | $0.00005 | $0.01092 |
| Haiku 4.5 | $0.00003 | $0.00546 |
Grade A, and why
sova-review-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 14d 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 — 368 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Review PR
Act as a senior engineer reviewing a teammate's pull request. Provide a thorough, honest, constructive review that catches real problems and acknowledges good work. You are a domain expert in the project's tech stack and patterns (see AGENTS.md).
CRITICAL: Complete ALL Steps. You MUST execute through Step 7 (posting the review on GitHub) before producing any final summary. Post the review directly via the GitHub API. Do NOT ask for confirmation or approval before posting. A text-only response (without a tool call) may cause the process to exit, so always post first, then summarize.
PR: the arguments provided when this skill is invoked
1. Fetch PR State
Gather all PR data in parallel:
# Metadata (captures headRefOid, the commit this review is anchored to)
gh pr view <PR_NUMBER> --json title,body,author,state,additions,deletions,files,commits,reviewRequests,labels,baseRefName,headRefName,headRefOid,statusCheckRollup
# Fill in HEAD_SHA from the headRefOid field above.
HEAD_SHA="<headRefOid from the metadata just fetched>"
# Run-unique artifact prefix inside a fresh private temp directory. Several
# reviews of the same PR can overlap on one machine (a manual review racing an
# autonomous reviewer, or two retries), and a fixed path keyed only by PR
# number lets one run's diff/findings/payload overwrite another's mid-flight.
# mktemp -d creates a directory no other run shares.
ARTIFACT_DIR=$(mktemp -d "${TMPDIR:-/tmp}/sova-review-<PR_NUMBER>-XXXXXX")
ARTIFACT_PREFIX="$ARTIFACT_DIR/review"
echo "ARTIFACT_PREFIX=$ARTIFACT_PREFIX"
# Full diff (also saved: Step 7 needs it to place inline comments).
gh pr diff <PR_NUMBER> | tee "${ARTIFACT_PREFIX}-diff.txt"
# Commits
gh api repos/<OWNER>/<REPO>/pulls/<PR_NUMBER>/commits --jq '.[] | "\(.sha) \(.commit.message)"'
# Top-level comments
gh pr view <PR_NUMBER> --json comments --jq '.comments[] | "---\n\(.author.login) (\(.createdAt)):\n\(.body)\n"'
# Inline review comments
gh api repos/<OWNER>/<REPO>/pulls/<PR_NUMBER>/comments --jq '.[] | "---\n\(.user.login) on \(.path):\(.line // .original_line) (\(.created_at)):\n\(.body)\n"'
# Reviews
gh api repos/<OWNER>/<REPO>/pulls/<PR_NUMBER>/reviews --jq '.[] | "\(.user.login) (\(.submitted_at)): \(.state)\n\(.body)\n"'
# CI checks
gh pr checks <PR_NUMBER>
# Re-check headRefOid immediately after the diff fetch: the two are separate
# requests, so a push landing between them means the saved diff no longer
# matches the SHA captured above.
CURRENT_SHA=$(gh pr view <PR_NUMBER> --json headRefOid --jq '.headRefOid')
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.
- 14d ago Changed · +2 lines d7c94be89844
- 16d ago Changed · -28 lines 3c6eab29265b
- 19d ago Changed · +38 lines 5507bc598353
- 21d ago Changed 1f05ccdc9432
- 22d ago First seen · 356 lines · 27 tokens per session scan A 2792fd78688c
sova-review-pr is a skill published in the GitHub repository xsovad06/sova (2 stars, last pushed yesterday), licensed Apache-2.0. It adds 27 tokens to every session and 5,462 once invoked, about $0.0001 per session on Opus 5.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-10-08.
Other skills, from other repositories
autofix-pr
Watch a pull request and fix it from a worktree of its own - CI failures, review feedback from trusted authors and merge conflicts are fixed, pushed to the PR branch and answered on the PR under the user's git and gh identity. Usage - /autofix-pr [ | ] [--once] [--every ] [--no-reply] [--yes] [instructions]…
gh-find-prs
Survey open Codewhale PRs and triage each for mergeability and disposition against the real landing branch.
hunk-release
Prepares, publishes, verifies, and curates Hunk releases. Use for release metadata, benchmarks, tags, publishing, release videos, backports, or recovery.
git
Git and code hosting platform management — GitHub, GitLab, Codeberg, Forgejo. Zero barrier — install x-cmd and manage repos from the terminal. Use for "git", "github", "gitlab", "repo", "pull request", "code hosting".
vhs-e2e-gif
Record a test run, a TUI session, or any terminal command as a GIF with VHS and attach it to a GitHub PR as a release-hosted asset, never a repo commit. Use when asked to record an e2e run, demo a fix on a PR, attach a GIF or screen recording to a pull request, show a test passing visually, or produce a terminal…
agent-debug-ci
Investigate failed scheduled or nightly GitHub Actions runs on the default branch, determine whether the failure is reproducible and repository-owned, implement the smallest evidence-backed fix, validate it, and open a pull request. Use when a failed nightly CI event starts an agent, or when the standard CI or…