AIエージェントで並行作業、Gitを使い倒す新CLI
朝の出汁版(通勤2分)
- ポイント1: 「Worktrunk」はGitの並行作業機能(ワークツリー)をコマンド一発で管理できるCLIツールで、複数のAIエージェントが同時に異なるブランチで作業するワークフローに対応している。
- ポイント2: 複数のAIエージェントに並行でコードを書かせる際、ブランチの切り替えなしに作業ディレクトリを分けられるため、エージェント同士の作業が干渉しない構造をつくれる点が注目どころ。
- ポイント3: GitHubリポジトリ(max-sixty/worktrunk)からインストールして、まずは「1つのタスクをAIに任せながら別ブランチで自分が作業する」という使い方から始めてみると感触をつかみやすい。
出汁の素(深読みモード)
AIエージェントに並行作業させると、なぜGitが詰まるのか
AIエージェントを複数走らせて、同時にコードを書かせる——これはAIが49人のゲーム開発チームになる時代でも触れたように、すでに現実の開発スタイルになりつつある。ただし、ここで壁になるのがGitの扱いだ。
通常のGitワークフローでは、ブランチを切り替えるたびに作業ディレクトリが書き換わる。エージェントAが「機能Xを実装中」、エージェントBが「バグYを修正中」という状態で同一リポジトリを使うと、ブランチの切り替えやファイルの競合が起きやすい。エージェントが途中まで生成したコードを、別の操作が上書きしてしまうようなケースだ。
Git自体には「ワークツリー(worktree)」という機能がある。1つのリポジトリから複数の作業ディレクトリを同時に持てる仕組みで、ブランチを切り替えずに並行作業できる。ただしコマンドが直感的でなく、日常的に使いこなしている開発者は多くない。
Worktrunkが解くのは「並行エージェントの作業干渉」問題
「Worktrunk」(max-sixty/worktrunk)は、このGitワークツリー管理をコマンド一発で扱えるようにしたCLIツールだ。Rust製で、GitHubスター数は1万を超えており、AI並行ワークフロー対応ツールとして注目を集めている。
設計の核心は「AIエージェント同士の作業が物理的に干渉しない環境をつくる」点にある。エージェントごとに独立した作業ディレクトリを割り当てることで、一方のエージェントが書いたコードが他方の作業を壊すリスクを構造的に排除できる。
具体的なイメージとしては、同じリポジトリに対して「feature-A用のディレクトリ」「bugfix-B用のディレクトリ」をそれぞれ独立して持ち、それぞれのブランチで異なるAIエージェントが並行して動く。作業が終わったら、各ブランチをマージする——という流れを、Worktrunkがシンプルなコマンドで管理する。
注目したいのは、これがエージェント専用の仕組みではないという点だ。「自分が1つのブランチで作業しながら、AIに別ブランチの別タスクを任せる」という非対称な使い方もできる。AIをサポート役として横に置きながら、自分がメインの意思決定をするスタイルに合う。
コードを書く人と書かない人で、使い方の入り口が違う
このツールはCLIなので、ターミナルに抵抗がない人向けではある。ただし「複雑なコードを書く」必要はなく、コマンドを覚えて実行できれば十分に使える。
コードが書けると有利なのは、エージェントに渡すタスクの粒度を細かく制御したい場面だ。ブランチ戦略や作業単位の設計を自分でコントロールしながら、並行エージェントのスループットを最大化できる。
コードなしで活用できるのは、AIコーディングアシスタント(CursorやGitHub Copilotなど)と組み合わせた「並行タスク分散」の入口として使う場合だ。たとえば、AIに「この機能を別ブランチで実装しておいて」と指示しながら、自分は別ブランチで別の作業を進める。Worktrunkがワークツリーの切り替えと管理を引き受けてくれるので、Gitコマンドを深く覚えなくても並行作業の環境が整う。
まず試すなら「1人+AIエージェント1体」の最小構成から
インストールはGitHubリポジトリ(https://github.com/max-sixty/worktrunk)のREADMEに手順が記載されている。Rust製のため、Cargoが入っている環境であればcargo installで導入できる。
最初の一手として現実的なのは、「自分が作業するブランチ」と「AIエージェントに任せるブランチ」を1つずつ用意する最小構成だ。まず手元の既存リポジトリに対してWorktrunkでワークツリーを追加し、そのディレクトリをAIコーディングツールに渡してタスクを実行させてみる。自分の作業ディレクトリは別のまま維持されるので、エージェントの生成が終わるまで自分の手を止めずに済む。
並行タスクが2つ以上に増えてきたタイミングで、Worktrunkの管理コマンドが本領を発揮する。ワークツリーの一覧確認、追加、削除といった操作が統一インターフェイスで扱えるため、「複数エージェントを走らせながら全体を把握する」状態を維持しやすくなる。
触る前に押さえたいのは、WorktrunkはGitの機能を置き換えるツールではなく、あくまで「Gitワークツリーのラッパー」だという点だ。Gitの基本操作(clone、branch、merge)が分かる状態で使うのが前提になる。
並行エージェント構成を本格的に組むなら
エージェントを3体以上走らせるような本格的な並行構成を考えているなら、Worktrunkの設計思想を先に把握しておくと良い。リポジトリのREADMEには、ワークツリーの命名規則やエージェントへのパス渡し方法についての記述もある。
また、AIが営業・制作・集客を全部やる時代が来たでも示されたように、AIエージェントの並行活用はコード生成にとどまらない。Worktrunkが提供する「独立した作業空間」の概念は、コード以外の成果物(ドキュメント、設定ファイル、プロンプトテンプレートなど)をGitで管理しているケースにも転用できる。エージェントに複数の出力物を並行生成させて、ブランチ単位で評価・採用するワークフローが組めるかどうか、リポジトリのIssueやDiscussionも確認しておく価値がある。
参照ソース
- [GitHub]floci-io/floci→ github.com/floci-io/floci
- [GitHub]spotify/portal-ai-plugins→ github.com/spotify/portal-ai-plugins
- [GitHub]max-sixty/worktrunk→ github.com/max-sixty/worktrunk
