一键导入
paw-review-github
Posts finalized review comments to GitHub as a pending review after critique iteration is complete.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Posts finalized review comments to GitHub as a pending review after critique iteration is complete.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Orchestrates the PAW Review workflow, coordinating activity skills to analyze PRs and generate comprehensive review feedback.
Shared git mechanics for PAW activity skills including branch naming conventions, strategy-based branching logic, and selective staging discipline.
Bootstrap skill for PAW workflow initialization. Creates WorkflowContext.md, directory structure, and git branch. Runs before workflow skill is loaded.
Workflow status activity skill for PAW workflow. Diagnoses workflow state, recommends next steps, explains PAW process, and optionally posts updates to Issues/PRs.
Pre-PR review activity skill for PAW workflow. Reviews implementation against spec before Final PR creation with configurable single-model, multi-model, or society-of-thought execution.
Implementation review activity skill for PAW workflow. Reviews implementation for quality, adds documentation, and returns structured verdict.
| name | paw-review-github |
| description | Posts finalized review comments to GitHub as a pending review after critique iteration is complete. |
Post finalized review comments to GitHub as a pending review. This skill only posts comments marked as ready, filtering out skipped comments while preserving the complete review history in ReviewComments.md.
Reference: Follow Core Review Principles from
paw-review-workflowskill.
Verify ReviewComments.md exists in .paw/reviews/<identifier>/ with:
finalized**Final**: markers**Final**: ✓ Ready for GitHub postingAlso verify:
If ReviewComments.md is not finalized or missing **Final**: markers, report blocked status—Critique Response pass must complete first.
Non-GitHub Context: If this is not a GitHub PR review (e.g., local branch diff), skip GitHub posting and provide manual posting instructions instead.
**Final**: ✓ Ready for GitHub postingRead the finalized ReviewComments.md and verify:
finalized**Final**: markersIf not finalized:
Blocked: ReviewComments.md status is not 'finalized'.
Run paw-review-feedback in Critique Response Mode first.
Identify comments to post:
Include comments where **Final**: contains:
✓ Ready for GitHub postingReady for GitHub postingExclude comments where **Final**: contains:
Skipped per critiqueSkippedBuild list of postable comments with:
**Updated Comment:** if present, otherwise original description)**Updated Suggestion:** if present, otherwise original)Use GitHub MCP tools to create pending review:
3.1 Create Pending Review:
mcp_github_pull_request_review_write(
owner: "<owner>",
repo: "<repo>",
pullNumber: <number>,
method: "create",
body: "<review-summary>\n\n---\n🐾 Review generated with [PAW Review](https://github.com/lossyrob/phased-agent-workflow)"
// Note: event omitted to create pending (draft) review
)
The review body should include a brief summary of the review (number of comments, key themes) followed by the PAW Review attribution footer.
Record the pending review ID.
3.2 Add Comments to Pending Review:
For EACH postable comment:
mcp_github_add_comment_to_pending_review(
owner: "<owner>",
repo: "<repo>",
pullNumber: <number>,
path: "<file-path>",
line: <line-number>, // or startLine/line for multi-line
body: "<comment-text-and-suggestion>",
side: "RIGHT",
subjectType: "LINE" // or "FILE" for file-level comments
)
Comment Body Construction:
**Final**: or other PAW-specific formattingExample Posted Comment:
Missing null check before accessing user.profile could cause runtime error.
```suggestion
if (user?.profile) {
return user.profile.name;
}
return 'Anonymous';
### Step 4: Update ReviewComments.md
After posting, update each posted comment in ReviewComments.md:
**Add Posted Status:**
```markdown
**Final**: ✓ Ready for GitHub posting
**Posted**: ✓ GitHub pending review (Review ID: 12345678, Comment ID: abc123)
For Skipped Comments:
**Final**: Skipped per critique - stylistic preference
**Posted**: — (not posted per critique)
Update the file header:
**Status**: Posted to GitHub pending review
**Pending Review ID**: 12345678
**Comments Posted**: 6 of 8 (2 skipped per critique)
When reviewing PRs across multiple repositories:
Detection: Multi-PR mode applies when:
.paw/reviews/PR-<number>-<repo-slug>/)related_prs entriesPer-PR Processing:
Iterate PRs: For each PR in the review set:
Cross-Reference in Comments: When posting cross-repo comments:
(See also: owner/other-repo#456 for related change)GitHub Tool Calls for Multiple PRs:
# PR 1: repo-a
mcp_github_pull_request_review_write(owner, "repo-a", 123, method="create", body="<summary>\n\n---\n🐾 Review generated with [PAW Review](https://github.com/lossyrob/phased-agent-workflow)")
mcp_github_add_comment_to_pending_review(...) # postable comments for PR-123
# PR 2: repo-b
mcp_github_pull_request_review_write(owner, "repo-b", 456, method="create", body="<summary>\n\n---\n🐾 Review generated with [PAW Review](https://github.com/lossyrob/phased-agent-workflow)")
mcp_github_add_comment_to_pending_review(...) # postable comments for PR-456
Error Handling: If pending review creation fails for one PR:
For non-GitHub workflows (local branch review):
Skip GitHub Posting:
finalized (non-GitHub)Provide Manual Posting Instructions:
Append to ReviewComments.md:
---
## Manual Posting Instructions
This review was conducted on a non-GitHub context. To post comments manually:
### Comments Ready for Posting (X total)
1. **File: auth.ts, Lines 45-50**
> Missing null check before accessing user.profile could cause runtime error.
Suggestion:
```typescript
if (user?.profile) {
return user.profile.name;
}
return 'Anonymous';
[Comment text...]
These comments were evaluated as low-value by the critique process and are not recommended for posting:
## Guardrails
**Post Only Finalized Comments:**
- NEVER post comments without `**Final**: ✓ Ready for GitHub posting`
- Comments marked Skip must NOT be posted
- Respect critique recommendations
**Pending Review Only:**
- NEVER submit the pending review automatically
- Use `method: "create"` without event parameter
- Human reviewer must explicitly submit
**No Rationale in Posted Comments:**
- Posted comments contain only description and suggestion
- Rationale, assessment, and internal markers stay in ReviewComments.md
- PAW artifacts never referenced in posted comments
**Preserve History:**
- Do not modify original comment text when adding Posted status
- Keep all history: original → assessment → updated → posted
- Skipped comments remain in artifact for documentation
**Human Control:**
- Pending review is a draft—reviewer can edit/delete before submitting
- Reviewer can manually add skipped comments if they disagree with critique
- Final submission decision rests with human reviewer
## Validation Checklist
Before completing, verify:
- [ ] ReviewComments.md was finalized (had `**Final**:` markers on all comments)
- [ ] Only comments marked "Ready for GitHub posting" were posted
- [ ] Skipped comments NOT posted to GitHub
- [ ] Pending review created (not submitted)
- [ ] All posted comments have `**Posted**:` status in ReviewComments.md
- [ ] ReviewComments.md header updated with Pending Review ID and counts
- [ ] Posted comment bodies contain only description + suggestion (no rationale)
- [ ] Multi-PR: Each PR has its own pending review
- [ ] Non-GitHub: Manual posting instructions provided
## Completion Response
**GitHub PRs (Success):**
Activity complete. Artifact updated: .paw/reviews//ReviewComments.md
GitHub Posting Summary:
Posted comments:
| Comment | GitHub ID |
|---|---|
| auth.ts L45-50 | comment-abc |
| db.ts L120-125 | comment-def |
| ... | ... |
Skipped (not posted):
NOTE: The pending review is ready for your review in GitHub. Edit or delete any comments, then submit when satisfied.
**Multi-PR (Success):**
Activity complete.
GitHub Posting Summary:
Artifacts updated:
NOTE: Review pending reviews in GitHub for each PR before submitting.
**Non-GitHub:**
Activity complete. Artifact updated: .paw/reviews//ReviewComments.md
Non-GitHub Context - Manual Posting Required:
Review the Manual Posting Instructions section to post comments to your review platform.
**Partial Failure:**
Activity complete with errors.
GitHub Posting Summary:
Partial success: 1 of 2 PRs posted. Manual posting instructions added for failed PR.