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 LandonSchropp/agent-toolkit --skill pull-request-feedbackgit clone --depth 1 https://github.com/LandonSchropp/agent-toolkitWrote 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/landonschropp/agent-toolkit/pull-request-feedback)<a href="https://agentmods.dev/skills/landonschropp/agent-toolkit/pull-request-feedback"><img src="https://agentmods.dev/badge/skills/landonschropp/agent-toolkit/pull-request-feedback/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/landonschropp/agent-toolkit/pull-request-feedback"><img src="https://agentmods.dev/badge/skills/landonschropp/agent-toolkit/pull-request-feedback.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.00062 | $0.01125 |
| Opus 5.5 | $0.00025 | $0.00450 |
| Sonnet 5.5 | $0.00012 | $0.00225 |
| Haiku 4.5 | $0.00006 | $0.00112 |
Grade A, and why
pull-request-feedback 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 21d 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 — 69 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Pull Request Feedback
Context
Resolve the pull request and repository coordinates, and read the pull request's own title and description for context before looking at any feedback:
NUMBER=$(gh pr view --json number --jq '.number')
REPO=$(gh repo view --json owner,name --jq '"\(.owner.login)/\(.name)"')
gh pr view "$NUMBER" --json title,url,body
Collect the comments
Merge inline review comments and general conversation comments into one chronological list, sorted by created_at, tagging bot authorship:
gh api "repos/$REPO/pulls/$NUMBER/comments" --paginate --jq '[.[] | select(.in_reply_to_id == null) | {kind: "review", id, path, line, body, bot: (.user.type == "Bot"), url: .html_url, created_at}]'
gh api "repos/$REPO/issues/$NUMBER/comments" --paginate --jq '[.[] | {kind: "general", id, body, bot: (.user.type == "Bot"), url: .html_url, created_at}]'
Drop a bot: true comment only when it's purely informational — a status postback, linkback, or automated report with nothing to act on (a Linear linkback, a bundle-size report). Judge this from the body. Keep a bot comment that leaves substantive review feedback, such as an automated review tool flagging a real issue in the code — walk it like any other comment.
Summary
Before walking anything, print the review status and the comment count that survived the bot filter above:
gh pr view "$NUMBER" --json latestReviews --jq '.latestReviews[] | "\(.author.login): \(.state)"'
Format it like ✅ 2 approved · ❌ 1 changes requested · 💬 9 comments: ✅ per approving reviewer, ❌ per reviewer who requested changes, 💬 for the total comment count (inline plus general, after dropping informational bot comments).
Walk the comments
For each comment, in order:
- Print
Comment <index> / <total>:, then the body as a blockquote, verbatim — no summarizing or paraphrasing. - Discuss what to do about it and make any needed changes. Changes follow the normal commit-and-review flow already in effect for this session.
- Ask whether to reply, react, or move on:
- Reply has any text in it (even alongside an emoji): post it as a reply, not a reaction.
- Review comment:
gh api "repos/$REPO/pulls/$NUMBER/comments/<id>/replies" -f body="..." - General comment:
gh pr comment "$NUMBER" --body "..."
- Review comment:
- Reply is only an emoji: post it as a reaction. Map to GitHub's fixed reaction set: 👍 →
+1, 👎 →-1, 😄/😆/😂 →laugh, 😕/😐 →confused, ❤️/😍 →heart, 🎉/🥳 →hooray, 🚀 →rocket, 👀 →eyes. If it doesn't map, say so and ask for a supported emoji or a text reply instead.- Review comment:
gh api "repos/$REPO/pulls/comments/<id>/reactions" -f content="..." - General comment:
gh api "repos/$REPO/issues/comments/<id>/reactions" -f content="..."
- Review comment:
- Move on: no action, continue to the next comment.
- Reply has any text in it (even alongside an emoji): post it as a reply, not a reaction.
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.
- 21d ago First seen · 69 lines · 62 tokens per session scan A 6f8115b33456
pull-request-feedback is a skill published in the GitHub repository LandonSchropp/agent-toolkit (3 stars, last pushed today), licensed MIT. It adds 62 tokens to every session and 1,125 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-25.
Other skills, from other repositories
pr-review-comments
Posts review findings from a JSON file as inline comments on a GitHub Pull Request, attaching each comment to its file and line. Use when you have a list/JSON of review findings (each with a file path, line number, and a message such as summary/failurescenario) and want them published on a PR as inline review…
create-pr
Create pull requests following Sentry conventions. Use when opening PRs, writing PR descriptions, or preparing changes for review. Follows Sentry's code review guidelines.
codex-review
Professional code review with auto CHANGELOG generation, integrated with Codex AI.
create-pull-request
Create and manage pull requests using GitHub CLI. Covers branch preparation, writing PR titles and descriptions, creating PRs, handling review feedback, and merge/cleanup workflows. Use when proposing changes from a feature or fix branch for review, merging completed work into the main branch, requesting code review…
review-pr
Forensic, stage-aware pull request review. Reconstructs the commit narrative, tests architectural premises against project reality, detects over-engineering, and produces a ready-to-post review comment. Use when the user says "review PR", "review this PR", "review PR #N", "is this PR ready to merge", "review the…
audit-pr
Audit a whole PR against the delivery contract and return MERGE-READY or evidenced blockers with the full URL. Consumes the current review-change REVIEW-PASS receipt instead of re-running review axes; posts a SHA-bound ready comment; never edits or merges. Triggers: "audit-pr", "is this PR ready", "merge gate".