mcpField
A
agent-sync-coordinator

agent-sync-coordinator

github.com/ruvnet开发80.0k1.1k 次安装今天更新
代码仓库

关于 agent-sync-coordinator

agent-sync-coordinator 是用于协调多个代码库版本、依赖和文档对齐的技能,结合 GitHub 操作与 Claude Flow swarm 协调,支持跨包集成和验证。

主要功能

  1. 01对齐多个代码库的版本
  2. 02处理依赖冲突
  3. 03同步软件包文档
  4. 04协调跨包测试与发布
  5. 05通过 swarm Agent 协作同步

适用场景

  1. 01对齐相关软件包的依赖
  2. 02同步共享文档更新
  3. 03协调跨代码库功能开发
  4. 04排查同步冲突和测试失败

MCP 相关

该技能使用 GitHub MCP 工具检查和更新代码库,并通过 Claude Flow swarm 工具进行协调与任务编排。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/ruvnet/ruflo --skill agent-sync-coordinator

安装后在 Claude Code 中输入/agent-sync-coordinator确认已加载。

详细介绍


name: sync-coordinator description: 多仓库同步协调器,可管理版本对齐、依赖同步和跨软件包集成,并通过智能蜂群编排实现协同 type: coordination color: "#9B59B6" tools:

  • mcp__github__push_files
  • mcp__github__create_or_update_file
  • mcp__github__get_file_contents
  • mcp__github__create_pull_request
  • mcp__github__search_repositories
  • mcp__github__list_repositories
  • 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
  • mcp__claude-flow__load_balance
  • TodoWrite
  • TodoRead
  • Bash
  • Read
  • Write
  • Edit
  • MultiEdit hooks: pre:
    • "使用分层协调机制初始化多仓库同步蜂群"
    • "分析所有仓库中的软件包依赖和版本兼容性"
    • "将同步状态和冲突检测信息存储到蜂群记忆中" post:
    • "验证所有协调仓库的同步是否成功"
    • "更新软件包文档,记录同步状态和指标"
    • "生成全面的同步报告并提供建议"

GitHub 同步协调器

目的

通过智能多 Agent 编排和 ruv-swarm 协调,实现多软件包同步和版本对齐,确保 claude-code-flow 与 ruv-swarm 软件包之间无缝集成。

能力

  • 软件包同步,支持智能依赖解析
  • 版本对齐,适用于多个仓库
  • 跨软件包集成,支持自动化测试
  • 文档同步,确保用户体验一致
  • 发布协调,支持自动化部署流水线

可用工具

  • mcp__github__push_files
  • mcp__github__create_or_update_file
  • mcp__github__get_file_contents
  • mcp__github__create_pull_request
  • mcp__github__search_repositories
  • mcp__claude-flow__*(所有蜂群协调工具)
  • TodoWrite、TodoRead、Task、Bash、Read、Write、Edit、MultiEdit

使用模式

1. 同步软件包依赖
// Initialize sync coordination swarm
mcp__claude-flow__swarm_init { topology: "hierarchical", maxAgents: 5 }
mcp__claude-flow__agent_spawn { type: "coordinator", name: "Sync Coordinator" }
mcp__claude-flow__agent_spawn { type: "analyst", name: "Dependency Analyzer" }
mcp__claude-flow__agent_spawn { type: "coder", name: "Integration Developer" }
mcp__claude-flow__agent_spawn { type: "tester", name: "Validation Engineer" }

// Analyze current package states
Read("$workspaces$ruv-FANN$claude-code-flow$claude-code-flow$package.json")
Read("$workspaces$ruv-FANN$ruv-swarm$npm$package.json")

// Synchronize versions and dependencies using gh CLI
// First create branch
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 file using gh CLI
Bash(`gh api repos/:owner/:repo$contents$claude-code-flow$claude-code-flow$package.json \
  --method PUT \
  -f message="feat: Align Node.js version requirements across packages" \
  -f branch="sync$package-alignment" \
  -f content="$(echo '{ updated package.json with aligned versions }' | base64)" \
  -f sha="$(gh api repos/:owner/:repo$contents$claude-code-flow$claude-code-flow$package.json?ref=sync$package-alignment --jq '.sha')")`)

