herder: Apakah Ini Multiplexer Agen Terbaik?

BBetter Stack
컴퓨터/소프트웨어AI/미래기술

Transcript

00:00:00Herder, sebuah multiplexer agen yang berjalan di terminal yang sudah Anda gunakan, sehingga Anda dapat menjalankan
00:00:05banyak agen pengodean secara berdampingan di panel atau tab yang berbeda dan benar-benar melihat mana yang bekerja, mana
00:00:10yang terblokir, atau mana yang sudah selesai, lengkap dengan notifikasi sistem dalam satu biner Rust yang berarti
00:00:15tidak perlu Electron atau aplikasi terpisah. Alat ini bahkan memiliki cara cerdas untuk bekerja melalui SSH, tetapi dengan alat
00:00:20seperti cmux yang makin populer, mengapa Anda perlu repot menggunakan Herder? Klik subscribe dan mari kita cari tahu.
00:00:28Herder dibuat oleh pengembang bernama Ogle Can Celix, yang saya asumsikan menghilangkan huruf 'e' dari kata
00:00:34Herder karena dia penggemar tahun awal 2000-an. Saya tidak tahu, tapi saya berasumsi Herder adalah alat yang
00:00:39bisa Anda gunakan untuk menggembalakan banyak agen seperti penggembala domba, yang merupakan masalah bagi, yah, katakanlah sebagian besar
00:00:45pengembang di luar sana yang menggunakan AI untuk melakukan pengembangan karena sulit untuk terus
00:00:49melacak apa yang sedang dikerjakan masing-masing agen. Herder mengambil banyak inspirasi dari tmux, yang merupakan terminal
00:00:54multiplexer dengan tab, panel terpisah, dan sesi persisten bahkan setelah Anda terputus, tetapi tmux
00:01:00dibangun beberapa dekade lalu jauh sebelum agen AI ada, jadi jika Anda menjalankan agen di dalam salah satu
00:01:06panelnya, ia tidak tahu bahwa agen itu ada atau apa statusnya. Inilah mengapa alat seperti Warp atau cmux ada
00:01:12yang menarik Anda keluar dari terminal Anda sendiri dan masuk ke terminal mereka, sehingga Anda harus mempelajari alur kerja orang lain
00:01:18yang menjadi alasan mengapa Ogle Can Celix membangun Herder untuk melakukan keduanya sekaligus: persistensi tmux dengan kesadaran agen
00:01:24yang tertanam di dalamnya. Dan karena Herder hanyalah satu biner Rust yang dibangun dengan Ratatui, semuanya hanyalah
00:01:29merender teks ke terminal Anda sehingga bisa berjalan di mana pun terminal Anda bisa, termasuk melalui SSH. Ada
00:01:35juga API soket yang berarti agen dapat mengoperasikan Herder sendiri, yang sangat mengesankan untuk dilihat.
00:01:40Faktanya, mari kita lakukan demo singkat. Setelah menginstal Herder menggunakan brew, curl, atau bahkan
00:01:46Nix flake, saya sangat senang mereka menambahkan opsi ini, Anda bisa langsung menjalankan perintah 'herder' yang akan memberi Anda
00:01:50tampilan ini yang menunjukkan terminal, beberapa ruang kerja, dan beberapa agen. Sekarang saya sudah sedikit memperbesar tampilan sehingga ada
00:01:56beberapa hal yang tidak bisa Anda lihat, seperti perintah lengkapnya, tapi saya akan mencoba yang
00:02:00terbaik untuk memamerkan Herder. Jadi di sini Anda bisa melihat tidak ada ruang kerja dan secara default prefiksnya
00:02:05adalah Ctrl+B, yang mirip dengan tmux, tapi saya akan menunjukkan cara mengubahnya nanti. Sekarang prefiksnya
00:02:10sudah diaktifkan, yang bisa saya lihat di bagian navigasi di bawah sini, jadi yang harus saya lakukan hanyalah menekan
00:02:14Shift+N untuk membuat ruang kerja baru. Tentu saja, Anda bisa menavigasi sepenuhnya menggunakan keyboard Anda,
00:02:19jadi saya bisa menekan prefiks dan tanda tanya untuk melihat semua pintasan keyboard, tetapi Anda juga bisa
00:02:23menggunakan mouse Anda. Jadi saya bisa membuat tab baru bernama 'dua', saya bisa klik kanan untuk menutup tab, mengganti nama
00:02:28ruang kerja saya menjadi 'test', membuat ruang kerja baru, mengakses pengaturan ini di menu, dan sebagainya. Saya bahkan bisa
00:02:34membuat panel horizontal dan vertikal, serta mengganti nama panel tertentu dan menavigasi antar
00:02:38panel, semua menggunakan mouse. Tapi nilai jual sebenarnya dari Herder adalah cara berinteraksinya dengan agen.
00:02:43Jadi untuk saat ini, ini menggunakan bash, tetapi saya lebih suka menggunakan fish, jadi saya akan mengubah kedua terminal ini
00:02:46lalu saya akan membuka Claude Code di bagian atas dan Codex di bagian bawah. Tapi kita sudah bisa melihat
00:02:51Herder telah secara otomatis mendeteksi agen-agen tersebut dan memberi mereka status, jadi Claude sedang terblokir
00:02:55dan Codex sedang idle. Mari kita alamatkan keduanya dengan memberi mereka akses ke direktori ini, dan tentu saja saya bisa
00:03:00memberi mereka berdua prompt seperti “model apa yang saya gunakan?” dan kita bisa melihat Herder segera memperbarui
00:03:05untuk memberi tahu kita bahwa Claude sedang bekerja, yang juga berfungsi dengan Codex CLI. Sekarang, saya juga menyadari saya berada di
00:03:09ruang kerja yang salah, jadi mari kita hapus yang ini dan ganti nama yang satu ini menjadi 'test'. Tapi dengan Herder, agen juga bisa
00:03:15membuat ruang kerja, tab, dan panel juga. Mari kita lihat cara kerjanya. Jadi saya akan keluar dari Herder
00:03:20dengan menekan prefiks lalu 'q', lalu Anda bisa melihat di sini semua opsi yang diberikan oleh Herder CLI kepada kita.
00:03:24Jadi yang akan saya lakukan adalah kembali ke Herder, dan ini adalah salah satu nilai jualnya: alat ini kembali ke
00:03:29ruang kerja yang tepat dan agen yang tepat yang saya buka dengan sesi yang sama. Tapi saya akan membuat
00:03:34ruang kerja baru, saya akan masuk ke direktori, lalu saya akan membuka Claude Code. Dan sekarang
00:03:38saya akan memberikan perintah untuk menggunakan Herder CLI guna memunculkan dua panel dengan Claude Code di dalamnya. Keduanya
00:03:44jalankan satu dengan prompt ini untuk meringkas file terbesar dalam proyek, dan satu lagi dengan prompt ini
00:03:49untuk mencari basis kode untuk setiap kunci API atau rahasia yang di-hardcode. Dan di sini ia telah memuat panel baru dengan
00:03:54Claude Code. Saya akan memperkecil tampilan agar kita bisa melihatnya lebih baik, dan sekarang ia sedang menjalankan
00:03:58prompt lain di basis kode, jadi kita bisa menggulir ke atas untuk melihat bahwa yang satu ini telah selesai. Kita juga bisa melihat
00:04:03ia memberikan judul yang sesuai, seperti “Claude: Rahasia” dan “Discord”. Dan di sini ia tidak menemukan kunci API yang di-hardcode.
00:04:09Ya, dari sini kita bisa meringkas output dari kedua panel lalu meminta Claude untuk menutupnya. Jadi sekarang
00:04:14ia mendapatkan informasi dari panel pertama dan menutupnya, dan ia melakukan hal yang sama ke panel kedua
00:04:18yang juga sudah ditutup. Dan di bawah sini, ia memberi saya ringkasan yang bagus. Sekarang karena Herder
00:04:23hanyalah biner yang bisa Anda instal ke terminal Anda, saya bisa SSH ke server Linux dan menginstal Herder
00:04:28dengan cara yang sama seperti yang saya lakukan di Mac. Anda bisa melihat saya telah melakukan ini sebelumnya dan ia memulihkan sesi
00:04:32saya sebelumnya. Jadi saya memiliki Claude Code terbuka di satu panel dan saya menggunakan Vim untuk menelusuri kode di panel lain.
00:04:36Namun masalahnya adalah ini tidak membawa pengaturan konfigurasi Herder saya yang ada di
00:04:41mesin Mac lokal saya. Sejujurnya saya tidak memiliki banyak pengaturan, yang saya lakukan hanyalah mengubah tombol dari
00:04:45Ctrl+B menjadi Ctrl+Space, dan saya telah mengubah tema menjadi 'terminal'. Tapi jika saya memiliki file konfigurasi yang sangat diedit
00:04:50dengan pintasan keyboard khusus, ini bisa menjadi cukup menjengkelkan. Jadi salah satu cara untuk mengatasi
00:04:55hal ini adalah dengan menggunakan Herder dengan flag 'remote' dan SSH langsung ke server Anda, yang akan saya jelaskan
00:05:01tepat apa fungsinya sebelum saya menekan Enter. Jadi Herder bekerja dengan menjalankan server dan klien tipis yang
00:05:06berkomunikasi menggunakan soket Unix, jadi klien mengirim penekanan tombol ke server dan server mengelola
00:05:11tab, panel, persistensi, dan hal-hal lainnya. Sekarang dalam kasus SSH, jadi menggunakan 'remote', server berjalan di
00:05:18mesin jarak jauh dan klien sebenarnya berjalan di mesin lokal Anda. Jadi ia mengirim penekanan tombol melalui soket Unix
00:05:24ke server dan server dapat menunjukkan kepada klien file-file yang ada di mesin itu sendiri,
00:05:30tetapi klien itu sendiri bisa menggunakan semua pengaturan konfigurasi yang ada di mesin lokal yang
00:05:35terpasang dengannya. Jadi mari kita lihat hal itu beraksi. Kembali ke tempat kita berhenti, sekarang jika saya menekan Enter
00:05:40itu akan terhubung langsung ke mesin SSH saya, yang bisa kita lihat memiliki Claude Code dan file kode
00:05:45yang sedang kita lihat dengan Vim. Tetapi jika saya menekan Ctrl+B, itu sepertinya tidak melakukan apa-apa karena menggunakan
00:05:49konfigurasi di Mac saya, yang berfungsi dengan Ctrl+Space untuk melihat prefiks. Sekarang saat kita di sini, mari
00:05:54kita lihat apa lagi yang bisa kita lakukan di menu. Kita bisa melihat keybind yang saya tunjukkan tadi, tetapi
00:05:59kita juga bisa mengubah tema, dan Herder memberi Anda banyak tema untuk dipilih, dari Nord ke Gruvbox dan bahkan
00:06:04Catppuccin. Dan ada juga opsi untuk memicu peringatan suara dan menu toast, yang bisa Anda ubah
00:06:10melalui terminal atau melalui sistem. Sekarang seperti biasa, ada begitu banyak fitur lain dari Herder yang
00:06:15tidak sempat saya bahas, seperti integrasi worktree, integrasi harness resmi, beberapa di antaranya
00:06:19yang Anda lihat di demo yang memberikan akses harness Anda ke keterampilan resmi Herder, dan memungkinkan Anda melanjutkan
00:06:24sesi yang tepat yang Anda miliki sebelum Anda menutup Herder. Sejujurnya, fakta bahwa ini berfungsi di terminal Anda yang sudah ada
00:06:29bagi saya adalah nilai jual utamanya. Karena sebanyak saya suka menggunakan cmux, saya jauh lebih suka menggunakan WezTerm,
00:06:35saya telah mengonfigurasinya dengan cara yang persis saya sukai, dan fakta bahwa jika saya ingin mengelola
00:06:39agen saya, yang harus saya lakukan hanyalah membuka tab terminal baru di WezTerm dan jalankan Herder. Ya, Anda memang
00:06:45kehilangan peramban web dari cmux, tetapi sejujurnya saya tidak terlalu sering menggunakannya. Dan bagi mereka
00:06:50yang sedang menonton saat ini yang menggunakan Windows, saya punya kabar buruk bagi Anda, karena masalah soket Unix
00:06:54itu dan fakta bahwa Herder menggunakan PTY terminal, saat ini tidak ada dukungan Windows yang bagus
00:06:59pada saat rekaman ini dibuat. Tapi jika Anda menggunakan Windows, menurut saya ini saatnya untuk memberanikan diri dan hanya
00:07:04menggunakan Linux dual-boot. Ya, WSL memang ada, tapi tidak sama persis, kan?

