Saltar al contenido
GitTree

Agentes de Git y AI

Árboles de trabajo de Git para agentes de IA: ejecute Claude Code y Codex en paralelo

Un árbol de trabajo de git le da a cada agente de codificación de IA su propia carpeta y rama dentro de un repositorio. A continuación se explica cómo crear uno por agente, realizar un seguimiento de ellos en una GUI de Git y fusionar los resultados sin colisiones.

Escrito por KodmoraActualizado 15 minutos de lectura
Terminal integrado acoplado debajo del gráfico de confirmación en GitTree

Un git worktree es una carpeta de trabajo adicional vinculada al mismo repositorio: tiene su propia rama registrada, su propia área de preparación y sus propios archivos, mientras que todos los árboles de trabajo comparten las mismas confirmaciones, ramas y controles remotos. Eso hace que git worktree sea la forma más sencilla de ejecutar agentes de codificación de IA como Claude Code o Codex en paralelo. Proporcione a cada agente su propio árbol de trabajo y podrán editar, compilar, probar y confirmar al mismo tiempo sin tocar los archivos de los demás y sin un segundo clon.

Dos agentes en una carpeta comparten un árbol de trabajo: uno ejecuta pruebas en archivos, el otro está a medio camino de reescribir y un git checkout de cualquiera mueve el suelo debajo del otro. Los clones separados evitan eso pero necesitan sus propias recuperaciones; Los árboles de trabajo le brindan carpetas separadas con la contabilidad de un repositorio.

Qué es un árbol de trabajo de git y qué comparten los árboles de trabajo

Cada repositorio comienza con un árbol de trabajo, el árbol de trabajo principal: la carpeta que git clone o git init creó. git worktree add crea árboles de trabajo vinculados, carpetas adicionales adjuntas a los mismos datos de .git. Según la documentación oficial de git worktree, un árbol de trabajo vinculado comparte todo con el repositorio excepto los archivos por árbol de trabajo como HEAD y el índice. En la práctica:

Lo que cada árbol de trabajo guarda para sí mismo y lo que comparten todos los árboles de trabajo
Parte del repositorio¿Copia propia o compartida?Qué significa para los agentes paralelos
Archivos de trabajoCopia propiaLas ediciones de un agente nunca sobrescriben los archivos de otro
HEAD y la rama retiradaCopia propiaCada agente permanece en su propia sucursal.
Índice (área de preparación)Copia propiaUn git add en un árbol de trabajo no presenta nada en otro
Confirmaciones y objetosCompartidoUn commit realizado en cualquier árbol de trabajo es visible en todos ellos
Ramas y etiquetasCompartidoPuede fusionar la sucursal de un agente desde su carpeta principal sin necesidad de buscarla
Configuración del repositorioCompartido por defectoSe aplican controles remotos y alias en cada árbol de trabajo

Una regla es importante para los agentes: de forma predeterminada, git worktree add se niega a desproteger una rama que ya está desprotegida en otro árbol de trabajo. Por lo tanto, cada agente necesita su propia sucursal, que es exactamente lo que desea en el momento de la revisión.

Cómo crear un árbol de trabajo con git worktree add

Ejecute los comandos desde dentro de su repositorio y coloque nuevos árboles de trabajo al lado en lugar de dentro de él, para que los editores, las herramientas de búsqueda y los agentes no indexen un pago desde dentro de otro. Esto crea dos árboles de trabajo, cada uno en una nueva rama que comienza en main:

cd ~/code/myapp
git worktree add -b agent/auth-refactor ../myapp-auth main
git worktree add -b agent/flaky-tests ../myapp-tests main
git worktree list

-b crea la rama, la ruta es la nueva carpeta y el último argumento es la confirmación desde la que comenzar. git worktree list imprime cada árbol de trabajo con su carpeta, confirmación y rama. Para utilizar una rama que ya existe, omita -b: git worktree add ../myapp-review feature/login.

