Los agentes de codificación con IA se han convertido en un escritorio abarrotado. Si usas más de uno — Claude Code en una terminal, Codex en otra, cada uno con su propio inicio de sesion y límite de uso — ya sientes el costo de cambiar: contexto perdido, ventanas separadas y la pregunta constante de cuál agente tiene realmente la respuesta correcta para una tarea determinada.
Offrun es una aplicación Mac gratuita construida para reemplazar ese escritorio con un único espacio de trabajo. No aloja a los agentes en sí mismos. Ejecuta las interfaces de línea de comandos (CLIs) que ya usas — Claude Code, Codex y Grok Build, entre otros, con Pi y OpenCode listados como «próximamente» — en tu Mac, firmados como tú. Tú aportas tus propias cuentas y suscripciones; Offrun proporciona la orquestación y no cobra nada por ello.

El artículo explica que los agentes de codificación con IA se han convertido en un escritorio abarrotado de terminales e inicios de sesion separados, y que Offrun reemplaza eso con un único espacio de trabajo que ejecuta Claude Code, Codex y Grok Build bajo tus propias cuentas. Esta es la propia vista del producto de ese espacio de trabajo, mostrando múltiples caras de agente en un solo lugar.
La configuración es deliberadamente ligera. Descarga la aplicación, arrástrala a Aplicaciones y luego conecta cada agente en Configuración → Agentes, donde puedes agregar múltiples cuentas para el mismo agente si las tienes. La aplicación requiere un Mac con Apple Silicon (M1 o posterior) que ejecute macOS 14 Sonoma o posterior, más al menos un CLI de agente que ya uses. En la propia formulación de Offrun: no reemplaza a Claude Code o Codex — los ejecuta, y conservas tus propias cuentas y suscripciones.
La característica estructural más distintiva son los worktrees. Un worktree de git es un directorio de trabajo enlazado que te permite cambiar a una rama diferente en una carpeta separada sin afectar tu checkout principal. Offrun da a cada agente de un proyecto su propio worktree, de modo que dos agentes que trabajan el mismo repositorio nunca tocan los mismo archivos. El efecto práctico: un agente puede refactorizar un parser mientras otro arregla una prueba intermitente, y al operar en ramas separadas no pueden pisarse entre sí. La formulación del sitio es directa — ejecuta una refactorización y un arreglado de errores al mismo tiempo y mérgelos según tu propio cronograma.
La revisión entre pares es la característica más probablemente cambie el flujo de trabajo diario. En lugar de revisar tu propio diff — el conjunto de cambios propuestos — eleges un segundo agente para que lo lea primero. Sus hallazgos llegan a la conversación mientras el trabajo aún no está confirmado, así que puedes pedir correcciones antes de que algo se envíe. Críticamente, nada se fusiona por sí mismo; cada decisión después de esa es tuya. La revisión se ejecuta en una de tus propias cuentas de agente, así que no hay segunda suscripción y no se añade ningún bot a tus pull requests. El revisor solo puede leer el diff y publicar lo que encontró; no puede modificar tu código.
El sitio ilustra con un ejemplo concreto cómo se ve un hallazgo de revisión. Se pidió a un agente que limitara el retroceso de reintentos a 30 segundos y añadiera jitter, y produjo esto:
// Excerpto acortado renderizado desde el ejemplo en offrun.dev async function retry(req, n) { const wait = Math.min(2 ** n * 100, 30_000) const jitter = wait * 0.2 * Math.random() await sleep(wait + jitter) }
El revisor señaló un problema: el límite de 30 segundos es más largo que el timeout de 25 segundos de la puerta de enlace, así que el último reintento se corta antes de que pueda completarse.
El manejo de cuentas de Offrun aborda una verdadera molesta operativa. Puedes apuntar cada agente a un inicio de sesion diferente — el sitio muestra, por ejemplo, cuentas separadas de trabajo y personal para Claude Code y múltiples cuentas para Codex. Cuando un inicio de sesion alcanza su límite de uso, Offrun mueve el chat activo a un inicio de sesion que aún tiene espacio y te lo dice; envías tu mensaje de nuevo y el nuevo inicio de sesion retoma toda la conversación. Si te quedas sin inicios de sesion por completo, ofrece otro agente en su lugar.
Lo que el sitio no establece es si Offrun te muestra el margen restante antes de despachar una tarea, en contraposición a descubrir el límite solo cuando un agente se topa con él. El comportamiento descrito es reactivo: el límite se detecta a mitad de tarea y la conversación se reubica. Si esa transferencia es fluida en la práctica, y si alguna advertencia la precede, no es respondido por el material proporcionado.
La respuesta de Offrun a los agentes que olvidan el contexto entre sesiones es la memoria de proyecto. Mantiene las convenciones de todo el repositorio en un lugar y el objetivo, plan y caminos muertos de cada agente en otro. Los agentes leen ese contexto al inicio de cada sesión y escriben de vuelta a medida que avanzan, así que la cuarta sesión sabe lo que la primera ya intentó. La memoria vive como archivos planos en la carpeta de tu proyecto — conventions.md, plan.md, dead-ends.md — para que tú puedas abrirlos, editarlos y versionarlos.
Offrun vigila a los agentes de codificación en cualquier lugar de tu Mac, incluidos los que se ejecutan en una terminal que él nunca lanzó. Cuando un agente termina o se detiene para hacer una pregunta, recibes una notificación incluso si esa ventana está enterrada cuatro espacios hacia atrás. Junto a la conversación, un panel de previsualización muestra los archivos cambiados, diffs con números de línea, markdown y tablas renderizadas, imágenes y PDFs, más un pequeño navegador con una barra de direcciones — así que puedes leer el trabajo sin salir del chat.
Dos modos te permiten controlar cuánta libertad recibe un agente. Build hace el cambio y lo ejecuta para demostrar que funciona. Planner deduce el enfoque y lo escribe sin cambiar ningún archivo. Puedes cambiar cualquier chat entre los dos modos en cualquier momento.
La dictación te permite hablar tus prompts: mantén una clave presionada y habla, y Offrun transcribe en tu Mac. Mantiene los identificadores escritos como tu código los escribe — aprendiendo vocabulario como 'retryBackoffHelper' y 'Kubernetes' de muestras de voz que grabas — y suelta texto limpio donde está tu cursor. La transcripción se ejecuta por completo en tu Mac; nada se graba y nada se sube. Necesita una conexión de red solo durante la configuración.
El sitio es inusualmente explícito sobre lo que sale de tu máquina. La dictación y tus archivos de proyecto se quedan en tu Mac. Los prompts de agente y el código van directamente a tu proveedor — Anthropic, OpenAI, Google o xAI — en tu propia cuenta, nunca a través de Offrun. Offrun afirma que no tiene ningún servidor en ese camino y nunca maneja tus claves.
Offrun es gratis — todas las características, sin límites, sin asientos que contar, sin tarjeta de crédito requerida. Sigue pagando a tus proveedores de agentes por sus suscripciones; Offrun no cobra nada por la capa que añade.
Una pregunta natural es qué ofrece Offrun que herramientas similares no, y específicamente cómo se compara a Herdr. La fuente proporcionada no menciona a Herdr ni a ningún producto competidor, así que no se puede trazar ninguna comparación de ese material. Lo que la fuente sí establece sobre el posicionamiento de Offrun es concreto: es gratis, no requiere nueva cuenta ni clave API, ejecuta agentes localmente en tu máquina bajo tus propias suscripciones, mantiene la dictación y la memoria de proyecto en el dispositivo, y enruta explícitamente el tráfico de agente directamente a tu proveedor en lugar de a través de sus propios servidores.
Lo que queda unclear es limitado pero real. La fuente no cuándo estará Offrun disponible de forma general. Describe worktrees concurrentes pero no detalla cómo se fusionan sus resultados más allá del propio cronograma del usuario. El failover reactivo de cuenta se describe, no se demuestra, y el sitio no cuantifica el desempeño, la confiabilidad o las garantías de privacidad más allá de sus propias declaraciones. Si el producto cumple con su alcance declarado depende de detalles que la página de aterrizaje aún no ha proporcionado.