Key Takeaway

Herder meningkatkan alur kerja pengembangan AI dengan menyediakan multiplexer terminal yang terintegrasi secara cerdas dengan status agen, memungkinkan otomasi penuh melalui API soket dan konsistensi konfigurasi saat bekerja secara jarak jauh.

Highlights

  • Herder adalah multiplexer terminal berbasis Rust yang dibangun dengan Ratatui, sehingga tidak memerlukan Electron atau aplikasi terpisah.

  • Alat ini memungkinkan persistensi sesi mirip tmux sekaligus memiliki kesadaran spesifik terhadap status agen AI yang sedang berjalan.

  • API soket bawaan memungkinkan agen AI untuk secara mandiri mengoperasikan Herder, termasuk membuat ruang kerja, tab, dan panel.

  • Penggunaan flag 'remote' saat melakukan SSH memungkinkan klien lokal mengirim penekanan tombol ke server jarak jauh sambil tetap menggunakan konfigurasi keyboard dan tema lokal.

  • Instalasi tersedia melalui manajer paket brew, curl, atau Nix flake pada sistem berbasis terminal.

Timeline

Masalah pada Multiplexer Tradisional

  • Multiplexer tradisional seperti tmux tidak memiliki kemampuan untuk mendeteksi status atau keberadaan agen AI.
  • Solusi seperti Warp atau cmux seringkali memaksa pengguna beralih ke alur kerja terminal pihak ketiga.
  • Herder menggabungkan persistensi sesi dengan kesadaran status agen dalam satu biner Rust.

