A version control system for the age of AI agents. Patches, not snapshots. Deterministic merges. N agents in parallel — no conflicts, no stash, no branch hell. Un sistema de control de versiones para la era de los agentes IA. Patches, no snapshots. Merges determinísticos. N agentes en paralelo — sin conflictos, sin stash, sin infierno de ramas.
Git's branch model made sense in 2005 — one developer, working in series. Today you have teams, CI bots, and AI agents all touching the same codebase in parallel. GitFlow is bureaucracy masquerading as process. El modelo de ramas de Git tenía sentido en 2005 — un desarrollador trabajando en serie. Hoy tienes equipos, bots de CI y agentes IA tocando el mismo codebase en paralelo. GitFlow es burocracia disfrazada de proceso.
Every change is content-addressed via blake3. Permanent, verifiable, composable. No history rewriting, ever.Cada cambio está identificado por blake3. Permanente, verificable, composable. Sin reescritura de historial.
Two patches conflict only when their hunks intersect — mathematically. No 3-way merge heuristics. No "ours vs theirs".Dos patches conflictúan solo cuando sus hunks se intersectan — matemáticamente. Sin heurísticas de merge.
gRPC endpoints built for Claude, Cursor, or any autonomous process. Open a WorkSlot, write patches, merge — without humans.Endpoints gRPC para Claude, Cursor o cualquier proceso autónomo. WorkSlot, patches, merge — sin humanos.
N developers or agents work in isolated slots simultaneously. No locking, no blocking. Ephemeral workspaces — create, fill, merge, done.N desarrolladores o agentes en slots aislados en paralelo. Sin locks ni bloqueos. Espacios de trabajo efímeros.
Push to GitHub as normal commits. GitWeave is the source of truth; Git is the export format. Zero lock-in.Push a GitHub como commits normales. GitWeave es la fuente de verdad; Git es el formato de exportación.
Built with Tauri — ~14MB for Mac, Windows & Linux. Rust backend, modern web UI. No Electron, no Chrome bundled inside.Construido con Tauri — ~14MB para Mac, Windows y Linux. Backend Rust, UI web moderna. Sin Electron.
A Patch knows its hash, its deps, and its hunks. The ConflictEngine asks one question: do hunks intersect? No heuristics.Un Patch conoce su hash, sus deps y sus hunks. El ConflictEngine hace una pregunta: ¿se intersectan los hunks? Sin heurísticas.
Written in Rust. No unsafe, no unwrap in production code. Built for correctness.Escrito en Rust. Sin unsafe ni unwrap en producción. Construido para ser correcto.
Creates .gw/ with the local PatchStore. Works on existing Git repos too.Crea .gw/ con el PatchStore local. Compatible con repos Git existentes.
Each developer or agent gets an isolated slot. No branch creation, no checkout, no switching.Cada desarrollador o agente obtiene un slot aislado. Sin crear ramas, sin checkout, sin switching.
gw slot --name my-featureEdit files normally. GitWeave tracks changes as immutable patches with explicit dependencies.Edita archivos normalmente. GitWeave registra cambios como patches inmutables con dependencias explícitas.
gw patch "fix auth middleware"No conflicts unless hunks truly intersect. If they don't — instantaneous. If they do — GitWeave tells you exactly which lines collide.Sin conflictos a menos que los hunks se toquen. Si no — instantáneo. Si sí — GitWeave te dice exactamente qué líneas.
gw merge slot-a slot-bFreeze a curated patch set as a release. Export to Git commits for GitHub. Your CI/CD pipeline sees nothing different.Congela un patch set curado como release. Exporta a commits Git para GitHub. Tu CI/CD no nota diferencia.
gw release v1.0.0 && gw push originApprove, request changes, or comment on any patch — from the desktop app, the CLI, or the gRPC API. Reviews are structural: they live on the patch, not on a PR. Aprueba, solicita cambios o comenta en cualquier patch — desde la app de escritorio, el CLI o la API gRPC. Los reviews son estructurales: viven en el patch, no en un PR.
Approve, request changes, or comment on individual patches. Verdict is computed automatically: approved, changes_requested, or pending.
Aprueba, solicita cambios o comenta en patches individuales. El veredicto se calcula automáticamente: approved, changes_requested o pending.
A unified timeline of patches and review status across all slots. See what happened, who reviewed what, and what still needs attention — at a glance. Timeline unificado de patches y estado de review en todos los slots. Ve qué pasó, quién revisó qué y qué necesita atención — de un vistazo.
Like Graphite's stacked PRs, but native to the patch model. gw stack shows the full dependency chain from root to tip, with review status on each.
Como los stacked PRs de Graphite, pero nativos al modelo de patches. gw stack muestra la cadena completa de dependencias de raíz a tip, con estado de review en cada uno.
Stage individual files before recording a patch. Select all, deselect specific files, or record only a subset of your changes — just like git add -p but visual.
Selecciona archivos individuales antes de grabar un patch. Selecciona todos, deselecciona archivos específicos, o graba solo un subconjunto — como git add -p pero visual.
Exclude files from tracking with glob patterns. Like .gitignore, but for the GitWeave model. Built-in defaults for target/, node_modules/, dist/.
Excluye archivos del tracking con patrones glob. Como .gitignore, pero para el modelo GitWeave. Defaults integrados para target/, node_modules/, dist/.
gw stack · gw review approve · gw review show — manage reviews and visualize stacks from the terminal. Full gRPC client SDK for building custom agents.
gw stack · gw review approve · gw review show — gestiona reviews y visualiza stacks desde la terminal. SDK gRPC completo para construir agentes custom.
Verify that a slot has no conflicts with the rest of the repository. Like Aviator's av sync, but without rebasing — patches are immutable, so sync just checks compatibility.
Verifica que un slot no tiene conflictos con el resto del repositorio. Como av sync de Aviator, pero sin rebase — los patches son inmutables, sync solo verifica compatibilidad.
Mark a slot as ready for review. Runs sync first — if there are conflicts, submit is blocked. Transitions the slot from active to submitted.
Marca un slot como listo para review. Ejecuta sync primero — si hay conflictos, el submit se bloquea. Transiciona el slot de active a submitted.
Create a slot on top of another with gw slot create --on parent. Child slots inherit the parent's context. Sync checks conflicts against the parent too. Like stacked PRs, but for patches.
Crea un slot encima de otro con gw slot create --on parent. Los slots hijos heredan el contexto del padre. Sync verifica conflictos contra el padre también. Como stacked PRs, pero para patches.
Made a bad merge? gw undo-merge restores both slots to their pre-merge state. One command, full rollback — no history rewriting needed because patches are immutable.
Hiciste un merge malo? gw undo-merge restaura ambos slots a su estado pre-merge. Un comando, rollback completo — sin reescritura de historial porque los patches son inmutables.
When patches collide, the desktop app shows exactly which hunks intersect — side by side, file by file. No guessing, no "ours vs theirs" — you see the precise lines that conflict. Cuando los patches colisionan, la app de escritorio muestra exactamente qué hunks se intersectan — lado a lado, archivo por archivo. Sin adivinar, sin "ours vs theirs" — ves las líneas exactas en conflicto.
Native OS file watcher (fsnotify) detects changes instantly — no polling. The UI updates the moment you save a file. 500ms debounce, zero CPU waste. File watcher nativo del OS (fsnotify) detecta cambios al instante — sin polling. La UI se actualiza en el momento que guardas un archivo. Debounce de 500ms, cero desperdicio de CPU.
Push patches directly to GitHub, GitLab, or Bitbucket — no intermediate step. gw remote add origin <url>, then gw push. Pull works the same way. Your CI/CD sees normal Git commits.
Push patches directo a GitHub, GitLab o Bitbucket — sin paso intermedio. gw remote add origin <url>, luego gw push. Pull funciona igual. Tu CI/CD ve commits Git normales.
Manage remotes like Git: gw remote add / remove / list. Stored per-repo in .gw/remotes.json. Push and pull resolve by name — just gw push uses "origin" by default.
Gestiona remotes como Git: gw remote add / remove / list. Almacenados por repo en .gw/remotes.json. Push y pull resuelven por nombre — gw push usa "origin" por defecto.
64 tests: 48 unit tests covering the core engine, 13 end-to-end CLI tests running the full workflow (init → record → slot → merge → undo → review → export), and integration tests for the Git bridge. 64 tests: 48 tests unitarios cubriendo el motor core, 13 tests E2E del CLI ejecutando el flujo completo (init → record → slot → merge → undo → review → export), y tests de integración para el puente Git.
The full documentation explains why Git's snapshot model breaks down under concurrent, multi-agent editing, how the hunk-intersection algorithm works, and how WorkSlots replace every piece of GitFlow with something simpler and more correct. La documentación completa explica por qué el modelo de snapshots de Git se rompe bajo edición concurrente multi-agente, cómo funciona el algoritmo de intersección de hunks, y cómo los WorkSlots reemplazan cada pieza de GitFlow con algo más simple y más correcto.
Why snapshot-based VCS breaks down in the age of AI agents and parallel development.Por qué el VCS basado en snapshots se rompe en la era de agentes IA y desarrollo paralelo.
Side-by-side mapping from every GitFlow concept to its GitWeave equivalent — feature branches, stash, cherry-pick, all of it.Mapeo 1 a 1 de cada concepto de GitFlow a su equivalente en GitWeave — feature branches, stash, cherry-pick, todo.
Patches, Hunks, DAG, WorkSlots, ConflictEngine — the five primitives that make everything work.Patches, Hunks, DAG, WorkSlots, ConflictEngine — las cinco primitivas que hacen que todo funcione.
How N autonomous agents work on the same codebase without conflict, lock, or human supervision via the gRPC daemon.Cómo N agentes autónomos trabajan en el mismo codebase sin conflicto, lock, ni supervisión humana vía el daemon gRPC.
How GitWeave exports to regular Git commits so your GitHub, GitLab, and CI/CD pipelines keep working.Cómo GitWeave exporta a commits Git regulares para que tu GitHub, GitLab y CI/CD sigan funcionando.
Every gw command, what it does, and how it maps to the desktop app.Cada comando gw, qué hace, y cómo se mapea a la app de escritorio.
GitWeave is free and built for teams that move fast. Native desktop app for Mac, Windows and Linux — download and run, no setup required. GitWeave es gratis y construido para equipos que se mueven rápido. App de escritorio nativa para Mac, Windows y Linux — descarga y ejecuta, sin configuración.
Free to use · Rust + Tauri · Built by rvielma for the community Gratis · Rust + Tauri · Desarrollado por rvielma para la comunidad