
claude swarm の使い方|Claude Code 複数セッション並列実行
複数の Claude Code セッションを同時に走らせたとき、「どのセッションがどのファイルを編集しているか分からない」「プッシュが競合した」という問題にぶつかった開発者は多い。claude-swarm はまさにこの問題を解決するために設計された Python CLI ツールだ。複数のセッション間で共有コンテキスト・ファイル排他制御・ピアレビュー・Git ロックを管理し、大規模な並列開発を安全に実現する(出典: https://pypi.org/project/claude-swarm/)。
claude-swarm は pip install claude-swarm 1 行で導入できる CLI ツールで、複数の Claude Code セッションを協調させる 5 つのコア機能(共有コンテキスト・セッション間メッセージング・ファイルクレーム・ピアレビュー・Git ロック)を提供します。
SQLite データベースを内部ストレージとして使い、6 テーブルでセッション・メッセージ・レビュー・Git ロック・ファイルクレーム・共有コンテキストを管理。フロントエンド / バックエンド / インフラなど役割を分担した複数セッションが互いに干渉せず並列作業できる環境を構築します。
Claude Code に内蔵されたサブエージェント機能が「1 つのセッション内で複数の独立タスクを分割処理する」仕組みであるのに対し、claude-swarm は 複数のセッションそのものを跨いで調整する という異なるレイヤーで機能します。
目次 (16)
claude swarm とは何か — 複数セッション協調の背景
Claude Code を使いこなし始めると、大規模なリファクタリングや複数機能の同時実装では「複数セッションを並列起動する」ワークフローが有効に見える。しかし実際には次の問題が浮上する。
- セッション A がバックエンドを修正しているとき、セッション B が同じファイルを書き換えてコンフリクトが発生する
- 片方のセッションが決めたインターフェース定義をもう片方が知らず、型の不一致が生まれる
- 複数セッションが同時に
git pushしようとして競合する
claude-swarm はこれら 3 つの問題を 「協調レイヤー」 として一元解決する。SQLite データベースを共有ストレージとし、どのセッションが何を担当しているかをリアルタイムに把握する仕組みを提供する。
バージョン 0.3.3 が 2026 年 4 月 9 日にリリース。MIT ライセンスの OSS として公開されており、Python 3.11 以上の環境で動作する(出典: https://pypi.org/project/claude-swarm/)。
インストールと動作要件
pip install claude-swarm
インストールに必要な環境は以下の通り。
- Python 3.11 以上(3.10 以下では動作しない)
- pip が利用できるこhttps環境
- Git がセットアップ済みのリポジトリ
インストール後、claude-swarm --version でバージョンを確認できれば導入完了だ。内部では SQLite データベースが自動生成され、6 つのテーブル(sessions・messages・reviews・git_locks・file_claims・shared_contexts)でセッション間の状態を管理する。特別なサーバーやデーモンは不要で、ローカルファイルシステム上で完結する。
セッション間で共有コンテキストを管理する
claude-swarm の核心機能は 共有コンテキスト(shared context) だ。あるセッションが決定したアーキテクチャの方針や API のインターフェース定義を記録しておくと、他のセッションが次の sync を実行したタイミングで自動的に受け取れる。
コンテキストの追加と同期
コンテキストを記録するには次のコマンドを使う。
# セッション A: 認証方式を JWT に決定したことを記録
claude-swarm context add "JWT認証を使用。Bearer トークンで Authorization ヘッダーに載せる"
別のセッションでコンテキストを受け取るには sync を実行する。
# セッション B: コンテキストと他セッションのハートビートを受信
claude-swarm sync --session B
sync はセッション間のメッセージ受信・共有コンテキストのロード・ハートビート送信を 1 コマンドで行う。定期的に実行することで他セッションの状況を常に把握できる。
コアコマンド 5 選の使い方
claude-swarm が提供する主要コマンドは 5 つに整理できる。
1. セッション間メッセージング
# セッション A からセッション B へ質問を送る
claude-swarm message B "User モデルの型情報を共有できますか?"
チャットのような双方向メッセージングが可能で、別のセッションへ質問・確認・通知を送れる。
2. ファイルクレーム(排他所有権)
# セッション A: src/auth.py の排他編集権を宣言
claude-swarm claim src/auth.py --session A
ファイルの編集前に「所有権」を宣言する仕組みだ。別のセッションが同じファイルをクレームしようとすると警告が出るため、コンフリクトを未然に防ぐ。
3. ピアレビューの要求
# セッション A の変更をセッション B にレビュー依頼
claude-swarm review request --from A --to B
マージ前に相手セッションの承認を必須にするゲート機能だ。複数セッションによる並列開発でも、重要な変更がレビューなしで統合されることを防ぐ。
4. Git ロック付きプッシュ
# SQLite ロックを経由して安全にプッシュ
claude-swarm push --session A
複数セッションが同時にプッシュしようとする問題を SQLite のロック機構で解決する。先着のセッションがプッシュを完了するまで、他のセッションはキューで待機する。
5. セッション一覧の確認
claude-swarm sessions list
現在稼働中のセッション一覧と、それぞれがクレームしているファイルや最終同期時刻を確認できる。
ファイルクレームで編集コンフリクトを防ぐ
ファイルクレームは claude-swarm のなかでも特に実用性の高い機能だ。複数の Claude Code セッションが同じコードベースを編集する場合、「誰がどのファイルを担当しているか」が最大の衝突ポイントになる。
クレームの流れは次の通り。
- 編集を開始する前に
claude-swarm claim <ファイルパス> --session <セッション名>を実行する - 別のセッションが同じファイルをクレームしようとすると、「すでに所有権がある」旨の警告が出る
- 編集が完了したら
claude-swarm release <ファイルパス> --session <セッション名>で解放する
この仕組みにより、フロントエンド担当セッション・バックエンド担当セッション・インフラ担当セッションが並列作業しても、ファイル単位での競合が起きなくなる。
ピアレビュー機能 — マージ前の承認フロー
ピアレビューは claude-swarm の中でも独特の機能だ。チームでコードを書く場合と同様に、別のセッションがマージ前に変更内容を確認・承認するフローを自動化できる。
想定ユースケースはバックエンドセッションが認証ロジックを実装し終えたとき、フロントエンドセッションに API インターフェースの整合性を確認してもらうケースだ。セッション B が承認を返すまで、セッション A の変更はマージ待ちの状態になる。
# セッション B: レビュー依頼を確認して承認
claude-swarm review approve --from B --to A
ピアレビューの結果は SQLite のレビューテーブルに記録されるため、後から「どのセッションがいつ承認したか」を追跡できる。
Git ロック機構でプッシュ競合を解消する
複数の Claude Code セッションを同時に動かす最大のリスクは git push の競合 だ。セッション A と B が同時にプッシュしようとすると、どちらかが失敗してリベースが必要になる。
claude-swarm の push コマンドは SQLite のロックテーブルを経由することでこの問題を解決する。プッシュを要求したセッションが SQLite にロックを書き込み、他のセッションはそのロックが解除されるまで待機する仕組みだ。ロック保持時間は設定可能で、長時間処理によるデッドロックも回避できる。
Claude Code 内蔵サブエージェントとの違い
claude-swarm と Claude Code の内蔵サブエージェント機能はよく混同されるが、動作レイヤーが根本的に異なる。
| 比較軸 | Claude Code サブエージェント | claude-swarm |
|---|---|---|
| 動作スコープ | 単一セッション内 | 複数セッション間 |
| 協調の主体 | Claude Code 本体が管理 | SQLite が仲介 |
| ファイル排他 | 自動的に回避(同一コンテキスト) | claim コマンドで明示宣言 |
| Git 操作 | セッションごとに独立 | ロック機構で統合 |
| 主な用途 | タスク分割 + コンテキスト節約 | 役割分担 + 衝突防止 |
Claude Code のサブエージェントは「1 つのセッションが内部でタスクを分割し並列処理する」ためのものだ。claude-swarm は「複数の独立したセッションが協力して 1 つのコードベースを変更する」ためのものと理解すると整理しやすい(出典: https://pypi.org/project/claude-swarm/)。
導入時の注意点と現時点の制限
claude-swarm を本番ワークフローに組み込む前に把握しておくべき点を整理する。
Python 3.11 以上が必須。 3.10 以下の環境では動作しない。既存の Python 環境が古い場合は pyenv や仮想環境で 3.11 以上を用意する必要がある。
SQLite はローカル完結。 claude-swarm はローカルの SQLite データベースで状態を管理するため、リモートの別マシンで動くセッションとはリアルタイムに同期できない。現時点では同一マシン上の並列セッション向けの設計だ。
バージョン 0.3.3 は開発初期段階。 OSS として公開されたばかりのツールであり、API やコマンドの仕様が変更される可能性がある。本番環境での利用前に変更ログを確認することを推奨する。
Claude Code の並列セッション分のサブスクリプションが必要。 claude-swarm はあくまで協調のレイヤーを提供するツールであり、Claude Code 本体の利用権は別途必要だ。並列セッション数に応じた環境を用意する。
まとめ
claude-swarm は、複数の Claude Code セッションを並列運用する際の最大の課題である「ファイル競合・コンテキスト断絶・Git 競合」を SQLite ベースの協調レイヤーで解決する CLI ツールだ。pip install claude-swarm で導入できるシンプルさと、共有コンテキスト・ファイルクレーム・ピアレビュー・Git ロックという実用的な 5 機能がそろっている。
大規模リファクタリングや複数機能の同時実装で並列セッションを活用したい開発者にとって、Claude Code のサブエージェントと組み合わせることで強力な並列開発環境が整う。バージョン 0.3.3 時点では開発初期段階だが、Python 3.11 環境があればすぐに試せる選択肢として注目したい。