Pengembang sering kesulitan melacak banyak agen pengodean secara bersamaan. Meskipun tmux menyediakan tab dan panel, ia tidak mengenali status agen di dalamnya. Herder mengatasi keterbatasan ini dengan berjalan langsung di terminal pengguna tanpa memerlukan aplikasi tambahan seperti Electron, sehingga tetap efisien melalui SSH.

Interaksi dan Otomasi Agen

  • Prefiks default Herder adalah Ctrl+B, namun dapat diubah sesuai preferensi pengguna.
  • Agen dapat menggunakan CLI Herder untuk memunculkan panel baru, memberikan perintah, dan menutup panel secara otomatis setelah tugas selesai.
  • Herder secara otomatis mendeteksi agen seperti Claude Code dan memberikan indikator status (misalnya, 'terblokir' atau 'idle').

Herder bukan sekadar alat manajemen visual, tetapi komponen aktif dalam alur kerja agen. Pengguna dapat menavigasi ruang kerja menggunakan keyboard atau mouse. Agen AI mampu menjalankan perintah CLI untuk mengelola struktur terminal, memungkinkan eksekusi tugas paralel seperti meringkas kode atau mencari rahasia yang di-hardcode secara terprogram.

Manajemen SSH dan Konfigurasi

  • Penggunaan flag 'remote' memisahkan pengelolaan sesi server dengan konfigurasi klien lokal.
  • Herder mendukung berbagai tema seperti Nord, Gruvbox, dan Catppuccin.
  • Dukungan sistem operasi saat ini terbatas pada lingkungan berbasis Linux atau macOS karena ketergantungan pada soket Unix dan PTY terminal.

Saat terhubung ke server melalui SSH, Herder menjaga konsistensi pengalaman pengguna dengan menerapkan pemetaan kunci dan tema lokal ke mesin jarak jauh. Klien di mesin lokal mengelola input, sementara server di mesin jauh menangani eksekusi tugas. Saat ini, Windows tidak didukung secara penuh, sehingga lingkungan Linux disarankan bagi pengguna yang membutuhkan kapabilitas ini.

Community Posts

No posts yet. Be the first to write about this video!

Write about this video