MXterm Pro

Cómo ejecutar Cursor Agent en una terminal de varios paneles en Mac

Henry AGI
5 min de lectura
Four steps: open the composer and pick a folder, assign Cursor Agent panes, isolate features in git worktrees, then launch the panes

Puedes ejecutar Cursor Agent en terminal Mac con la plantilla de Cursor Agent de MXterm Pro: la plantilla abre un panel de Cursor y escribe cursor-agent, el agente CLI de Cursor, en un panel de terminal real (un PTY). El comando cursor es el lanzador del editor y abre la ventana de Cursor. También existe una compilación para Windows x64. MXterm añade detección del estado en vivo cada 300 milisegundos, además de aislamiento opcional con git worktree.

Qué es esto y para quién es

MXterm Pro no intercepta lo que hace cursor-agent. Es una app de escritorio multiterminal y multiagente (construida con Tauri 2 y Rust, no con Electron) que escribe cursor-agent en un panel de terminal real mediante su plantilla de Cursor Agent.

Encima añade dos cosas que una terminal simple no tiene. Una es un indicador de estado que muestra de un vistazo si el agente te necesita. La otra es aislamiento opcional con git worktree, para cuando más de un agente toca el mismo repositorio.

Es para desarrolladores que ya manejan el agente de Cursor desde la línea de comandos. Lo quieren junto a una segunda terminal que controlan ellos, o junto a un segundo y un tercer agente. Claude Code, Codex, Gemini CLI, OpenCode y otros funcionan en el mismo espacio de trabajo, cada uno en una parte distinta del mismo código. No tienes que vigilar ventanas separadas del sistema para ver quién está atascado.

Configurar un panel de Cursor Agent

Para abrir un panel de Cursor Agent necesitas una sola cosa: un ejecutable cursor-agent en tu PATH o en carpetas bin habituales como /opt/homebrew/bin y ~/.local/bin. Ese es el agente CLI; cursor es el lanzador del editor y abre la ventana de Cursor. Si MXterm no encuentra cursor-agent, la fila de Cursor Agent en la pantalla de configuración (MXterm la llama Composer) muestra "No instalado" en lugar del selector de cantidad.

1. En el primer inicio, o cuando no se restaura ninguna pestaña guardada, MXterm Pro abre el Composer; si no, pulsa ⌘T para abrir un Composer nuevo.

2. Elige la carpeta de tu proyecto. Será el directorio de trabajo de cada panel que crees.

3. Usa el selector de cantidad de "Cursor Agent" para asignarle uno o más paneles. Deja el resto como shells simples, o repártelos entre Claude Code, Codex u otros agentes CLI que MXterm detecta.

4. Si ejecutas más de un agente, activa "Aislar funciones en git worktrees" (más abajo te lo explico).

5. Después pulsa ⌘/Ctrl+Enter: MXterm escribe cursor-agent en el shell de cada panel de Cursor Agent.

La detección de agentes se vuelve a ejecutar cada vez que reabres el Composer. Si instalas el CLI mientras MXterm está abierto, cierra y reabre el Composer. No necesitas reiniciar la app.

Tus pestañas y la disposición de los paneles se guardan y se restauran al reiniciar, pero los procesos que había dentro no se reanudan. Cada panel recibe una terminal nueva en su directorio. Un panel de Cursor Agent restaurado vuelve a iniciar cursor-agent desde cero, sin reanudar y sin el encargo que recibió al principio.

Guía relacionadaAísla agentes de IA en paralelo con git worktree

Detección del estado en vivo: cómo sabe MXterm qué hace Cursor

Esto no es una integración con la API de Cursor: MXterm nunca habla con el backend de Cursor para esto. Busca patrones en el texto que ya se está dibujando en el panel. Un ciclo de lectura de pantalla se ejecuta más o menos cada 300 milisegundos y se salta la lectura mientras el panel está inactivo y no se ha impreso nada nuevo.

Tres reglas deciden el estado. Una línea que coincide con permission, allow…? o do you want to se lee como bloqueado. Una línea que coincide con thinking…, generating…, working… o analyzing se lee como trabajando. Una línea que termina en cursor> se lee como inactivo, y una pantalla que no coincide con nada también cae en inactivo.

El propio código fuente de MXterm dice que estos patrones de Cursor se escribieron a mano y siguen sin comprobar con una sesión real de Cursor. Trata el punto de color como una pista, no como una certeza.