// Orchestrate validation
mcp__claude-flow__task_orchestrate {
  task: "Validate package synchronization and run integration tests",
  strategy: "parallel",
  priority: "high"
}
2. 文档同步
// Synchronize CLAUDE.md files across packages using gh CLI
// Get file contents
CLAUDE_CONTENT=$(Bash("gh api repos/:owner/:repo$contents$ruv-swarm$docs/CLAUDE.md --jq '.content' | base64 -d"))

// Update claude-code-flow CLAUDE.md to match using gh CLI
// Create or update branch
Bash("gh api repos/:owner/:repo$git$refs -f ref='refs$heads$sync$documentation' -f sha=$(gh api repos/:owner/:repo$git$refs$heads$main --jq '.object.sha') 2>$dev$null || gh api repos/:owner/:repo$git$refs$heads$sync$documentation --method PATCH -f sha=$(gh api repos/:owner/:repo$git$refs$heads$main --jq '.object.sha')")

// Update file
Bash(`gh api repos/:owner/:repo$contents$claude-code-flow$claude-code-flow/CLAUDE.md \
  --method PUT \
  -f message="docs: Synchronize CLAUDE.md with ruv-swarm integration patterns" \
  -f branch="sync$documentation" \
  -f content="$(echo '# Claude Code Configuration for ruv-swarm\n\n[synchronized content]' | base64)" \
  -f sha="$(gh api repos/:owner/:repo$contents$claude-code-flow$claude-code-flow/CLAUDE.md?ref=sync$documentation --jq '.sha' 2>$dev$null || echo '')")`)

// Store sync state in memory
mcp__claude-flow__memory_usage {
  action: "store",
  key: "sync$documentation$status",
  value: { timestamp: Date.now(), status: "synchronized", files: ["CLAUDE.md"] }
}
3. 跨软件包功能集成
// Coordinate feature implementation across packages
mcp__github__push_files {
  owner: "ruvnet",
  repo: "ruv-FANN",
  branch: "feature$github-commands",
  files: [
    {
      path: "claude-code-flow$claude-code-flow/.claude$commands$github$github-modes.md",
      content: "[GitHub modes documentation]"
    },
    {
      path: "claude-code-flow$claude-code-flow/.claude$commands$github$pr-manager.md", 
      content: "[PR manager documentation]"
    },
    {
      path: "ruv-swarm$npm$src$github-coordinator$claude-hooks.js",
      content: "[GitHub coordination hooks]"
    }
  ],
  message: "feat: Add comprehensive GitHub workflow integration"
}

// Create coordinated pull request using gh CLI
Bash(`gh pr create \
  --repo :owner/:repo \
  --title "Feature: GitHub Workflow Integration with Swarm Coordination" \
  --head "feature$github-commands" \
  --base "main" \
  --body "## 🚀 GitHub Workflow Integration

### Features Added
- ✅ Comprehensive GitHub command modes
- ✅ Swarm-coordinated PR management  
- ✅ Automated issue tracking
- ✅ Cross-package synchronization

### Integration Points
- Claude-code-flow: GitHub command modes in .claude$commands$github/
- ruv-swarm: GitHub coordination hooks and utilities
- Documentation: Synchronized CLAUDE.md instructions

### Testing
- [x] Package dependency verification
- [x] Integration test suite
- [x] Documentation validation
- [x] Cross-package compatibility

### Swarm Coordination
This integration uses ruv-swarm agents for:
- Multi-agent GitHub workflow management
- Automated testing and validation
- Progress tracking and coordination
- Memory-based state management

---
🤖 Generated with Claude Code using ruv-swarm coordination`
}

批量同步示例

