Vibecosystem swarm-optimization-patterns

Multi-agent coordination, critical path method, dependency DAG, and agent allocation optimization

install
source · Clone the upstream repo
git clone https://github.com/vibeeval/vibecosystem
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/vibeeval/vibecosystem "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/swarm-optimization-patterns" ~/.claude/skills/vibeeval-vibecosystem-swarm-optimization-patterns && rm -rf "$T"
manifest: skills/swarm-optimization-patterns/SKILL.md
source content

Swarm Optimization Patterns

Critical Path Method (CPM)

Task A (3min) ─┐
               ├── Task D (5min) ── Task F (2min)
Task B (2min) ─┘        │
                         └── Task E (3min) ── Task G (1min)
Task C (4min) ─────────────────────────────── Task H (2min)

Critical Path: C → H = 6min (longest path)
Zero-slack: C, H (gecikme tüm timeline'ı etkiler)

Dependency DAG Construction

interface TaskNode {
  id: string
  agent: string
  estimatedMinutes: number
  dependencies: string[]  // task IDs
  priority: 'critical' | 'high' | 'medium' | 'low'
}

// Topological sort ile execution order
function buildExecutionPlan(tasks: TaskNode[]): TaskNode[][] {
  const layers: TaskNode[][] = []
  const completed = new Set<string>()

  while (completed.size < tasks.length) {
    const ready = tasks.filter(t =>
      !completed.has(t.id) &&
      t.dependencies.every(d => completed.has(d))
    )
    layers.push(ready)  // Bu layer paralel çalışabilir
    ready.forEach(t => completed.add(t.id))
  }
  return layers
}

Agent Allocation Strategy

StratejiNe ZamanNasıl
SpecializationUzman agent varTask → matching agent
Load BalancingEşit workloadRound-robin + capacity
Priority-BasedCritical pathZero-slack task'lara öncelik
AffinityContext reuseAynı dosyaları kullanan task'lar aynı agent'a

Bottleneck Detection

## Bottleneck Tipleri

| Tip | Tespit | Çözüm |
|-----|--------|-------|
| Resource Contention | Aynı dosya birden fazla agent | Sıralı execute veya lock |
| QA Queue | Review bekleyen task yığılması | Paralel reviewer |
| Dependency Chain | Uzun sıralı bağımlılık | Task decomposition |
| Agent Failure | Tekrarlayan fail | Fallback agent, reassign |

Parallel Execution Rules

BAĞIMSIZ task'lar → PARALEL
  - Farklı dosyalarda çalışan
  - Birbirine bağımlı olmayan
  - Farklı concern'ler (frontend + backend)

BAĞIMLI task'lar → SIRALI
  - Aynı dosyada çalışan
  - Output → Input ilişkisi olan
  - Schema → Code → Test zinciri

Phase Transition Criteria

PhaseGeçiş Kriteri
Keşif → GeliştirmePlan onaylandı, task'lar tanımlı
Geliştirme → ReviewTüm task'lar QA'den geçti
Review → DüzeltmeReview feedback var
Düzeltme → FinalTüm feedback resolved

Amdahl's Law

Speedup = 1 / ((1-P) + P/N)

P = parallelizable fraction
N = number of agents

Örnek: %80 parallel, 5 agent
Speedup = 1 / (0.2 + 0.8/5) = 1/0.36 = 2.78x

Checklist

  • Dependency DAG oluşturulmuş
  • Critical path tespit edilmiş
  • Paralel task'lar paralel assign
  • Bottleneck detection aktif
  • Agent-task affinity uygun
  • Phase transition kriterleri tanımlı
  • Fallback agent'lar belirlenmiş

Anti-Patterns

  • Tüm task'ları sıralı çalıştırma
  • Bağımlı task'ları paralel çalıştırma (conflict)
  • Her task'a ayrı agent (overhead)
  • Critical path'i optimize etmemek
  • Agent fail sonrası retry etmemek