github-multi-repo
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseGitHub Multi-Repository Coordination Skill
GitHub 多仓库协调Skill
Overview
概述
Advanced multi-repository coordination system that combines swarm intelligence, package synchronization, and repository architecture optimization. This skill enables organization-wide automation, cross-project collaboration, and scalable repository management.
结合Swarm智能、包同步与仓库架构优化的高级多仓库协调系统。该Skill支持组织级自动化、跨项目协作以及可扩展的仓库管理。
Core Capabilities
核心功能
🔄 Multi-Repository Swarm Coordination
🔄 多仓库Swarm协调
Cross-repository AI swarm orchestration for distributed development workflows.
用于分布式开发工作流的跨仓库AI Swarm编排。
📦 Package Synchronization
📦 包同步
Intelligent dependency resolution and version alignment across multiple packages.
跨多个包的智能依赖解析与版本对齐。
🏗️ Repository Architecture
🏗️ 仓库架构
Structure optimization and template management for scalable projects.
面向可扩展项目的结构优化与模板管理。
🔗 Integration Management
🔗 集成管理
Cross-package integration testing and deployment coordination.
跨包集成测试与部署协调。
Quick Start
快速开始
Initialize Multi-Repo Coordination
初始化多仓库协调
bash
undefinedbash
undefinedBasic swarm initialization
Basic swarm initialization
npx claude-flow skill run github-multi-repo init
--repos "org$frontend,org$backend,org$shared"
--topology hierarchical
--repos "org$frontend,org$backend,org$shared"
--topology hierarchical
npx claude-flow skill run github-multi-repo init
--repos "org$frontend,org$backend,org$shared"
--topology hierarchical
--repos "org$frontend,org$backend,org$shared"
--topology hierarchical
Advanced initialization with synchronization
Advanced initialization with synchronization
npx claude-flow skill run github-multi-repo init
--repos "org$frontend,org$backend,org$shared"
--topology mesh
--shared-memory
--sync-strategy eventual
--repos "org$frontend,org$backend,org$shared"
--topology mesh
--shared-memory
--sync-strategy eventual
undefinednpx claude-flow skill run github-multi-repo init
--repos "org$frontend,org$backend,org$shared"
--topology mesh
--shared-memory
--sync-strategy eventual
--repos "org$frontend,org$backend,org$shared"
--topology mesh
--shared-memory
--sync-strategy eventual
undefinedSynchronize Packages
同步包
bash
undefinedbash
undefinedSynchronize package versions and dependencies
Synchronize package versions and dependencies
npx claude-flow skill run github-multi-repo sync
--packages "claude-code-flow,ruv-swarm"
--align-versions
--update-docs
--packages "claude-code-flow,ruv-swarm"
--align-versions
--update-docs
undefinednpx claude-flow skill run github-multi-repo sync
--packages "claude-code-flow,ruv-swarm"
--align-versions
--update-docs
--packages "claude-code-flow,ruv-swarm"
--align-versions
--update-docs
undefinedOptimize Architecture
优化架构
bash
undefinedbash
undefinedAnalyze and optimize repository structure
Analyze and optimize repository structure
npx claude-flow skill run github-multi-repo optimize
--analyze-structure
--suggest-improvements
--create-templates
--analyze-structure
--suggest-improvements
--create-templates
undefinednpx claude-flow skill run github-multi-repo optimize
--analyze-structure
--suggest-improvements
--create-templates
--analyze-structure
--suggest-improvements
--create-templates
undefinedFeatures
功能特性
1. Cross-Repository Swarm Orchestration
1. 跨仓库Swarm编排
Repository Discovery
仓库发现
javascript
// Auto-discover related repositories with gh CLI
const REPOS = Bash(`gh repo list my-organization --limit 100 \
--json name,description,languages,topics \
--jq '.[] | select(.languages | keys | contains(["TypeScript"]))'`)
// Analyze repository dependencies
const DEPS = Bash(`gh repo list my-organization --json name | \
jq -r '.[].name' | while read -r repo; do
gh api repos$my-organization/$repo$contents$package.json \
--jq '.content' 2>$dev$null | base64 -d | jq '{name, dependencies}'
done | jq -s '.'`)
// Initialize swarm with discovered repositories
mcp__claude-flow__swarm_init({
topology: "hierarchical",
maxAgents: 8,
metadata: { repos: REPOS, dependencies: DEPS }
})javascript
// Auto-discover related repositories with gh CLI
const REPOS = Bash(`gh repo list my-organization --limit 100 \
--json name,description,languages,topics \
--jq '.[] | select(.languages | keys | contains(["TypeScript"]))'`)
// Analyze repository dependencies
const DEPS = Bash(`gh repo list my-organization --json name | \
jq -r '.[].name' | while read -r repo; do
gh api repos$my-organization/$repo$contents$package.json \
--jq '.content' 2>$dev$null | base64 -d | jq '{name, dependencies}'
done | jq -s '.'`)
// Initialize swarm with discovered repositories
mcp__claude-flow__swarm_init({
topology: "hierarchical",
maxAgents: 8,
metadata: { repos: REPOS, dependencies: DEPS }
})Synchronized Operations
同步操作
javascript
// Execute synchronized changes across repositories
[Parallel Multi-Repo Operations]:
// Spawn coordination agents
Task("Repository Coordinator", "Coordinate changes across all repositories", "coordinator")
Task("Dependency Analyzer", "Analyze cross-repo dependencies", "analyst")
Task("Integration Tester", "Validate cross-repo changes", "tester")
// Get matching repositories
Bash(`gh repo list org --limit 100 --json name \
--jq '.[] | select(.name | test("-service$")) | .name' > $tmp$repos.txt`)
// Execute task across repositories
Bash(`cat $tmp$repos.txt | while read -r repo; do
gh repo clone org/$repo /tmp/$repo -- --depth=1
cd /tmp/$repo
# Apply changes
npm update
npm test
# Create PR if successful
if [ $? -eq 0 ]; then
git checkout -b update-dependencies-$(date +%Y%m%d)
git add -A
git commit -m "chore: Update dependencies"
git push origin HEAD
gh pr create --title "Update dependencies" --body "Automated update" --label "dependencies"
fi
done`)
// Track all operations
TodoWrite { todos: [
{ id: "discover", content: "Discover all service repositories", status: "completed" },
{ id: "update", content: "Update dependencies", status: "completed" },
{ id: "test", content: "Run integration tests", status: "in_progress" },
{ id: "pr", content: "Create pull requests", status: "pending" }
]}javascript
// Execute synchronized changes across repositories
[Parallel Multi-Repo Operations]:
// Spawn coordination agents
Task("Repository Coordinator", "Coordinate changes across all repositories", "coordinator")
Task("Dependency Analyzer", "Analyze cross-repo dependencies", "analyst")
Task("Integration Tester", "Validate cross-repo changes", "tester")
// Get matching repositories
Bash(`gh repo list org --limit 100 --json name \
--jq '.[] | select(.name | test("-service$")) | .name' > $tmp$repos.txt`)
// Execute task across repositories
Bash(`cat $tmp$repos.txt | while read -r repo; do
gh repo clone org/$repo /tmp/$repo -- --depth=1
cd /tmp/$repo
# Apply changes
npm update
npm test
# Create PR if successful
if [ $? -eq 0 ]; then
git checkout -b update-dependencies-$(date +%Y%m%d)
git add -A
git commit -m "chore: Update dependencies"
git push origin HEAD
gh pr create --title "Update dependencies" --body "Automated update" --label "dependencies"
fi
done`)
// Track all operations
TodoWrite { todos: [
{ id: "discover", content: "Discover all service repositories", status: "completed" },
{ id: "update", content: "Update dependencies", status: "completed" },
{ id: "test", content: "Run integration tests", status: "in_progress" },
{ id: "pr", content: "Create pull requests", status: "pending" }
]}2. Package Synchronization
2. 包同步
Version Alignment
版本对齐
javascript
// Synchronize package dependencies and versions
[Complete Package Sync]:
// Initialize sync swarm
mcp__claude-flow__swarm_init({ topology: "mesh", maxAgents: 5 })
// Spawn sync agents
Task("Sync Coordinator", "Coordinate version alignment", "coordinator")
Task("Dependency Analyzer", "Analyze dependencies", "analyst")
Task("Integration Tester", "Validate synchronization", "tester")
// Read package states
Read("$workspaces$ruv-FANN$claude-code-flow$claude-code-flow$package.json")
Read("$workspaces$ruv-FANN$ruv-swarm$npm$package.json")
// Align versions using gh CLI
Bash(`gh api repos/:owner/:repo$git$refs \
-f ref='refs$heads$sync$package-alignment' \
-f sha=$(gh api repos/:owner/:repo$git$refs$heads$main --jq '.object.sha')`)
// Update package.json files
Bash(`gh api repos/:owner/:repo$contents$package.json \
--method PUT \
-f message="feat: Align Node.js version requirements" \
-f branch="sync$package-alignment" \
-f content="$(cat aligned-package.json | base64)"`)
// Store sync state
mcp__claude-flow__memory_usage({
action: "store",
key: "sync$packages$status",
value: {
timestamp: Date.now(),
packages_synced: ["claude-code-flow", "ruv-swarm"],
status: "synchronized"
}
})javascript
// Synchronize package dependencies and versions
[Complete Package Sync]:
// Initialize sync swarm
mcp__claude-flow__swarm_init({ topology: "mesh", maxAgents: 5 })
// Spawn sync agents
Task("Sync Coordinator", "Coordinate version alignment", "coordinator")
Task("Dependency Analyzer", "Analyze dependencies", "analyst")
Task("Integration Tester", "Validate synchronization", "tester")
// Read package states
Read("$workspaces$ruv-FANN$claude-code-flow$claude-code-flow$package.json")
Read("$workspaces$ruv-FANN$ruv-swarm$npm$package.json")
// Align versions using gh CLI
Bash(`gh api repos/:owner/:repo$git$refs \
-f ref='refs$heads$sync$package-alignment' \
-f sha=$(gh api repos/:owner/:repo$git$refs$heads$main --jq '.object.sha')`)
// Update package.json files
Bash(`gh api repos/:owner/:repo$contents$package.json \
--method PUT \
-f message="feat: Align Node.js version requirements" \
-f branch="sync$package-alignment" \
-f content="$(cat aligned-package.json | base64)"`)
// Store sync state
mcp__claude-flow__memory_usage({
action: "store",
key: "sync$packages$status",
value: {
timestamp: Date.now(),
packages_synced: ["claude-code-flow", "ruv-swarm"],
status: "synchronized"
}
})Documentation Synchronization
文档同步
javascript
// Synchronize CLAUDE.md files across packages
[Documentation Sync]:
// Get source documentation
Bash(`gh api repos/:owner/:repo$contents$ruv-swarm/docs/CLAUDE.md \
--jq '.content' | base64 -d > $tmp$claude-source.md`)
// Update target documentation
Bash(`gh api repos/:owner/:repo$contents$claude-code-flow/CLAUDE.md \
--method PUT \
-f message="docs: Synchronize CLAUDE.md" \
-f branch="sync$documentation" \
-f content="$(cat $tmp$claude-source.md | base64)"`)
// Track sync status
mcp__claude-flow__memory_usage({
action: "store",
key: "sync$documentation$status",
value: { status: "synchronized", files: ["CLAUDE.md"] }
})javascript
// Synchronize CLAUDE.md files across packages
[Documentation Sync]:
// Get source documentation
Bash(`gh api repos/:owner/:repo$contents$ruv-swarm/docs/CLAUDE.md \
--jq '.content' | base64 -d > $tmp$claude-source.md`)
// Update target documentation
Bash(`gh api repos/:owner/:repo$contents$claude-code-flow/CLAUDE.md \
--method PUT \
-f message="docs: Synchronize CLAUDE.md" \
-f branch="sync$documentation" \
-f content="$(cat $tmp$claude-source.md | base64)"`)
// Track sync status
mcp__claude-flow__memory_usage({
action: "store",
key: "sync$documentation$status",
value: { status: "synchronized", files: ["CLAUDE.md"] }
})Cross-Package Integration
跨包集成
javascript
// Coordinate feature implementation across packages
[Cross-Package Feature]:
// Push changes to all packages
mcp__github__push_files({
branch: "feature$github-integration",
files: [
{
path: "claude-code-flow/.claude$commands$github$github-modes.md",
content: "[GitHub modes documentation]"
},
{
path: "ruv-swarm$src$github-coordinator$hooks.js",
content: "[GitHub coordination hooks]"
}
],
message: "feat: Add GitHub workflow integration"
})
// Create coordinated PR
Bash(`gh pr create \
--title "Feature: GitHub Workflow Integration" \
--body "## 🚀 GitHub Integrationjavascript
// Coordinate feature implementation across packages
[Cross-Package Feature]:
// Push changes to all packages
mcp__github__push_files({
branch: "feature$github-integration",
files: [
{
path: "claude-code-flow/.claude$commands$github$github-modes.md",
content: "[GitHub modes documentation]"
},
{
path: "ruv-swarm$src$github-coordinator$hooks.js",
content: "[GitHub coordination hooks]"
}
],
message: "feat: Add GitHub workflow integration"
})
// Create coordinated PR
Bash(`gh pr create \
--title "Feature: GitHub Workflow Integration" \
--body "## 🚀 GitHub IntegrationFeatures
Features
- ✅ Multi-repo coordination
- ✅ Package synchronization
- ✅ Architecture optimization
- ✅ Multi-repo coordination
- ✅ Package synchronization
- ✅ Architecture optimization
Testing
Testing
- Package dependency verification
- Integration tests
- Cross-package compatibility"`)
undefined- Package dependency verification
- Integration tests
- Cross-package compatibility"`)
undefined3. Repository Architecture
3. 仓库架构
Structure Analysis
结构分析
javascript
// Analyze and optimize repository structure
[Architecture Analysis]:
// Initialize architecture swarm
mcp__claude-flow__swarm_init({ topology: "hierarchical", maxAgents: 6 })
// Spawn architecture agents
Task("Senior Architect", "Analyze repository structure", "architect")
Task("Structure Analyst", "Identify optimization opportunities", "analyst")
Task("Performance Optimizer", "Optimize structure for scalability", "optimizer")
Task("Best Practices Researcher", "Research architecture patterns", "researcher")
// Analyze current structures
LS("$workspaces$ruv-FANN$claude-code-flow$claude-code-flow")
LS("$workspaces$ruv-FANN$ruv-swarm$npm")
// Search for best practices
Bash(`gh search repos "language:javascript template architecture" \
--limit 10 \
--json fullName,description,stargazersCount \
--sort stars \
--order desc`)
// Store analysis results
mcp__claude-flow__memory_usage({
action: "store",
key: "architecture$analysis$results",
value: {
repositories_analyzed: ["claude-code-flow", "ruv-swarm"],
optimization_areas: ["structure", "workflows", "templates"],
recommendations: ["standardize_structure", "improve_workflows"]
}
})javascript
// Analyze and optimize repository structure
[Architecture Analysis]:
// Initialize architecture swarm
mcp__claude-flow__swarm_init({ topology: "hierarchical", maxAgents: 6 })
// Spawn architecture agents
Task("Senior Architect", "Analyze repository structure", "architect")
Task("Structure Analyst", "Identify optimization opportunities", "analyst")
Task("Performance Optimizer", "Optimize structure for scalability", "optimizer")
Task("Best Practices Researcher", "Research architecture patterns", "researcher")
// Analyze current structures
LS("$workspaces$ruv-FANN$claude-code-flow$claude-code-flow")
LS("$workspaces$ruv-FANN$ruv-swarm$npm")
// Search for best practices
Bash(`gh search repos "language:javascript template architecture" \
--limit 10 \
--json fullName,description,stargazersCount \
--sort stars \
--order desc`)
// Store analysis results
mcp__claude-flow__memory_usage({
action: "store",
key: "architecture$analysis$results",
value: {
repositories_analyzed: ["claude-code-flow", "ruv-swarm"],
optimization_areas: ["structure", "workflows", "templates"],
recommendations: ["standardize_structure", "improve_workflows"]
}
})Template Creation
模板创建
javascript
// Create standardized repository template
[Template Creation]:
// Create template repository
mcp__github__create_repository({
name: "claude-project-template",
description: "Standardized template for Claude Code projects",
private: false,
autoInit: true
})
// Push template structure
mcp__github__push_files({
repo: "claude-project-template",
files: [
{
path: ".claude$commands$github$github-modes.md",
content: "[GitHub modes template]"
},
{
path: ".claude$config.json",
content: JSON.stringify({
version: "1.0",
mcp_servers: {
"ruv-swarm": {
command: "npx",
args: ["ruv-swarm", "mcp", "start"]
}
}
})
},
{
path: "CLAUDE.md",
content: "[Standardized CLAUDE.md]"
},
{
path: "package.json",
content: JSON.stringify({
name: "claude-project-template",
engines: { node: ">=20.0.0" },
dependencies: { "ruv-swarm": "^1.0.11" }
})
}
],
message: "feat: Create standardized template"
})javascript
// Create standardized repository template
[Template Creation]:
// Create template repository
mcp__github__create_repository({
name: "claude-project-template",
description: "Standardized template for Claude Code projects",
private: false,
autoInit: true
})
// Push template structure
mcp__github__push_files({
repo: "claude-project-template",
files: [
{
path: ".claude$commands$github$github-modes.md",
content: "[GitHub modes template]"
},
{
path: ".claude$config.json",
content: JSON.stringify({
version: "1.0",
mcp_servers: {
"ruv-swarm": {
command: "npx",
args: ["ruv-swarm", "mcp", "start"]
}
}
})
},
{
path: "CLAUDE.md",
content: "[Standardized CLAUDE.md]"
},
{
path: "package.json",
content: JSON.stringify({
name: "claude-project-template",
engines: { node: ">=20.0.0" },
dependencies: { "ruv-swarm": "^1.0.11" }
})
}
],
message: "feat: Create standardized template"
})Cross-Repository Standardization
跨仓库标准化
javascript
// Synchronize structure across repositories
[Structure Standardization]:
const repositories = ["claude-code-flow", "ruv-swarm", "claude-extensions"]
// Update common files across all repositories
repositories.forEach(repo => {
mcp__github__create_or_update_file({
repo: "ruv-FANN",
path: `${repo}/.github$workflows$integration.yml`,
content: `name: Integration Tests
on: [push, pull_request]
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions$checkout@v3
- uses: actions$setup-node@v3
with: { node-version: '20' }
- run: npm install && npm test`,
message: "ci: Standardize integration workflow",
branch: "structure$standardization"
})
})javascript
// Synchronize structure across repositories
[Structure Standardization]:
const repositories = ["claude-code-flow", "ruv-swarm", "claude-extensions"]
// Update common files across all repositories
repositories.forEach(repo => {
mcp__github__create_or_update_file({
repo: "ruv-FANN",
path: `${repo}/.github$workflows$integration.yml`,
content: `name: Integration Tests
on: [push, pull_request]
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions$checkout@v3
- uses: actions$setup-node@v3
with: { node-version: '20' }
- run: npm install && npm test`,
message: "ci: Standardize integration workflow",
branch: "structure$standardization"
})
})4. Orchestration Workflows
4. 编排工作流
Dependency Management
依赖管理
javascript
// Update dependencies across all repositories
[Organization-Wide Dependency Update]:
// Create tracking issue
TRACKING_ISSUE=$(Bash(`gh issue create \
--title "Dependency Update: typescript@5.0.0" \
--body "Tracking TypeScript update across all repositories" \
--label "dependencies,tracking" \
--json number -q .number`))
// Find all TypeScript repositories
TS_REPOS=$(Bash(`gh repo list org --limit 100 --json name | \
jq -r '.[].name' | while read -r repo; do
if gh api repos$org/$repo$contents$package.json 2>$dev$null | \
jq -r '.content' | base64 -d | grep -q '"typescript"'; then
echo "$repo"
fi
done`))
// Update each repository
Bash(`echo "$TS_REPOS" | while read -r repo; do
gh repo clone org/$repo /tmp/$repo -- --depth=1
cd /tmp/$repo
npm install --save-dev typescript@5.0.0
if npm test; then
git checkout -b update-typescript-5
git add package.json package-lock.json
git commit -m "chore: Update TypeScript to 5.0.0
Part of #$TRACKING_ISSUE"
git push origin HEAD
gh pr create \
--title "Update TypeScript to 5.0.0" \
--body "Updates TypeScript\n\nTracking: #$TRACKING_ISSUE" \
--label "dependencies"
else
gh issue comment $TRACKING_ISSUE \
--body "❌ Failed to update $repo - tests failing"
fi
done`)javascript
// Update dependencies across all repositories
[Organization-Wide Dependency Update]:
// Create tracking issue
TRACKING_ISSUE=$(Bash(`gh issue create \
--title "Dependency Update: typescript@5.0.0" \
--body "Tracking TypeScript update across all repositories" \
--label "dependencies,tracking" \
--json number -q .number`))
// Find all TypeScript repositories
TS_REPOS=$(Bash(`gh repo list org --limit 100 --json name | \
jq -r '.[].name' | while read -r repo; do
if gh api repos$org/$repo$contents$package.json 2>$dev$null | \
jq -r '.content' | base64 -d | grep -q '"typescript"'; then
echo "$repo"
fi
done`))
// Update each repository
Bash(`echo "$TS_REPOS" | while read -r repo; do
gh repo clone org/$repo /tmp/$repo -- --depth=1
cd /tmp/$repo
npm install --save-dev typescript@5.0.0
if npm test; then
git checkout -b update-typescript-5
git add package.json package-lock.json
git commit -m "chore: Update TypeScript to 5.0.0
Part of #$TRACKING_ISSUE"
git push origin HEAD
gh pr create \
--title "Update TypeScript to 5.0.0" \
--body "Updates TypeScript\n\nTracking: #$TRACKING_ISSUE" \
--label "dependencies"
else
gh issue comment $TRACKING_ISSUE \
--body "❌ Failed to update $repo - tests failing"
fi
done`)Refactoring Operations
重构操作
javascript
// Coordinate large-scale refactoring
[Cross-Repo Refactoring]:
// Initialize refactoring swarm
mcp__claude-flow__swarm_init({ topology: "mesh", maxAgents: 8 })
// Spawn specialized agents
Task("Refactoring Coordinator", "Coordinate refactoring across repos", "coordinator")
Task("Impact Analyzer", "Analyze refactoring impact", "analyst")
Task("Code Transformer", "Apply refactoring changes", "coder")
Task("Migration Guide Creator", "Create migration documentation", "documenter")
Task("Integration Tester", "Validate refactored code", "tester")
// Execute refactoring
mcp__claude-flow__task_orchestrate({
task: "Rename OldAPI to NewAPI across all repositories",
strategy: "sequential",
priority: "high"
})javascript
// Coordinate large-scale refactoring
[Cross-Repo Refactoring]:
// Initialize refactoring swarm
mcp__claude-flow__swarm_init({ topology: "mesh", maxAgents: 8 })
// Spawn specialized agents
Task("Refactoring Coordinator", "Coordinate refactoring across repos", "coordinator")
Task("Impact Analyzer", "Analyze refactoring impact", "analyst")
Task("Code Transformer", "Apply refactoring changes", "coder")
Task("Migration Guide Creator", "Create migration documentation", "documenter")
Task("Integration Tester", "Validate refactored code", "tester")
// Execute refactoring
mcp__claude-flow__task_orchestrate({
task: "Rename OldAPI to NewAPI across all repositories",
strategy: "sequential",
priority: "high"
})Security Updates
安全更新
javascript
// Coordinate security patches
[Security Patch Deployment]:
// Scan all repositories
Bash(`gh repo list org --limit 100 --json name | jq -r '.[].name' | \
while read -r repo; do
gh repo clone org/$repo /tmp/$repo -- --depth=1
cd /tmp/$repo
npm audit --json > $tmp$audit-$repo.json
done`)
// Apply patches
Bash(`for repo in $tmp$audit-*.json; do
if [ $(jq '.vulnerabilities | length' $repo) -gt 0 ]; then
cd /tmp/$(basename $repo .json | sed 's$audit-//')
npm audit fix
if npm test; then
git checkout -b security$patch-$(date +%Y%m%d)
git add -A
git commit -m "security: Apply security patches"
git push origin HEAD
gh pr create --title "Security patches" --label "security"
fi
fi
done`)javascript
// Coordinate security patches
[Security Patch Deployment]:
// Scan all repositories
Bash(`gh repo list org --limit 100 --json name | jq -r '.[].name' | \
while read -r repo; do
gh repo clone org/$repo /tmp/$repo -- --depth=1
cd /tmp/$repo
npm audit --json > $tmp$audit-$repo.json
done`)
// Apply patches
Bash(`for repo in $tmp$audit-*.json; do
if [ $(jq '.vulnerabilities | length' $repo) -gt 0 ]; then
cd /tmp/$(basename $repo .json | sed 's$audit-//')
npm audit fix
if npm test; then
git checkout -b security$patch-$(date +%Y%m%d)
git add -A
git commit -m "security: Apply security patches"
git push origin HEAD
gh pr create --title "Security patches" --label "security"
fi
fi
done`)Configuration
配置
Multi-Repo Config File
多仓库配置文件
yaml
undefinedyaml
undefined.swarm$multi-repo.yml
.swarm$multi-repo.yml
version: 1
organization: my-org
repositories:
-
name: frontend url: github.com$my-org$frontend role: ui agents: [coder, designer, tester]
-
name: backend url: github.com$my-org$backend role: api agents: [architect, coder, tester]
-
name: shared url: github.com$my-org$shared role: library agents: [analyst, coder]
coordination:
topology: hierarchical
communication: webhook
memory: redis:/$shared-memory
dependencies:
- from: frontend to: [backend, shared]
- from: backend to: [shared]
undefinedversion: 1
organization: my-org
repositories:
-
name: frontend url: github.com$my-org$frontend role: ui agents: [coder, designer, tester]
-
name: backend url: github.com$my-org$backend role: api agents: [architect, coder, tester]
-
name: shared url: github.com$my-org$shared role: library agents: [analyst, coder]
coordination:
topology: hierarchical
communication: webhook
memory: redis:/$shared-memory
dependencies:
- from: frontend to: [backend, shared]
- from: backend to: [shared]
undefinedRepository Roles
仓库角色
javascript
{
"roles": {
"ui": {
"responsibilities": ["user-interface", "ux", "accessibility"],
"default-agents": ["designer", "coder", "tester"]
},
"api": {
"responsibilities": ["endpoints", "business-logic", "data"],
"default-agents": ["architect", "coder", "security"]
},
"library": {
"responsibilities": ["shared-code", "utilities", "types"],
"default-agents": ["analyst", "coder", "documenter"]
}
}
}javascript
{
"roles": {
"ui": {
"responsibilities": ["user-interface", "ux", "accessibility"],
"default-agents": ["designer", "coder", "tester"]
},
"api": {
"responsibilities": ["endpoints", "business-logic", "data"],
"default-agents": ["architect", "coder", "security"]
},
"library": {
"responsibilities": ["shared-code", "utilities", "types"],
"default-agents": ["analyst", "coder", "documenter"]
}
}
}Communication Strategies
通信策略
1. Webhook-Based Coordination
1. 基于Webhook的协调
javascript
const { MultiRepoSwarm } = require('ruv-swarm');
const swarm = new MultiRepoSwarm({
webhook: {
url: 'https:/$swarm-coordinator.example.com',
secret: process.env.WEBHOOK_SECRET
}
});
swarm.on('repo:update', async (event) => {
await swarm.propagate(event, {
to: event.dependencies,
strategy: 'eventual-consistency'
});
});javascript
const { MultiRepoSwarm } = require('ruv-swarm');
const swarm = new MultiRepoSwarm({
webhook: {
url: 'https:/$swarm-coordinator.example.com',
secret: process.env.WEBHOOK_SECRET
}
});
swarm.on('repo:update', async (event) => {
await swarm.propagate(event, {
to: event.dependencies,
strategy: 'eventual-consistency'
});
});2. Event Streaming
2. 事件流
yaml
undefinedyaml
undefinedKafka configuration for real-time coordination
Kafka configuration for real-time coordination
kafka:
brokers: ['kafka1:9092', 'kafka2:9092']
topics:
swarm-events:
partitions: 10
replication: 3
swarm-memory:
partitions: 5
replication: 3
undefinedkafka:
brokers: ['kafka1:9092', 'kafka2:9092']
topics:
swarm-events:
partitions: 10
replication: 3
swarm-memory:
partitions: 5
replication: 3
undefinedSynchronization Patterns
同步模式
1. Eventually Consistent
1. 最终一致性
javascript
{
"sync": {
"strategy": "eventual",
"max-lag": "5m",
"retry": {
"attempts": 3,
"backoff": "exponential"
}
}
}javascript
{
"sync": {
"strategy": "eventual",
"max-lag": "5m",
"retry": {
"attempts": 3,
"backoff": "exponential"
}
}
}2. Strong Consistency
2. 强一致性
javascript
{
"sync": {
"strategy": "strong",
"consensus": "raft",
"quorum": 0.51,
"timeout": "30s"
}
}javascript
{
"sync": {
"strategy": "strong",
"consensus": "raft",
"quorum": 0.51,
"timeout": "30s"
}
}3. Hybrid Approach
3. 混合方式
javascript
{
"sync": {
"default": "eventual",
"overrides": {
"security-updates": "strong",
"dependency-updates": "strong",
"documentation": "eventual"
}
}
}javascript
{
"sync": {
"default": "eventual",
"overrides": {
"security-updates": "strong",
"dependency-updates": "strong",
"documentation": "eventual"
}
}
}Use Cases
使用场景
1. Microservices Coordination
1. 微服务协调
bash
npx claude-flow skill run github-multi-repo microservices \
--services "auth,users,orders,payments" \
--ensure-compatibility \
--sync-contracts \
--integration-testsbash
npx claude-flow skill run github-multi-repo microservices \
--services "auth,users,orders,payments" \
--ensure-compatibility \
--sync-contracts \
--integration-tests2. Library Updates
2. 库更新
bash
npx claude-flow skill run github-multi-repo lib-update \
--library "org$shared-lib" \
--version "2.0.0" \
--find-consumers \
--update-imports \
--run-testsbash
npx claude-flow skill run github-multi-repo lib-update \
--library "org$shared-lib" \
--version "2.0.0" \
--find-consumers \
--update-imports \
--run-tests3. Organization-Wide Changes
3. 组织级变更
bash
npx claude-flow skill run github-multi-repo org-policy \
--policy "add-security-headers" \
--repos "org/*" \
--validate-compliance \
--create-reportsbash
npx claude-flow skill run github-multi-repo org-policy \
--policy "add-security-headers" \
--repos "org/*" \
--validate-compliance \
--create-reportsArchitecture Patterns
架构模式
Monorepo Structure
单仓库结构
ruv-FANN/
├── packages/
│ ├── claude-code-flow/
│ │ ├── src/
│ │ ├── .claude/
│ │ └── package.json
│ ├── ruv-swarm/
│ │ ├── src/
│ │ ├── wasm/
│ │ └── package.json
│ └── shared/
│ ├── types/
│ ├── utils/
│ └── config/
├── tools/
│ ├── build/
│ ├── test/
│ └── deploy/
├── docs/
│ ├── architecture/
│ ├── integration/
│ └── examples/
└── .github/
├── workflows/
├── templates/
└── actions/ruv-FANN/
├── packages/
│ ├── claude-code-flow/
│ │ ├── src/
│ │ ├── .claude/
│ │ └── package.json
│ ├── ruv-swarm/
│ │ ├── src/
│ │ ├── wasm/
│ │ └── package.json
│ └── shared/
│ ├── types/
│ ├── utils/
│ └── config/
├── tools/
│ ├── build/
│ ├── test/
│ └── deploy/
├── docs/
│ ├── architecture/
│ ├── integration/
│ └── examples/
└── .github/
├── workflows/
├── templates/
└── actions/Command Structure
命令结构
.claude/
├── commands/
│ ├── github/
│ │ ├── github-modes.md
│ │ ├── pr-manager.md
│ │ ├── issue-tracker.md
│ │ └── sync-coordinator.md
│ ├── sparc/
│ │ ├── sparc-modes.md
│ │ ├── coder.md
│ │ └── tester.md
│ └── swarm/
│ ├── coordination.md
│ └── orchestration.md
├── templates/
│ ├── issue.md
│ ├── pr.md
│ └── project.md
└── config.json.claude/
├── commands/
│ ├── github/
│ │ ├── github-modes.md
│ │ ├── pr-manager.md
│ │ ├── issue-tracker.md
│ │ └── sync-coordinator.md
│ ├── sparc/
│ │ ├── sparc-modes.md
│ │ ├── coder.md
│ │ └── tester.md
│ └── swarm/
│ ├── coordination.md
│ └── orchestration.md
├── templates/
│ ├── issue.md
│ ├── pr.md
│ └── project.md
└── config.jsonMonitoring & Visualization
监控与可视化
Multi-Repo Dashboard
多仓库仪表板
bash
npx claude-flow skill run github-multi-repo dashboard \
--port 3000 \
--metrics "agent-activity,task-progress,memory-usage" \
--real-timebash
npx claude-flow skill run github-multi-repo dashboard \
--port 3000 \
--metrics "agent-activity,task-progress,memory-usage" \
--real-timeDependency Graph
依赖图
bash
npx claude-flow skill run github-multi-repo dep-graph \
--format mermaid \
--include-agents \
--show-data-flowbash
npx claude-flow skill run github-multi-repo dep-graph \
--format mermaid \
--include-agents \
--show-data-flowHealth Monitoring
健康监控
bash
npx claude-flow skill run github-multi-repo health-check \
--repos "org/*" \
--check "connectivity,memory,agents" \
--alert-on-issuesbash
npx claude-flow skill run github-multi-repo health-check \
--repos "org/*" \
--check "connectivity,memory,agents" \
--alert-on-issuesBest Practices
最佳实践
1. Repository Organization
1. 仓库组织
- Clear repository roles and boundaries
- Consistent naming conventions
- Documented dependencies
- Shared configuration standards
- 清晰的仓库角色与边界
- 一致的命名规范
- 已文档化的依赖关系
- 共享的配置标准
2. Communication
2. 通信
- Use appropriate sync strategies
- Implement circuit breakers
- Monitor latency and failures
- Clear error propagation
- 使用合适的同步策略
- 实现断路器
- 监控延迟与故障
- 清晰的错误传播机制
3. Security
3. 安全
- Secure cross-repo authentication
- Encrypted communication channels
- Audit trail for all operations
- Principle of least privilege
- 安全的跨仓库认证
- 加密的通信通道
- 所有操作的审计追踪
- 最小权限原则
4. Version Management
4. 版本管理
- Semantic versioning alignment
- Dependency compatibility validation
- Automated version bump coordination
- 语义化版本对齐
- 依赖兼容性验证
- 自动化版本升级协调
5. Testing Integration
5. 测试集成
- Cross-package test validation
- Integration test automation
- Performance regression detection
- 跨包测试验证
- 集成测试自动化
- 性能回归检测
Performance Optimization
性能优化
Caching Strategy
缓存策略
bash
npx claude-flow skill run github-multi-repo cache-strategy \
--analyze-patterns \
--suggest-cache-layers \
--implement-invalidationbash
npx claude-flow skill run github-multi-repo cache-strategy \
--analyze-patterns \
--suggest-cache-layers \
--implement-invalidationParallel Execution
并行执行
bash
npx claude-flow skill run github-multi-repo parallel-optimize \
--analyze-dependencies \
--identify-parallelizable \
--execute-optimalbash
npx claude-flow skill run github-multi-repo parallel-optimize \
--analyze-dependencies \
--identify-parallelizable \
--execute-optimalResource Pooling
资源池化
bash
npx claude-flow skill run github-multi-repo resource-pool \
--share-agents \
--distribute-load \
--monitor-usagebash
npx claude-flow skill run github-multi-repo resource-pool \
--share-agents \
--distribute-load \
--monitor-usageTroubleshooting
故障排除
Connectivity Issues
连接问题
bash
npx claude-flow skill run github-multi-repo diagnose-connectivity \
--test-all-repos \
--check-permissions \
--verify-webhooksbash
npx claude-flow skill run github-multi-repo diagnose-connectivity \
--test-all-repos \
--check-permissions \
--verify-webhooksMemory Synchronization
内存同步
bash
npx claude-flow skill run github-multi-repo debug-memory \
--check-consistency \
--identify-conflicts \
--repair-statebash
npx claude-flow skill run github-multi-repo debug-memory \
--check-consistency \
--identify-conflicts \
--repair-statePerformance Bottlenecks
性能瓶颈
bash
npx claude-flow skill run github-multi-repo perf-analysis \
--profile-operations \
--identify-bottlenecks \
--suggest-optimizationsbash
npx claude-flow skill run github-multi-repo perf-analysis \
--profile-operations \
--identify-bottlenecks \
--suggest-optimizationsAdvanced Features
高级功能
1. Distributed Task Queue
1. 分布式任务队列
bash
npx claude-flow skill run github-multi-repo queue \
--backend redis \
--workers 10 \
--priority-routing \
--dead-letter-queuebash
npx claude-flow skill run github-multi-repo queue \
--backend redis \
--workers 10 \
--priority-routing \
--dead-letter-queue2. Cross-Repo Testing
2. 跨仓库测试
bash
npx claude-flow skill run github-multi-repo test \
--setup-test-env \
--link-services \
--run-e2e \
--tear-downbash
npx claude-flow skill run github-multi-repo test \
--setup-test-env \
--link-services \
--run-e2e \
--tear-down3. Monorepo Migration
3. 单仓库迁移
bash
npx claude-flow skill run github-multi-repo to-monorepo \
--analyze-repos \
--suggest-structure \
--preserve-history \
--create-migration-prsbash
npx claude-flow skill run github-multi-repo to-monorepo \
--analyze-repos \
--suggest-structure \
--preserve-history \
--create-migration-prsExamples
示例
Full-Stack Application Update
全栈应用更新
bash
npx claude-flow skill run github-multi-repo fullstack-update \
--frontend "org$web-app" \
--backend "org$api-server" \
--database "org$db-migrations" \
--coordinate-deploymentbash
npx claude-flow skill run github-multi-repo fullstack-update \
--frontend "org$web-app" \
--backend "org$api-server" \
--database "org$db-migrations" \
--coordinate-deploymentCross-Team Collaboration
跨团队协作
bash
npx claude-flow skill run github-multi-repo cross-team \
--teams "frontend,backend,devops" \
--task "implement-feature-x" \
--assign-by-expertise \
--track-progressbash
npx claude-flow skill run github-multi-repo cross-team \
--teams "frontend,backend,devops" \
--task "implement-feature-x" \
--assign-by-expertise \
--track-progressMetrics and Reporting
指标与报告
Sync Quality Metrics
同步质量指标
- Package version alignment percentage
- Documentation consistency score
- Integration test success rate
- Synchronization completion time
- 包版本对齐率
- 文档一致性得分
- 集成测试成功率
- 同步完成时间
Architecture Health Metrics
架构健康指标
- Repository structure consistency score
- Documentation coverage percentage
- Cross-repository integration success rate
- Template adoption and usage statistics
- 仓库结构一致性得分
- 文档覆盖率
- 跨仓库集成成功率
- 模板采用与使用统计
Automated Reporting
自动化报告
- Weekly sync status reports
- Dependency drift detection
- Documentation divergence alerts
- Integration health monitoring
- 每周同步状态报告
- 依赖漂移检测
- 文档差异告警
- 集成健康监控
Integration Points
集成点
Related Skills
相关Skill
- - GitHub workflow automation
github-workflow - - Pull request management
github-pr - - Architecture design
sparc-architect - - Performance optimization
sparc-optimizer
- - GitHub工作流自动化
github-workflow - - 拉取请求管理
github-pr - - 架构设计
sparc-architect - - 性能优化
sparc-optimizer
Related Commands
相关命令
- - Cross-repo synchronization
$github sync-coordinator - - Coordinated releases
$github release-manager - - Repository optimization
$github repo-architect - - Detailed architecture design
$sparc architect
- - 跨仓库同步
$github sync-coordinator - - 协调发布
$github release-manager - - 仓库优化
$github repo-architect - - 详细架构设计
$sparc architect
Support and Resources
支持与资源
- Documentation: https:/$github.com$ruvnet$claude-flow
- Issues: https:/$github.com$ruvnet$claude-flow$issues
- Examples:
.claude$examples$github-multi-repo/
Version: 1.0.0
Last Updated: 2025-10-19
Maintainer: Claude Flow Team
- 文档: https:/$github.com$ruvnet$claude-flow
- 问题反馈: https:/$github.com$ruvnet$claude-flow$issues
- 示例:
.claude$examples$github-multi-repo/
版本: 1.0.0
最后更新: 2025-10-19
维护者: Claude Flow Team