4
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

herdrのセットアップ&使い方

4
Last updated at Posted at 2026-08-14

本記事の執筆にはAIを使用しています。

はじめに

AIコーディングエージェント向けのターミナルマルチプレクサ「herdr」を紹介します。
何ができるか、メリットとデメリット、基本的な使い方、主なキーバインドをまとめます。

「herdr」とは?

複数のコーディングエージェントをまとめて動かすためのターミナルマルチプレクサです。

Rust製の単一バイナリで、ライセンスはApache-2.0です。
tmuxと同じくペインを分割して使いますが、マウス操作とAIエージェントの状態表示に力を入れているのが特徴です。

環境

  • macOS: Tahoe 26.4
  • herdr: 0.8.0

何ができるか

herdrでできることは、大きく5つです。

ターミナルを分割して並べる

画面は「ワークスペース > タブ > ペイン」の3階層で管理します。

用語 説明
ワークスペース プロジェクト単位の入れ物。リポジトリごとに1つ作る
タブ ワークスペース内のレイアウト。用途ごとに分ける
ペイン 実際にプロセスが動くターミナル

エージェントの状態を一覧で見る

ペインの中で動いているエージェントを検知し、サイドバーに状態を並べます。
状態は記号と色で表示されるので、一覧を眺めるだけでどれが止まっているかわかります。

状態 記号 意味
working 実行中
blocked 入力や承認を待っている
done 終わったが未確認
idle 待機中
unknown · グレー 状態が判別できない

色は既定のテーマ(catppuccin)のもので、テーマを変えると変わります。

ペインの状態はタブとワークスペースにも伝わります。
blocked のエージェントが1つでもいると、そのタブとワークスペースも赤い になります。

Claude Code、Codex、Cursor Agent CLI、opencode、Geminiなど多くのエージェントに対応しています。
blocked になっているエージェントへサイドバーから直接ジャンプできるので、どれが自分の返事待ちなのかを探さずに済みます。

デタッチしても動き続ける

herdrはサーバーとクライアントに分かれています。
ペインを持っているのはサーバーなので、ターミナルを閉じてもプロセスは動き続けます。
別のターミナルから herdr を実行すれば、同じセッションに戻れます。

マウスで操作する

クリックでフォーカスを移動し、分割の境界をドラッグしてリサイズできます。
右クリックでコンテキストメニューが開き、ドラッグした範囲はそのままクリップボードへコピーされます。

CLIとSocket APIから操作する

herdr コマンドやローカルソケットのAPI経由で、ペインの作成やエージェントの起動を操作できます。
エージェント自身にherdrを操作させることもでき、そのためのスキルファイルは herdr --skill で出力できます。
プラグインとマーケットプレイスもあります。

デスクトップアプリと比べたメリット