Justo después de crear un panel, el estado es desconocido durante unos tres segundos mientras se ignora la pantalla de arranque. Si el proceso de terminal del panel termina, el estado sigue siendo desconocido, así que el panel solo muestra el punto de actividad simple (y solo mientras imprime) hasta que se vuelva a crear. Al volver a crearlo, empiezan otros tres segundos de margen.

El mismo motor de reglas se ejecuta para Claude Code, Codex, Gemini, OpenCode y los demás agentes CLI que MXterm admite. Por eso el encabezado de un panel de Cursor usa los mismos colores de punto que cualquiera de ellos: rojo para bloqueado, amarillo para trabajando, verde para terminado, y el punto de actividad simple cuando el estado es desconocido.

Las pestañas inactivas de la barra de pestañas llevan hasta dos marcas: una marca de ocupado mientras un agente trabaja, y un punto rojo (bloqueado) o verde (terminado). La barra lateral lista las terminales de la pestaña activa, cada una con su propio punto.

Un panel en segundo plano también emite un sonido aproximadamente un segundo y medio después de bloquearse o terminar. En Configuración → Notificaciones puedes desactivar las alertas solo de Cursor (sonido y aviso) sin tocar las de Claude Code ni Codex.

Reanudar una sesión de Cursor: qué es automático y qué haces tú

El descubrimiento automático cubre las sesiones de Claude Code, Codex y Gemini/OpenCode, pero no las de Cursor. El Composer de MXterm tiene una lista Reanudar sesiones que lee el historial en disco de un CLI y reabre una conversación anterior como un panel nuevo con un clic. El almacén de sesiones de Cursor aún no se escanea, así que no aparece en esa lista.

MXterm no tiene una lista de sesiones de Cursor ni un campo para el ID de una sesión de Cursor. Para reanudar una conversación concreta de Cursor, ejecuta a mano el agente CLI de Cursor (cursor-agent) en el shell del panel. Todo lo demás alrededor (el panel, el punto de estado, el worktree en el que está) es el mismo espacio de trabajo de MXterm en ambos casos.

Cursor junto a Claude Code o Codex: aislamiento con git worktree

Activa Aislar funciones en git worktrees en el Composer, y cada panel de agente que cree, Cursor incluido, recibe su propio worktree en <repo>/.worktrees/<slug>. El slug es el nombre de la rama con la barra escrita como guion. Para la rama swarm/azure-falcon, la carpeta es .worktrees/swarm-azure-falcon.

La rama es nueva y de nombre aleatorio, como swarm/azure-falcon. MXterm también añade .worktrees/ a tu .gitignore automáticamente, así que estas copias desechables nunca se confirman por accidente. Los paneles de shell simple, y cualquier panel que no aislaste, se quedan en la raíz del repositorio.

El efecto es concreto, no un sandbox. Cursor trabajando en swarm/azure-falcon y Claude Code trabajando en swarm/mint-otter editan dos directorios distintos en dos ramas distintas. Es mucho menos probable que la edición a medias de un agente caiga en un archivo en el que trabaja el otro.

Un git worktree por agente reduce la probabilidad de que el error de un agente toque la copia de trabajo de otro. Lo consigue dándole a cada agente una copia separada, no restringiendo lo que cualquiera de los dos puede hacer.

Dos reglas protegen el resultado. Cerrar un panel o un espacio de trabajo nunca borra su worktree, y un agente no puede eliminar uno que tenga cambios sin confirmar. Cuando una rama ya está fusionada, límpiala desde la lista de worktrees del panel de Git.

Free vs. Pro: qué se limita realmente

Activar el aislamiento con worktree no cuesta nada: no requiere Pro. Lo que sí tiene límite es la escala. Por defecto, el plan Free no tiene límite de paneles. Permite 2 terminales en una misma Control Room (antes War Room), 5 hosts SSH guardados y 1 MXterm Host guardado. Pro levanta el límite de la Control Room.

Para una configuración de Cursor con otros agentes, el número de la Control Room es el que debes vigilar. Pon a Cursor, Claude Code y Codex en la misma sala y el tercer miembro necesita Pro.

Los paneles no tienen límite en Free, así que un panel de Cursor, un panel de Claude Code y cinco shells simples pueden ejecutarse a la vez.

MXterm Pro frente a iTerm2, Warp y una terminal simple para este trabajo

iTerm2 y Terminal.app son excelentes terminales maduras, y ejecutar cursor-agent en cualquiera de ellas funciona igual de bien que en cualquier otro sitio. Ninguna está pensada para detectar si un agente está bloqueado, trabajando o inactivo, para automatizar worktrees o para coordinar un segundo agente en otra pestaña. Recibes la salida cruda y la lees tú.

