Sessioni di Liu Terminal. Client SSH completo con browser di file, SFTP, port forwarding, Mosh e TOFU known-hosts.
I PTY locali eseguono agenti IA. La stessa astrazione Session supporta anche SSH, SFTP, Mosh, Telnet e seriale, mantenuti collegati perché molte persone ne hanno ancora bisogno, anche se il prodotto non mette più in primo piano le shell remote.
Ogni scheda e divisione in Liu è una sessione. La maggior parte sono PTY locali che eseguono la tua shell di login: è il substrato in cui gli agenti IA (Claude, Codex, Copilot, …) girano realmente. Le sessioni possono anche essere remote: SSH, SFTP, Mosh, Telnet, seriale. Condividono un'unica astrazione, un'unica pipeline di rendering, un unico scrollback.
Le nuove schede (⌘ T) generano un PTY locale nella cwd della scheda padre. Se avviato dal Finder o dal Dock, Liu rileva un cwd / ereditato ed esegue silenziosamente chdir($HOME) nel processo figlio, in modo che il prompt si apra in una posizione utile.
La directory di lavoro della shell viene tracciata tramite OSC 7. Inserisci printf '\\e]7;file://%s%s\\e\\\\' "$HOSTNAME" "$PWD" in PROMPT_COMMAND e la barra laterale di Liu, l'ereditarietà delle divisioni e l'ambito cwd della Cronologia agenti si attiveranno tutti.
Basato su libssh2. Auth password, chiave pubblica, agente e interattiva da tastiera. ~/.ssh/config è rispettato per Host, Match, Include, ProxyJump, IdentityFile e direttive correlate. Liu multiplexa le connessioni internamente, ma le righe ControlMaster / GSSAPI di ssh config non sono ancora collegate a sessioni attive.
La prima connessione richiede conferma con l'impronta SHA-256 e un'anteprima randomart. Le voci accettate vengono salvate in ~/.config/Liu/known_hosts in formato compatibile con OpenSSH. Una chiave host modificata blocca l'input finché non la riaccetti.
Ogni host contiene un elenco di regole di inoltro — locali, remote e dinamiche (SOCKS) — applicate alla connessione. Vengono mostrate nella barra di stato con un punto verde quando associate e un punto rosso se l'associazione fallisce.
{ "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 · Deutsch · Français · 日本語 · العربية