inline-pr-comments
Skill76 starsChanged 20 days agoApache-2.0View on GitHub
Use this skill to submit code review feedback as a single consolidated GitHub review containing both the summary body and all inline comments. Submit one consolidated review per run using the GitHub API. Do NOT post inline comments individually. Each run produces a new review — nothing is overwritten. Before reviewing, read existing reviews and comments on the PR for context: Use this context to: Re-fetch immediately before submitting. Other reviewers may be reviewing concurrently. Critically, the GitHub API does…
We split this skill into the rules it gives an agent
7 rules. About 0 are common, 6 are distinctive, and 1 is very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈6
Distinctive · estimate
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 10
Use this skill to submit code review feedback as a single consolidated GitHub review containing both the summary body and all inline …
- Distinctive: line 14
After completing a code review (use with /code-review, /security-review, /tob-review)
- Distinctive: line 15
When you have specific line-by-line feedback to deliver
- Distinctive: line 23
Before reviewing, read existing reviews and comments on the PR for context:
- Distinctive: line 36
Use this context to:
- Very specific: line 54
Write a JSON file to /tmp/review.json:
- Distinctive: line 98
If unsure whether a line is in the diff, put the finding in the summary body instead
≈ “Common” is an estimate: at least 1 in 5 of the 308,232 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Consolidated PR Review Skill
Use this skill to submit code review feedback as a single consolidated GitHub review containing both the summary body and all inline comments.
When to Use
- After completing a code review (use with /code-review, /security-review, /tob-review)
- When you have specific line-by-line feedback to deliver
Instructions
Submit one consolidated review per run using the GitHub API. Do NOT post inline comments individually. Each run produces a new review — nothing is overwritten.
Step 1: Fetch Prior Review Context
Before reviewing, read existing reviews and comments on the PR for context:
# Fetch existing reviews (summaries)
gh api --paginate "repos/$GITHUB_REPOSITORY/pulls/$PR_NUMBER/reviews" --jq '.[] | {user: .user.login, state: .state, body: .body}'
# Fetch inline review comments
gh api --paginate "repos/$GITHUB_REPOSITORY/pulls/$PR_NUMBER/comments" --jq '.[] | {user: .user.login, path: .path, line: .line, body: .body}'
# Fetch general PR discussion comments
gh api --paginate "repos/$GITHUB_REPOSITORY/issues/$PR_NUMBER/comments" --jq '.[] | {user: .user.login, body: .body}'Use this context to:
- Skip issues already raised — don't re-flag something a prior review already pointed out
- Reference prior discussions — e.g. "As noted in the previous review, ..."
- Flag unresolved issues — if a prior review raised something that still isn't fixed, note it briefly (e.g. "Still unresolved from prior review: ...")
- Avoid contradictions — don't suggest the opposite of what a human reviewer requested
Re-fetch immediately before submitting. Other reviewers may be reviewing concurrently. Critically, the GitHub API does not expose a reviewer's draft/pending comments until they submit — so you can post a review seconds before a concurrent reviewer submits theirs and never have seen their notes. Re-run the fetch right before Step 4, and state the HEAD commit your review is based on in the body (e.g. "Reviewed at <sha>") so readers know the snapshot.
Step 2: Collect All Findings
Complete the full review. Collect:
- Summary — Overall assessment, architecture concerns, non-diff observations
- Inline comments — Specific issues on changed lines (path, line, body)
Step 3: Build Review JSON
Write a JSON file to /tmp/review.json:
{
"body": "## Review Summary\n\nOverall assessment here.\n\n## Observations Outside This PR\n- `file:line`: description",
"event": "COMMENT",
"comments": [
{
"path": "src/file.ts",
"line": 42,
"body": "Issue description here"
},
{
"path": "src/other.ts",
"start_line": 10,
"line": 15,
"body": "Multi-line comment"
}
]
}Fields:
body— Markdown review summary (required)event— Always"COMMENT"(never APPROVE or REQUEST_CHANGES)comments— Array of inline comment objects (can be empty if no inline findings)path— File path relative to repo rootline— Line number in the NEW version of the filestart_line+line— For multi-line commentsbody— Markdown-formatted feedback
Step 4: Submit the Review
gh api "repos/$GITHUB_REPOSITORY/pulls/$PR_NUMBER/reviews" --input /tmp/review.jsonThe GITHUB_REPOSITORY and PR_NUMBER environment variables are set by the CI workflow.
Limitations
- Inline comments can only target lines in the diff (changed/added lines)
- Comments targeting unchanged lines will cause the API call to fail
- If unsure whether a line is in the diff, put the finding in the summary body instead
Handling Non-Diff Findings
Issues in code NOT changed by the PR go in the review body under a dedicated section:
## Observations Outside This PR
- `src/utils/foo.ts:142`: Pre-existing null check missing
- `src/core/bar.ts:78-82`: Similar pattern to line 45 issueFeedback Guidelines
| Feedback Type | In Diff? | Where to Put It |
| Specific code issue | Yes | comments array entry for that line |
| Pattern repeated across files | Yes | First occurrence in comments + note others in body |
| Related issue found | No | body under "Observations Outside This PR" |
| Pre-existing bug discovered | No | body (consider separate issue if critical) |
| Overall architecture concern | N/A | body |
Be concise. Group minor style issues together. Never use APPROVE or REQUEST_CHANGES.
In this repository49 other files it gives its agents.
- AGENTS.mdAGENTS.md
- add-registry-changesetSkill
- build-docker-imageSkill
- classify-onchain-ownerSkill
- code-reviewSkill
- debug-messageSkill
- debug-rpc-providerSkill
- debug-validator-checkpoint-inconsistencySkill
- denylist-stuck-messagesSkill
- fetch-linear-ticketSkill
- fetch-safe-tx-batchSkill
- find-docker-imageSkill
- fix-merkle-root-mismatchSkill
- fix-rpc-urlsSkill
- gcp-logsSkill
- hyperlane-message-utilsSkill
- hyperlane-utilsSkill
- investigate-merkle-root-mismatchSkill
- investigate-stuck-messagesSkill
- registry-yaml-sort-policySkill
- security-reviewSkill
- self-relay-hyperlane-messageSkill
- set-moonpay-standing-quotesSkill
- start-http-registrySkill
- stop-http-registrySkill
- svm-warp-alt-manageSkill
- svm-warp-program-upgradeSkill
- tob-reviewSkill
- verify-warp-contractsSkill
- warp-balancesSkill
- warp-deploy-fund-deployerSkill
- warp-deploy-init-routeSkill
- warp-deploy-nexusSkill
- warp-deploy-register-routeSkill
- warp-deploy-select-keysSkill
- warp-deploy-send-testSkill
- warp-deploy-update-ownersSkill
- warp-deploy-validate-ownersSkill
- warp-forkSkill
- warp-key-value-expansionSkill
- warp-manage-offchain-quotesSkill
- warp-route-checkSkill
- warp-run-logSkill
- warp-simulate-svm-txsSkill
- warp-update-extendSkill
- warp-update-proposeSkill
- warp-update-resolve-artifactsSkill
- warp-updateSkill
- warp-verify-onchain-configSkill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

