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: ddx-term-mcp
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 installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
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 gradedqualityBmaintenanceEnables AI agents to execute commands in a shared tmux session that is simultaneously visible to a human via a web-based terminal UI.1MIT
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to interact with interactive CLI processes via a real PTY, allowing them to send keystrokes, read screen output, and handle interactive prompts.61MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to spawn and interact with real terminal sessions, capturing screenshots of rendered TUI output and sharing live sessions for debugging.31MIT
Related MCP Connectors
Operate Linux, macOS and Windows from your LLM. Every action runs through an auditable allowlist.
Let AI operate servers without SSH. Choose actions, approve risky changes, and audit every step.
Turns any agent into a full agentic application — branded, interactive screens generated at runtime.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Ar9av/termmirror'
If you have feedback or need assistance with the MCP directory API, please join our Discord server