Kalau kamu menjalankan beberapa coding agent — Claude Code, Codex, OpenCode, Cursor, Grok — sekaligus di terminal, kamu pasti kenal rasa sakitnya: koneksi SSH putus, laptop ditutup, dan semua proses agen ikut mati. Herdr hadir untuk menyelesaikan ini. Ia menyebut dirinya "the runtime your coding agents live on" — runtime tempat agen coding kamu hidup dan terus berjalan.

Herdr adalah terminal workspace manager untuk coding agent, ditulis dalam Rust (satu binary, tanpa Electron). Mirip tmux, tapi dirancang khusus untuk agen AI: ia tahu status tiap agen (working, blocked, idle), bisa detach tanpa menghentikan proses, dan bisa mengelola beberapa mesin dari satu jendela. Artikel ini tutorial lengkapnya — dari install sampai menjalankan beberapa agen sekaligus.

Workspace — kontainer proyek level atas (satu per repo/tugas).

Tab — layout di dalam workspace.

Pane — terminal sungguhan tempat proses berjalan.

Agent — proses yang dikenali Herdr (Claude Code, Codex, dll.) dengan status terpantau.

Session — namespace server Herdr yang persisten.

Prefix — tombol pembuka aksi (default ctrl+b).

Kenapa Herdr, bukan tmux biasa?

tmux memang bisa multiplex terminal, tapi ia "buta" soal isi terminal itu. Herdr memahami proses di dalam pane: ia mendeteksi agen coding, menandai tiap pane working / blocked / done / idle, dan memberitahumu kalau ada agen yang berhenti dan butuh jawaban. Plus, server background-nya membuat proses tetap hidup walau koneksi SSH putus.

Prasyarat

  • Terminal (Linux, macOS, atau Windows via PowerShell/WSL)
  • curl atau Homebrew untuk install
  • Satu atau lebih coding agent yang sudah terpasang: Claude Code, Codex, OpenCode, Cursor, Grok, dll.

Langkah 1: Install Herdr

Cara tercepat lewat script installer resmi:

bash
curl -fsSL https://herdr.dev/install.sh | sh

Alternatif lain: brew install herdr (macOS/Linux), mise use -g herdr, atau di Windows: powershell -ExecutionPolicy Bypass -c "irm https://herdr.dev/install.ps1 | iex". Setelah itu, verifikasi instalasi:

bash
herdr --version

Langkah 2: Jalankan Herdr dan buat workspace

Jalankan Herdr dari direktori proyek mana pun:

bash
herdr

Herdr otomatis meluncurkan (atau menempel ke) session background default. Kamu tidak perlu mengelola socket — jika kamu detach, agen tetap berjalan. Saat session belum punya workspace, Herdr membuatkannya otomatis. Workspace adalah kontainer proyek; beri satu workspace per repo/tugas agar status agen di sidebar tetap terbaca.

Buat workspace tanpa mencuri fokus: herdr workspace create --cwd ~/project --label api --no-focus. Workspace juga bisa dibuat lewat CLI — lihat herdr workspace create.

Langkah 3: Jalankan coding agent di dalam pane

Setelah Herdr berjalan, langsung jalankan agen coding-mu di pane:

bash
claude
# atau
codex
# atau
opencode

Herdr mendeteksi agen secara otomatis dari proses foreground dan integrasinya. Di sidebar, setiap agen ditandai statusnya: working (sedang bekerja), blocked (butuh persetujuan/input), done (selesai, belum dilihat), idle (selesai dan sudah dilihat), atau unknown. Kamu jadi tahu proyek mana yang butuh perhatian tanpa berpindah-pindah pane.

Status agent: blocked = butuh input/approval · working = aktif · done = selesai (belum dicek) · idle = siap input · unknown = tidak bisa diklasifikasi.

Langkah 4: Split pane, tab, dan navigasi keyboard

Herdr mendukung mouse (klik, drag, klik kanan) dan keyboard. Tekan prefix (default ctrl+b), lalu tombol aksi:

  • prefix+v — split ke kanan
  • prefix+- — split ke bawah
  • prefix+c — tab baru
  • prefix+n / prefix+p — tab berikutnya/sebelumnya
  • prefix+w — navigasi workspace
  • prefix+shift+n — workspace baru
  • prefix+q — detach client
  • prefix+? — lihat semua binding aktif

