¿Qué es workmux?
workmux convierte una rama en un espacio de trabajo. Un solo workmux add crea un worktree de git, abre la ventana de tmux correspondiente, copia los archivos que a una copia recién creada le faltan (.env, credenciales), enlaza los que no quieres reinstalar (node_modules), ejecuta tus comandos de preparación y monta el diseño de paneles que pediste. workmux merge lo deshace todo de una vez: fusiona la rama, borra el worktree, cierra la ventana y elimina la rama local. Sin stash, sin cambiar de rama, sin una copia a medias bloqueando la siguiente tarea.
⚡ Funciones clave de workmux
🌿 Una ventana por rama
workmux add crea el worktree y la ventana de tmux a la vez, así que cambiar de tarea es cambiar de pestaña, con su propio shell, editor y servidor de desarrollo.
🧰 Worktrees que funcionan de verdad
Un worktree recién creado nace roto. workmux copia archivos de configuración, enlaza dependencias y ejecuta tus comandos post_create para que la copia nueva sea usable de inmediato.
🤖 Agentes en paralelo
Ejecuta varios agentes de código a la vez, uno por worktree, y sigue su estado en el nombre de la ventana de tmux, en un dashboard TUI o en una barra lateral en vivo.
🧹 Limpieza con un solo comando
workmux merge fusiona la rama y luego elimina el worktree, la ventana de tmux y la rama local; workmux remove hace la limpieza sin fusionar.
📄 Configurado en YAML
Un config.yaml global para tus valores por defecto y un .workmux.yaml por proyecto para diseños de paneles, hooks y operaciones de archivos, con anidamiento pensado para monorepos.
🖥️ No solo tmux
tmux es el backend por defecto, y kitty, WezTerm y Zellij son alternativas soportadas, así que el flujo se adapta a la terminal que ya usas.
apt upgrade te mantiene en la última versión.
📦 Instalación desde deb.griffo.io
Paso 1: Añadir el repositorio
sudo install -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | sudo gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg
echo "deb [signed-by=/etc/apt/keyrings/deb.griffo.io.gpg] https://deb.griffo.io/apt $(lsb_release -sc 2>/dev/null) main" | sudo tee /etc/apt/sources.list.d/deb.griffo.io.list > /dev/null
sudo apt updateinstall -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg
echo "deb [signed-by=/etc/apt/keyrings/deb.griffo.io.gpg] https://deb.griffo.io/apt $(lsb_release -sc 2>/dev/null) main" | tee /etc/apt/sources.list.d/deb.griffo.io.list > /dev/null
apt update🆓 Existe un espejo gratis para siempre. deb-free.griffo.io sirve paquetes gratis para siempre: sin cuenta, sin suscripción, como máximo 2 meses por detrás del upstream, correcciones de seguridad inmediatas. Ahora mismo incluye cliamp, Ghostty, lazydocker, Oh My Posh y Zed; workmux no está entre ellas, así que hoy el repositorio de arriba es la única forma de instalarlo — pídelo y puede añadirse.
Paso 2: Instalar workmux
# Instalar la última versión de workmux
sudo apt install workmux
# tmux es el backend por defecto y solo va como recomendado,
# porque kitty, WezTerm y Zellij también funcionan
sudo apt install tmux
# Verificar la instalación
workmux --version# Instalar la última versión de workmux
apt install workmux
# tmux es el backend por defecto y solo va como recomendado,
# porque kitty, WezTerm y Zellij también funcionan
apt install tmux
# Verificar la instalación
workmux --versionPaso 3: Tu primer worktree
# Opcional: escribir un .workmux.yaml para este proyecto
cd ~/src/mi-proyecto
workmux init
# Desde dentro de tmux: rama, worktree, ventana y paneles en un comando
workmux add nueva-funcion
# Cuando el trabajo está hecho: fusionar y limpiarlo todo
workmux merge
# Las completaciones de bash, zsh y fish vienen en el paquete
workmux --help🎯 Ejemplos básicos de uso
El ciclo del día a día:
# Crear una rama, un worktree y una ventana de tmux
workmux add fix-login
# Una rama existente se reconoce por su nombre
workmux add trabajo-existente
# Partir de una base distinta a la de por defecto
workmux add hotfix --base production
# Sacar un pull request a su propio worktree
workmux add --pr 123
# Ver todo lo que tienes en marcha
workmux list
# Fusionar y desmontarlo todo
workmux merge
# O descartar el trabajo sin fusionar
workmux remove fix-loginVentanas, paneles y recuperación:
# Crear la ventana sin saltar a ella
workmux add repaso-docs --background
# Cerrar una ventana conservando worktree y rama
workmux close repaso-docs
# Volver a abrirla más tarde
workmux open repaso-docs
# Reconstruir todas las ventanas tras un cuelgue de tmux o de la máquina
workmux resurrect
# Entrar en un worktree desde cualquier sitio
cd "$(workmux path fix-login)"Agentes trabajando en paralelo:
# Instalar los hooks de estado y las skills de tu agente
workmux setup
# Arrancar un worktree con un prompt para el agente
workmux add add-tests --prompt "Añade tests unitarios para el parser"
# Ver todos los agentes en una TUI
workmux dashboard
# O dejar una barra lateral de estado en tmux
workmux sidebar
# Enviar una instrucción a un agente en marcha
workmux send add-tests "Cubre también las rutas de error"
# Esperar a que ese agente termine
workmux wait add-tests🔧 Integraciones
workmux se apoya a propósito en las herramientas que ya usas:
- git: los worktrees son checkouts normales de
git worktree, así quegit, tus hooks y tu CI no ven nada raro - tmux: una ventana por worktree, con el nombre de la rama y tu diseño de paneles aplicado automáticamente
- kitty, WezTerm y Zellij: backends alternativos soportados si tmux no es tu multiplexor
- Agentes de código: seguimiento de estado, inyección de prompts y skills para Claude Code y los demás agentes que soporta upstream
- Tu shell: las completaciones de bash, zsh y fish vienen en este paquete, y
alias wm='workmux'es el atajo que recomienda upstream
🚀 ¿Por qué elegir deb.griffo.io?
- Ubuntu oficial: no empaqueta workmux:
apt install workmuxfalla en un sistema recién instalado - cargo install workmux: actualizado, pero es compilar Rust en cada máquina, fuera de apt y sin las completaciones del shell
- El script de instalación upstream: cómodo, pero escribe en tu sistema a espaldas del gestor de paquetes y se actualiza por su cuenta
- deb.griffo.io: última versión con actualizaciones automáticas
- ✅ La única fuente apt: workmux no está ni en los archivos de Debian ni en los de Ubuntu; este repositorio empaqueta la compilación oficial upstream
- ✅ El soporte de agentes cambia cada semana: qué agentes puede seguir y dirigir workmux cambia versión a versión, así que estar al día es la diferencia entre que la función exista o no
- ✅ Actualizaciones automáticas: los paquetes se actualizan pocas horas después de cada versión upstream
- ✅ Paquete completo: el binario upstream como
/usr/bin/workmuxmás las completaciones de bash, zsh y fish - ✅ Dependencias honestas: el paquete depende de
gity recomiendatmux, porque kitty, WezTerm y Zellij también son backends soportados - ✅ Dos arquitecturas: amd64 y arm64, ambas compilaciones estáticas, así que el mismo paquete funciona en todas las suites
- ✅ Multidistribución: funciona en Ubuntu 22.04, 24.04, 25.10 y 26.04
- ✅ Mantenimiento sencillo: actualizaciones con los comandos apt de siempre
📦 Repositorio de compilación del paquete
Los paquetes de Ubuntu se compilan y mantienen automáticamente en este repositorio de GitHub:
- 🧩 workmux-debian - Compilaciones de las últimas versiones
🔗 Paquetes relacionados
También disponibles en deb.griffo.io:
- lazygit - Interfaz git de terminal para el trabajo dentro de cada worktree
- GitUI - Otro cliente git de terminal rápido, si prefieres su enfoque
- Zellij - Alternativa soportada a tmux como backend multiplexor
- Serie - Grafo de commits para revisar qué hizo realmente una rama