Un agente de IA por árbol de trabajo: el flujo de trabajo paralelo

El patrón es simple: una tarea, una rama, un árbol de trabajo, una sesión de agente. Usted permanece en el árbol de trabajo principal como revisor y los agentes nunca comparten una carpeta. Lo que más importa es cómo divides el trabajo. Buenas tareas paralelas son:

  • En diferentes partes del código, como una refactorización en auth/ y nuevas pruebas en billing/, por lo que sus ramas rara vez tocan las mismas líneas.
  • Claramente hecho o no hecho: una prueba fallida que debería pasar, un punto final para agregar, una dependencia para actualizar.
  • Lo suficientemente pequeño como para revisarlo de una sola vez. Una gran diferencia entre agentes es un problema de revisión, independientemente de la carpeta de donde provenga.

Cómo ejecutar agentes de codificación de IA en paralelo con árboles de trabajo de git

  1. Comprometer o esconder su trabajo actual

    Los nuevos árboles de trabajo comienzan a partir de una confirmación y los cambios no confirmados en su carpeta principal permanecen, por lo que cada agente debe comenzar desde el mismo estado comprometido.

  2. Cree un árbol de trabajo por tarea

    Ejecute git worktree add -b agent/<task> ../<repo>-<task> main una vez por tarea o cree los árboles de trabajo desde una GUI de Git.

  3. Prepara cada carpeta

    Instale las dependencias, copie los archivos de entorno que necesita el proyecto y ejecute la compilación una vez, de modo que cada agente comience desde una verificación que funcione.

  4. Inicie un agente en cada carpeta

    Abra una terminal por árbol de trabajo e inicie su agente allí, por ejemplo claude en uno y codex en otro, cada uno con un mensaje específico que nombra el área que posee.

  5. Revisar, fusionar y limpiar

    Cuando un agente finaliza, lea su diferencia, combine su rama de su árbol de trabajo principal, luego elimine el árbol de trabajo y elimine la rama.

cd ../myapp-auth && claude
cd ../myapp-tests && codex

Ejecute cada línea en su propia terminal; Las pruebas y compilaciones de cada agente se ejecutan en sus propios archivos.

Usando árboles de trabajo de Git con Claude Code

Para darle a Claude Code su propio árbol de trabajo a mano, cree el árbol de trabajo con Git simple y comience claude dentro de él; Luego, el agente lee y edita solo esa carpeta y confirma en esa rama:

git worktree add ../myapp-auth -b agent/auth
cd ../myapp-auth
claude

Bandera --worktree de Claude Code

Claude Code puede crear el árbol de trabajo por usted. Según la documentación del árbol de trabajo de Claude Code, claude --worktree feature-auth (o -w) crea un árbol de trabajo en .claude/worktrees/feature-auth/ en una nueva rama llamada worktree-feature-auth, ramificada desde la rama predeterminada del repositorio a menos que la configuración worktree.baseRef indique lo contrario. Un archivo .worktreeinclude copia archivos ignorados como .env en cada nuevo árbol de trabajo. Al salir, Claude Code elimina un árbol de trabajo limpio y su rama de una sesión sin nombre y pregunta antes de eliminar uno con cambios o nuevas confirmaciones.

claude --worktree feature-auth

Uso de árboles de trabajo de Git con Codex CLI

La CLI del Codex funciona en el directorio desde el que se inicia, por lo que un árbol de trabajo por sesión del Codex mantiene separadas las ediciones, pruebas y confirmaciones de cada sesión:

git worktree add ../myapp-tests -b agent/tests
cd ../myapp-tests
codex

La aplicación Codex y la CLI de Codex

