ClawTeam Multi-Agent Coordination について
ClawTeamは、複数のAIエージェントをチームとして調整する、フレームワークに依存しないコマンドラインツールです。タスクやメッセージの管理に加え、Git worktreeの分離とターミナルでの監視に対応します。
主な機能
- 01チームとタスクの管理
- 02エージェント間のメッセージ送受信
- 03Git worktreeによる分離
- 04ランタイムプロファイルとプリセット
- 05Gitコンテキストと競合チェック
- 06ターミナルダッシュボードとスナップショット
活用シーン
- 01複数エージェントへの開発タスク分担
- 02引き継ぎや追加指示の調整
- 03worktree間の変更競合の確認
- 04チーム進捗の監視とスナップショット復元
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ hkuds/ clawteam --skill clawteam-multi-agent-coordinationインストール後、Claude Code で/clawteam-multi-agent-coordinationを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
agents/openai.yamlreferences/cli-reference.mdworkflows.md詳細
ClawTeam マルチエージェント連携
ClawTeam は、複数の AI エージェントをチームとして連携させる、フレームワークに依存しない CLI ツールです。 チーム/タスク管理、エージェント間メッセージング、git worktree による分離、プロバイダーに応じた ランタイムプロファイル、git コンテキストの挿入、スナップショット、ターミナルベースの監視ダッシュボードを提供します。
すべての操作は oh CLI から実行します。データはデフォルトで ~/.oh/ に保存されます。
インストール
pip install oh
Python 3.10 以降が必要です。P2P トランスポートをサポートするには、pip install oh[p2p] を実行してください。
前提条件
tmuxがインストールされていること(デフォルトの起動バックエンド)claude、codex、gemini、kimi、nanobot、openclawなどの CLI コーディングエージェント- worktree による分離とコンテキスト機能を利用するための git リポジトリ
- TUI ウィザード(
clawteam profile wizard)を利用する場合は、デフォルトの依存関係がインストールされていること
基本概念
チーム — 1 人のリーダーと 0 人以上のワーカーで構成される、名前付きのエージェントグループです。
受信トレイ — エージェントごとのファイルベースのメッセージキューです。receive はメッセージを読み取ると削除しますが、peek は削除しません。
タスク — pending、in_progress、completed、blocked の状態を持つ共有タスクボードです。
タスクは依存関係の連鎖と優先度に対応しています。
プロファイル — spawn と launch で使用する、再利用可能なクライアント/プロバイダー/ランタイム設定です。
プリセット — 1 つ以上のプロファイルを生成するために使用する、共有プロバイダーテンプレートです。
コンテキスト — 変更の競合チェック、最近の変更の確認、プロンプトへの情報挿入に使う、Git/worktree を認識するコンテキストツールです。
ボード — カンバン形式のタスク、受信トレイ件数、メッセージ履歴の表示に加え、gource によるアクティビティの可視化機能を備えたチームダッシュボードです。
クイックスタート
タスクを設定してチームを作成する
export CLAWTEAM_AGENT_ID="leader-001"
export CLAWTEAM_AGENT_NAME="leader"
export CLAWTEAM_AGENT_TYPE="leader"
clawteam team spawn-team my-team -d "Project team" -n leader
clawteam task create my-team "Design system" -o leader
clawteam task create my-team "Implement feature" -o worker1
clawteam task create my-team "Write tests" -o worker2
clawteam board show my-team
ランタイムプロファイルを設定する
# Inspect built-in provider templates
clawteam preset list
clawteam preset show moonshot-cn
# Generate a reusable profile from a preset
clawteam preset generate-profile moonshot-cn claude --name claude-kimi
# Or use the interactive TUI
clawteam profile wizard
# Claude Code on a fresh machine/home may need onboarding repair once
clawteam profile doctor claude
# Smoke-test the profile before using it in a team
MOONSHOT_API_KEY=... clawteam profile test claude-kimi
エージェントを起動して連携する
# Default path: tmux backend, claude command, git worktree isolation, skip-permissions on
clawteam spawn --team my-team --agent-name worker1 --task "Implement the auth module"
clawteam spawn --team my-team --agent-name worker2 --task "Write unit tests"
# Explicit backend and command
clawteam spawn tmux claude --team my-team --agent-name worker3 --task "Build API endpoints"
clawteam spawn subprocess claude --team my-team --agent-name worker4 --task "Run linting"
# Recommended for non-default providers/models
clawteam spawn tmux --profile claude-kimi --team my-team --agent-name worker5 --task "Build API endpoints"
clawteam spawn subprocess --profile gemini-vertex --team my-team --agent-name worker6 --task "Run linting"
clawteam board attach my-team
clawteam inbox send my-team worker1 "Start implementing the auth module"
clawteam board live my-team --interval 3
起動時のデフォルト設定
| 設定 | デフォルト | 上書き方法 |
|---|---|---|
| バックエンド | tmux | clawteam spawn subprocess ... |
| コマンド | claude | clawteam spawn tmux my-cmd ... |
| ワークスペース | auto(git worktree) | --no-workspace または設定 workspace=never |
| 権限 | スキップ | --no-skip-permissions または設定 skip_permissions=false |
| ランタイムプロファイル | なし | --profile <name> |
デフォルト以外のプロバイダー、モデル、エンドポイント、認証マッピングが必要な場合は、--profile を使用してください。
タスクのライフサイクル
# Create with dependencies
clawteam task create my-team "Deploy" --blocked-by <impl-task-id>,<test-task-id>
# Create with priority
clawteam task create my-team "Hotfix prod issue" --priority high
# Update status
clawteam task update my-team <task-id> --status in_progress
clawteam task update my-team <task-id> --status completed
# Filter tasks
clawteam task list my-team --status blocked
clawteam task list my-team --owner worker1
clawteam task list my-team --priority high
サブエージェントの待機
clawteam task wait my-team
clawteam task wait my-team --timeout 300 --poll-interval 10
clawteam task wait my-team --agent coordinator
clawteam --json task wait my-team --timeout 600
ワーカーループのプロトコル
ワーカーは最初の --task を完了した後も停止しないでください。想定されるループは次のとおりです。
# 1. Check tasks assigned to you
clawteam task list my-team --owner worker1
# 2. Finish any pending work, then check for new instructions
clawteam inbox receive my-team --agent worker1
# 3. If idle, notify the leader and keep monitoring for follow-ups
clawteam lifecycle idle my-team
リーダーがワーカーを明示的に終了するまで、このループを繰り返します。
Git コンテキストと競合チェック
clawteam context log my-team
clawteam context conflicts my-team
clawteam context inject my-team --agent worker1
作業の再割り当て、別のワーカーのタスクの続行、変更が重複する作業のマージを行う前に、これらを使用してください。
スナップショットと復旧
clawteam team snapshot my-team --tag before-refactor
clawteam team snapshots my-team
clawteam team restore my-team --snapshot before-refactor
アクティビティの可視化
clawteam board gource my-team --log-only
clawteam board gource my-team --live
ヘッドレス環境では、--log-only の使用を推奨します。
対応 CLI エージェント
検証済みの一般的な CLI は次のとおりです。
claudecodexgeminikiminanobotopenclaw
OpenClaw ワーカーの起動コマンドは自動的に正規化されます。単独の openclaw コマンドはエージェントのエントリーポイントに置き換えられ、必要に応じて --local、--session-id、--message が設定されます。
デフォルト以外のプロバイダーを設定するには、環境変数をプロンプトにハードコーディングするのではなく、profile と preset を使用してください。
コマンドグループ
| グループ | 目的 | 主なコマンド |
|---|---|---|
preset | 共有プロバイダーテンプレート | list、show、generate-profile、bootstrap |
profile | 再利用可能なクライアント/プロバイダー設定 | list、show、set、test、wizard、doctor |
team | チームのライフサイクル | spawn-team、discover、status、request-join、approve-join、cleanup、snapshot、restore |
inbox | メッセージング | send、broadcast、receive、peek、watch |
task | タスク管理 | create、get、update、list、wait |
board | 監視と可視化 | show、overview、live、attach、serve、gource |
context | Git/worktree コンテキスト | diff、files、conflicts、log、inject |
plan | 計画の承認 | submit、approve、reject |
lifecycle | エージェントのライフサイクル | request-shutdown、approve-shutdown、idle |
spawn | プロセスの起動 | spawn [backend] [command] |
identity | ID 管理 | show、set |
JSON 出力
すべてのコマンドで、機械可読な出力を得るために --json を指定できます。このフラグはサブコマンドの前に置いてください。
clawteam --json team discover
clawteam --json board show my-team
clawteam --json task list my-team --status pending
重要な注意事項
inbox receiveはメッセージを消費します。破壊的でない読み取りにはinbox peekを使用してください。- 作成時に
--blocked-byを指定すると、タスクのステータスblockedが自動的に設定されます。 - タスクを完了すると、そのタスクを
blockedByに指定しているタスクのブロックが自動的に解除されます。 - タスクでは
priorityも指定できます。緊急のブロック解除タスクや本番環境の修正にはhighを使用してください。 - ワーカーは、最初のタスクの後もすぐに終了せず、タスクと受信トレイのポーリングを続けることが想定されています。
clawteam spawnは、デフォルトで tmux、Git worktree による分離、権限確認のスキップを使用します。clawteam launchもskip_permissionsを尊重するため、テンプレートワーカーが承認プロンプトで停止しなくなりました。- ファイルへの書き込みはすべて、破損を防ぐために tmp ファイルへの書き込みと rename によるアトミック処理を使用します。
clawteam spawn経由で起動すると、ID 環境変数が自動的に設定されます。- タイル表示の tmux レイアウトですべてのエージェントを監視するには、
board attach <team>を使用してください。 board showの JSON とブラウザボードには、メンバーを考慮した別名付きのメッセージ履歴も含まれるようになりました。受信トレイのトリアージや引き継ぎに役立ちます。- デフォルト以外のプロバイダー/モデルには、プロバイダー環境変数を手動でエクスポートする代わりに、
--profileを使用してください。 profileは最終的な実行時オブジェクトであり、presetはプロファイルを生成するための再利用可能なテンプレートです。- 新しいマシンまたはホームディレクトリで Claude Code を使用する場合は、起動前に
clawteam profile doctor claudeを一度実行してください。 - worktree をまたぐタスクを安全に引き継ぐには、
context injectとcontext conflictsの使用が推奨されます。
追加リソース
references/cli-reference.md— コマンド、オプション、データモデルを含む CLI リファレンスの完全版references/workflows.md— マルチエージェントのワークフロー:セットアップ、起動の調整、参加プロトコル、計画の承認、正常なシャットダウン、監視パターン