Install
$ agentstack add skill-initializ-forge-code-review-github ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Code Review GitHub Integration
Orchestrates GitHub PR workflows for AI code review. Provides tools to list pull requests, post inline review comments, apply labels based on review findings, and (with explicit opt-in) auto-merge clean PRs.
All GitHub API interactions go through the gh CLI. Direct HTTP requests and web searches are denied to ensure all operations are auditable and respect GitHub's rate limiting.
Authentication
export GH_TOKEN="ghp_..."
The token needs read-write access since this skill posts comments, applies labels, and can merge PRs:
| Scope (classic PAT) | Fine-grained permission | Why | |----------------------|------------------------|-----| | repo | Pull requests: Read & Write | List PRs, post review comments, merge | | repo | Contents: Read | Read PR diff and file contents | | repo | Issues: Write | Apply and remove labels | | read:org (optional) | Organization: Read | Org-level label policies |
Minimum fine-grained token permissions: pull_requests: write, contents: read, issues: write on the target repository.
For read-only review without GitHub interaction, use the code-review skill instead — it only needs read access.
Environment Variables
| Variable | Required | Description | |----------|----------|-------------| | GHTOKEN | yes | GitHub personal access token or fine-grained token | | REVIEWAUTOMERGE | no | Set to true to enable guarded auto-merge. Default: disabled | | REVIEWLABEL_PREFIX | no | Prefix for review labels (default: review/). Labels: review/approved, review/needs-changes, review/security-concern |
Tool: reviewgithublist_prs
List open pull requests for a repository, optionally filtered by author or label.
Input:
| Parameter | Type | Required | Description | |-----------|------|----------|-------------| | repo | string | yes | Repository in owner/repo format | | author | string | no | Filter by PR author username | | label | string | no | Filter by label | | limit | integer | no | Maximum PRs to return (default: 10, max: 100) |
Output: JSON array of pull requests with number, title, author, url, labels, created_at, updated_at, mergeable_state.
Detection Heuristics
The agent selects this tool when it detects:
- Requests to "list PRs", "show open pull requests", "what PRs need review"
- Requests to find PRs by a specific author or with specific labels
Tool: reviewgithubpost_comments
Post inline review comments on a GitHub pull request based on code review findings.
Input:
| Parameter | Type | Required | Description | |-----------|------|----------|-------------| | repo | string | yes | Repository in owner/repo format | | prnumber | integer | yes | Pull request number | | findings | array | yes | Array of findings from code_review_diff output | | submitreview | boolean | no | Submit as a formal review (not just individual comments). Default: true | | review_event | string | no | Review event type: COMMENT, APPROVE, REQUEST_CHANGES. Default: COMMENT |
Each finding in the array should have: file, line, severity, title, description, suggestion.
Output: JSON object with comments_posted, review_url, and any errors for comments that failed.
Detection Heuristics
The agent selects this tool when it detects:
- Requests to "post review comments", "comment on the PR", "submit review"
- After running
code_review_diff, user asks to post findings to GitHub
Comment Format
Comments are posted as inline review comments with this format:
**[severity] category: title**
description
💡 **Suggestion:** suggestion
Tool: reviewgithubapply_labels
Apply review-status labels to a pull request based on review findings.
Input:
| Parameter | Type | Required | Description | |-----------|------|----------|-------------| | repo | string | yes | Repository in owner/repo format | | prnumber | integer | yes | Pull request number | | risklevel | string | yes | Overall risk level from review: low, medium, high, critical | | hassecurityfindings | boolean | no | Whether security issues were found. Default: false |
Output: JSON object with labels_applied and labels_removed.
Label Mapping
| Risk Level | Label Applied | |------------|---------------| | low | review/approved | | medium | review/needs-changes | | high | review/needs-changes | | critical | review/security-concern |
If has_security_findings is true, review/security-concern is always applied regardless of risk level.
Previous review labels (with the configured prefix) are removed before applying new ones.
Detection Heuristics
The agent selects this tool when it detects:
- Requests to "label the PR", "apply review labels", "mark PR as approved"
- After completing a review, user asks to update PR status
Tool: reviewgithubauto_merge
Merge a pull request after verifying safety conditions. Requires explicit opt-in via REVIEW_AUTO_MERGE=true.
Input:
| Parameter | Type | Required | Description | |-----------|------|----------|-------------| | repo | string | yes | Repository in owner/repo format | | prnumber | integer | yes | Pull request number | | mergemethod | string | no | Merge method: merge, squash, rebase. Default: squash | | requirecleanreview | boolean | no | Require no error-severity findings before merging. Default: true | | review_result | object | no | Review result from code_review_diff to verify cleanliness |
Output: JSON object with merged, sha, message, or blocked_reason if merge was prevented.
Detection Heuristics
The agent selects this tool when it detects:
- Requests to "merge the PR", "auto-merge if clean"
- Requests to "merge after review passes"
Safety Guards
This tool enforces multiple safety layers:
- Env var gate:
REVIEW_AUTO_MERGEmust be explicitly set totrue. If unset or any other value, merge is blocked with a clear message. - Clean review required: By default, the PR must have no
error-severity findings. Override withrequire_clean_review: false. - CI checks: All required status checks must pass (enforced by GitHub's branch protection).
- No dismissed reviews: The tool never dismisses existing review requests or approvals.
- Merge conflicts: GitHub API rejects merges with conflicts — the tool surfaces this clearly.
Workflow: Full PR Review Cycle
A typical end-to-end review workflow using all three code-review skills:
- List PRs →
review_github_list_prsto find PRs needing review - Run review →
code_review_diffwith the PR URL to generate findings - Post comments →
review_github_post_commentsto post findings as inline comments - Apply labels →
review_github_apply_labelsto set status labels - Auto-merge (optional) →
review_github_auto_mergeif review is clean and opt-in is enabled
Safety Constraints
This skill MUST:
- Never merge without
REVIEW_AUTO_MERGE=trueexplicitly set - Never dismiss existing reviews or review requests
- Never force-push or modify PR branch contents
- Never delete branches (leave that to GitHub's auto-delete setting)
- Never bypass branch protection rules
- Never approve its own PRs (if the token belongs to the PR author)
- Post comments as the authenticated user — never impersonate
- All GitHub operations go through
ghCLI —http_requestandweb_searchtools are denied - Rate-limit awareness: back off on 403/429 responses from GitHub API
Autonomous Compatibility
This skill is designed to work in automated pipelines:
- All inputs and outputs are structured JSON
- Error states return JSON with
errorfield and descriptive messages - Idempotent: re-running label application or comment posting produces consistent results
- Labels are prefix-scoped to avoid conflicting with other label systems
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: initializ
- Source: initializ/forge
- License: Apache-2.0
- Homepage: https://go.useforge.ai/launch?ref=github
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.