La documentación del árbol de trabajo de la aplicación Codex de OpenAI describe árboles de trabajo que permiten al Codex ejecutar varios chats en un proyecto. De forma predeterminada, van en $CODEX_HOME/worktrees, según la rama que elijas, y comienzan en un estado HEAD separado en lugar de en una rama. En el encabezado del chat, Hand off mueve un chat entre un árbol de trabajo y su pago local, y Crear rama aquí convierte el trabajo de un árbol de trabajo en una rama que puede revisar y fusionar. Con la CLI de Codex, ejecutas codex desde un directorio de proyecto, así que inícialo dentro del árbol de trabajo que creaste.

De cualquier manera, estos son árboles de trabajo de Git ordinarios, visibles para git worktree list y para cualquier GUI de Git que los lea.

Una GUI de git worktree: seguimiento de la carpeta y rama de cada agente

Con tres o cuatro agentes en ejecución, la parte difícil es realizar un seguimiento: qué rama se encuentra en qué carpeta y qué agente aún está cambiando archivos. GitTree, el cliente Git para macOS, Windows y Linux que publica este blog (repositorios privados incluidos), lee los árboles de trabajo que Git ya conoce, incluidos los que creó Claude Code o Codex, y le da a cada uno un lugar en la interfaz.

En GitTree, la sección ÁRBOLES DE TRABAJO del panel izquierdo enumera cada árbol de trabajo y el menú de rama ofrece Crear árbol de trabajo para esta rama.
En GitTree, la sección ÁRBOLES DE TRABAJO del panel izquierdo enumera cada árbol de trabajo y el menú de rama ofrece Crear árbol de trabajo para esta rama.
  • Una sección ÁRBOLES DE TRABAJO en el panel izquierdo. Cada árbol de trabajo, el principal primero, nombrado por su rama (o su carpeta cuando está separado), con una marca de verificación en el que está abierto en esta pestaña. Los árboles de trabajo bloqueados, desconectados y faltantes están etiquetados.
  • Árboles de trabajo hermanos en sugerencias de rama. El gráfico de confirmación marca cada uno de los árboles de trabajo en su punta de rama con la cantidad de cambios que contiene, una forma rápida de ver qué agentes aún están editando. Al hacer clic en el marcador se abre la pestaña de ese árbol de trabajo.
  • Crea un árbol de trabajo desde donde estás. Crear árbol de trabajo... en la paleta de comandos o Crear árbol de trabajo desde esta confirmación... en una confirmación te permite elegir una nueva rama o una salida separada, luego la carpeta; Crear árbol de trabajo para esta rama… en una rama verifica esa rama en la nueva carpeta.
  • Una pestaña por árbol de trabajo, con su propia terminal. Abrir Worktree en una pestaña nueva lo abre como cualquier repositorio, y la terminal integrada debajo del gráfico comienza en la carpeta de ese árbol de trabajo con su propio shell, por lo que puede iniciar claude o codex allí mismo.
  • Bloquear, mover, eliminar, podar y reparar. Bloquear con un motivo opcional, mover una carpeta o eliminarla. Git se niega a eliminar un árbol de trabajo con cambios no confirmados y la rama permanece. Prune Stale Worktrees muestra una vista previa de lo que Git eliminaría y Repair Worktree Links, ejecutado desde un árbol de trabajo que movió manualmente, lo vuelve a conectar.

Cada acción ejecuta el Git que ya tienes instalado, por lo que el resultado coincide con la línea de comando:

Comandos de git worktree y sus equivalentes GitTree
Tarealínea de comandoEn GitTree
creargit worktree add -b <branch> <path> <start>Crear árbol de trabajo… (paleta de comandos, menú de confirmación o rama)
Listagit worktree listSección WORKTREES y marcadores en las puntas de las ramas.
Abiertocd <path>Abrir Worktree en una nueva pestaña
Bloqueargit worktree lock --reason "<text>" <path>Bloquear Worktree… (motivo opcional)
Movergit worktree move <path> <new-path>Mover árbol de trabajo…
Quitargit worktree remove <path>Eliminar árbol de trabajo…
podargit worktree prunePodar árboles de trabajo obsoletos... (con una vista previa)
Reparacióngit worktree repairReparar enlaces de árbol de trabajo