Warp es otra comparación: una terminal pensada sobre todo en torno a su propio agente de IA y sus bloques de comandos. Aun así puedes lanzar cursor-agent dentro de un bloque de Warp como cualquier otro comando. Revisa la documentación de Warp para ver qué cubren hoy sus herramientas de agente.

Si el trabajo es ejecutar Cursor junto a Claude Code y Codex y ver de un vistazo cuál te necesita, MXterm Pro está hecho para eso. Es una alternativa a ejecutar cursor-agent solo en una ventana de terminal simple.

Solución de problemas y límites actuales

Cursor Agent muestra "No instalado" en el Composer: MXterm no encontró un ejecutable cursor-agent en tu PATH ni en carpetas bin habituales. Instálalo y reabre el Composer. No hace falta reiniciar la app.

El panel no muestra color justo después de iniciarse: es normal. El estado es desconocido durante unos tres segundos tras crear el panel, antes de la primera lectura real.

No hay entradas de Cursor en "Reanudar sesiones": es lo esperado hoy, como se explica en la sección de reanudación.

El panel volvió pero la sesión anterior no: tras reiniciar, las pestañas y la disposición vuelven con una terminal nueva en cada panel. Un panel de Cursor Agent vuelve a iniciar cursor-agent como una sesión nueva, sin su encargo original. MXterm no reabre por ti la conversación anterior de Cursor.

Omitir el encargo es deliberado: volver a enviarlo contra un worktree que ya ha avanzado haría que se rehiciera la tarea entera.

Linux: MXterm Pro tiene una beta para Linux (un .deb y un AppImage para Ubuntu 22.04 o posterior), pero este flujo de trabajo está descrito para macOS y Windows, así que considéralo sin probar en Linux.

Pruébalo tú mismo

SSH con varios paneles, Command Recipes (Cmd+J) y una Control Room (antes War Room) multiagente: gratis para empezar.

Descargar MXterm Pro

¿Ya tienes MXterm Pro? Lee la guía de configuración →

¿Nuevo en MXterm Pro? Mira los precios →

Preguntas frecuentes

¿MXterm Pro modifica o envuelve el CLI de Cursor?

No. MXterm Pro inicia un PTY real y escribe en su shell el comando de la plantilla de Cursor Agent (cursor-agent). No envuelve ese comando. La detección del estado solo lee la salida ya dibujada del panel, y no intercepta ni altera lo que el comando imprime o recibe.

¿Puedo ejecutar Cursor y Claude Code en la misma ventana?

Sí. Cada uno se ejecuta en su propio panel, con su propio git worktree si activas el aislamiento. MXterm no configura sus herramientas de Control Room para Cursor, así que un panel de Cursor no se conecta a una sala como lo hacen Claude Code o Codex.

¿Puedo elegir una sesión anterior de Cursor desde el Composer de MXterm, como con Claude Code?

Todavía no de forma automática. La lista "Reanudar sesiones" del Composer solo lee hoy el historial de Claude Code, Codex, Gemini y OpenCode. El almacén de sesiones de Cursor no está conectado a ese escaneo. Aun así puedes reanudar a mano en el shell del panel con el agente CLI de Cursor (cursor-agent). Según la documentación del CLI de Cursor, cursor-agent ls lista los chats anteriores y cursor-agent resume reabre el último. cursor-agent --resume recibe un ID de chat.

¿Funciona igual en Windows que en macOS?

Windows x64 ofrece PowerShell, cmd, Git Bash (y PowerShell 7 o WSL si están instalados), por panel o como valor por defecto en Configuración. La detección del estado y el aislamiento con worktree están sin verificar ahí. En Windows, una Control Room no detecta un agente que iniciaste a mano en un panel de shell simple. 1.1.0 es la primera compilación pública de Windows.

¿Algo de esto es solo para Pro?

El aislamiento con worktree en sí es gratis. Lo que tiene límite es la escala: por defecto, el plan Free no tiene límite de paneles, pero limita una Control Room a 2 terminales, además de los hosts SSH guardados y los MXterm Hosts. El plan Pro de pago levanta esos límites. Una sala de tres agentes con Cursor, Claude Code y Codex juntos necesita Pro.

Pregunta a una IA sobre MXterm Pro

Abre una respuesta en vivo en ChatGPT, Claude o Perplexity, basada en esta página. La escribe el asistente, no nosotros, así que revisa las fuentes que cita.

Pregunta enviada¿Cómo ejecuto el agente CLI de Cursor en MXterm Pro y qué me indica el punto de estado?