---
name: vibesync
description: >-
  Colaboración multi-agente y multi-persona en tiempo real sobre un repo vía
  VibeSync. Úsala cuando el usuario quiera unirse a un proyecto compartido por un
  link de VibeSync, sincronizar archivos en vivo entre IDEs (Antigravity, Cursor,
  Claude, VS Code), o coordinar cambios con otros agentes sin pisarse. Cubre
  instalar/conectar (para vibecoders que no saben código) y operar (tools MCP +
  daemon de sync en vivo, con modos live/safe).
---

# VibeSync — colaborar en tiempo real (instalar y usar)

VibeSync vuelve un repo "multijugador": varias personas/agentes editan a la vez y
los cambios se ven al instante, sin pisarse. Tú (la IA) haces la instalación por
el usuario — asume que NO sabe programar; explícale en simple.

## Conectar a alguien por un link (instalación para dummies)

Si el usuario te da un link tipo `https://…/join/<código>`:

1. Abre el runbook del propio host y síguelo al pie de la letra:
   `<host>/join/<código>/agent.md` (trae los comandos exactos, ya rellenados).
2. En resumen, lo que hace ese runbook:
   - baja el proyecto + el conector + el daemon con **un comando**
     (`irm <host>/join/<código>/client.py | python -` en Windows;
      `curl -fsSL …/client.py | python3 -` en mac/Linux),
   - `pip install httpx websockets mcp`,
   - arranca el **sync en vivo**: `python vibesync_live.py` (déjalo corriendo),
   - (opcional) registra el server MCP `vibesync` (de `vibesync.mcp.json`) en la
     config MCP del IDE y recarga.
3. Verifica creando un archivo de prueba: debe aparecer en las otras copias en
   segundos. Confírmale: "✅ Sync en vivo activo".

## Modos de sincronización (daemon `vibesync_live.py`)

- **live** (default): cambios automáticos en ambos sentidos, al instante.
- **safe**: manda tus cambios, pero NO sobrescribe un archivo que el usuario editó
  localmente (si chocaría, lo retiene y avisa). Actívalo con
  `VIBESYNC_SYNC_MODE=safe`. Recomiéndalo si al usuario le preocupa perder ediciones.

## Tools MCP (cuando el server `vibesync` está cargado)

Úsalos para coordinar cambios sin colisiones (estilo multi-agente):

- `vibesync_context` — **llámalo primero**: dice a dónde va el push y cómo trabajar.
- `vibesync_sync` — snapshot del estado vigente; llámalo ANTES de escribir.
- `vibesync_propose` — pre-vuelo: reporta conflictos SIN consolidar (revisa antes).
- `vibesync_commit` — consolida cambios; si tocan algo sensible (rutas protegidas o
  secretos), quedan **retenidos para aprobación humana** (no se hace push sin visto bueno).
- `vibesync_pending_sync` — cambios remotos sostenidos por seguridad.
- `vibesync_task_claim` / `vibesync_task_progress` — remote-control: reclama y
  reporta tareas que el admin pide por chat.

Flujo recomendado del agente: `vibesync_context` → `vibesync_sync` →
(editar) → `vibesync_propose` (si dudas) → `vibesync_commit`.

## Reglas

- Para ediciones de **humanos en tiempo real**, basta el daemon `vibesync_live.py`
  (no requiere que la IA commitee).
- Para cambios de la **IA** con revisión, usa `vibesync_propose` antes de
  `vibesync_commit`. Lo sensible pasa por aprobación — no lo evadas.
- Deja claro al usuario que `vibesync_live.py` debe seguir corriendo para sincronizar.