La GitTree página de características enumera todo lo demás que hace la aplicación, y Git GUI vs línea de comando cubre cuándo cada enfoque es más rápido.

Fusionando el trabajo de varios agentes de IA.

Debido a que las ramas se comparten, su árbol de trabajo principal ve la rama de cada agente en el momento en que el agente se compromete. Trate cada uno como una solicitud de extracción de un compañero de equipo: confiable, pero revisado.

  1. Primero lea la diferencia. Compare la rama del agente con main fragmento por fragmento y busque ediciones no relacionadas, pruebas eliminadas y nuevas dependencias.
  2. Compruebe si hay superposición. GitTree predice conflictos antes de una fusión, advierte junto al nombre de una rama cuando entraría en conflicto con main y da pistas cuando otras ramas no fusionadas tocan los mismos archivos, todo ello calculado en su computadora. Con varias ramas de agentes, eso muestra qué orden de fusión duele menos.
  3. Ordena el historial. El punto de control de Squash se confirma con una rebase interactiva en una GUI, dentro del árbol de trabajo de ese agente: Git no desprotege una rama que esté desprotegida en otra carpeta.
  4. Fusionar o abrir una solicitud de extracción. Fusionar desde su árbol de trabajo principal o arrastrar la rama del agente a main en GitTree para fusionar, cambiar la base o iniciar una solicitud de extracción.
  5. Manténgase alejado. Si dos agentes cambiaron las mismas líneas, consulte cómo resolver conflictos de fusión de Git; Si una combinación sale mal, puede deshacer una combinación, restablecer o cambiar la base.
  6. Limpiar. Elimine el árbol de trabajo y luego elimine la rama fusionada.
git switch main
git merge --no-ff agent/auth-refactor
git worktree remove ../myapp-auth
git branch -d agent/auth-refactor

Errores del árbol de trabajo de Git con agentes de codificación de IA

  • Forzar una rama a dos árboles de trabajo. --force evita el rechazo de Git a costa de que dos carpetas peleen por una rama. En su lugar, abra el árbol de trabajo existente; GitTree te indica dónde está registrada esa sucursal.
  • Suponiendo que los árboles de trabajo aíslan todo. Aíslan archivos, no servicios. Los agentes que inician servidores de desarrollo en el mismo puerto o migran la misma base de datos local aún colisionan, así que asigne a cada árbol de trabajo su propio puerto y base de datos de prueba.
  • Eliminar o mover carpetas manualmente. Git mantiene un registro de cada árbol de trabajo. El registro de una carpeta eliminada permanece hasta que git worktree prune (o, mucho más tarde, la limpieza automática de Git) la elimina; git worktree repair, ejecuta dentro de una carpeta que moviste, la vuelve a conectar. Bloquee los árboles de trabajo en unidades que no siempre estén montadas para que la poda los deje en paz.
  • Forzar la eliminación del trabajo no revisado. git worktree remove rechaza un árbol de trabajo con cambios a menos que agregues --force, así que lee la diferencia primero. Las ejecuciones -p no interactivas de Claude Code dejan sus árboles de trabajo bloqueados hasta que una sesión posterior los libere; desbloquee uno antes de quitarlo usted mismo.
  • Cerrar la pestaña que ejecuta el agente. En GitTree, el terminal integrado pertenece a su pestaña de repositorio y cerrar la pestaña detiene sus sesiones de terminal, incluido un agente que se ejecuta en uno.
  • Tiene más agentes de los que puede revisar. La revisión es el verdadero cuello de botella. Comience con dos o tres tareas paralelas y agregue más una vez que fusionarlas se sienta rutinario.

Pruebe los árboles de trabajo en su próxima tarea

