Guía

Worktrees para que los agentes no se pisen

Dos agentes en el mismo directorio no están en paralelo. Están en conflicto, aunque cada uno crea que el archivo es suyo.

Actualizado 16 de octubre de 2026 · 4 min de lectura

Worktrees en vivo

Dale a cada agente su propio worktree

mainestás aquí · puerto 3000
    Cada carril es un worktree de git real: su carpeta, su rama, su puerto y una copia de .env.

    Qué ganas con un checkout aparte

    El árbol de trabajo deja de ser un recurso compartido. Claude puede reescribir el API mientras Cursor reescribe la pantalla, y git no tiene que resolver un conflicto a cada minuto. Tu rama, la que tienes abierta en el editor, se queda quieta hasta que decides traer el resultado.

    doki guarda el registro de esos worktrees en ~/.doki. No es un sistema de ramas paralelo a git: son worktrees de git, visibles con las herramientas que ya usas.

    Puerto y .env, que es donde de verdad chocan

    El conflicto más común no es un merge. Es el puerto 3000 ocupado y un .env que un agente acaba de apuntar a otra base. doki reserva un puerto por worktree y copia el .env al checkout nuevo, para que cada agente levante su propio servidor.

    Esos puertos aparecen en la lista de la app y en el notch del Mac: quién lo abrió, cuánta CPU y memoria usa, y la URL. Puedes abrirla, copiarla, pasarla por un túnel SSH si el proceso está en otra máquina, o pararlo.

    Fusionar, abrir un PR o tirar el trabajo

    Cuando el agente marca que terminó, tienes tres salidas limpias. Fusionar, si ya confías en el diff. Abrir un pull request con gh, si el cambio debe pasar por la revisión de siempre. Descartar, si el experimento no sirvió y no quieres dejar la rama colgando.

    Antes de esas salidas cabe la revisión automática del diff: listo, revisar o no fusionar, con riesgos y secretos. Si el veredicto no es limpio, doki puede devolverle los hallazgos al agente. El flujo está en revisión del diff.

    Dos worktrees que se hablan

    Un combo pone a un agente a construir y a otro a revisar, cada uno en su sitio, hasta que el resultado se aprueba o se atascan y te llaman. Es el uso natural de dos worktrees: el revisor no edita encima del autor.

    Cursor por API puede ocupar uno de esos papeles sin que abras el editor. El otro puede ser Claude o Codex en la terminal. La comparación de esas vías está en Cursor vs doki y en varios agentes.

    Límites prácticos

    Cada worktree es una copia de los archivos. En un monorepo enorme, diez agentes significan diez checkouts y el disco se nota. Tiene sentido en las tareas que de verdad corren juntas, no en todo experimento de cinco minutos.

    La copia de .env es un secreto más. Vive en esa carpeta, con los permisos del usuario. No la subas en el PR. La revisión de secretos está para pillar justo ese error.

    Preguntas frecuentes

    ¿Tengo que crear el worktree a mano?

    No. doki puede crearlo al encargar la tarea, con la rama, el puerto y la copia de .env. Si prefieres uno que ya armaste, el agente igual puede trabajar ahí.

    ¿Mi editor ve esos archivos?

    Sí. Es un checkout normal en otra carpeta. Puedes abrirlo en Cursor o en cualquier editor cuando quieras mirar el diff con calma.

    ¿El PR lo abre doki o gh?

    doki lo dispara con gh. Hace falta tener gh instalado y autenticado, igual que para abrir un PR desde la terminal.

    ¿Sirve en un servidor remoto?

    El agente remoto puede tener su propio checkout en esa máquina. El Inbox del Mac muestra la sesión. El worktree no se copia al portátil solo por estar conectado.

    Que ningún agente se quede esperando.

    doki junta en un Inbox a Claude Code, Codex, Cursor y los demás agentes que ya usas, en tu Mac, tu iPhone y tus servidores.

    Ver precios →