Liu Terminal-Sitzungen. Vollständiger SSH-Client mit Dateibrowser, SFTP, Port-Weiterleitung, Mosh und Known-Hosts-TOFU.
Lokale PTYs führen KI-Agenten aus. Dieselbe Session-Abstraktion unterstützt auch SSH, SFTP, Mosh, Telnet und serielle Verbindungen – sie bleiben verknüpft, da viele sie weiterhin benötigen, auch wenn das Produkt nicht mehr mit Remote-Shells wirbt.
Jeder Tab und jedes Split-Blatt in Liu ist eine Session. Die meisten davon sind lokale PTYs, die Ihre Login-Shell ausführen – das ist das Substrat, in dem die KI-Agenten (Claude, Codex, Copilot, …) tatsächlich laufen. Sessions können auch remote sein: SSH, SFTP, Mosh, Telnet, seriell. Sie teilen eine Abstraktion, eine Rendering-Pipeline, einen Scrollback.
Neue Tabs (⌘ T) erzeugen ein lokales PTY im cwd des übergeordneten Tabs. Beim Start über Finder oder Dock erkennt Liu ein vererbtes / cwd und führt im Kindprozess stillschweigend chdir($HOME) aus, damit Ihre Eingabeaufforderung an einer sinnvollen Stelle öffnet.
Das Arbeitsverzeichnis der Shell wird über OSC 7 verfolgt. Fügen Sie printf '\\e]7;file://%s%s\\e\\\\' "$HOSTNAME" "$PWD" in PROMPT_COMMAND ein, und Lius Seitenleiste, Split-Vererbung und der Agenten-Historie-cwd-Bereich werden alle aktiv.
libssh2-basiert. Passwort-, Public-Key-, Agent- und Keyboard-Interactive-Auth. ~/.ssh/config wird für Host, Match, Include, ProxyJump, IdentityFile und verwandte Direktiven beachtet. Liu multiplext Verbindungen intern, aber ControlMaster-/GSSAPI-Zeilen aus ssh config werden noch nicht in Live-Sessions geparst.
Die erste Verbindung fordert zur Bestätigung mit dem SHA-256-Fingerprint und einer Randomart-Vorschau auf. Akzeptierte Einträge werden in ~/.config/Liu/known_hosts im OpenSSH-kompatiblen Format gespeichert. Ein geänderter Host-Schlüssel blockiert die Eingabe, bis Sie erneut bestätigen.
Jeder Host trägt eine Liste von Weiterleitungsregeln – lokal, remote und dynamisch (SOCKS) – die beim Verbinden angewendet werden. Sie erscheinen in der Statusleiste mit einem grünen Punkt bei erfolgreicher Bindung und einem roten Punkt bei Fehlschlag.
{ "type": "local", "from": "8080", "to": "localhost:80" }
{ "type": "remote", "from": "9000", "to": "127.0.0.1:9000" }
{ "type": "dynamic", "from": "1080" }
English · Türkçe · 简体中文 · 한국어 · Español · Italiano · Français · 日本語 · العربية