この記事は何
herdr の v0.9.0 で machine コマンドが追加されました。
これを使うとローカルの環境とSSH 先のリモートの環境を1つの herdr のウィンドウの中でまとめて開けるようになり、かなり便利です。
この記事では、その machine コマンドについて紹介をします。
TL;DR
SSH で入れるようにしてから、herdr machine add で登録することで使えるようになります。
ssh workbox # まず素の SSH が通ることを確認する
herdr machine add workbox --label "Build machine" # マシンを登録する
herdr # サイドバーに Local と Build machine が並ぶ
herdr とは
herdr は「コーディングエージェントを動かすためのランタイム」を掲げているターミナルツールです。
tmux や Zellij のようにペインやタブを管理できるマルチプレクサでありつつ、Claude Code や Codex といったエージェントの状態を「working」「blocked」「idle」として認識してくれるのが特徴です。「どのエージェントが止まっていて、こちらの返事を待っているのか」がサイドバーを見るだけでわかります。
詳しくは以下の記事をご覧ください。
v0.9.0 で追加された machine コマンド
v0.9.0 のリリースノートには、以下のように書かれています。
Manage Local and saved SSH machines from one Herdr window, with a combined agent list, machine-scoped navigation, notifications, and automatic reconnects. Add and manage connections with
herdr machine; a disconnected machine does not interrupt the others.
これまでも herdr --remote <host> でリモートに繋ぐことはできました。
しかし、その場合は「そのウィンドウはリモート専用」になるため、リモートの端末にherdrで繋ぐためにはターミナルの別タブを開いたり、herdrを一旦出てセッションを切り替えるような対応が必要で、少し不便さがありました。
このアップデートでは、このような環境切り替えの煩わしさを解決してくれています。
セットアップ方法
ssh config を設定する
herdr machine は裏で普通の OpenSSH を使うので、まずは素の SSH で入れる状態を作っておく必要があります。~/.ssh/config にホストを書いておくと、以降の指定がホスト名ひとつで済むようになるので設定しておくことをお勧めします。
Host workbox
HostName server.example.com
User you
Port 2222
設定については以下の記事が参考になると思います。
herdr machine コマンドでリモート環境に接続する
準備ができたら、マシンを登録します。
herdr machine add workbox --label "Build machine"
--label はサイドバーに表示される名前です。
リモート側で名前付きセッションを使っている場合は、--remote-session で指定します。
herdr machine add workbox --label "Build machine" --remote-session agents
指定しない場合は default セッションが対象になります。1つのプロファイルが対象にできるリモートセッションは1つだけです。
詳細は公式ドキュメントにまとまっているので、そのほかの機能等についてはこちらをご覧ください。
最後に
今回は、herdr v0.9.0 で追加された machine コマンドについてまとめました。
herdrはかなり活発に開発がされており、使っている中でどんどん便利になっていくのがとてもありがたいなと思います。
ブログでは「Herdr Cloud」というv1.0の構想も紹介されており、こちらの機能もとても楽しみです。
