perjalanan fitur stabil terbaru zellij dari 0.40 hingga 0.44: welcome screen, filepicker, pipes, plugin manager, pinned floating panes, web client, hingga remote sessions dan cli automation.

Series Belajar Zellij memasuki fase akhir. Setelah menguasai fondasi di episode 0 sampai 24 — session, tab, pane, mode system, konfigurasi KDL, layout, pipes, plugin system, persistence, hingga multiplayer — sekarang saatnya melihat bagaimana semua materi itu dirajut menjadi satu oleh rilis-rilis terbaru. Episode 25 ini adalah peta kronologis: fitur stabil yang lahir dari versi 0.40 sampai 0.44, rentang yang mengubah Zellij dari multiplexer kaya fitur menjadi terminal workspace yang benar-benar modern dan siap dipakai sehari-hari.
Mengapa episode ini penting? Hampir semua episode sebelumnya menyentuh fitur-fitur ini secara terpisah: pipes dibahas mendalam di episode 13, filepicker dan strider di episode 14, plugin manager di episode 15, pinned floating panes dan stacked resize di episode 7, theme spec baru di episode 11, web client di episode 20, serta remote sessions dan CLI automation di episode 13 dan 19. Di episode 25 ini kalian melihat semuanya dalam satu garis waktu yang utuh: apa yang lahir di rilis mana, masalah nyata apa yang dipecahkan, dan bagaimana fitur-fitur itu saling terhubung membentuk ekosistem.
Ada satu benang merah yang menarik dari timeline ini. Setiap rilis besar ternyata menjawab pertanyaan lanjutan dari rilis sebelumnya: 0.40 membuat interaksi dengan workspace lebih manusiawi, 0.41 membuat plugin lebih mudah dikelola, 0.42 menyempurnakan tata letak dan theming, 0.43 membawa Zellij keluar dari batas terminal, dan 0.44 menutup lingkaran dengan dukungan lintas platform serta otomasi dari command line. Di akhir episode, kalian akan membangun satu studi kasus lengkap yang memakai semua lapisan itu sekaligus: CLI actions, pipes, layout, dan plugin dalam satu workflow automasi.
Rilis 0.40, dirilis pada April 2024, adalah titik balik besar bagi pengalaman pengguna. Sebelumnya, menjalankan zellij langsung mendarat di satu pane kosong; sejak 0.40 ada welcome screen — menu ramah yang menampilkan pilihan untuk memulai session baru (dengan nama atau folder tertentu), attach ke session yang sedang berjalan, atau resurrect session yang sudah keluar. Welcome screen ini bukan sekadar hiasan: ia adalah gerbang manajemen session yang melatih kalian memikirkan workspace sebagai entitas yang bisa dibuat, didekati, dan dihidupkan kembali — persis mental model yang dibangun sejak episode 0.
Fitur kedua di 0.40 adalah filepicker yang ditulis ulang dari nol. Filepicker (alias Strider) memungkinkan kalian menjelajahi filesystem dari dalam workspace tanpa keluar dari keyboard: navigasi dengan arrow keys, toggle file tersembunyi dengan Ctrl+e, menandai beberapa file sekaligus, lalu Enter untuk membuka file di editor default atau membuka terminal di folder tersebut. Cara paling cepat memanggilnya dari command line:
zellij plugin -- filepickerYang membuat filepicker 0.40 istimewa adalah integrasinya dengan pipes. Kalian bisa memilih file secara interaktif dan menyalurkan hasilnya ke perintah lain melalui shell pipe tradisional — filepicker menutup dirinya dan mencetak path pilihan ke stdout:
zpipe filepicker | xargs -i cp {} my-chosen-fileRilis yang sama menambahkan beberapa fitur yang kemudian menjadi standar: floating panes bisa dibuka pada koordinat dan ukuran tertentu, tab bisa dipindah posisinya dengan Alt+i dan Alt+o, client lain bisa diputus dari session-manager dengan Ctrl+o lalu Ctrl+x, plugin aliases memperpendek URL plugin yang panjang menjadi nama yang mudah diingat, dan flag zellij attach --create-background memungkinkan session dimulai di latar belakang. Ada juga dua perbaikan performa signifikan: line wrapping untuk baris sangat panjang kini jauh lebih cepat, dan synchronized render (CSI 2026) membuat aplikasi full-screen seperti Neovim terasa jauh lebih halus.
Tip
Beberapa fitur 0.40 butuh pembaruan di block plugins pada config.kdl kalian. Jika welcome screen atau filepicker tidak muncul setelah upgrade, bandingkan block plugins kalian dengan default yang dihasilkan zellij setup --dump-config — biasanya cukup menyelaraskan alias seperti filepicker dan welcome-screen yang diperkenalkan di rilis ini.
Pipes adalah fondasi komunikasi baru Zellij yang diperkenalkan di 0.40. Pipe memungkinkan pesan dikirim ke plugin dari command line, dari keybinding, atau dari plugin lain — dan plugin tujuan yang belum berjalan akan dimuat otomatis pada pesan pertama yang datang. Konsep ini sudah kalian dalami di episode 13; di episode ini kita soroti posisinya dalam ekosistem. Pipes mengintegrasikan diri dengan shell pipe biasa, menyediakan flow control, dan membuka peluang data visualization, notifikasi di terminal, hingga floating panes yang muncul secara kondisional saat kondisi tertentu terpenuhi.
Untuk mengirim pesan ke pipe, gunakan CLI zellij pipe atau alias singkatnya zpipe. Plugin yang terdaftar sebagai alias, seperti filepicker, bisa langsung dipanggil namanya:
zellij pipe -p filepicker
zellij pipe -n monitor -p my-status-plugin "refresh"Di 0.41, ekosistem plugin menjadi jauh lebih mudah dikelola lewat plugin manager. Dari dalam session, tekan Ctrl+o lalu p untuk membuka antarmuka yang menampilkan plugin yang sedang berjalan, plugin yang tersedia, dan plugin yang sedang dimuat. Plugin manager mengubah Zellij dari "plugin tersembunyi di balik config" menjadi "plugin yang terlihat dan terkelola" — kalian bisa melihat plugin mana yang aktif, memuat plugin baru, dan menutup plugin yang tidak terpakai, semua tanpa menyentuh file konfigurasi.
Note
Pipes dan plugin manager saling melengkapi. Plugin manager mengatur lifecycle plugin — mana yang berjalan, mana yang dimuat di background — sementara pipes menjadi kanal komunikasi antar plugin dan dengan dunia luar. Untuk workflow automasi, bayangkan pipes sebagai bus pesan dan plugin manager sebagai dasbor pengelolanya: keduanya lahir di dua rilis berurutan karena memang dirancang untuk bekerja bersama.
Rilis 0.42, Maret 2025, menyempurnakan window management dengan tiga fitur yang sudah kalian kenal dari episode-episode sebelumnya. Pertama, pinned floating panes: floating pane kini bisa di-pin agar selalu tampil di atas bahkan ketika tidak sedang fokus — sempurna untuk menampilkan dokumentasi, log real-time, atau preview sintaks. Pin pane dengan Ctrl+p lalu i (TogglePanePinned). Kedua, stacked resize: ketika me-resize, pane akan menumpuk dengan tetangganya, memberi ruang layar lebih luas sambil tetap menampilkan judul pane lain agar navigasi keyboard atau mouse tetap cepat. Ketiga, theme definition spec baru yang menggantikan pendekatan "pemetaan warna" dengan pendekatan "komponen UI".
Theme spec baru ini patut perhatian ekstra. Alih-alih hanya mendefinisikan warna foreground dan background, theme sekarang bisa mendefinisikan tampilan tab-bar, status-bar, frame pane, judul tabel, dan item list secara terpisah — dan spesifikasi ini meluas hingga ke plugin, sehingga plugin custom bisa ikut menyesuaikan diri dengan theme yang sedang aktif. Jika episode 11 membahas dasar theming dengan format lama, episode ini menegaskan bahwa format komponen UI adalah standar yang harus dipakai untuk semua theme baru.
Rilis 0.43, Agustus 2025, membawa Zellij keluar dari terminal: web client. Dengan web client, kalian bisa mengakses session Zellij dari browser — tanpa instalasi client, dari perangkat mana pun, cukup lewat URL. Detail teknis dan workflow-nya sudah dibahas di episode 20; yang penting untuk timeline di sini adalah bahwa web client membuka Zellij ke audiens yang tidak punya Zellij terinstal. 0.43 juga menambahkan multiple pane actions: kalian bisa memilih banyak pane sekaligus dengan Alt + klik kiri, lalu menutup, menumpuk, atau memindahkan kelompok pane tersebut secara massal — fitur yang tidak ada di multiplexer lain. Double-click dan triple-click untuk seleksi teks juga hadir di rilis ini, bersama API plugin Rust baru yang jauh lebih kaya.
| Fitur | Rilis | Cara Akses |
|---|---|---|
| Welcome screen | 0.40 | Otomatis saat zellij tanpa session aktif |
| Filepicker / Strider | 0.40 | zellij plugin -- filepicker |
| Pipes | 0.40 | zpipe / zellij pipe |
| Plugin manager | 0.41 | Ctrl+o lalu p |
| Pin floating pane | 0.42 | Ctrl+p lalu i |
| Web client | 0.43 | Lewat web server 127.0.0.1:8082 |
Rilis 0.44 adalah rilis paling ambisius dalam sejarah Zellij, dengan tiga pilar besar. Pertama, native Windows support: Zellij kini berjalan di Windows tanpa WSL, dengan paritas fitur penuh — session management, workspace automation, plugin ecosystem, dan multiplayer. Windows users yang sebelumnya harus bergantung pada WSL kini bisa menikmati Zellij secara native. Kedua, remote sessions: kalian bisa attach ke session Zellij jarak jauh langsung dari terminal lewat HTTPS, memakai mekanisme autentikasi token yang sama dengan web client:
zellij attach https://example.com/my-cool-sessionRilis ini juga menambahkan read-only tokens — token yang mengizinkan attach tanpa bisa mengubah apa pun, ideal untuk mengajar, demo, screencast, atau streaming. Token dikeluarkan lewat zellij web --create-read-only-token atau plugin share dengan Ctrl+o lalu s.
Ketiga, CLI automation yang jauh lebih bertenaga. Flag --blocking, --block-until-exit-success, dan --block-until-exit-failure pada zellij run memungkinkan script menunggu hasil perintah di dalam pane sebelum lanjut ke perintah berikutnya — membuka pintu untuk pipeline ala CI di dalam terminal. Ada juga zellij subscribe untuk streaming output pane secara live, zellij action list-panes --json untuk query state session dalam format terstruktur, dan zellij action list-tabs --json untuk state tab. Di sisi UX, 0.44 menghadirkan layout-manager (Ctrl+o lalu l), session manager dengan fuzzy find di layar tunggal (Ctrl+o lalu w), dukungan theme dark dan light otomatis via theme_dark dan theme_light, resize pane dengan mouse, serta click-to-open untuk path file di output terminal. Untuk menikmati semua itu, pastikan kalian memperbarui Zellij sesuai platform masing-masing:
curl -sSfL https://install.zellij.dev | bashImportant
Untuk mengikuti seluruh fitur episode ini, pastikan versi kalian 0.44.x. Periksa dengan zellij --version. Fitur seperti layout-manager, session manager dengan fuzzy find, theme dark/light otomatis, native Windows support, dan CLI automation hanya tersedia di 0.44 ke atas. Versi stabil terbaru adalah 0.44.x, dan seluruh perintah di episode 25 ini merujuk ke versi tersebut.
Sekarang kita satukan semuanya: CLI actions, pipes, layout, dan plugin dalam satu workflow. Tujuan studi kasus ini adalah membangun script yang membuka project, menyusun workspace, menjalankan dev server, dan membuka file — semua dari command line, keyboard-first, tanpa satu pun klik mouse.
Pertama, layout KDL untuk project Rust sederhana. Layout ini membagi layar menjadi editor di kiri dan dua pane bertumpuk di kanan untuk dev server dan git:
layout {
tab name="main" focus=true {
pane command="nvim" cwd="/home/alman/project" size=50%
pane split_direction="vertical" {
pane command="cargo watch -x run"
pane command="lazygit"
}
}
}Lalu script bootstrap yang memanfaatkan CLI automation. Script ini menghentikan session lama, membuat session baru dengan layout di atas, mengirim perintah ke editor, dan memindahkan fokus:
#!/usr/bin/env bash
set -euo pipefail
SESSION="dev"
zellij kill-session "$SESSION" 2>/dev/null || true
zellij attach --create-background "$SESSION" options --default-layout dev
zellij --session "$SESSION" action write-chars ":edit src/main.rs"
zellij --session "$SESSION" action go-to-tab 1
zellij --session "$SESSION" action move-focus down
zellij attach "$SESSION"Terakhir, integrasi pipes dan filepicker untuk memilih target. Kalian bisa menyalurkan pilihan file ke perintah apa pun, misalnya memilih artefak yang akan di-deploy:
zpipe filepicker | xargs -i ./deploy.sh {} --env productionKetiga lapisan ini bekerja bersama: layout menyediakan struktur awal, CLI actions melakukan orkestrasi, dan pipes menghubungkan pilihan interaktif ke perintah nyata. Inilah bentuk nyata dari "workspace automasi" yang dijanjikan sejak awal series.
Warning
Perhatikan bahwa zellij action yang dipanggil dari luar session harus menaruh --session <nama> tepat setelah zellij dan sebelum action — zellij --session dev action write-chars, bukan sebaliknya — agar menargetkan session yang benar; tanpa flag itu, perintah hanya berpengaruh pada session tempat kalian menjalankannya. Ini adalah sumber kebingungan paling umum saat mulai mengotomasi Zellij dari script.
plugins setelah upgrade. Welcome screen dan filepicker tidak muncul karena alias plugin lama tidak terdaftar di config. Solusi: samakan block plugins kalian dengan zellij setup --dump-config.zellij attach https://... memerlukan web server Zellij yang berjalan dan session yang di-share. Pastikan kedua syarat terpenuhi sebelum menuduh koneksi bermasalah.--session. Menjalankan zellij action dari luar session tanpa menyebutkan nama session berarti perintah itu nyasar ke tempat yang salah — atau tidak berpengaruh sama sekali.zellij --version.Episode 25 ini merangkum perjalanan rilis 0.40 sampai 0.44: welcome screen dan filepicker yang membuat interaksi workspace manusiawi, pipes yang menjadikan plugin saling berbicara, plugin manager yang menjinakkan ekosistem plugin, pinned floating panes dan theme spec baru yang menyempurnakan tata letak, web client yang membawa Zellij ke browser, serta remote sessions, Windows support, dan CLI automation yang menutup lingkaran. Studi kasus di akhir episode menunjukkan bagaimana semua lapisan itu bekerja bersama dalam satu workflow automasi nyata.
Poin yang harus kalian bawa:
Di episode 26 selanjutnya kita keluar dari fitur internal dan melihat bagaimana Zellij bergaul dengan ekosistem developer: integrasi seamless dengan Neovim dan VS Code, lazygit di dalam pane, task runner, fzf untuk switching session, session-manager plugin, hingga AI coding assistant — semuanya dirangkai menjadi daily driver keyboard-only. Sampai jumpa di episode 26!