Git Worktree と tmux、そして Claude Code みたいな AI エージェントを組み合わせて 並行開発を回すと、セッションが増えるほど把握できなくなる問題が出てくる。
それを解決するために作ったのが vive(ヴァイヴ)。
リポジトリはこちら: https://github.com/k4h4shi/vive
以前の初期バージョン(プロジェクト専用)
去年ごろ、「自分が今作っているプロジェクトの中で、複数のエージェントを非同期で回したい」という動機から始まって色々試していて、以下を楽にするシェルスクリプトを作ったりしてました。
git worktreeで作業ディレクトリを分けるtmuxでタスクごとのセッションを立てる- AI(Claude Code)をそれぞれのセッションで走らせる
- 必要になったら好きなタイミングで attach して会話する
ただ、この仕組みは「その時の自分のプロジェクト」前提の作りで、別プロジェクトに持ち込むたびに設定していましたし、コンテキストスイッチがしんどいなと思い、結局一つのタスクに集中するのが良いと思い、しばらく封印して、主にCursorを使っていました。
作り直し(汎用化 + TUI化)
Cursorが割と制限かかるようになってきたことでClaude Codeを使い始め、Codexも割と使えることに気づき、いよいよ本格的に並行エージェント開発に挑戦するかと思い始めました。
元のシェルスクプトを元に、 プロジェクトから切り離して汎用化し、TUIで作り直しました。

普段案件では主にTSを書いてるので、せっかくなので勉強がてらにとRustを選びましたが、実際Claude Codeによるバイブコーディングでほとんどコード書いてないです。
できること(コア機能)
README上の整理だと、vive は次の5つをコアにしています。
- Project: ルート配下の Git リポジトリを自動検出して一覧化
- Task: 1クリックで「Worktree + Branch + Tmux セッション」を作る
- Preview: エージェントのログ/状態(実行中・入力待ち等)をリアルタイムに覗け、指示も送れます
- Action: キー操作に紐づく挙動をユーザー設定で差し替えられる
- Hook: タスク作成時などに任意コマンドを自動実行できる
例: タスク作成後に自動でエージェント起動
~/.vive/config.toml で、タスク作成直後に claude を起動したり、Issue番号を渡して /fix を叩く運用ができます。
使ってみて良かったところ
- 3画面で、ブラウザ+Cursor+viveで全ての状況が把握できるので楽
- 類似ルール色々あるけど、自分で好きに拡張できるの嬉しい
- 並行開発の知見溜まってきて、AI並行開発をスクラムのスプリントで回すとか、AI支援ツールの設定をdotfilesで共通化したとか、色々やり始めて捗った勢いでブログまでできた。
今後やりたいこと
AIエージェントや開発ツール自体もどんどん進化するでしょうから、また乗り換えるかもです。 ただ、普通に案件を進めながらvive自体の更新もviveでできるので普通にめちゃ捗って楽しい。 最近、複数イシューを選択して同時にタスク立ち上がれる機能も追加しました。 今後は以下あたりをやりたいなと思ってます。
- 監視精度(入力待ち/思考中の判定)を上げる
- 「人間の意思決定」を中心に据えた、スプリント/計画との統合を育てる