termmirror
termmirror
Un servidor MCP que ofrece a los agentes de IA sesiones de terminal realmente interactivas — y una vista web en vivo donde una persona puede observar esas sesiones y escribir en ellas.
La mayoría de las herramientas para agentes solo puede ejecutar comandos que terminan por sí solos. Cualquier cosa que solicite entrada, se redibuje o espere una pulsación de tecla está fuera de su alcance: instaladores, ssh con solicitud de contraseña, pdb, vim, la pantalla de configuración de un gestor de paquetes — y la CLI de otro agente. termmirror mantiene abiertas sesiones PTY reales para que un agente pueda manejarlas como lo haría una persona, pulsación a pulsación, mientras una persona puede mirar por encima de su hombro e intervenir cuando sea necesario.

Un agente conduciendo una sesión de Claude Code a través de termmirror — aceptó el aviso de confianza, hizo una pregunta y leyó la respuesta de la pantalla. La vista del navegador está en vivo, y escribir en ella va directamente a la misma terminal.

Una TUI a pantalla completa con las mismas herramientas: el agente abrió vim, se movió al final del archivo, entró en modo inserción y escribió una línea.
Características
Sesiones PTY reales. Respaldadas por
node-ptycon un emulador de terminal sin interfaz que mantiene el estado de la pantalla. Sintmuxni otras dependencias externas.Pensado para TUIs. Detección de la pantalla alternativa, codificación de teclas para las teclas de control y navegación, y scrollback que desenvuelve las líneas con ajuste suave.
Espera fiable.
waitdevuelve el control una vez que un programa ha respondido y se ha estabilizado, de modo que la pantalla que lees refleja tu entrada en lugar del estado anterior.Vista web en vivo. Cualquier sesión puede verse en el navegador mientras se ejecuta. Escribir en la página va directamente al PTY, de modo que una persona puede tomar el control y devolverlo.
De agente a agente. Diseñado para que un agente pueda conducir la CLI de otro agente mediante una conversación de varios turnos.
Related MCP server: spectatty
Requisitos
Node.js 20 o superior
macOS o Linux
Instalación
git clone https://github.com/Ar9av/termmirror.git
cd termmirror
npm install && npm run buildRegistra el servidor con Claude Code:
claude mcp add termmirror -- node /absolute/path/to/termmirror/dist/src/index.jsCualquier cliente MCP funciona; el servidor se comunica mediante stdio.
Uso
Tres herramientas, utilizadas en este orden:
send_input → wait → read_screenread_screen devuelve la pantalla tal como se ve ahora — una captura de pantalla, no un registro de todo lo impreso. wait es lo que hace que valga la pena leer esa captura: se bloquea hasta que el programa ha respondido y ha quedado en silencio, de modo que ves el estado después de tu pulsación.
Herramientas
Herramienta | Descripción |
| Inicia una sesión ( |
| Escribe texto en una sesión, opcionalmente enviándolo con Enter. |
| Envía |
| Devuelve la pantalla visible como texto plano; |
| Espera a que la sesión responda y se estabilice ( |
| Lista todas las sesiones, activas o finalizadas, con sus URLs de visualización. |
| Cambia las dimensiones de la terminal. |
| Termina una sesión. |
Espera
idle es la opción predeterminada y la más adecuada en la mayoría de los casos. Los programas interactivos se redibujan continuamente mientras trabajan y guardan silencio cuando es tu turno, por lo que el silencio es una señal fiable de finalización, incluso para spinners y TUIs que no muestran ningún indicador con el que comparar. Aumenta timeout para operaciones lentas.
Un resultad no_output signific que no ha vuelto nada desde tu entrada: o el program está ocupad y en silencio, o la entrada nunca se registró.
Usa pattern cuando se conoce el texto esperad. Busca en toda la pantalla, incluida tu propia entrada con eco, así que espera algo que imprima el programa en lugar de una marca que acabas de escribir.
Ver una sesión
La primera sesión inicia un servidor web local en el puerto 7878. Abre la URL que devuelve create_session para ver la sesión en vivo. Escribir en la página va directamente al PTY, lo que permit a una persona introducir una contraseña o responder a una solicitud que el agente no debería gestionar, y luego devolver el control — sin protocolo de traspaso, solo la misma terminal desde el otro lado.
Variable | Efecto |
| Puert para la vista web (predeterminad |
| Definir como |
Ejemplo
node examples/drive-claude.mjs "what is 2+2? reply with just the number"Un agente inicia claude, acepta su solicitud de confianza, hace una pregunta y lee la respuesta de la pantalla — las mismas herramientas que expone la interfaz MCP, escritas sin abreviar.
Desarrollo
npm run build # compile TypeScript to dist/
npm test # build, then run the test suiteLa suite cubre la semántica de espera de la que depende el resto del servidor, la codificación de teclas, el scrollback, la transmisión en vivo de la vista web y la escritura con toma de control, y una ejecución de extremo a extremo sobre el protocolo MCP real.
Una nota sobre el nombre
El paquete es termmirror, con dos emes. alias/termirror/ es un paquete auxiliar que depende de él para que la grafía con una sola m resuelva al lugar correcto.
Licencia
MIT
This server cannot be deployed
Maintenance
Related MCP Connectors
Operate Linux, macOS and Windows from your LLM. Every action runs through an auditable allowlist.
Give your AI hands on every computer you own. Remote control of your Windows, Mac and Linux machines from one ChatGPT, Claude or Cursor chat — even from your phone. Ask it to find out why the office server is crawling, update every PC in the house, sort out your mom's laptop from another city, or ship the site from your work machine while you're on a train. It runs commands, reads files and takes a screenshot when it needs to see the screen. You decide what each computer allows, and you can cut any of them off in a second.
Remote shell and detached long-running jobs on your own machines — no SSH, open ports or VPN.
Cloud desktops for AI agents: create a Linux computer, see its screen, click, type and run tasks.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceProvides AI agents with fully interactive terminal sessions, including TUI support, keyboard control, and screen capture across Windows, Linux, and Mac.MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to spawn and interact with real terminal sessions, capturing screenshots of rendered TUI output and sharing live sessions for debugging.2 npm1MIT
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to securely execute terminal commands with persistent sessions, async jobs, and mission control, while providing a live dashboard for human oversight.4Apache 2.0
- AlicenseAqualityAmaintenanceGive AI agents a persistent, interactive terminal with support for SSH, REPLs, database CLIs, TUI apps, and long-running processes.941 PyPI12MIT