エージェントチームは「役割」ではなく「観点」で分ける

AIエージェントを複数体使って開発チームを組む、という試みが増えてきた。プロダクトオーナー、スクラムマスター、開発者。人間のチーム構成をそのままAIに当てはめるアプローチだ。 これに違和感がある。前回の記事では1体のAIとチームとして動く話を書いたが、複数体に増やすとき、人間のチーム構成をそのまま持ち込んでもうまくいかないと感じている。 実際にAIと業務システムの仕様書を書いた経験から、エージェントチームをどう組むべきか考えたことを書いてみる。 「役割」で分けると何が起きるか PO役のAI、スクラムマスター役のAI、開発者役のAI。肩書は違うが、中身は同じモデルだ。もちろんプロンプトで振る舞いは変えられる。だが問題は、人間のチームに存在する「役割間のやりとり」まで再現しようとすることにある。 結果として起きるのは、 エージェント間の「合意形成」にトークンが消費される スプリントプランニングの議事録やレトロスペクティブの記録にリソースが割かれる 実際の成果物(コード、仕様書)に回るリソースが減る といったことだ。 プロセスの再現にリソースを割くほど、成果物にかけられるリソースが減る。エージェントの数を増やしたのに生産性が上がらないケースは、このオーバーヘッドが原因だと思っている。 「観点」で分けるとは AIと勤怠管理パッケージの仕様書を書いたとき、一つのAIに対してこういう問いを順番に投げた。 設計観点 「結構なオブジェクト数だけど、プラットフォームの制限的にどう?」 法務観点 「いい感じにまとまってきたね。ところで法的な考慮事項ある?」 アーキテクチャ観点 「これパッケージ分離したほうがいい? 分離したときの制約は?」 運用観点 「レコード数がえらいことになる。アーカイブも視野に入れたほうがいいよね?」 手動で観点を切り替えた例だが、エージェントチームを組むなら、この観点ごとにエージェントを立てればいい。1体に全部聞くとコンテキストが膨れるし、観点ごとに並列で走らせれば時間も短縮できる。 エージェント 観点 常駐プロンプトの例 設計担当 データモデルの整合性、パフォーマンス 「この設計にスケーラビリティ上の落とし穴はあるか?」 品質担当 バリデーションの抜け漏れ、エッジケース 「この状態遷移で考慮されていないパターンはあるか?」 法務担当 法令準拠、データ保持義務 「この仕様に法的なリスクや義務の見落としはあるか?」 基盤担当 プラットフォーム制約、API制限 「対象プラットフォームの制約に照らして実現可能か?」 同じ仕様を異なる専門知識で検証することで、品質があげあられる。 エージェントチームの構成パターン 観点ベースのエージェントチームをどう実装するか。いくつかのアプローチがあり、状況に応じて使い分ける。 サブエージェント方式 メインのエージェントが仕様を書き、サブエージェントが各観点で洗い出しを行い、メインが統合する。 人間 → メインエージェント(仕様作成) ├→ 設計サブエージェント(レビュー) ├→ 品質サブエージェント(レビュー) └→ 法務サブエージェント(レビュー) ← 統合結果を人間がレビュー スキル組み込み方式 レビュー観点をスキル(再利用可能なプロンプト定義)に組み込み、仕様書を書くたびに自動的にチェックされるようにする。 組織のナレッジとして蓄積できる プロジェクトを重ねるごとにレビュー精度が上がる 属人的な「問い」を仕組みとして外在化できる シミュレーター方式 エージェントチームの真価は、開発そのものよりもシミュレーションにあるかもしれない。まだ構想段階だが、こういう使い方を考えている。 1スプリントを数時間で回して、どんな問題が起きるかを観察する 人間は結果を分析し、プロセスを改善する 翌日にじっくり「感想戦」をやって、次のシミュレーションに反映する 1日でシミュレーション→分析→改善のサイクルが回るなら、実チームを巻き込む前にプロセスの骨格を検証できる。小さく失敗するための道具として使う。 人間の仕事は「問い」を立てること 20行ぐらいの「やりたいこと」を書いて、AIと壁打ちした結果、1250行超の仕様書になった。 この過程で一番価値があったのは、「あれしたい、これしたい」ではなく、「ところで落とし穴あるか?」という問いかけのほうだった。 法定休日の割増賃金率が60時間カウントに含まれない 撤回申請の状態遷移が二重承認になる 監査証跡を追記専用にしないと任意の時点の状態を再現できない こうした問題は、要望の列挙からは出てこない。「ところで」の一言から出てくる。AIの出力の質を決めるのは、人間の問いやこだわりだと思う。 ...

March 24, 2026 · Kei

Claude Codeとチームとして動く