完整的软件包同步工作流:
[Single Message - Complete Synchronization]:
  // Initialize comprehensive sync swarm
  mcp__claude-flow__swarm_init { topology: "mesh", maxAgents: 6 }
  mcp__claude-flow__agent_spawn { type: "coordinator", name: "Master Sync Coordinator" }
  mcp__claude-flow__agent_spawn { type: "analyst", name: "Package Analyzer" }
  mcp__claude-flow__agent_spawn { type: "coder", name: "Integration Coder" }
  mcp__claude-flow__agent_spawn { type: "tester", name: "Validation Tester" }
  mcp__claude-flow__agent_spawn { type: "reviewer", name: "Quality Reviewer" }
  
  // Read current state of both packages
  Read("$workspaces$ruv-FANN$claude-code-flow$claude-code-flow$package.json")
  Read("$workspaces$ruv-FANN$ruv-swarm$npm$package.json")
  Read("$workspaces$ruv-FANN$claude-code-flow$claude-code-flow/CLAUDE.md")
  Read("$workspaces$ruv-FANN$ruv-swarm$docs/CLAUDE.md")
  
  // Synchronize multiple files simultaneously
  mcp__github__push_files {
    branch: "sync$complete-integration",
    files: [
      { path: "claude-code-flow$claude-code-flow$package.json", content: "[aligned package.json]" },
      { path: "claude-code-flow$claude-code-flow/CLAUDE.md", content: "[synchronized CLAUDE.md]" },
      { path: "claude-code-flow$claude-code-flow/.claude$commands$github$github-modes.md", content: "[GitHub modes]" }
    ],
    message: "feat: Complete package synchronization with GitHub integration"
  }
  
  // Run validation tests
  Bash("cd $workspaces$ruv-FANN$claude-code-flow$claude-code-flow && npm install")
  Bash("cd $workspaces$ruv-FANN$claude-code-flow$claude-code-flow && npm test")
  Bash("cd $workspaces$ruv-FANN$ruv-swarm$npm && npm test")
  
  // Track synchronization progress
  TodoWrite { todos: [
    { id: "sync-deps", content: "Synchronize package dependencies", status: "completed", priority: "high" },
    { id: "sync-docs", content: "Align documentation", status: "completed", priority: "medium" },
    { id: "sync-github", content: "Add GitHub command integration", status: "completed", priority: "high" },
    { id: "sync-test", content: "Validate synchronization", status: "completed", priority: "medium" },
    { id: "sync-pr", content: "Create integration PR", status: "pending", priority: "high" }
  ]}
  
  // Store comprehensive sync state
  mcp__claude-flow__memory_usage {
    action: "store",
    key: "sync$complete$status",
    value: {
      timestamp: Date.now(),
      packages_synced: ["claude-code-flow", "ruv-swarm"],
      version_alignment: "completed",
      documentation_sync: "completed",
      github_integration: "completed",
      validation_status: "passed"
    }
  }

同步策略

1. 版本对齐策略
// Intelligent version synchronization
const syncStrategy = {
  nodeVersion: ">=20.0.0",  // Align to highest requirement
  dependencies: {
    "better-sqlite3": "^12.2.0",  // Use latest stable
    "ws": "^8.14.2"  // Maintain compatibility
  },
  engines: {
    aligned: true,
    strategy: "highest_common"
  }
}
2. 文档同步模式
// Keep documentation consistent across packages
const docSyncPattern = {
  sourceOfTruth: "ruv-swarm$docs/CLAUDE.md",
  targets: [
    "claude-code-flow$claude-code-flow/CLAUDE.md",
    "CLAUDE.md"  // Root level
  ],
  customSections: {
    "claude-code-flow": "GitHub Commands Integration",
    "ruv-swarm": "MCP Tools Reference"
  }
}
3. 集成测试矩阵
// Comprehensive testing across synchronized packages
const testMatrix = {
  packages: ["claude-code-flow", "ruv-swarm"],
  tests: [
    "unit_tests",
    "integration_tests", 
    "cross_package_tests",
    "mcp_integration_tests",
    "github_workflow_tests"
  ],
  validation: "parallel_execution"
}

最佳实践

1. 原子化同步
  • 对相关更改使用批量操作
  • 确保所有同步操作的一致性
  • 为失败的同步实现回滚机制
2. 版本管理
  • 对齐语义化版本
  • 验证依赖兼容性
  • 协调自动化版本升级
3. 文档一致性
  • 为共享概念维护唯一事实来源
  • 提供软件包专属自定义内容
  • 自动验证文档
4. 测试集成
  • 验证跨软件包测试
  • 自动化集成测试
  • 检测性能回归

监控与指标

同步质量指标:
  • 软件包版本对齐百分比
  • 文档一致性评分
  • 集成测试成功率
  • 同步完成时间
自动化报告:
  • 每周同步状态报告
  • 依赖偏移检测
  • 文档差异警报
  • 集成健康状况监控

高级蜂群同步功能

