Claude Code Agent Teamsを使ってGitHubのIssueを対応させてみる
By Yosuke | 2026年2月10日
株式会社tolvの宍戸陽介です。
最近、開発周りのAIの動きが速くなってきましたね。Codex appの登場や、Calude CodeのAgent Teamsなどマルチエージェントを使った機能が色々と出てきました。
今回は、Claude CodeのAgent Teamsを試してみようと思います。
また、Claude CodeからIssueを拾ってもらって、対応するようにします。
前提
今回は、CLIからGitHubにアクセスさせるため、ghコマンドを利用します。
事前にghコマンドをインストールしておきます。
試してはいないですが、GitHubのMCPでもうまくいくかもしれないです。
準備
Agent Teamsの有効化
Agent Teamsは、ディフォルトでは無効になっているので、有効化する必要があります。
~/.claude/settings.jsonに下記を追加します。
"env": {
"CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS": "1"
}
これで、Agent Teamsを使うことができます。
他にも、tmuxを使ってマルチペインで動作が見られる設定もできますが、今回は省略します。
未設定の場合、tmuxを使うかどうかは、自動で判断されるようです。
この辺りの設定は、公式に記載されています。
Claude Code セッションのチームを調整する - Claude Code Docs
複数の Claude Code インスタンスがチームとして連携して動作するように調整します。共有タスク、エージェント間メッセージング、一元管理を備えています。
code.claude.com
プロンプト
チームを作って対応してもらうようなプロンプトを作成します。
指示の中では、特にどのIssueを対応するかなどの指示は含めていません。この辺りは、優先度高のラベルがついているものとか、具体的なIssue番号などの指示でも良いかもしれません。
今回は、要件確認・実装者・テスターの3人を用意して、それぞれの役割を与えます。
3人のチームメンバーでチームを作成し、レポジトリのGitHub IssueからIssue内容を確認してサイトを改修します。
GitHubへのアクセスは、ghコマンドを利用してください。
作業を行う場合は、`issue-{Issue番号}`でブランチを作成して対応してください。ブランチを作成する場合は、`main`ブランチを最新にして`main`ブランチから作成してください。
- 1人目は、GitHubのIssueを参照して、Issue内容を確認し、不明点があればユーザーに質問します。
- 2人目は、1人目が確認した内容を元に改修を実装します。3人目から不具合を指摘された場合は、修正をしてください。
- 3人目は、2人目が回収した内容が、一人目が確認したIssueの要件を満たしているかテストします。テストに合格したら、プリクエストを作成します。不具合がある場合は2人目に報告し、修正させてください。
実行
上記のプロンプトの指示を与えると、Claude Codeがチームを作成して改修作業に入ります。
今回は、私のレジュメサイトに「TOPの戻るボタン追加」のIssueを対応してもらいました。
⏺ チームを作成して、GitHub Issueベースの改修を進めます。まず、リポジトリの情報とIssueを確認します。
⏺ Bash(gh repo view --json nameWithOwner,url -q '.nameWithOwner + " " + .url')
⎿ y-shishido/resume https://github.com/y-shishido/resume
⏺ Bash(gh issue list --state open --json number,title,labels -q '.[] | "\(.number): \(.title)"')
⎿ 1: TOPに戻るボタンの設置
⏺ リポジトリ y-shishido/resume にオープンなIssueが1件あります:
- #1: TOPに戻るボタンの設置
それでは、3人のチームを作成します。
⏺ チームが作成されました。次にタスクを作成し、チームメンバーを立ち上げます。
⏺ タスクの依存関係を設定します。
⏺ 依存関係を設定しました。次に3人のチームメンバーを起動します。
⏺ 2 agents launched (ctrl+o to expand)
├─ @analyst
│ ⎿ Issue分析担当エージェント (shift+↑ to manage)
└─ @developer
⎿ 実装担当エージェント (shift+↑ to manage)
⏺ 3人のチームメンバーを起動しました!チーム構成:
┌───────────┬─────────────────────┬────────────────────────────┐
│ メンバー │ 役割 │ 担当タスク │
├───────────┼─────────────────────┼────────────────────────────┤
│ analyst │ Issue要件確認・分析 │ タスク#1 │
├───────────┼─────────────────────┼────────────────────────────┤
│ developer │ 実装・修正 │ タスク#2(タスク#1完了後) │
├───────────┼─────────────────────┼────────────────────────────┤
│ tester │ テスト・PR作成 │ タスク#3(タスク#2完了後) │
└───────────┴─────────────────────┴────────────────────────────┘
ワークフロー:
1. analyst → Issue #1「TOPに戻るボタンの設置」の要件を確認・整理
2. developer → 要件に基づいて issue-1 ブランチで実装
3. tester → 実装内容をテストし、合格ならPR作成
各メンバーが自動で連携して作業を進めます。analystが不明点を発見した場合はあなたに質問が来ますので、お待ちください。
===================== 省略 =====================
@tester❯ テスト完了、PR #2を作成しました
⏺ testerがテストを完了し、PRが作成されました!すべてのタスクが完了です。
チームメンバーをシャットダウンします。
⏺ 全タスクが完了しました。チームメンバーのシャットダウン応答を待っています。
作業完了サマリー
┌─────────────────────────┬───────────┬─────────┐
│ ステップ │ 担当 │ 状態 │
├─────────────────────────┼───────────┼─────────┤
│ Issue #1 要件確認・分析 │ analyst │ ✅ 完了 │
├─────────────────────────┼───────────┼─────────┤
│ Issue #1 実装 │ developer │ ✅ 完了 │
├─────────────────────────┼───────────┼─────────┤
│ Issue #1 テスト・PR作成 │ tester │ ✅ 完了 │
└─────────────────────────┴───────────┴─────────┘
成果物
- ブランチ: issue-1(mainから作成)
- PR: https://github.com/y-shishido/resume/pull/2
- 対応Issue: #1「TOPに戻るボタンの設置」
テスト結果(全項目PASS)
1. 右下に固定表示
2. 角丸の四角形
3. 上矢印アイコン
4. 画面上部でボタン非表示
5. スムーススクロール
6. ダークモード対応
7. 印刷時非表示
8. アクセシビリティ対応
PRに Closes #1 が含まれているため、マージするとIssue #1が自動的にクローズされます。PRをご確認の上、問題なければマージしてください。

