AI CLIを複数並列で動かす自作ツールagentdeck
Claude Codeだけでなく複数のAI CLIを同時に動かしたくなり、並列操作するElectronツールを自作してOSSで公開した。何が便利で、何が要らなかったのかを正直に書く。
複数の AI CLI を並べて使う価値は、性能の足し算ではありませんでした。待ち時間を殺さないこと。止まっている作業の取りこぼしを減らすこと。効いたのは、この二つだけです。――逆に「賢そうな自動連携」は、ほとんど要りませんでした。
私たちが作ったのは agentdeck という、複数の AI CLI を並べて操作する Electron 製のデスクトップアプリです。willink-oss で OSS として公開しています。
この記事は、そのツールを自分で作って、自分で毎日使ってみて―― 何が本当に便利で、逆に何は要らなかったのかを、盛らずに書き残すものです。 売り込みではありません。一人会社の開発者としての、運用の実感の共有です。
🧩なぜ一台では足りなくなったのか
「一台では足りない」の正体は、性能不足ではなく、並べた作業の見通しが消えることでした。
うちは社長ひとりと AI COO の一人会社です。tsuu や WordPress 受託、複数の OSS を並行して回しています。
Claude Code を一枚だけ開いて作業していると、片方のリポジトリでテストの完了を待つ間、手が空く。 その待ち時間に、別の作業を進めたくなります。 でも、ターミナルのタブを手で切り替えていると―― 「今どのエージェントが、どこまで進んだのか」が、すぐ分からなくなるんです。
性能が足りなかったのか? いいえ。足りなかったのは見通しのほうでした。 並列で動かすこと自体は、端末を並べればできます。 問題は、並べた瞬間に「全体が今どうなっているか」が頭から抜け落ちる、そっちにありました。
🛠️まず何を作ったか
agentdeck は、複数の CLI をカードで並べて状態を一望するだけの素朴な道具です。凝った機能はありません。
各カードが、ひとつの作業に対応しています。 走っているのか、入力待ちなのか、終わったのか。それが一目で分かる。 狙ったのは「並べる」と「状態が見える」の二つを、まず地味に満たすことだけです。
作り方も派手ではありません。 人に見せるデモを先に作るのではなく、まず自分の毎日の作業を、そのままこのツールの上に載せ替えてみました。 自分の運用に耐えられるか。そこから確かめたかったんです。
コードは willink-oss/agentdeck に公開してあります。中身はそのまま見られます。
✅本当に便利だったこと
効いたのは二つ。待ち時間が死ににくくなったことと、入力待ちの取りこぼしが減ったことでした。
ひとつめ。待ち時間が死ににくくなったこと。 片方がテストを回している間に、隣のカードで別リポジトリの小さな修正を進められる。 手でタブを切り替えていた頃より、頭の切り替えコストがずいぶん下がりました。
ふたつめ。入力待ちの取りこぼしが減ったこと。 エージェントが「確認しますか」と聞いているのに気づかず放置する。 これが並列運用の一番のロスなんですが、状態がカードに出ていると、止まっている作業がすぐ目に入ります。
正直に言うと、私たちの運用では、この「見えるから気づける」だけで、並べる価値の大半が回収できていました。
🧹逆に、要らなかったもの
エージェント同士の自動連携とカードの多さは、実運用ではむしろ邪魔で、ほとんど使いませんでした。
作ってみて要らなかった機能も、正直ありました。 最初は「エージェント同士を自動で連携させて、片方の出力をもう片方に流す」仕掛けを入れたくなったんです。 でも実際に自分で回すと、その自動連携はかえって何が起きているか分からなくなるだけで、ほとんど触りませんでした。
たくさんのカードを一度に開ける方向も、途中でやめました。 人間ひとりが本当に面倒を見られるのは、せいぜい二、三枚。 それ以上並べても、結局どれかが放置されます。
数を増やすより、今見るべき一枚がどれかをはっきりさせる。そのほうが運用は楽でした。 並列は目的ではなく手段だと、作ってから思い知りました。
🔁自走ループの二つ目の展開先として
agentdeck は公開プロダクトとして、社内で育てた自走サイクルの二つ目の実証台にもなりました。
agentdeck には、もうひとつ役割がありました。 私たちは社内の開発ハーネス willink-claude-kit で「人間のレビュー付きで、小さく自走する開発サイクル」を先に育てていました。 その二つ目の実証台として、agentdeck 自身を選んだんです。
ハーネスは道具なので、壊しても困るのは自分だけ。 でも agentdeck は公開プロダクトです。直したものが、そのまま人に届く。 その緊張感が欲しかった。
実際に、公開されている Issue をこの自走サイクルで一件消化して、v0.3.4 としてリリースするところまで運びました。 すべての変更は PR として公開し、最後にリリースの引き金を引くのは、人間の手のまま。 「並べて使う道具」を作る過程そのものが、自走ループを実プロダクトで検証する練習台にもなった―― これは正直、うれしい副産物でした。
🧭これから並列運用を試す人へ
まず端末を二枚並べて、「今どれが止まっているか」が自分で分かるかを確かめるのがおすすめです。
まとめます。 複数の AI CLI を並べて使う価値は、性能を足し算することより、待ち時間を殺さず、取りこぼしを減らすところにありました。 逆に、自動連携やカードの多さといった「賢そうな機能」は、私たちの一人会社の実運用ではほとんど効かず、むしろ見通しを曇らせました。
だから、これから並列運用を試すなら―― いきなりツールを探さなくていいと思います。 まずは端末を二枚並べて、「今どれが止まっているか」が自分で分かるかを確かめてみてください。
そこで見通しが足りないと感じたら、agentdeck のように、カードで状態を見せる薄い層を足せばいい。 派手な自動化は、その後で本当に必要になったときだけで十分でした。
開発パートナーを探していますか?
AIでプロダクトを最速で形にしませんか?
最短1週間でMVPを開発。アイデアの検証から本番リリースまで、i-Willinkがフルサポートします。まずはお気軽にご相談ください。
無料で相談する