Kalau mau bebas prefix atau menonaktifkan mouse capture, itu bisa diatur di config.toml (lihat Langkah 8).

Langkah 5: Pantau dan kendalikan agent lewat CLI

Semua yang bisa kamu lakukan lewat UI juga bisa lewat CLI (dan Socket API). CLI Herdr berbicara ke server yang sama, dan kebanyakan perintah mencetak JSON untuk otomasi. Contoh memantau dan mengirim prompt ke agen:

bash
herdr agent list
herdr agent get w1:p1
herdr agent prompt w1:p1 "review this change" --wait
herdr pane read w1:p1 --source recent --lines 120

Perintah agent prompt menulis teks + Enter ke agen; dengan --wait, ia menunggu sampai agen kembali ke status idle/done/blocked. Ini dasar untuk mengorkestrasi agen dari skrip atau agen lain.

Langkah 6: Detach dan reattach tanpa menghentikan kerja

Ini fitur paling penting. Tekan prefix+q atau tutup saja jendela terminal. Server Herdr dan semua agen tetap berjalan di background. Untuk kembali:

bash
herdr

Herdr menempel lagi ke session yang sama, layout pulih, dan session agen yang didukung bisa dilanjutkan. Kalau server atau mesin restart, Herdr memulihkan layout yang tersimpan dan me-resume session agen yang didukung (proses aslinya memang tidak selamat dari restart). Untuk menghentikan session dan pane-nya sepenuhnya:

bash
herdr server stop

Langkah 7: Kelola beberapa mesin dari satu jendela (SSH)

Herdr bisa menggabungkan kerja lokal dan mesin SSH yang tersimpan dalam satu jendela, dengan daftar agen gabungan dan reconnect independen.

bash
herdr machine add workbox --label "Build machine"
herdr machine list

# arahkan perintah ke mesin tertentu lewat prefix --machine:
herdr --machine "Build machine" agent list
herdr --machine "Build machine" agent prompt w1:p1 "review this change"

Herdr tidak menyimpan password atau private key — autentikasi SSH tetap lewat cara biasa. Kalau host key/passphrase butuh approval, mesin menampilkan status Attention alih-alih membuka prompt tersembunyi; jalankan herdr --remote workbox untuk menyelesaikan setup di foreground.

Langkah 8: Konfigurasi lanjutan (config.toml)

Keybinding, tema, perilaku sidebar, dan notifikasi diatur lewat config.toml. Cetak default-nya untuk mulai:

bash
herdr --default-config

Contoh potongan konfigurasi untuk menonaktifkan mouse capture:

python
[ui]
mouse_capture = false

Setelah mengubah konfigurasi, terapkan tanpa me-restart pane: herdr server reload-config.

Kesimpulan

Herdr menyatukan hal terbaik dari terminal multiplexer dan runtime agen: proses tetap hidup saat kamu detach, status tiap agen terpantau, dan semuanya bisa dikendalikan lewat CLI maupun Socket API. Untuk developer yang menjalankan Claude Code, Codex, atau OpenCode dalam jumlah banyak, ini cara yang jauh lebih rapi daripada belasan tab terminal.

Langkah berikutnya: pelajari agent automation untuk mengorkestrasi agen dari skrip, plugins untuk memperluas pane/workflow, dan Socket API untuk kontrol penuh dari tool eksternal.

Apa bedanya Herdr dengan tmux?

tmux adalah multiplexer terminal generik yang "buta" soal isi pane. Herdr mengenali proses coding agent di dalamnya, menandai status (working/blocked/idle), dan punya CLI + Socket API khusus untuk mengorkestrasi agen — sambil tetap mendukung split/tab/detach ala tmux.

Apakah Herdr menggantikan Claude Code atau Codex?

Tidak. Herdr tidak membungkus atau mengganti agen — ia "memiliki" terminal tempat agen berjalan. Kamu tetap menjalankan Claude Code, Codex, Cursor, atau OpenCode seperti biasa; Herdr hanya mengelola terminalnya dan melaporkan statusnya.

Apakah proses agen benar-benar tetap berjalan setelah laptop ditutup?

Ya, selama server Herdr (background) tetap berjalan. Menutup client/laptop tidak menghentikan agen. Namun kalau mesin dimatikan total (bukan sekadar detach), proses asli tidak selamat — Herdr akan memulihkan layout yang tersimpan dan me-resume session agen yang didukung.