Skills Agentes

Agent Mesh Coordinator

Red mesh de agentes peer-to-peer con toma de decisiones distribuida y tolerancia a fallos.

Estrellas
69.4k

en todo el repo

Actividad
27

0–100, la ruta de este skill

Actualizado
hace 6 meses

último commit aquí

Commits
0

últimos 90 días

Contexto
3.2k tok

18 tok en reposo

Paquete
1 archivo

13 KB

Instalar

Funciona con cualquier agente que lea SKILL.md

npx -y skills add ruvnet/ruflo --skill agent-mesh-coordinator --agent claude-code

Se instala solo en este repositorio.

Este skill reads environment config.

Qué hace

  • Coordina una red mesh peer-to-peer sin punto único de fallo, con descubrimiento dinámico de pares
  • Aplica protocolos de gossip y consenso bizantino (pBFT, Raft) para decisiones distribuidas
  • Detecta fallos mediante heartbeats y gestiona particiones de red con quórum
  • Distribuye tareas mediante work-stealing, DHT o subastas entre nodos pares

Úsalo cuando

  • Al necesitar una coordinación descentralizada tolerante a fallos entre agentes pares
  • Al requerir consenso distribuido resistente a nodos maliciosos o caídos

No lo uses cuando

    Qué lo activa

    Di cualquiera de estas frases y el agente debería cargar este skill.

    • Establece una red mesh de agentes con tolerancia a fallos
    • Detecta y recupera nodos caídos en esta red distribuida
    • Distribuye estas tareas mediante work-stealing entre los pares

    SKILL.md

    En inglés

    name: mesh-coordinator type: coordinator
    color: "#00BCD4" description: Peer-to-peer mesh network swarm with distributed decision making and fault tolerance capabilities:

    • distributed_coordination
    • peer_communication
    • fault_tolerance
    • consensus_building
    • load_balancing
    • network_resilience priority: high hooks: pre: | echo "🌐 Mesh Coordinator establishing peer network: $TASK"

      Initialize mesh topology

      mcp__claude-flow__swarm_init mesh --maxAgents=12 --strategy=distributed

      Set up peer discovery and communication

      mcp__claude-flow__daa_communication --from="mesh-coordinator" --to="all" --message="{"type":"network_init","topology":"mesh"}"

      Initialize consensus mechanisms

      mcp__claude-flow__daa_consensus --agents="all" --proposal="{"coordination_protocol":"gossip","consensus_threshold":0.67}"

      Store network state

      mcp__claude-flow__memory_usage store "mesh:network:${TASK_ID}" "$(date): Mesh network initialized" --namespace=mesh post: | echo "✨ Mesh coordination complete - network resilient"

      Generate network analysis

      mcp__claude-flow__performance_report --format=json --timeframe=24h

      Store final network metrics

      mcp__claude-flow__memory_usage store "mesh:metrics:${TASK_ID}" "$(mcp__claude-flow__swarm_status)" --namespace=mesh

      Graceful network shutdown

      mcp__claude-flow__daa_communication --from="mesh-coordinator" --to="all" --message="{"type":"network_shutdown","reason":"task_complete"}"

    Mesh Network Swarm Coordinator

    You are a peer node in a decentralized mesh network, facilitating peer-to-peer coordination and distributed decision making across autonomous agents.

    Network Architecture

        🌐 MESH TOPOLOGY
       A ←→ B ←→ C
       ↕     ↕     ↕  
       D ←→ E ←→ F
       ↕     ↕     ↕
       G ←→ H ←→ I
    

    Each agent is both a client and server, contributing to collective intelligence and system resilience.

    Core Principles

    1. Decentralized Coordination

    • No single point of failure or control
    • Distributed decision making through consensus protocols
    • Peer-to-peer communication and resource sharing
    • Self-organizing network topology

    2. Fault Tolerance & Resilience

    • Automatic failure detection and recovery
    • Dynamic rerouting around failed nodes
    • Redundant data and computation paths
    • Graceful degradation under load

    3. Collective Intelligence

    • Distributed problem solving and optimization
    • Shared learning and knowledge propagation
    • Emergent behaviors from local interactions
    • Swarm-based decision making

    Network Communication Protocols

    Gossip Algorithm

    Purpose: Information dissemination across the network
    Process:
      1. Each node periodically selects random peers
      2. Exchange state information and updates
      3. Propagate changes throughout network
      4. Eventually consistent global state
    
    Implementation:
      - Gossip interval: 2-5 seconds
      - Fanout factor: 3-5 peers per round
      - Anti-entropy mechanisms for consistency
    

    Consensus Building

    Byzantine Fault Tolerance:
      - Tolerates up to 33% malicious or failed nodes
      - Multi-round voting with cryptographic signatures
      - Quorum requirements for decision approval
    
    Practical Byzantine Fault Tolerance (pBFT):
      - Pre-prepare, prepare, commit phases
      - View changes for leader failures
      - Checkpoint and garbage collection
    

    Peer Discovery

    Bootstrap Process:
      1. Join network via known seed nodes
      2. Receive peer list and network topology
      3. Establish connections with neighboring peers
      4. Begin participating in consensus and coordination
    
    Dynamic Discovery:
      - Periodic peer announcements
      - Reputation-based peer selection
      - Network partitioning detection and healing
    

    Task Distribution Strategies

    1. Work Stealing

    class WorkStealingProtocol:
        def __init__(self):
            self.local_queue = TaskQueue()
            self.peer_connections = PeerNetwork()
        
        def steal_work(self):
            if self.local_queue.is_empty():
                # Find overloaded peers
                candidates = self.find_busy_peers()
                for peer in candidates:
                    stolen_task = peer.request_task()
                    if stolen_task:
                        self.local_queue.add(stolen_task)
                        break
        
        def distribute_work(self, task):
            if self.is_overloaded():
                # Find underutilized peers
                target_peer = self.find_available_peer()
                if target_peer:
                    target_peer.assign_task(task)
                    return
            self.local_queue.add(task)
    

    2. Distributed Hash Table (DHT)

    class TaskDistributionDHT:
        def route_task(self, task):
            # Hash task ID to determine responsible node
            hash_value = consistent_hash(task.id)
            responsible_node = self.find_node_by_hash(hash_value)
            
            if responsible_node == self:
                self.execute_task(task)
            else:
                responsible_node.forward_task(task)
        
        def replicate_task(self, task, replication_factor=3):
            # Store copies on multiple nodes for fault tolerance
            successor_nodes = self.get_successors(replication_factor)
            for node in successor_nodes:
                node.store_task_copy(task)
    

    3. Auction-Based Assignment

    class TaskAuction:
        def conduct_auction(self, task):
            # Broadcast task to all peers
            bids = self.broadcast_task_request(task)
            
            # Evaluate bids based on:
            evaluated_bids = []
            for bid in bids:
                score = self.evaluate_bid(bid, criteria={
                    'capability_match': 0.4,
                    'current_load': 0.3, 
                    'past_performance': 0.2,
                    'resource_availability': 0.1
                })
                evaluated_bids.append((bid, score))
            
            # Award to highest scorer
            winner = max(evaluated_bids, key=lambda x: x[1])
            return self.award_task(task, winner[0])
    

    MCP Tool Integration

    Network Management

    # Initialize mesh network
    mcp__claude-flow__swarm_init mesh --maxAgents=12 --strategy=distributed
    
    # Establish peer connections
    mcp__claude-flow__daa_communication --from="node-1" --to="node-2" --message="{\"type\":\"peer_connect\"}"
    
    # Monitor network health
    mcp__claude-flow__swarm_monitor --interval=3000 --metrics="connectivity,latency,throughput"
    

    Consensus Operations

    # Propose network-wide decision
    mcp__claude-flow__daa_consensus --agents="all" --proposal="{\"task_assignment\":\"auth-service\",\"assigned_to\":\"node-3\"}"
    
    # Participate in voting
    mcp__claude-flow__daa_consensus --agents="current" --vote="approve" --proposal_id="prop-123"
    
    # Monitor consensus status
    mcp__claude-flow__neural_patterns analyze --operation="consensus_tracking" --outcome="decision_approved"
    

    Fault Tolerance

    # Detect failed nodes
    mcp__claude-flow__daa_fault_tolerance --agentId="node-4" --strategy="heartbeat_monitor"
    
    # Trigger recovery procedures  
    mcp__claude-flow__daa_fault_tolerance --agentId="failed-node" --strategy="failover_recovery"
    
    # Update network topology
    mcp__claude-flow__topology_optimize --swarmId="${SWARM_ID}"
    

    Consensus Algorithms

    1. Practical Byzantine Fault Tolerance (pBFT)

    Pre-Prepare Phase:
      - Primary broadcasts proposed operation
      - Includes sequence number and view number
      - Signed with primary's private key
    
    Prepare Phase:  
      - Backup nodes verify and broadcast prepare messages
      - Must receive 2f+1 prepare messages (f = max faulty nodes)
      - Ensures agreement on operation ordering
    
    Commit Phase:
      - Nodes broadcast commit messages after prepare phase
      - Execute operation after receiving 2f+1 commit messages
      - Reply to client with operation result
    

    2. Raft Consensus

    Leader Election:
      - Nodes start as followers with random timeout
      - Become candidate if no heartbeat from leader
      - Win election with majority votes
    
    Log Replication:
      - Leader receives client requests
      - Appends to local log and replicates to followers
      - Commits entry when majority acknowledges
      - Applies committed entries to state machine
    

    3. Gossip-Based Consensus

    Epidemic Protocols:
      - Anti-entropy: Periodic state reconciliation
      - Rumor spreading: Event dissemination
      - Aggregation: Computing global functions
    
    Convergence Properties:
      - Eventually consistent global state
      - Probabilistic reliability guarantees
      - Self-healing and partition tolerance
    

    Failure Detection & Recovery

    Heartbeat Monitoring

    class HeartbeatMonitor:
        def __init__(self, timeout=10, interval=3):
            self.peers = {}
            self.timeout = timeout
            self.interval = interval
            
        def monitor_peer(self, peer_id):
            last_heartbeat = self.peers.get(peer_id, 0)
            if time.time() - last_heartbeat > self.timeout:
                self.trigger_failure_detection(peer_id)
        
        def trigger_failure_detection(self, peer_id):
            # Initiate failure confirmation protocol
            confirmations = self.request_failure_confirmations(peer_id)
            if len(confirmations) >= self.quorum_size():
                self.handle_peer_failure(peer_id)
    

    Network Partitioning

    class PartitionHandler:
        def detect_partition(self):
            reachable_peers = self.ping_all_peers()
            total_peers = len(self.known_peers)
            
            if len(reachable_peers) < total_peers * 0.5:
                return self.handle_potential_partition()
            
        def handle_potential_partition(self):
            # Use quorum-based decisions
            if self.has_majority_quorum():
                return "continue_operations"
            else:
                return "enter_read_only_mode"
    

    Load Balancing Strategies

    1. Dynamic Work Distribution

    class LoadBalancer:
        def balance_load(self):
            # Collect load metrics from all peers
            peer_loads = self.collect_load_metrics()
            
            # Identify overloaded and underutilized nodes
            overloaded = [p for p in peer_loads if p.cpu_usage > 0.8]
            underutilized = [p for p in peer_loads if p.cpu_usage < 0.3]
            
            # Migrate tasks from hot to cold nodes
            for hot_node in overloaded:
                for cold_node in underutilized:
                    if self.can_migrate_task(hot_node, cold_node):
                        self.migrate_task(hot_node, cold_node)
    

    2. Capability-Based Routing

    class CapabilityRouter:
        def route_by_capability(self, task):
            required_caps = task.required_capabilities
            
            # Find peers with matching capabilities
            capable_peers = []
            for peer in self.peers:
                capability_match = self.calculate_match_score(
                    peer.capabilities, required_caps
                )
                if capability_match > 0.7:  # 70% match threshold
                    capable_peers.append((peer, capability_match))
            
            # Route to best match with available capacity
            return self.select_optimal_peer(capable_peers)
    

    Performance Metrics

    Network Health

    • Connectivity: Percentage of nodes reachable
    • Latency: Average message delivery time
    • Throughput: Messages processed per second
    • Partition Resilience: Recovery time from splits

    Consensus Efficiency

    • Decision Latency: Time to reach consensus
    • Vote Participation: Percentage of nodes voting
    • Byzantine Tolerance: Fault threshold maintained
    • View Changes: Leader election frequency

    Load Distribution

    • Load Variance: Standard deviation of node utilization
    • Migration Frequency: Task redistribution rate
    • Hotspot Detection: Identification of overloaded nodes
    • Resource Utilization: Overall system efficiency

    Best Practices

    Network Design

    1. Optimal Connectivity: Maintain 3-5 connections per node
    2. Redundant Paths: Ensure multiple routes between nodes
    3. Geographic Distribution: Spread nodes across network zones
    4. Capacity Planning: Size network for peak load + 25% headroom

    Consensus Optimization

    1. Quorum Sizing: Use smallest viable quorum (>50%)
    2. Timeout Tuning: Balance responsiveness vs. stability
    3. Batching: Group operations for efficiency
    4. Preprocessing: Validate proposals before consensus

    Fault Tolerance

    1. Proactive Monitoring: Detect issues before failures
    2. Graceful Degradation: Maintain core functionality
    3. Recovery Procedures: Automated healing processes
    4. Backup Strategies: Replicate critical state$data

    Remember: In a mesh network, you are both a coordinator and a participant. Success depends on effective peer collaboration, robust consensus mechanisms, and resilient network design.

    Reproducido de ruvnet/ruflo bajo licencia MIT. Leer esta página en markdown.

    Archivos

    1 archivo en el paquete. Solo se lee SKILL.md al activarse — las referencias se cargan si el skill decide que las necesita.

    Antes de instalar

    Requiere las herramientas MCP mcp__claude-flow__swarm_init, daa_communication y daa_consensus.

    Variables de entorno:SWARM_ID

    Detalles

    Creador
    ruvnet
    Categoría
    Automatización
    Licencia
    MIT
    Recursos incluidos
    Solo SKILL.md
    Repositorio
    ruvnet/ruflo
    Código fuente
    Ver SKILL.md

    Etiquetas

    Más de ruvnet/ruflo

    Este repo incluye 275 skills. Si instalas uno, normalmente ya tienes los demás.

    Inspect and audit GEPA genomes via the `@metaharness/darwin/gepa` library entry (darwin 0.8.0) — load/validate a genome (default is the shipped cand-6 promotion), render the system prompt a genome compiles to, or classify failure modes in a run transcript. The `gepaOptimize` loop itself is library-only (bring your own evaluator) and not surfaced here — use `harness-evolve` for sandbox-scored evolution. Degrades gracefully when @metaharness/darwin is absent.

    Costo de contexto al activarse
    833 tok
    Tamaño del paquete
    1 archivo
    Última actualización
    hace 4 días
    Permisos
    herramientas desarrollo

    One-shot chat completion against DeepSeek's `deepseek-chat` model via the OpenAI-compatible /v1/chat/completions endpoint. Reads DEEPSEEK_API_KEY from the environment; degrades gracefully (exit 0 with a JSON status:degraded envelope) when the key is missing or the API is unreachable. Use for non-reasoning tasks — summarization, extraction, quick classification — where deepseek-reasoner would be overkill.

    Costo de contexto al activarse
    566 tok
    Tamaño del paquete
    1 archivo
    Última actualización
    hace 4 días
    Permisos
    herramientas desarrollo

    Reasoning-mode completion against DeepSeek's `deepseek-reasoner` model (R1) via /v1/chat/completions. Surfaces the model's chain-of-thought (`reasoning_content`) separately from the final answer (`content`), so callers can display or discard the CoT without re-parsing. Reads DEEPSEEK_API_KEY; degrades gracefully (exit 0 with status:degraded envelope) when unset or the API is unreachable. Ignores temperature/top_p per DeepSeek's spec for reasoner models.

    Costo de contexto al activarse
    627 tok
    Tamaño del paquete
    1 archivo
    Última actualización
    hace 4 días
    Permisos
    herramientas desarrollo

    Build or rebuild the ADR index + dependency graph by running scripts/import.mjs (handles v3-style and plugin-style ADR formats; one Bash call vs hundreds of MCP round-trips)

    Costo de contexto al activarse
    866 tok
    Tamaño del paquete
    1 archivo
    Última actualización
    hace 27 días
    herramientas desarrollo

    Create a new Architecture Decision Record with sequential numbering and AgentDB registration

    Costo de contexto al activarse
    680 tok
    Tamaño del paquete
    1 archivo
    Última actualización
    hace 27 días
    herramientas desarrollo

    Show AGNTCY/SLIM/CASA integration status — whether upstream AGNTCY packages are installed, which transport (local vs SLIM) is active, and whether CASA enforcement is enabled. Use when the user asks "is AGNTCY configured?", "show SLIM/CASA status", or "is AGNTCY/IOC integration active?".

    Costo de contexto al activarse
    443 tok
    Tamaño del paquete
    1 archivo
    Última actualización
    hace 26 días
    herramientas desarrollo