zshell

Sesi jarak jauh bersama

Hubungkan terminal yang sama melalui SSH atau Tailscale dan pertahankan pekerjaan setelah klien terputus.

zshell-server mempertahankan shell dan pekerjaannya pada host macOS atau Linux. Kedua backend terminal Zshell dapat terhubung. Menutup klien atau kehilangan jaringan tidak menghentikan pekerjaan. Koneksi ulang memulihkan layar, riwayat gulir, kursor, dan mode terminal.

Instalasi

Di Host jarak jauh…, pilih Instal / Perbarui Server melalui SSH. Mac dengan arsitektur sama memakai program bawaan. Untuk Linux, pilih zshell-server yang dibangun untuk platform dan arsitektur tersebut. Unggahan dan kompatibilitas diperiksa sebelum penggantian. Daemon aktif memakai versi lama hingga dimulai ulang, yang mengakhiri pekerjaannya. Anda juga dapat membangun di host:

cargo build --locked --release --manifest-path remote/Cargo.toml
install -d "$HOME/.local/bin"
install -m 755 remote/target/release/zshell-server "$HOME/.local/bin/zshell-server"

Klien dapat memakai shell dan berkas akun server. macOS dan Linux didukung.

SSH

Pastikan dahulu kunci host dan autentikasi kunci atau agent:

ssh devbox true

Buka host jarak jauh dari menu jaringan di bilah samping. Isi nama, ssh://me@devbox:22 atau alias SSH, dan ~/.local/bin/zshell-server. Menghubungkan host memuat proyek dan sesi yang ada. Masukkan direktori seperti ~/repo lalu buka proyek jarak jauh untuk membuat shell. Jalur dengan spasi didukung; tab dan pemisahan baru juga berjalan pada host.

SSH memulai daemon secara otomatis serta memakai konfigurasi OpenSSH, kunci, agent, dan kunci host tepercaya. Kunci tidak dikenal dan kegagalan autentikasi ditampilkan sebagai kesalahan. Berkas dan Git memakai SSH ke host yang sama, meskipun terminal memakai Tailscale. Jalur jarak jauh tidak mengakses berkas Mac. ZSHELL_SSH_CONFIG_FILE dapat memilih berkas OpenSSH terpisah yang dapat dibaca melalui jalur absolut.

Tailscale

Masuk ke Tailscale pada kedua perangkat lalu mulai listener privat sebelum membuat sesi:

zshell-server serve --listen tailscale://:7373

Tambahkan tailscale://devbox:7373. MagicDNS dan alamat Tailscale IPv4/IPv6 didukung; alamat publik ditolak. Secara bawaan hanya perangkat tanpa tag milik pemilik host yang diizinkan. --allow-user mengizinkan nama login lain yang persis sama; klien bertag tetap ditolak. Gunakan SSH dari mesin server itu sendiri. ACL tailnet tetap berlaku. Klien yang diizinkan dapat memakai akun Unix layanan.

Untuk berbagi Mac ini, masuk Tailscale dan pilih Bagikan Mac Ini di host jarak jauh. Atur port dan nama login persis yang diizinkan. Berbagi hanya dimulai atas permintaan; Hentikan Berbagi atau keluar dari Zshell mengakhiri sesi bersama.

Berbagi dan mengakhiri

Semua klien menerima keluaran yang sama. Memfokuskan terminal atau mengambil kendali memberikan hak input dan ukuran kepada klien tersebut. Saat terputus, klien tersisa yang paling awal terhubung mengambil alih. Panel Info menampilkan status, jumlah klien, dan kendali serta menyediakan lepas dan hubungkan ulang. Gangguan jaringan dicoba ulang otomatis; input offline dibuang. Tata letak tersimpan menghubungkan UUID jarak jauh yang sama.

Menutup panel, proyek, jendela, atau memakai kedua pilihan keluar hanya melepaskan klien. Mengakhiri sesi jarak jauh meminta konfirmasi dan menghentikan shell beserta pekerjaan untuk semua klien. Pada host: zshell-server terminate --project ~/repo --session UUID.

Berkas dan tangkapan layar

Salin berkas biasa atau tangkapan layar dan tempel di panel jarak jauh. Zshell mengunggah ke direktori privat host lalu memasukkan jalur berkutip untuk shell. Maksimal 32 berkas, masing-masing 32 MiB dan total 64 MiB; folder dan tautan simbolis ditolak. Unggahan bersama tersedia tujuh hari. Panel Unix SSH biasa juga mendukungnya.

Percakapan Agent jarak jauh

Aktivitas, kemajuan, permintaan persetujuan dan penyelesaian Agent jarak jauh memakai status dan notifikasi yang ada. Riwayat Percakapan Agent mencakup Claude Code, Codex, OpenCode dan Pi pada host. Lanjutkan menghubungkan percakapan hidup atau memulai sesi persis pada host dan direktori asal. Riwayat percakapan bertahan setelah restart daemon; pekerjaan dan guliran terminal tidak. Provider serta konfigurasi atau berkas sesi asal harus tersedia.

Batas

Persistensi hanya selama daemon hidup, bukan melewati reboot host, crash, atau restart daemon. Sesi hilang dilaporkan dan tidak diganti diam-diam. Batasnya 128 sesi, snapshot 16 MiB, dan antrean langsung 1 MiB per klien. Klien lambat tidak memblokir yang lain; riwayat tetap di memori host. Lihat referensi server untuk layanan dan CLI.