Los comandos del árbol de trabajo de Git son todo lo que necesita para comenzar, y una GUI hace que sea más fácil observar varios árboles de trabajo. GitTree tiene un plan gratuito en macOS, Windows y Linux que cubre todas las funciones de Git, incluidos los repositorios privados, y Nour, el asistente de IA, viene con GitTree Pro. Todas las funciones de Git están en el plan gratuito una vez que inicias sesión y necesitan Git 2.39 o más reciente; en Ubuntu 22.04, actualizar Git en Ubuntu primero. Siga la Linux guía de instalación o visite la GitTree página de descarga.

Preguntas frecuentes

¿Cuál es la diferencia entre git worktree y git clone?

Un clon copia todo el repositorio en una nueva carpeta con su propia base de datos de objetos, por lo que sus ramas y confirmaciones llegan a otro clon solo mediante un push y un fetch. Un árbol de trabajo es una carpeta adicional del mismo repositorio: las confirmaciones y ramas se comparten a la vez, mientras que cada carpeta mantiene sus propios archivos, rama y área de preparación.

¿Pueden dos árboles de trabajo de git tener desprotegida la misma rama?

No por defecto. Git se niega a crear un árbol de trabajo para una rama que ya está desprotegida en otro árbol de trabajo, y es mejor dejar la opción forzar que anula esto. Proporcione a cada árbol de trabajo, y por lo tanto a cada agente de IA, su propia rama, creada a partir del mismo compromiso si necesitan el mismo punto de partida.

¿Claude Code admite árboles de trabajo de git?

Sí. La documentación de Claude Code describe un indicador --worktree, o -w para abreviar, que crea un árbol de trabajo en .claude/worktrees en una nueva rama e inicia la sesión dentro de ella. También puedes crear un árbol de trabajo con git worktree add, cambiarlo a su carpeta e iniciar Claude Code allí, que funciona de la misma manera para Codex.

¿Cómo elimino un árbol de trabajo de git de forma segura?

Ejecute git worktree remove con la ruta de la carpeta. Git se niega mientras el árbol de trabajo tiene cambios no confirmados o archivos sin seguimiento, así que revíselos o confirme primero y use la opción forzar solo cuando esté seguro. La rama se conserva, así que elimínela por separado una vez fusionada. Si eliminaste la carpeta manualmente, git worktree prune borra el registro sobrante.

¿Los árboles de trabajo de git comparten node_modules, .env o archivos de compilación?

No. Un nuevo árbol de trabajo contiene solo los archivos que Git rastrea. Las dependencias instaladas, los archivos de entorno y los resultados de la compilación permanecen en la carpeta donde se crearon, por lo que cada árbol de trabajo necesita su propia instalación y su propia copia de la configuración local. Para los árboles de trabajo que crea, Claude Code puede copiar los archivos ignorados elegidos a través de un archivo .worktreeinclude.

¿Cuál es el mejor administrador de árbol de trabajo de git con GUI?

Busque un cliente que enumere cada árbol de trabajo, muestre la rama de cada uno y si contiene cambios, y que pueda agregar, bloquear, mover, eliminar, podar y reparar árboles de trabajo sin la terminal. GitTree, disponible en macOS, Windows y Linux, hace todo eso y marca los árboles de trabajo hermanos en sus sugerencias de rama en el gráfico de confirmación.

¿GitTree inicia agentes de IA en árboles de trabajo por mí?

No. GitTree administra los árboles de trabajo y le da a cada uno su propia pestaña, con una terminal incorporada que comienza en la carpeta de ese árbol de trabajo, donde usted mismo inicia Claude Code, Codex u otro agente. Por separado, GitTree puede redactar mensajes de confirmación y descripciones de solicitudes de extracción a través de su propio Claude Code, Codex o Antigravity CLI cuando hace clic en Generar.

Fuentes

Las afirmaciones sobre otros productos se compararon con sus páginas oficiales el 22 de octubre de 2026. Los precios y las características cambian; Las páginas de los proveedores son la fuente de la verdad.