Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add PrabhdeepSingh/claude-plugins --skill pr-conventionsgit clone --depth 1 https://github.com/PrabhdeepSingh/claude-pluginsWrote 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/prabhdeepsingh/claude-plugins/pr-conventions)<a href="https://agentmods.dev/skills/prabhdeepsingh/claude-plugins/pr-conventions"><img src="https://agentmods.dev/badge/skills/prabhdeepsingh/claude-plugins/pr-conventions/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/prabhdeepsingh/claude-plugins/pr-conventions"><img src="https://agentmods.dev/badge/skills/prabhdeepsingh/claude-plugins/pr-conventions.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.00080 | $0.04695 |
| Opus 5.5 | $0.00032 | $0.01878 |
| Sonnet 5.5 | $0.00016 | $0.00939 |
| Haiku 4.5 | $0.00008 | $0.00470 |
Grade A, and why
pr-conventions 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 1mo 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 — 240 lines — stays where its author put it; the contents beside it link to each section on GitHub.
PR conventions — right template, living description, honest replies
A PR body is the reviewer's briefing: it should match the change type so reviewers apply the right lens, stay accurate as fixes land, and every thread should get a reply that closes the loop. This skill handles all three.
When to apply this
- Opening a PR (
/sonu:shipPhase 1) — scan for a team template, classify the change type, fill the matching built-in template, embed theRISKSlist in the risk section (Section A → B). - After fixes land (after
/sonu:shipPhase 4 push, and within each Phase 6 re-review cycle) — re-render the description in place (Section C). - Responding to reviewer comments (
/sonu:shipPhase 5, or standalone) — reply to every open inline thread with the right wording; resolve bot threads but leave human threads for the reviewer to resolve (Section D).
A — Discover the team template first
Before reaching for a built-in template, scan for the repo's own PR template. The team standard wins.
# Single-file locations take precedence over multi-template directories.
# Check files first; only look for a directory if no file is found.
# GitHub supports the template in .github/, the repo root, or docs/, in either case spelling —
# on a case-sensitive filesystem (Linux, dev containers) both spellings must be checked explicitly.
TEMPLATE_FOUND=""
for f in \
".github/PULL_REQUEST_TEMPLATE.md" ".github/pull_request_template.md" \
".github/PULL_REQUEST_TEMPLATE.txt" ".github/pull_request_template.txt" \
".github/PULL_REQUEST_TEMPLATE" ".github/pull_request_template" \
"PULL_REQUEST_TEMPLATE.md" "pull_request_template.md" \
"PULL_REQUEST_TEMPLATE.txt" "pull_request_template.txt" \
"PULL_REQUEST_TEMPLATE" "pull_request_template" \
"docs/PULL_REQUEST_TEMPLATE.md" "docs/pull_request_template.md" \
"docs/PULL_REQUEST_TEMPLATE.txt" "docs/pull_request_template.txt" \
"docs/PULL_REQUEST_TEMPLATE" "docs/pull_request_template"; do
[ -f "$f" ] && { TEMPLATE_FOUND="SINGLE:$f"; break; } # -f: extension-less names (GitHub allows them) only match files, so the dir scan below is unaffected
done
if [ -z "$TEMPLATE_FOUND" ]; then
for d in ".github/PULL_REQUEST_TEMPLATE" ".github/pull_request_template" \
"PULL_REQUEST_TEMPLATE" "pull_request_template" \
"docs/PULL_REQUEST_TEMPLATE" "docs/pull_request_template"; do
[ -d "$d" ] && { TEMPLATE_FOUND="MULTI:$d"; break; }
done
fi
echo "$TEMPLATE_FOUND"
What ships with it
2 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
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.
- 1mo ago Changed · +2 lines 4bf1335ba790
- 1mo ago Changed · +6 lines 68f9dd84c35b
- 1mo ago First seen · 232 lines · 80 tokens per session scan A 71d2e6a6cf32
pr-conventions is a skill published in the GitHub repository PrabhdeepSingh/claude-plugins (4 stars, last pushed today), licensed MIT. It adds 80 tokens to every session and 4,695 once invoked, about $0.0003 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-08-31.
Other skills, from other repositories
run
Drive a GitHub issue — bare or tracked on a Project board — from triage to a merge-ready PR through a gated pipeline (design hardening, tests green, code-review clean), scaling the machinery to the task's tier and asking at most one batched question. Auto-links the issue to close on merge, advances the board card…
branch-recap
Takes stock of what a branch actually changed, before it gets pushed — works out the scope itself, then lays the change out group by group in one pass: files touched, what was done and why, how, and what deserves a second look, quoting code only where a remark needs it rather than reprinting the diffs. Closes on a…
slack-changelog
Turns what changed in a release into a Slack changelog a non-technical audience can read: filtered to what they would actually notice, one bullet per idea, plain language, no code vocabulary. Works out the scope itself across however many repositories sit in the working directory (a project can span several…
github-audit
Audit GitHub repo health, auto-fix safe issues, run quality gates, deploy, and record decisions across runs. Use when asked to audit a repo, check repo/CI/dependency health, run pre-deploy quality checks, or ship after an audit.
git-pr
For every git repo in the current folder, create and merge a PR for feature-branch work, then return to the default branch and pull. With no arguments this runs fully autonomously across ALL sub-repos — commit → push → PR → squash-merge → checkout main → pull. Use whenever the user asks to commit, ship, push…
update-feature-docs
Generate or update documentation for the current feature branch. Analyzes all changes (commits, diffs) between the feature branch and base branch, then creates or updates docs/features/ /README.md with incremental indexing based on existing feature docs. Use when documenting a feature branch, creating feature…