エージェントをまとめて動かす手段としては、Claude Codeのデスクトップアプリのような選択肢もあります。
それらと比べたメリットを挙げます。

  • ターミナルの中で完結する。GUIとターミナルを行き来しなくていい
  • SSH先のマシンでも同じように使える(herdr --remote <SSH先>
  • Rust製の単一バイナリで軽い。Electron製のアプリのようにメモリを食わない
  • エージェント以外のコマンドも同じ画面で動かせる。lazygit やログの監視を隣のペインに置ける
  • エージェントを選ばない。Claude Code、Codex、Cursorなどを1つの画面に混ぜられる
  • CLIとSocket APIから操作できるので自動化しやすい。エージェント自身に操作させることもできる
  • キーバインドもテーマも設定ファイルで細かく変えられる

デスクトップアプリと比べたデメリット

  • 画像やきれいな差分表示は苦手。ターミナルで描ける範囲に収まる(Kittyのグラフィック対応は実験的)
  • 見た目や操作の作り込みは、デスクトップアプリのほうが上
  • ターミナル側の設定に左右される。日本語入力まわりには実験的な設定がいくつかある
  • マウスをherdrが握るため、ターミナル側のCmd+クリックなどが効かなくなる(mouse_capture = false で回避できる)
  • 通知はOSやターミナルに任せる形なので、設定が必要
  • バージョンが0.xなので、破壊的な変更が入る可能性がある。Windows版はプレビューベータ
  • サーバーを再起動すると、レイアウトは戻るがペインのプロセスは失われる

基本的な使い方

インストール

私はmiseを使ってインストールします。

$ mise use -g herdr

Homebrewやインストールスクリプトも使えます。

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

インストールできたか確認します。

$ herdr --version
herdr 0.8.0

起動する

作業したいディレクトリで herdr を実行します。

$ cd ~/ghq/github.com/uhooi/dotfiles
$ herdr

初回はセッションが作られ、2回目以降は同じセッションにアタッチされます。
ソケットの管理は不要です。

なお、herdrのペインの中からherdrは起動できません。
試したところ、次のように怒られました。

$ herdr
error: nested herdr is disabled by default.
see configuration if you want to enable it.

エージェントを動かす

ペインの中でいつも通りエージェントを起動します。

$ claude

サイドバーにエージェントが並び、状態が表示されます。
prefix+v でペインを分割し、別のエージェントを起動すれば並行して動かせます。

デタッチして戻る

prefix+q でデタッチします。
ターミナルのウィンドウを閉じても構いません。
戻るときは herdr を実行するだけです。

完全に終了したいときはサーバーを止めます。

$ herdr server stop

セッションを分ける

ワークスペースとは別に、まるごと独立した「セッション」を作れます。
ペインも状態も完全に分かれるので、仕事用と趣味用を混ぜたくないときに便利です。

$ herdr --session work

一覧と切り替えはCLIから行います。

$ herdr session list
$ herdr session attach work

セッションを切り替えるキーバインドは、0.8.0の時点ではありません。
prefix+q でデタッチしてから、上記のコマンドで切り替えます。
プロジェクトごとに分けたいだけなら、prefix+w で切り替えられるワークスペースで足ります。

補完を設定する

bash elvish fish powershell zsh に対応しています。

$ herdr completion bash

出力される補完スクリプトを読み込みます。
私は .bashrc に次の設定を追加しました。

~/.bashrc
+ # herdr
+ if type 'herdr' > /dev/null 2>&1; then
+   eval "$(herdr completion bash)"
+ fi

herdrが入っていない環境でもエラーにならないよう、type で存在を確かめています。

更新する

インストールスクリプトで入れた場合は、herdr自身で更新できます。

$ herdr update

主なキーバインド

プレフィックスキーは ctrl+b です。
ctrl+b を押してから、次のキーを押します。

キー 説明
prefix+? キーバインドの一覧を表示する
prefix+s 設定を開く
prefix+q デタッチする
prefix+shift+r 設定を再読み込みする

ペインの操作です。

キー 説明
prefix+v 右に分割する
prefix+minus 下に分割する
prefix+x ペインを閉じる
prefix+h prefix+j prefix+k prefix+l 左・下・上・右のペインへ移動する
prefix+tab 次のペインへ移動する
prefix+shift+tab 前のペインへ移動する
prefix+z ペインを最大化する
prefix+r リサイズモードに入る
prefix+e スクロールバックをエディタで開く

タブの操作です。

キー 説明
prefix+c 新しいタブを作る
prefix+n 次のタブへ移動する
prefix+p 前のタブへ移動する
prefix+1..9 指定した番号のタブへ移動する
prefix+shift+x タブを閉じる

ワークスペースの操作です。

キー 説明
prefix+w ワークスペースやペインを選ぶナビゲートモードに入る
prefix+g 移動先の一覧(ナビゲーター)を開く
prefix+shift+n 新しいワークスペースを作る
prefix+shift+g 新しいworktreeを作る
prefix+shift+d ワークスペースを閉じる
prefix+b サイドバーの表示を切り替える

すべてのキーバインドは config.toml[keys] で変更できます。

サイドバーの下段に並ぶエージェントは、既定ではキーで直接切り替えられません。
私はタブの切り替えキーを空にして、エージェントの移動に割り当て直しました。

~/.config/herdr/config.toml
[keys]
previous_tab = ""
next_tab = ""
switch_tab = ""
previous_agent = "prefix+p"
next_agent = "prefix+n"
focus_agent = "prefix+1..9"

タブを行き来するより、エージェントを行き来するほうが多いためです。

設定

設定ファイルは ~/.config/herdr/config.toml です。
既定の設定はコメント付きで出力できるので、これをコピーして書き換えるのが手軽です。

$ herdr --default-config > ~/.config/herdr/config.toml

設定を反映するには、prefix+shift+r を押すか次のコマンドを実行します。

$ herdr server reload-config

私が実際に設定している項目を紹介します。

サイドバーにClaude Codeのセッション名を表示する

Claude Codeは /rename で付けた名前をターミナルのタイトルに設定します。
サイドバーの行に terminal_title_stripped を足すと、その名前が並びます。

~/.config/herdr/config.toml
[ui]
agent_panel_sort = "spaces"

[ui.sidebar.agents.rows_by_agent]
claude = [["state_icon", "workspace", "tab"], ["terminal_title_stripped"], ["agent"]]

エージェントが増えると、どの行が何の作業なのかわからなくなります。
セッション名を出しておくと探さずに済みます。

agent_panel_sort はサイドバーの並び順です。
spaces はワークスペースごとにまとめ、priority は対応が必要なものを上に持ってきます。

通知を出す

既定では通知が切れているので、別のワークスペースのエージェントが blocked になっても気づけません。
deliverysystem にすると、OSの通知として出ます。

~/.config/herdr/config.toml
[ui.toast]
delivery = "system"
delay_seconds = 1

delay_seconds は通知するまでの待ち時間です。
herdr内のトーストで済ませたいなら herdr、ターミナルに任せたいなら terminal を指定します。

テーマを変える

既定は catppuccin です。
私はWezTermの配色に合わせて tokyo-night にしました。

~/.config/herdr/config.toml
[theme]
name = "tokyo-night"

catppuccin terminal tokyo-night dracula nord gruvbox one-dark solarized kanagawa rose-pine vesper から選べます。
ターミナルの配色に合わせると馴染みます。

dotfilesで管理する

~/.config/herdr にはログやソケット、セッションがherdrによって作られます。
ディレクトリごとシンボリックリンクを貼らず、config.toml だけをリンクしましょう。

$ mkdir -p ~/.config/herdr
$ ln -fns {dotfilesのパス}/.config/herdr/config.toml ~/.config/herdr/config.toml

私の設定はdotfilesに置いています。

おわりに

複数のエージェントを動かしていると、どれが返事待ちなのかを見失いがちです。
herdrはそこを解決してくれるので、エージェントをよく使う人はぜひ試してみてください :relaxed:

参考リンク

4
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?