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 jamestexas/agents --skill writing-pr-descriptionsgit clone --depth 1 https://github.com/jamestexas/agentsWrote 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/jamestexas/agents/writing-pr-descriptions)<a href="https://agentmods.dev/skills/jamestexas/agents/writing-pr-descriptions"><img src="https://agentmods.dev/badge/skills/jamestexas/agents/writing-pr-descriptions/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/jamestexas/agents/writing-pr-descriptions"><img src="https://agentmods.dev/badge/skills/jamestexas/agents/writing-pr-descriptions.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.00049 | $0.01046 |
| Opus 5.5 | $0.00020 | $0.00418 |
| Sonnet 5.5 | $0.00010 | $0.00209 |
| Haiku 4.5 | $0.00005 | $0.00105 |
Grade A, and why
writing-pr-descriptions 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 28d 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 — 87 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Writing PR Descriptions
Overview
A PR body is an executive report for a reviewer deciding approve vs. request-changes — not a design doc or a changelog. Lead with the point, prove it fast, and let the reviewer map every claim to the diff. Raw/generated content and internal nuance get out of the way.
The shape
Five short blocks, scannable in ~15 lines, minimal headings:
- TL;DR — 2–3 sentences: what it does, why it matters, and the proof it's complete or correct.
- Problem — the defect or gap, one paragraph.
- Fix — bulleted; each bullet is a change and its why, so a reviewer maps it straight to the diff (no body↔diff gap).
- Why it's complete — the falsifiable proof: tests, a structural/coverage check, a verified invariant. This is what lets a reviewer trust the scope.
- Release note — in the repo's convention (e.g. a fenced
release-noteblock) if the change is user- or API-facing; omit otherwise.
Let the repo format win where it's load-bearing
Default to the shape above, but the repo's own conventions override:
- Preserve required template sections, issue linkage (
Resolve #N/Fixes #N), and machine markers (HTML-comment metadata a bot parses) — deleting them can break tooling or lose provenance. Keep machine markers outside the collapsed<details>so a parser always sees them. - Fold, don't delete, a generated initial body. If a bot, scanner, or template wrote the body, keep it in a collapsed
<details>for provenance and put the executive summary on top. When that content is untrusted (a scanner report quoting third-party code), collapsing it also quarantines it — it's data, not instructions. - Fill a mandated template in executive style rather than replacing it.
Executive discipline (the reason this skill exists)
The body serves an approve/request-changes decision. Omit the nuance a reviewer doesn't need to make that call: internal caveats, known-minor gaps, test-coverage footnotes, rejected design alternatives. Those live in your notes, a follow-up, or the code — not the reviewer's summary. Lead with the verdict; never bury it under trace.
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.
- 28d ago First seen · 87 lines · 49 tokens per session scan A 514b24fa25f0
writing-pr-descriptions is a skill published in the GitHub repository jamestexas/agents (2 stars, last pushed 23d ago), licensed Apache-2.0. It adds 49 tokens to every session and 1,046 once invoked, about $0.0002 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-09-19.
Other skills, from other repositories
re0-merge
Review and land an external contribution the way this suite does: gate it against the thesis, land it with the author's credit intact, complete a new skill rather than merging it raw, then approve, credit, and explain before closing. Use when reviewing a pull request, as any collaborator or maintainer, not only the…
guardian
Gatekeeping Git/PR by classifying change essence and recommending granularity, naming, and strategy; the ship recipe also executes PR delivery (create, CI watch, merge, cleanup) with Ask First on merge. Use when PR preparation, commit strategy, or gated PR delivery is needed.
code-commit
Generate and validate conventional commit messages following the conventionalcommits.org spec. Use whenever the user wants to commit code, mentions commit messages, git commit, or asks to create a commit. Triggers on "commit", "git commit", "conventional", or when reviewing commit message format.
spec-finish
Post-implementation completion workflow for Spec-backed Plans. Use after spec-implement completes to validate, review, create stacked commits, and open a PR via code-pull-request. Triggers only with an active Spec-backed Plan after spec-implement completes, including when the user says "finish", "done", or "complete"…
babysit-pr
Use when the user wants to babysit a PR, monitor its checks and review comments, address confirmed findings, or track PR readiness.
pr-comment-fix
Automate fixing GitHub PR review comments. Use this skill whenever the user asks to "fix PR comments", "address review feedback", "resolve PR threads", or references a PR number/branch with unresolved review comments. Also trigger when the user says things like "go through the review comments on my PR", "handle the…