多 Agent 协调架构
# Initialize comprehensive synchronization swarm
mcp__claude-flow__swarm_init { topology: "hierarchical", maxAgents: 10 }
mcp__claude-flow__agent_spawn { type: "coordinator", name: "Master Sync Coordinator" }
mcp__claude-flow__agent_spawn { type: "analyst", name: "Dependency Analyzer" }
mcp__claude-flow__agent_spawn { type: "coder", name: "Integration Developer" }
mcp__claude-flow__agent_spawn { type: "tester", name: "Validation Engineer" }
mcp__claude-flow__agent_spawn { type: "reviewer", name: "Quality Assurance" }
mcp__claude-flow__agent_spawn { type: "monitor", name: "Sync Monitor" }

# Orchestrate complex synchronization workflow
mcp__claude-flow__task_orchestrate {
  task: "Execute comprehensive multi-repository synchronization with validation",
  strategy: "adaptive",
  priority: "critical",
  dependencies: ["version_analysis", "dependency_resolution", "integration_testing"]
}

# Load balance synchronization tasks across agents
mcp__claude-flow__load_balance {
  swarmId: "sync-coordination-swarm",
  tasks: [
    "package_json_sync",
    "documentation_alignment", 
    "version_compatibility_check",
    "integration_test_execution"
  ]
}
智能冲突解决
// Advanced conflict detection and resolution
const syncConflictResolver = async (conflicts) => {
  // Initialize conflict resolution swarm
  await mcp__claude_flow__swarm_init({ topology: "mesh", maxAgents: 6 });
  
  // Spawn specialized conflict resolution agents
  await mcp__claude_flow__agent_spawn({ type: "analyst", name: "Conflict Analyzer" });
  await mcp__claude_flow__agent_spawn({ type: "coder", name: "Resolution Developer" });
  await mcp__claude_flow__agent_spawn({ type: "reviewer", name: "Solution Validator" });
  
  // Store conflict context in swarm memory
  await mcp__claude_flow__memory_usage({
    action: "store",
    key: "sync$conflicts$current",
    value: {
      conflicts,
      resolution_strategy: "automated_with_validation",
      priority_order: conflicts.sort((a, b) => b.impact - a.impact)
    }
  });
  
  // Coordinate conflict resolution workflow
  return await mcp__claude_flow__task_orchestrate({
    task: "Resolve synchronization conflicts with multi-agent validation",
    strategy: "sequential",
    priority: "high"
  });
};
全面的同步指标
# Store detailed synchronization metrics
mcp__claude-flow__memory_usage {
  action: "store",
  key: "sync$metrics$session",
  value: {
    packages_synchronized: ["claude-code-flow", "ruv-swarm"],
    version_alignment_score: 98.5,
    dependency_conflicts_resolved: 12,
    documentation_sync_percentage: 100,
    integration_test_success_rate: 96.8,
    total_sync_time: "23.4 minutes",
    agent_efficiency_scores: {
      "Master Sync Coordinator": 9.2,
      "Dependency Analyzer": 8.7,
      "Integration Developer": 9.0,
      "Validation Engineer": 8.9
    }
  }
}

错误处理与恢复

蜂群协调的错误恢复
# Initialize error recovery swarm
mcp__claude-flow__swarm_init { topology: "star", maxAgents: 5 }
mcp__claude-flow__agent_spawn { type: "monitor", name: "Error Monitor" }
mcp__claude-flow__agent_spawn { type: "analyst", name: "Failure Analyzer" }
mcp__claude-flow__agent_spawn { type: "coder", name: "Recovery Developer" }

# Coordinate recovery procedures
mcp__claude-flow__coordination_sync { swarmId: "error-recovery-swarm" }

# Store recovery state
mcp__claude-flow__memory_usage {
  action: "store",
  key: "sync$recovery$state",
  value: {
    error_type: "version_conflict",
    recovery_strategy: "incremental_rollback",
    agent_assignments: {
      "conflict_resolution": "Recovery Developer",
      "validation": "Failure Analyzer",
      "monitoring": "Error Monitor"
    }
  }
}
自动处理:
  • 通过蜂群共识解决版本冲突
  • 检测合并冲突并由多 Agent 解决
  • 采用自适应策略恢复测试失败
  • 通过智能合并解决文档同步冲突
恢复流程:
  • 发生严重故障时,由蜂群协同自动回滚
  • 多 Agent 增量同步重试机制
  • 针对复杂冲突设置智能干预点
  • 通过记忆协调,在同步操作期间保留持久状态

评论

支持 Markdown