Sesiones de Liu Terminal. Cliente SSH completo con explorador de archivos, SFTP, reenvío de puertos, Mosh y TOFU de hosts conocidos.
Los PTY locales ejecutan agentes de IA. La misma abstracción Session también respalda SSH, SFTP, Mosh, Telnet y serie, que se mantienen vinculados porque muchas personas aún los necesitan, aunque el producto ya no tenga como protagonistas los shells remotos.
Cada pestaña y hoja de división en Liu es una sesión. La mayoría son PTY locales que ejecutan su shell de inicio de sesión: ese es el sustrato en el que realmente se ejecutan los agentes de IA (Claude, Codex, Copilot, etc.). Las sesiones también pueden ser remotas: SSH, SFTP, Mosh, Telnet, serie. Comparten una abstracción, una canalización de renderizado y un scrollback.
Las nuevas pestañas (⌘ T) generan un PTY local en el cwd de la pestaña principal. Si se inicia desde Finder o el Dock, Liu detecta un cwd / heredado y ejecuta silenciosamente chdir($HOME) en el hijo para que su prompt se abra en un lugar útil.
El directorio de trabajo del shell se rastrea a través de OSC 7. Inserte printf '\\e]7;file://%s%s\\e\\\\' "$HOSTNAME" "$PWD" en PROMPT_COMMAND y la barra lateral de Liu, la herencia de divisiones y el alcance cwd del Historial del agente se activarán.
Respaldado por libssh2. Autenticación por contraseña, clave pública, agente e interactiva por teclado. Se respeta ~/.ssh/config para Host, Match, Include, ProxyJump, IdentityFile y directivas relacionadas. Liu multiplexa conexiones internamente, pero las líneas ControlMaster / GSSAPI del ssh config aún no se convierten en sesiones activas.
La primera conexión solicita confirmación con la huella SHA-256 más una vista previa randomart. Las entradas aceptadas se guardan en ~/.config/Liu/known_hosts en formato compatible con OpenSSH. Una clave de host modificada bloquea la entrada hasta que la vuelva a reconocer.
Cada host lleva una lista de reglas de reenvío (locales, remotas y dinámicas (SOCKS)) que se aplican al conectar. Aparecen en la barra de estado con un punto verde cuando están vinculadas y un punto rojo si la vinculación falló.
{ "type": "local", "from": "8080", "to": "localhost:80" }
{ "type": "remote", "from": "9000", "to": "127.0.0.1:9000" }
{ "type": "dynamic", "from": "1080" }
Siguiente Explorador de archivos →
English · Türkçe · 简体中文 · 한국어 · Deutsch · Italiano · Français · 日本語 · العربية