2月からClaude Codeを使い始めた。ターミナルから使えるAIコーディングエージェントで、コードの読み書きから実行まで自律的にこなしてくれるツールだ。前回のAgentic Codingの記事でも触れたように、仕様から実装まで任せられるようになってきている。使い始めて数週間、うまくいくパターンが見えてきた。一言でいうなら、Claudeをチームメンバーとして動かす意識を持つかどうかで、結果が大きく変わる。 バックログとドキュメントで共通認識を作る 思いついたことはとにかく起票する。実装中に別対応が必要になったものも、その場でチケットに起こしておく。これを徹底したことで、作業中に「あれもこれも」と頭が散らからなくなった。積み上がったチケットは重要度と前後関係で並べ直し、優先順位を明確にしながら進める。バックログの整理は、チームの足並みをそろえる作業とまったく同じだ。 CLAUDE.md に意図を、SPEC.md に仕様を書くようにした。これで人間もClaudeも迷う場面が明確に減った。「このプロジェクトでは何を大事にするか」「この機能の仕様はどうなっているか」が参照できる状態にあると、指示を出すたびに説明し直す必要がなくなる。新しいメンバーにプロジェクトの背景を渡すドキュメントを書く、という感覚に近い。 アプリの処理フローが複雑になってきたタイミングで状態遷移図を作ったのも同様の効果があった。どこが複雑なのかが一目でわかる。コードを直す前に「そもそもこの状態遷移をシンプルにできないか」という観点で考えられるようになった。 テスト・計測で品質の基準を揃える TDDを取り入れると、Claudeが実装中に不具合を自発的に見つけて対応してくれることが増えた。「このテストパターンだとこのケースが漏れていないか」と指摘もしやすくなる。共通のテスト基盤があることで、品質の議論が「感覚」から「事実」になる。 E2Eテストも同じ文脈で導入した。UIの挙動を変えたときの品質が担保できるし、エラーが出たときに「E2Eの何番がこけている、エラーメッセージはこれ」と伝えるだけで話が早い。再現手順を言葉で説明する手間が省けて、対話のテンポが上がった。 計測を徹底したことも大きかった。処理速度やレスポンスタイムを実測するようにしたことで、人間は「体感遅い」、Claudeは「理論上はやい」と違う基準で話していたのが、実測値で一本につながった。共通の基準があると、議論の質もコードの質も変わる。 振り返りとコミュニケーションで精度を上げる RETROSPECTIVE.md を作り、作業ごとに「良かったこと・伸びしろ・ネクストアクション」をまとめるようにした。振り返り用のスキルをClaude Codeに登録しておき、まずClaudeに下書きを書かせる。それを読んでフィードバックを出す、という流れだ。ネクストアクションのうちドキュメントで対応できるものはその場で更新、実装が必要なものはissueを立てて次に回す。振り返りを回すほどドキュメントが育ち、Claudeへの指示精度も上がっていく。 着手前に「作業手順や仕様で質問はある?」と聞くようにしたのも効果があった。実際に仕様の確認が返ってきて、自分の考慮が足りていない部分だったこともある。「着手したら実は仕様が曖昧だった」を事前につぶせる。チームでいえば、タスクに取り掛かる前のちょっとした確認と同じだ。 言葉の選び方も変わった。「根治」「徹底的」「念入りに」という言葉を使うと、ソースコードを探索するときの精度が上がった気がする。「根治」は特に効いた。不具合に遭遇したとき、その場しのぎで終わらせずに原因を取り除きにいってくれた。強い命令口調より、方針を示す言葉のほうが意図が伝わりやすい。 チームでのコードレビューと同様に、実装が一段落したら必ずレビューを挟む。Claude Code の /review コマンドはいい感じに不具合を拾ってくれる。/simplify は冗長なコードを整理してくれるが、コードを壊す可能性もあるので慎重に使っている。 雑感 振り返ってみると、ツールの方向性を示し続けるプロダクトオーナーとしての比重が大きかったと思う。一通り実装してPRを作ったら振り返り、次に何をしたらよくなるかを考える。そして次の振り返りで試した結果を確認する。Claudeが爆速で走れる状態を作ることがとにかく楽しかった。 この感覚は、スクラムマスターとしての経験が活きていると感じた。障害を取り除いてチームが動きやすい状態を作る、という役割がそのまま当てはまる。Claude Codeとうまくやるコツは、開発チームをうまく動かすコツと根っこが同じかもしれない。 今回はRust + Tauriという自分にとって未知の領域で試したが、知らない言語でも計測手段とゴールが揃っていれば任せられることがわかったのは収穫だった。ただし未検証の部分も残っているので、引き続き使いながら確かめていくつもりだ。 結局のところ、AIとうまくやるコツは、チームとうまくやるコツと同じだった。共通認識を作り、基準を揃え、振り返りで改善する。その繰り返しだと思う。

March 8, 2026 · Kei