はじめに
こんにちは。AXLBIT株式会社の@ax-tabuです。
これまでの開発はもっぱらVSCode上で行っていましたが、最近 VSCode を開くことが少なくなりました。
特にクラウド上のインスタンス内で開発する必要がある時に、VSCode の Remote SSH を使うと、インスタンス側に .vscode-server がつくられ、RemoteSSH用のサーバーが起動します。
貧弱なインスタンスであればすぐにメモリが足りなくなってしまいます。
できるだけクラウド上のインスタンスで開発する時はターミナルと素の SSH を使って開発するように切り替えました。
一方、Docker を用いたローカルでの開発は VSCode が手に馴染んでいましたが、ローカル開発とリモート開発でツールを分けるのも・・・と悩んでいました。
そんな悩みに拍車をかけたのが Claude Code や Copilot といったコーディングエージェントでした。VSCode のターミナルでコーディングエージェントを起動しておくのもいいですが、複数エージェントを起動すると、どのエージェントが承認待ちなのか、どのエージェントは作業が完了しているのか分かりにくく、ターミナルのタブをいちいち切り替えて確認する必要があります。
herdr との出会い
どうにか開発ツールを一つにまとめられないかとあれこれ調べている中で出会ったのが herdr1 でした。
One terminal. The whole herd.
Run all your coding agents from one terminal, on any box, even over ssh. Each runs in its own real terminal, on a server that keeps it alive when you close the laptop. See blocked, working, and done at a glance, and reattach from your phone.
herd は群れを表し(だからロゴが羊なんですかね)、1つのターミナルでAIエージェントの群れを操る、がコンセプトのようです。
コンセプトの通り、標準で複数のコーディングエージェントに対応しており、ターミナルでコーディングエージェントを起動すると、右下ペインにエージェントの状態が表示されます。
ここが idle であれば指示を受け付ける状態、blockedが承認待ち、workingは作業中となり、いちいちターミナルのタブを開かずとも、どのエージェントが承認を待っているかがすぐに分かります。
起動は超簡単。herdr をインストールして、ターミナルで herdrと打つだけ。
私はMacを使っているので、homebrew を使いましたが、他の方は公式ドキュメントをご参照ください。
brew install herdr
herdr
herdr の詳細な機能解説は公式ドキュメントや他の方の記事にお譲りし、私の記事では herdr という便利なツールがあるということだけをお伝えできればと思います。
エージェントが書いたコード差分を見やすくしたい
エージェントが書いたコードは、コミットおよびプッシュ前に人間による確認が必要です。
ターミナル上で差分を見る場合、diffコマンドを使うことが多いと思いますが、これも少々見づらい。
最近は hunkdiff2 というのが流行ってるらしいということで、こちらも試しにインストールしてみました。見やすい。
ターミナル上でも、GithubのPRレビューをするような感覚で差分が確認できます。
こちらも、VSCode では差分が2列で表示されるビューがありましたが、hunkdiffを使えばターミナルで完結します。
こちらも、私は homebrew でインストールしましたが、他の方法もあるようです。
brew install modem-dev/tap/hunk
hunk diff <ブランチ名1>..<ブランチ名2>
さらにこのhunkdiff、AIエージェントと人間が相互にレビューコメントを残すことができます。
というか hunkdiff の本当の価値はそこにあります。
めちゃくちゃ便利な使い方ができるみたいなので、ぜひ公式ドキュメントをご一読ください。
ファイルツリーを見やすくしたい
ある程度ソースコードの規模が大きくなると、ファイルツリーが大きくなります。
VSCodeだと左側のペインにファイルツリーが表示されるので、今編集しているファイルがどこにあるのか、次編集したいファイルはどのディレクトリを掘っていけばいいかが分かりやすいですよね。
これもなんとかターミナル上で実現できないか、と思ったらあるじゃないですか、spiceedit3。
コマンド一発でファイルツリー付きのエディタが表示されます。
ターミナル上のエディタだと、vim 派や emacs 派など様々な派閥がありますが、私は特にこだわりなく vim を使っていました。
spiceeditであれば、これまでのVSCodeのような感覚でファイルの編集ができるので、もうこれでいいじゃんとなってしまいました。
こちらもインストールは超簡単。
brew tap cloudmanic/spice-edit https://github.com/cloudmanic/spice-edit && brew install cloudmanic/spice-edit/spice-edit
spiceedit <ディレクトリ>
ショートカットキーに少々クセがあり、他のツールと競合しないように esc + 何か のショートカットになっています。
例えば、保存は esc + s 、undo(一般的には ctrl + z)は esc+ uとなっています。
これは慣れてしまえば問題ないかもしれません。
おわりに
以上、私が最近VSCodeから乗り換えつつあるターミナルでの開発環境をご紹介しました。
開発者にとっては当たり前の黒い画面ですが、初学者には若干抵抗があり、VSCodeの方が使いやすいかもしれません。
しかし、意外とVSCodeっぽいこともターミナルでできますし、なにより herdr は複数のエージェントの状態を一発で確認できるのでVSCode以上です。
ぜひ皆さんも、手に馴染む開発環境を探してみてください。
※一部マスキングをしているので分かりにくい箇所があるかもしれませんが、ぜひご自身の環境で使ってみてください。