実行ログを一部抜粋していますが、Claude CodeがGitHubからIssueを取得した後に、チームを作成して改修作業に入り、テスターが動作を確認後にプルリクを作成して、チームが自動的に解散となります。
tmuxを利用しなかったので、なんとなく並行稼働がわかりにくいのと、それぞれが、要件 → 実装 → テストなので同時に動くことがないのですが、各エージェントがエージェント間で連携して作業を進めています。
プルリクコメントの対応
今回作成したプルリクで、一部改修して欲しい内容があったので、プルリクに対してコメントを記載しました。
もう少し上手いやり方があるかもですが、チーム自体は、解散させてしまったため、似たようなプロンプトを再作成して対応させました。
3人のチームメンバーでチームを作成し、レポジトリのGitHubのプルリクエスト`#2`のコメントを確認して、改修を行ってください。
- 1人目は、プルリクエストのコメントを参照して、指摘内容を確認し、不明点があればユーザーに質問します。
- 2人目は、1人目が確認した内容を元に改修を実装します。3人目から不具合を指摘された場合は、修正をしてください。
- 3人目は、2人目が回収した内容が、一人目が確認したコメントの要件を満たしているかテストします。テストに合格したら、プリクエストを更新します。不具合がある場合は2人目に報告し、修正させてください。
ユーザーの指示があるまで、チームは解散しないでください。
最初のプロンプトでは、自動でチームを解散させてしまったため、今回は指示があるまで解散をさせないようにしました。
Issueの繰り返し
下記プロンプトの指示で、プルリクを作成した後に次のIssueの対応を行うようになります。
PRを作成したら、1人目に完了報告をして、1人目が次のIssueを確認して他のエージェントに指示を出します。
3人のチームメンバーでチームを作成し、レポジトリのGitHub IssueからIssue内容を確認してサイトを改修します。
GitHubへのアクセスは、ghコマンドを利用してください。
作業を行う場合は、`issue-{Issue番号}`でブランチを作成して対応してください。ブランチを作成する場合は、`main`ブランチを最新にして`main`ブランチから作成してください。
- 1人目は、GitHubのIssueを参照して、Issue内容を確認し、不明点があればユーザーに質問します。
- 2人目は、1人目が確認した内容を元に改修を実装します。3人目から不具合を指摘された場合は、修正をしてください。
- 3人目は、2人目が改修した内容が、一人目が確認したIssueの要件を満たしているかテストします。テストに合格したら、プリクエストを作成します。不具合がある場合は2人目に報告し、修正させてください。
プルリクエストの作成が完了したら、1人目にプルリクエスト完了報告をしてください。1人目は3人目から完了報告を受け取ったら、次のIssueの対応を開始してください。
ユーザーの指摘事項は作成されたプルリクエストに対して、コメントを追加して指摘します。ユーザーの指示があるまで、チームは解散しないでください。
まとめ
今回は、Agent Teamsを使って、GitHub Issueの対応を行ってみました。
以前は、エージェント間の連携をさせるのに、プロンプトで指示の流れなどを書いていましたが、チーム作成の指示を与えるだけで、エージェント間の連携が取れるのは便利だと思いました。
GitHub側のIssueに要件をしっかり記載すれば、そこを参照してもらえば良いので、AIに渡す要件がGitHubにまとまり、より実際の開発に近い状況が作れるのではないかと思います。
ただし、結構なトークンを消費するため、Proプランだとほとんどの事ができずに、レートリミットに達してしまうと思います。
この辺りを考えると、Maxプランへのアップグレードなどが視野に入ってきますが、個人的には手軽に使える機能ではないかなと思います。
もちろん、Maxプランの費用対効果(投資効果)が高いのは理解していますが...
また、Codex Appとは違って、Git Worktreeを使うわけではないので、多くのエージェントを立ち上げた場合、コンフリクトや上書きが発生してしまうようです。
この辺りは、もしかしたらプロンプトの指示などで、Worktreeを使わせるなどができるかもしれません。
おまけ
tmuxを使って、Agent Teamsを使ってみました。
やはり、それぞれエージェントが立ち上がって見れると、画面が映えますね。
