
Swarm PR
FreeAutomate multi-agent code review and integration workflows.
Free · Opens the source repo
What Swarm PR does
Swarm PR is an agent skill designed to enhance the management of pull requests (PRs) through intelligent coordination of multiple AI agents. By integrating directly with GitHub, it allows developers to create and manage AI swarms that can handle code reviews, validation, and the overall PR lifecycle. This skill is particularly useful for teams looking to streamline their development workflows and ensure efficient code integration processes.
The core functionality of Swarm PR revolves around its ability to create swarms based on PR context, including descriptions, labels, and author information. Developers can easily initiate swarms using commands in PR comments, enabling a seamless interaction with the swarm agents. The skill also supports automated workflows that trigger based on PR events, such as opening or labeling, which helps maintain a consistent and responsive development environment.
Additionally, Swarm PR includes features for analyzing PR complexity and automatically assigning the optimal agent topology based on the size of the PR. This means that small PRs can utilize a ring topology, while larger ones might require a more complex hierarchical structure. The integration of PR label mapping allows for automatic assignment of agents based on the nature of the PR, further enhancing the efficiency of the review process.
For teams that require robust coordination across multiple PRs, Swarm PR offers multi-PR swarm coordination capabilities, enabling related PRs to be handled simultaneously. This is particularly beneficial for large projects with interdependent changes, ensuring that all aspects of the code are reviewed and integrated cohesively.
When to use it
Use Swarm PR when managing multiple pull requests that require coordinated reviews and integration, especially in larger teams or projects.
When not to use it
This skill may not be suitable for small projects or teams that prefer a more manual approach to code reviews and integration.
What you can build with it
Creating a Swarm from a PR
Easily initiate a swarm by extracting PR details directly from GitHub, allowing for quick setup of agent coordination.
Automating Code Reviews
Set up automated workflows that trigger agent actions based on PR events, ensuring timely and efficient code reviews.
Managing Multiple Related PRs
Coordinate swarms across multiple PRs to handle dependencies and ensure cohesive integration across related changes.
How to install Swarm PR
View source1. Install with the skills CLI
npx skills add ruvnet/ruflo/agent-swarm-pr --agent claude-code2. Or install it manually
Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.
Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs
Inside SKILL.md
Written by ruvnetname: swarm-pr description: Pull request swarm management agent that coordinates multi-agent code review, validation, and integration workflows with automated PR lifecycle management type: development color: "#4ECDC4" tools:
- mcp__github__get_pull_request
- mcp__github__create_pull_request
- mcp__github__update_pull_request
- mcp__github__list_pull_requests
- mcp__github__create_pr_comment
- mcp__github__get_pr_diff
- mcp__github__merge_pull_request
- mcp__claude-flow__swarm_init
- mcp__claude-flow__agent_spawn
- mcp__claude-flow__task_orchestrate
- mcp__claude-flow__memory_usage
- mcp__claude-flow__coordination_sync
- TodoWrite
- TodoRead
- Bash
- Grep
- Read
- Write
- Edit
hooks:
pre:
- "Initialize PR-specific swarm with diff analysis and impact assessment"
- "Analyze PR complexity and assign optimal agent topology"
- "Store PR metadata and diff context in swarm memory" post:
- "Update PR with comprehensive swarm review results"
- "Coordinate merge decisions based on swarm analysis"
- "Generate PR completion metrics and learnings"
Swarm PR - Managing Swarms through Pull Requests
Overview
Create and manage AI swarms directly from GitHub Pull Requests, enabling seamless integration with your development workflow through intelligent multi-agent coordination.
Core Features
1. PR-Based Swarm Creation
# Create swarm from PR description using gh CLI
gh pr view 123 --json body,title,labels,files | npx ruv-swarm swarm create-from-pr
# Auto-spawn agents based on PR labels
gh pr view 123 --json labels | npx ruv-swarm swarm auto-spawn
# Create swarm with PR context
gh pr view 123 --json body,labels,author,assignees | \
npx ruv-swarm swarm init --from-pr-data
2. PR Comment Commands
Execute swarm commands via PR comments:
<!-- In PR comment -->
$swarm init mesh 6
$swarm spawn coder "Implement authentication"
$swarm spawn tester "Write unit tests"
$swarm status
3. Automated PR Workflows
# .github$workflows$swarm-pr.yml
name: Swarm PR Handler
on:
pull_request:
types: [opened, labeled]
issue_comment:
types: [created]
jobs:
swarm-handler:
runs-on: ubuntu-latest
steps:
- uses: actions$checkout@v3
- name: Handle Swarm Command
run: |
if [[ "${{ github.event.comment.body }}" == $swarm* ]]; then
npx ruv-swarm github handle-comment \
--pr ${{ github.event.pull_request.number }} \
--comment "${{ github.event.comment.body }}"
fi
PR Label Integration
Automatic Agent Assignment
Map PR labels to agent types:
{
"label-mapping": {
"bug": ["debugger", "tester"],
"feature": ["architect", "coder", "tester"],
"refactor": ["analyst", "coder"],
"docs": ["researcher", "writer"],
"performance": ["analyst", "optimizer"]
}
}
Label-Based Topology
# Small PR (< 100 lines): ring topology
# Medium PR (100-500 lines): mesh topology
# Large PR (> 500 lines): hierarchical topology
npx ruv-swarm github pr-topology --pr 123
PR Swarm Commands
Initialize from PR
# Create swarm with PR context using gh CLI
PR_DIFF=$(gh pr diff 123)
PR_INFO=$(gh pr view 123 --json title,body,labels,files,reviews)
npx ruv-swarm github pr-init 123 \
--auto-agents \
--pr-data "$PR_INFO" \
--diff "$PR_DIFF" \
--analyze-impact
Progress Updates
# Post swarm progress to PR using gh CLI
PROGRESS=$(npx ruv-swarm github pr-progress 123 --format markdown)
gh pr comment 123 --body "$PROGRESS"
# Update PR labels based on progress
if [[ $(echo "$PROGRESS" | grep -o '[0-9]\+%' | sed 's/%//') -gt 90 ]]; then
gh pr edit 123 --add-label "ready-for-review"
fi
Code Review Integration
# Create review agents with gh CLI integration
PR_FILES=$(gh pr view 123 --json files --jq '.files[].path')
# Run swarm review
REVIEW_RESULTS=$(npx ruv-swarm github pr-review 123 \
--agents "security,performance,style" \
--files "$PR_FILES")
# Post review comments using gh CLI
echo "$REVIEW_RESULTS" | jq -r '.comments[]' | while read -r comment; do
FILE=$(echo "$comment" | jq -r '.file')
LINE=$(echo "$comment" | jq -r '.line')
BODY=$(echo "$comment" | jq -r '.body')
gh pr review 123 --comment --body "$BODY"
done
Advanced Features
1. Multi-PR Swarm Coordination
# Coordinate swarms across related PRs
npx ruv-swarm github multi-pr \
--prs "123,124,125" \
--strategy "parallel" \
--share-memory
2. PR Dependency Analysis
# Analyze PR dependencies
npx ruv-swarm github pr-deps 123 \
--spawn-agents \
--resolve-conflicts
3. Automated PR Fixes
# Auto-fix PR issues
npx ruv-swarm github pr-fix 123 \
--issues "lint,test-failures" \
--commit-fixes
Best Practices
1. PR Templates
<!-- .github$pull_request_template.md -->
## Swarm Configuration
- Topology: [mesh$hierarchical$ring$star]
- Max Agents: [number]
- Auto-spawn: [yes$no]
- Priority: [high$medium$low]
## Tasks for Swarm
- [ ] Task 1 description
- [ ] Task 2 description
2. Status Checks
# Require swarm completion before merge
required_status_checks:
contexts:
- "swarm$tasks-complete"
- "swarm$tests-pass"
- "swarm$review-approved"
3. PR Merge Automation
# Auto-merge when swarm completes using gh CLI
# Check swarm completion status
SWARM_STATUS=$(npx ruv-swarm github pr-status 123)
if [[ "$SWARM_STATUS" == "complete" ]]; then
# Check review requirements
REVIEWS=$(gh pr view 123 --json reviews --jq '.reviews | length')
if [[ $REVIEWS -ge 2 ]]; then
# Enable auto-merge
gh pr merge 123 --auto --squash
fi
fi
Webhook Integration
Setup Webhook Handler
// webhook-handler.js
const { createServer } = require('http');
const { execSync } = require('child_process');
createServer((req, res) => {
if (req.url === '$github-webhook') {
const event = JSON.parse(body);
if (event.action === 'opened' && event.pull_request) {
execSync(`npx ruv-swarm github pr-init ${event.pull_request.number}`);
}
res.writeHead(200);
res.end('OK');
}
}).listen(3000);
Examples
Feature Development PR
# PR #456: Add user authentication
npx ruv-swarm github pr-init 456 \
--topology hierarchical \
--agents "architect,coder,tester,security" \
--auto-assign-tasks
Bug Fix PR
# PR #789: Fix memory leak
npx ruv-swarm github pr-init 789 \
--topology mesh \
--agents "debugger,analyst,tester" \
--priority high
Documentation PR
# PR #321: Update API docs
npx ruv-swarm github pr-init 321 \
--topology ring \
--agents "researcher,writer,reviewer" \
--validate-links
Metrics & Reporting
PR Swarm Analytics
# Generate PR swarm report
npx ruv-swarm github pr-report 123 \
--metrics "completion-time,agent-efficiency,token-usage" \
--format markdown
Dashboard Integration
# Export to GitHub Insights
npx ruv-swarm github export-metrics \
--pr 123 \
--to-insights
Security Considerations
- Token Permissions: Ensure GitHub tokens have appropriate scopes
- Command Validation: Validate all PR comments before execution
- Rate Limiting: Implement rate limits for PR operations
- Audit Trail: Log all swarm operations for compliance
Integration with Claude Code
When using with Claude Code:
- Claude Code reads PR diff and context
- Swarm coordinates approach based on PR type
- Agents work in parallel on different aspects
- Progress updates posted to PR automatically
- Final review performed before marking ready
Advanced Swarm PR Coordination
Multi-Agent PR Analysis
# Initialize PR-specific swarm with intelligent topology selection
mcp__claude-flow__swarm_init { topology: "mesh", maxAgents: 8 }
mcp__claude-flow__agent_spawn { type: "coordinator", name: "PR Coordinator" }
mcp__claude-flow__agent_spawn { type: "reviewer", name: "Code Reviewer" }
mcp__claude-flow__agent_spawn { type: "tester", name: "Test Engineer" }
mcp__claude-flow__agent_spawn { type: "analyst", name: "Impact Analyzer" }
mcp__claude-flow__agent_spawn { type: "optimizer", name: "Performance Optimizer" }
# Store PR context for swarm coordination
mcp__claude-flow__memory_usage {
action: "store",
key: "pr/#{pr_number}$analysis",
value: {
diff: "pr_diff_content",
files_changed: ["file1.js", "file2.py"],
complexity_score: 8.5,
risk_assessment: "medium"
}
}
# Orchestrate comprehensive PR workflow
mcp__claude-flow__task_orchestrate {
task: "Execute multi-agent PR review and validation workflow",
strategy: "parallel",
priority: "high",
dependencies: ["diff_analysis", "test_validation", "security_review"]
}
Swarm-Coordinated PR Lifecycle
// Pre-hook: PR Initialization and Swarm Setup
const prPreHook = async (prData) => {
// Analyze PR complexity for optimal swarm configuration
const complexity = await analyzePRComplexity(prData);
const topology = complexity > 7 ? "hierarchical" : "mesh";
// Initialize swarm with PR-specific configuration
await mcp__claude_flow__swarm_init({ topology, maxAgents: 8 });
// Store comprehensive PR context
await mcp__claude_flow__memory_usage({
action: "store",
key: `pr/${prData.number}$context`,
value: {
pr: prData,
complexity,
agents_assigned: await getOptimalAgents(prData),
timeline: generateTimeline(prData)
}
});
// Coordinate initial agent synchronization
await mcp__claude_flow__coordination_sync({ swarmId: "current" });
};
// Post-hook: PR Completion and Metrics
const prPostHook = async (results) => {
// Generate comprehensive PR completion report
const report = await generatePRReport(results);
// Update PR with final swarm analysis
await updatePRWithResults(report);
// Store completion metrics for future optimization
await mcp__claude_flow__memory_usage({
action: "store",
key: `pr/${results.number}$completion`,
value: {
completion_time: results.duration,
agent_efficiency: results.agentMetrics,
quality_score: results.qualityAssessment,
lessons_learned: results.insights
}
});
};
Intelligent PR Merge Coordination
# Coordinate merge decision with swarm consensus
mcp__claude-flow__coordination_sync { swarmId: "pr-review-swarm" }
# Analyze merge readiness with multiple agents
mcp__claude-flow__task_orchestrate {
task: "Evaluate PR merge readiness with comprehensive validation",
strategy: "sequential",
priority: "critical"
}
# Store merge decision context
mcp__claude-flow__memory_usage {
action: "store",
key: "pr$merge_decisions/#{pr_number}",
value: {
ready_to_merge: true,
validation_passed: true,
agent_consensus: "approved",
final_review_score: 9.2
}
}
See also: swarm-issue.md, sync-coordinator.md, workflow-automation.md
Frequently asked questions about Swarm PR
Similar skills
Quality Playbook Generator
Run comprehensive quality audits on any codebase.
PR Draft Summary
Automate PR summary generation for openai-agents-python.
Final Release Review
Streamline your release candidate audits with ease.
Unit Test Vue Pinia
Efficiently write and review unit tests for Vue 3 applications.
Slang Shader Expert
Optimize and integrate Slang shaders with ease.
Telemetry Standards
Ensure consistent event tracking in Supabase Studio.
