Sebelum menggunakan tmux, kita perlu paham dari mana terminal multiplexer ini lahir: masalah sebelum GNU Screen (1987), kelahiran tmux oleh Nicholas Marriott (2007), hingga peta versi 3.x yang membawa fitur-fitur modern.

Di episode 0 sebelumnya, kita sudah menyiapkan fondasi: skill dasar (navigasi CLI, job control, SSH, environment variable), instalasi tmux 3.7b, terminal modern dengan true color, Nerd Font, dan tooling pendukung. Nah, di episode 1 ini kita akan mundur sejenak dan membahas mengapa tmux ada di dunia ini — karena sebelum memahami cara kerja sebuah tool, kalian harus paham masalah apa yang ia pecahkan dan dari mana ia berasal.
Mengapa ini penting di dunia nyata? Tools bermunculan setiap tahun, dan keputusan memilih tool yang tepat tidak bisa diambil dari sekadar "tool ini populer". Kalian harus paham mengapa sebuah terminal multiplexer yang lahir dari tahun 1987 masih dipakai jutaan engineer di 2026 — dan mengapa tmux, yang baru lahir 2007, menjadi standar de facto di server Linux.
Di episode ini kita akan membahas tiga hal: perjalanan evolusi terminal multiplexer dari GNU Screen hingga tmux, masalah-masalah nyata yang diselesaikannya, dan cara membandingkan tmux dengan alternatif modern seperti Zellij.
Bayangkan era sebelum terminal multiplexer: satu terminal, satu prompt, satu proses foreground. Ingin menjalankan dua hal sekaligus? Kalian harus membuka terminal baru, tab baru, atau memakai job control yang kikuk. Dan ketika koneksi SSH terputus — karena network drop, laptop tidur, atau timeout server — seluruh proses di terminal remote mati. Sebuah deployment yang berjalan 3 jam bisa hangus hanya karena Wi-Fi kantor mati sedetik.
Inilah masalah inti yang melahirkan terminal multiplexer: memisahkan proses dari layar.
Tahun 1987, GNU Screen rilis — multiplexer pertama yang populer di ekosistem Unix. Screen memungkinkan satu terminal membuka beberapa virtual screen, menyimpan sesi di balik koneksi yang terputus, dan kembali (re-attach) ke sesi yang sama dari terminal mana pun. Screen adalah terobosan besar: untuk pertama kalinya seorang engineer bisa detach, pulang, lalu melanjutkan pekerjaan dari laptop di rumah.
Namun Screen menua dengan buruk. Codebase-nya monolitik dan sulit dikembangkan, lisensinya kontroversial (sebagian kode berasal dari asal-usul non-GPL), dan fitur modern — 256 warna, clipboard terintegrasi, skrip ekstensi — terasa lambat hadir.
Tahun 2007, Nicholas Marriott, developer yang frustrasi dengan keterbatasan Screen, memulai proyek baru: tmux (terminal multiplexer). Visinya jelas sejak awal:
Sejak itu tmux tumbuh menjadi standar de facto di server Linux — alat wajib bagi Software Engineer, DevOps, dan SysAdmin.
| Versi | Tahun | Tonggak Utama |
|---|---|---|
| 1.x | 2007-2012 | Fondasi: client-server, session/window/pane, konfigurasi |
| 2.x | 2013-2018 | 256 color, clipboard control, format strings matang, plugin ecosystem |
| 3.0 - 3.4 | 2019-2023 | Pane menu, respawn commands, kontrol status bar lebih dalam |
| 3.5 | 2024 | Popup & menu: display-popup membuat terminal kecil melayang |
| 3.6 | 2025 | Pane scrollbar & hyperlink bawaan di status area |
| 3.7 | 2026 | Floating pane, copy-mode line selection (shift + arrow) |
| 3.7a / 3.7b | 2026 | Rilis bugfix yang memperbaiki regresi 3.7 |
Important
Yang perlu kalian ingat bukan sekadar tanggal, melainkan pola evolusinya: tmux terus menambahkan kemampuan yang membuat terminal layak menjadi IDE — popup, menu, floating pane, scrollbar. Fitur-fitur ini akan kita bahas di episode 21 (popups & fitur terbaru). Pastikan versi kalian 3.7b agar semuanya bisa dicoba.
Ini adalah pembunuh utama: koneksi SSH putus, semua proses remote mati. Dengan tmux, kalian bekerja di dalam sesi yang dijalankan oleh server tmux — proses di dalamnya tidak menerima SIGHUP saat client terlepas. Deployment, build, log streaming, editor — semuanya tetap hidup. Cukup tmux attach untuk kembali dari mana pun kalian berada.
Tanpa multiplexer, mengelola aplikasi, database, log, dan editor berarti membuka banyak terminal atau tab — boros memori, terpecah perhatian, dan mudah hilang. tmux mengorganisir semuanya dalam satu layar: session sebagai wadah kerja, window sebagai tab, dan pane sebagai split viewport.
Satu sesi tmux bisa di-attach oleh banyak client sekaligus. Dua engineer bisa melihat layar yang sama secara real-time — sempurna untuk pair debugging di server produksi atau berbagi output log. Kita akan bahas kolaborasi ini di episode 16 (multi-server & shared session).
Karena tmux sepenuhnya scriptable lewat command mode, kalian bisa menyusun ulang layout, mengeksekusi perintah di banyak pane sekaligus, dan mem-bootstrap environment kerja dengan satu skrip. Kita akan membangun kemampuan ini mulai episode 11 (scripting & otomasi CLI).
Ilustrasi paling nyata: kalian SSH ke server produksi, menjalankan tmux new -s deploy, menjalankan deploy script yang butuh 45 menit, lalu detach dan makan siang. Koneksi WiFi kafe terputus berkali-kali — tidak masalah. Saat kembali, tmux attach -t deploy memunculkan kembali layar persis di posisi terakhir, dengan deploy sudah selesai sukses. Tanpa tmux, deploy itu mati di percobaan pertama.
Inilah mengapa tmux sering disebut "asuransi" bagi engineer yang bekerja jarak jauh. Perilaku bertahan hidup ini murni berasal dari desain arsitektur client-server — dan itulah yang akan kita bedah di episode 2.
Tmux bukan satu-satunya pemain di lapangan. Pilih berdasarkan kebutuhan:
| Aspek | Terminal Polos | GNU Screen | Tmux | Zellij |
|---|---|---|---|---|
| Tahun rilis | - | 1987 | 2007 | 2022 |
| Arsitektur | Tunggal | Monolitik | Client-server | Client-server |
| Session/window/pane | Tidak | Ya | Ya | Ya |
| Scriptable / CLI | Terbatas | Terbatas | Sangat kuat | Cukup |
| Konfigurasi | - | File rc | ~/.tmux.conf | YAML |
| Plugin ecosystem | - | Minim | TPM, besar | Sedang |
| Popup / floating | - | Tidak | Ya (3.5+) | Ya |
| Performa | Paling ringan | Ringan | Ringan | Cukup |
| Status project | - | Maintenance | Aktif | Aktif |
| Cocok untuk | Task sederhana | Legacy / env minimal | Standar de facto | Pengguna baru yang suka UX modern |
Note
Fair untuk dikatakan: GNU Screen bukan tool yang buruk — ia tetap andal di lingkungan sangat minimalis dan sudah terpasang di hampir semua distro. Zellij menawarkan UX yang lebih ramah pemula (mouse support & layout preset bawaan). Tapi untuk skripabilitas, kematangan, dan adopsi di infrastruktur produksi, tmux adalah pilihan utama — dan itulah mengapa series ini fokus ke tmux.
Sebelum lanjut, pastikan lingkungan episode 0 masih sehat:
tmux -V
tmux 3.7bJika output sudah tmux 3.7b, kalian siap melanjutkan ke episode berikutnya.
Menganggap tmux "cuma tab tambahan". tmux bukan sekadar terminal multiplexing sederhana — arsitektur client-server dan detach/attach adalah inti kekuatannya. Pahami modelnya (episode 2) sebelum mengkustomisasi.
Langsung memasang 30 plugin sebelum paham dasar. Plugin tidak akan menyelamatkan kalian dari tidak paham session/window/pane. Fundamental dulu (episode 2-5), plugin setelahnya (episode 12).
Menghafal sejarah secara kaku. Kalian tidak perlu hafal tanggal. Yang penting pahami masalah yang dipecahkan: sesi bertahan, banyak task, kolaborasi, dan otomasi.
Memilih tool berdasarkan hype. Zellij dan Screen punya tempatnya masing-masing (lihat tabel di atas). Pilih berdasarkan kebutuhan produksi, bukan tren.
Tidak memverifikasi versi. Fitur episode 21 (popup, floating pane) butuh 3.5+. Jika masih 3.2, kalian akan kebingungan saat mencoba. Selalu cek tmux -V.
Berhenti di "sudah bisa detach". Detach hanyalah 5% dari kekuatan tmux. Series ini 28 episode karena masih banyak yang akan kalian kuasai setelahnya.
Di episode 1 ini kita sudah menempuh perjalanan sejarah: memahami masalah yang melahirkan terminal multiplexer, GNU Screen (1987), kelahiran tmux oleh Nicholas Marriott (2007), serta peta versi 2.x hingga 3.7b yang membawa popup, scrollbar, dan floating pane.
Poin penting yang harus kalian bawa:
Sekarang teori sudah matang, saatnya membedah cara kerja mesinnya. Di episode 2 selanjutnya, kita akan membahas Konsep Dasar & Arsitektur Utama — memahami model client-server, hierarki session → window → pane, bagaimana proses berkomunikasi lewat Unix socket, dan bagaimana status bar dirender. Pastikan tetap semangat, karena pemahaman arsitektur ini adalah kunci menguasai seluruh series.