termmirror
termmirror
Ein MCP-Server, der KI-Agenten echte interaktive Terminal-Sitzungen bietet – und eine Live-Webansicht, in der ein Mensch diese Sitzungen beobachten und hineinschreiben kann.
Die meisten Agent-Tools können nur Befehle ausführen, die von selbst enden. Alles, was Eingaben abfragt, neu zeichnet oder auf einen Tastendruck wartet, ist unerreichbar: Installationsprogramme, ssh mit Passwortabfrage, pdb, vim, der Konfigurationsbildschirm eines Paketmanagers – und die CLI eines anderen Agenten. termmirror hält echte PTY-Sitzungen offen, damit ein Agent sie so bedienen kann wie ein Mensch – Tastendruck für Tastendruck –, während ein Mensch über die Schulter schauen und bei Bedarf eingreifen kann.

Ein Agent, der eine Sitzung von Claude Code über termmirror steuert – er akzeptierte den Trust-Prompt, stellte eine Frage und las die Antwort vom Bildschirm ab. Die Browser-Ansicht ist live, und Eingaben darin gehen direkt in dasselbe Terminal.

Eine Vollbild-TUI unter denselben Werkzeugen: Der Agent öffnete vim, bewegte sich zum Ende der Datei, wechselte in den Einfügemodus und tippte eine Zeile.
Features
Echte PTY-Sitzungen. Basiert auf
node-ptymit einem Headless-Terminalemulator, der den Bildschirmzustand hält. Keintmuxoder eine andere externe Abhängigkeit.Für TUIs gebaut. Erkennung des alternativen Bildschirms, Tastenkodierung für Steuer- und Navigationstasten sowie Scrollback, das weich umbrochene Zeilen wieder zusammenführt.
Zuverlässiges Warten.
waitkehrt zurück, sobald ein Programm geantwortet und zur Ruhe gekommen ist, sodass der Bildschirm, den Sie lesen, Ihre Eingabe widerspiegelt und nicht den Zustand davor.Live-Webansicht. Jede Sitzung kann im Browser live verfolgt werden, während sie läuft. Tippen auf der Seite geht direkt an die PTY, sodass ein Mensch übernehmen und die Kontrolle zurückgeben kann.
Agent-zu-Agent. Entwickelt, damit ein Agent die CLI eines anderen Agenten über eine Konversation mit mehreren Runden steuern kann.
Related MCP server: spectatty
Voraussetzungen
Node.js 20 oder neuer
macOS oder Linux
Installation
git clone https://github.com/Ar9av/termmirror.git
cd termmirror
npm install && npm run buildRegistrieren Sie den Server bei Claude Code:
claude mcp add termmirror -- node /absolute/path/to/termmirror/dist/src/index.jsJeder MCP-Client funktioniert; der Server spricht stdio.
Verwendung
Drei Werkzeuge, die in dieser Reihenfolge verwendet werden:
send_input → wait → read_screenread_screen gibt den Bildschirm so zurück, wie er gerade aussieht – eine Momentaufnahme, kein Protokoll aller Ausgaben. wait ist die Funktion, die das Lesen sinnvoll macht: Sie blockiert, bis das Programm geantwortet hat und still geworden ist, sodass Sie den Zustand nach Ihrem Tastendruck sehen.
Werkzeuge
Werkzeug | Beschreibung |
| Startet eine Sitzung (standardmäßig |
| Gibt Text in eine Sitzung ein und übermittelt ihn optional mit der Eingabetaste. |
| Sendet |
| Gibt den sichtbaren Bildschirm als Klartext zurück; |
| Wartet, bis die Sitzung antwortet und zur Ruhe kommt ( |
| Listet alle Sitzungen auf, ob aktiv oder beendet, mit URLs zum Beobachten. |
| Ändert die Terminalgröße. |
| Beendet eine Sitzung. |
Warten
idle ist die Standardeinstellung und in den meisten Fällen die richtige Wahl. Interaktive Programme zeichnen während der Arbeit kontinuierlich neu und verstummen, wenn Sie an der Reihe sind. Stille ist also ein zuverlässiges Abschlusssignal – auch für Ladeanzeigen und TUIs, die keinen Prompt zum Abgleich bereitstellen. Erhöhen Sie timeout für langsame Vorgänge.
Ein no_output-Ergebnis bedeutet, dass seit Ihrer Eingabe nichts zurückgekommen ist: Das Programm ist entweder beschäftigt und still, oder die Eingabe wurde nie registriert.
Verwenden Sie pattern, wenn der erwartete Text bekannt ist. Der Abgleich erfolgt gegen den gesamten Bildschirm, einschließlich Ihrer eigenen zurückgespiegelten Eingabe. Warten Sie also auf etwas, das das Programm ausgibt, statt auf eine Markierung, die Sie gerade getippt haben.
Eine Sitzung beobachten
Die erste Sitzung startet einen lokalen Webserver auf Port 7878. Öffnen Sie die von create_session zurückgegebene URL, um die Sitzung live zu sehen. Eingaben auf der Seite werden direkt in die PTY geschrieben. So kann ein Mensch ein Passwort eingeben oder eine Eingabeaufforderung beantworten, die der Agent nicht übernehmen soll, und die Kontrolle anschließend zurückgeben – kein Übergabeprotokoll, nur dasselbe Terminal von der anderen Seite.
Variable | Wirkung |
| Port für die Webansicht (Standard |
| Auf |
Beispiel
node examples/drive-claude.mjs "what is 2+2? reply with just the number"Ein Agent startet claude, akzeptiert dessen Trust-Prompt, stellt eine Frage und liest die Antwort vom Bildschirm ab – dieselben Werkzeuge, die die MCP-Schnittstelle bereitstellt, in ausführlicher Form.
Entwicklung
npm run build # compile TypeScript to dist/
npm test # build, then run the test suiteDie Testsuite umfasst die Wartesemantik, von der der Rest des Servers abhängt, Tastenkodierung, Scrollback, den Live-Stream der Webansicht und die Texteingabe zur Übernahme sowie einen End-to-End-Lauf über das echte MCP-Protokoll.
Eine Anmerkung zum Namen
Das Paket heißt termmirror, mit zwei m. alias/termirror/ ist ein Stub-Paket, das davon abhängt, damit die Schreibweise mit einem m zum richtigen Ort auflöst.
Lizenz
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