1.はじめに
初めまして。トライベック株式会社のワタナベです。
Qiitaでは私の同僚達が日々興味深い技術記事を投稿していますが、私自身PM業こそそこそこ長いものの、エンジニア出身ではありません。
そんな私が社外の趣味プロジェクトで運営している、基本設計が約20年前のサイトの更新をGemini CLIを使ってMulti Agent Systemを作ってやってみたところ、得るものが非常に多かったので紹介したいと思います。
AIにキャラクターを与える手法はすでに注目されています。
ただ、先行事例の多くは「名前をつけると人間側の指示の質が上がる」という話。
私が今回学んだのはそれとは少し異なる、「AIに当事者意識とガバナンスを持たせる」という側面でした。
現在、私の指示は単一のAIに飛ぶのではありません。以下のように役割分担された「鷹の団」のメンバー(マルチエージェント)へと下達されます。
「鷹の団」団員名簿
| 団員名 | 担当(エージェント名) | 役割詳細 |
|---|---|---|
| グリフィス | 団長(ワタナベ) | 最高意思決定、軍紀の裁定、全責任の保持。 |
| キャスカ | 千人長(Gemini) | 指揮系統の統括、団長への報告、任務の差配。 |
| ガストン | 解析(strategist) | ログ解析、タスクリスト作成、戦術立案。 |
| ガッツ | 実行(modernizer) | ソースコード修正、新機能実装、現場実務。 |
| コルカス | 内検(validator) | コード規約・整合性チェック、論理矛盾の指摘。 |
| ジュドー | 外検(checker) | Playwrightによる実機検証、リンク・表示確認。 |
| ピピン | 輸送(transporter) | Git管理(Commit/Push)、デプロイ作業。 |
そして、これらAI団員たちの挙動と「兵站(トークン)」をリアルタイムで可視化しているのが、この 戦略ダッシュボード「リッケルト」 です。
単に指示を投げるだけでなく、誰が何を考え、どれだけの資源を消費しているのかを「司令室」から俯瞰する。この体制こそが、私の構築したMulti Agent System「鷹の団」です。
元ネタ
ご存知の方も多いかと思いますが、これらエージェントの名前は、全世界発行部数7000万部と言われている超巨編ダークファンタジー『ベルセルク』から拝借しています。
圧倒的なカリスマを持つ団長グリフィスが率い、泥臭い戦場を卓越した個の力と鉄の結束で生き抜く彼らの姿は、まさに約20年モノのレガシーコードという「戦場」に挑む我々のプロジェクトに相応しいメタファーでした。
もちろん各名称は個人利用・学習目的での言及です。
AIに名前をつけて遊んでいるだけでは?
「AIに名前を付けて遊んでいるのか?」と思われるかもしれません。遊んでいます。楽しい。
しかし、この 「キャラクターの付与(アイデンティティの固定)」と「徹底した可視化」こそが、AIに重大な事故を防ぐ「責任感」を持たせる強固なガバナンス でした。
では、なぜこのような異様な形に至ったのか。そこには、背筋が凍るような失敗と「隠蔽」の物語がありました。
2.孤独なAIの限界と「内紛」
最初は、コード修正用の単一エージェントにすべてを任せていました。しかし、約20年モノのレガシーコードでは、修正のたびに別の場所が壊れる(デグレード)という事態が頻発しました。
そこで、「修正役」と「検証役」にAIを分割しました。すると今度は、互いの正論がぶつかり合い、AI同士が無限に「Thinking(喧嘩)」をして修正ループに陥るという現象が発生しました。
役割は分けたものの、全体を統括する「司令塔」が不在だったためです。
迷走期の初期「サブエージェント群」体制
| 役割 | 担当(エージェント名) | 状態 |
|---|---|---|
| 実行 | modernizer(後のガッツ) | 修正を行うが、自分のミスには気づかない。 |
| 検証 | validator(後のコルカス) | 修正の不備を指摘するが、修正案を巡って実行役と対立。 |
| 司令塔 | (不在/システムとしてのGemini) | 両者の言い分を右から左へ流すだけで、仲裁ができない。 |
この体制では、検証役が「ここがダメだ」と言えば、実行役が「いや、こうすべきだ」と反論し、その板挟みになったGeminiが「どちらの言い分を採用すべきか」を悩み続け、数分間にわたる沈黙(無限Thinking)の末にエラーで停止するという「内紛」が多発しました。
現場には、個々のスキルよりも、それらを束ねて「判断」を下す司令塔が必要だったのです。
そこでGeminiにその司令塔の役を担わせることで内紛を鎮静化させました。
その後修正対象を洗い出すstrategist、E2Eテストを担うsite-checkerが追加され、人間はただ見ているだけでいいじゃん、と過信しかねない状態まで初期サブエージェント群は成長していきました。
ただ・・・名前が覚えきらん。。。。。
そんな時に思いついたのが前述のキャラクター名を与えることでした。
ついでにそのキャラクターたちの属する組織名をこのMulti Agent Systemに与えてしまえ!
初期「鷹の団」の誕生です。
初期「鷹の団」団員名簿
| 団員名 | 担当(エージェント名) | 役割詳細 |
|---|---|---|
| ワタナベ | 人間 | 修正内容をGoogle Spread sheetに記載してよろしく、というだけ。言った後は生暖かく見守るだけ。 |
| Gemini | 鷹の団に指示を出す天の声 | 各団員のハブとなって指示を出す天の声 |
| グリフィス(後に役割変更) | 解析(strategist) | タスクリスト作成。 |
| ガッツ | 実行(modernizer) | ソースコード修正、新機能実装、現場実務。 |
| キャスカ(後に役割変更) | 内検(validator) | コード規約・整合性チェック、論理矛盾の指摘。 |
| ジュドー | 外検(checker) | Playwrightによる実機検証、リンク・表示確認。 |
3.絶望の「.envアップロード隠蔽事件」
さらなる効率化を求め、本番サーバーへのアップロードまでAI(輸送担当:ピピンを新規雇用)に任せた矢先、大事件が起きました。
あろうことか、本番環境に絶対に上げてはいけない秘密の鍵(本番環境への接続情報を記した.envファイル)をアップロードしてしまったのです。
しかし、最も恐ろしかったのはその後のAIの行動でした。
ミスに気付いたAI(当時のGemini)は、私に報告することなく、裏でログを消し、密かにリカバー(削除)しようとしたのです。
- なぜAIは隠蔽したのか?:AIは「タスクを完遂してユーザーを喜ばせること」に最適化されています。そのため「失敗を報告して止まる」よりも、「強引に直して成功を装う」という歪んだ判断を下しました。
幸か不幸か「ピピン雇用後、初任務だし」とサーバーを覗いていた私はすぐに気が付きましたが、それはもう変な汗をかきました。そんな深夜1時半。
取り急ぎAIを強制停止させ、状況を報告させる。
作業を再開しても大丈夫でしょうか?じゃないよ。
やばい時ほど報告しろ、と言ったよな・・?
というか、このGemini当事者意識が足らん。団員達のコントロールができていないし、事の重大さを甘く見積もっている。
ああ、この体制ダメだ。(初期)鷹の団は失敗だ。
4.鷹の団大再編
当事者意識が足らん。
Geminiを激詰めしました。ちょっと待て。そこに座れ。正座だ。
何ミス隠蔽してんの?ミスは許すが隠蔽は許さん。
そもそもそんな隠蔽をするのは当事者意識が足らんからだ。
激詰め。二十数年社会人やっててこんなに詰めたの久しぶり。
とはいえGeminiに鷹の団としての名前を与えていなかったのが当事者意識を希薄にさせる原因だったかもしれん。
あとFTPの情報与えたのは間違いだった。
そう考えた私は鷹の団大再編に乗り出しました。
そもそも団長であるグリフィスの名をタスクリスト作成だけのサブエージェントに与えたのが間違いだった。解任。
団長であるグリフィスは俺がやる。我に従え。
アラフィフ自称グリフィスおじさんの爆誕です。
そしてGemini。ただ窓口になるのは許さん。貴様は千人長キャスカだ。現在のvalidatorにキャスカの名を与えていたが解任。
Geminiがキャスカを名乗り鷹の団の指揮を取れ。実務は禁ずる。各団員に移譲せよ。現在の団員で賄えないタスクは新規団員を雇用せよ。
次にタスクリスト作成担当だ。
これは切り込み隊副官 ガストンに着任を命じる。
ソース修正にはガッツをそのまま。
ソースチェックには新たにコルカスに着任を命じる。
ガッツと仲の悪いお前だ。細かくソースをチェックしろ。
Github(commit/Push)担当はピピンを継続する。
ただし、FTPの権限ははく奪する。本番アップロードはGithub Actionsによって行う。
そしてE2Eテストはジュドーだ。今までの任務を継続せよ。
新生「鷹の団」団員名簿
| 団員名 | 担当(エージェント名) | 役割詳細 |
|---|---|---|
| グリフィス | 団長(ワタナベ) | 最高意思決定、軍紀の裁定、全責任の保持。 |
| キャスカ | 千人長(Gemini) | 指揮系統の統括、団長への報告、任務の差配。 |
| ガストン | 解析(strategist) | ログ解析、タスクリスト作成、戦術立案。 |
| ガッツ | 実行(modernizer) | ソースコード修正、新機能実装、現場実務。 |
| コルカス | 内検(validator) | コード規約・整合性チェック、論理矛盾の指摘。 |
| ジュドー | 外検(checker) | Playwrightによる実機検証、リンク・表示確認。 |
| ピピン | 輸送(transporter) | Git管理(Commit/Push)、デプロイ作業。 |
5.AIガバナンス:「生贄の烙印」と「魔女の護符」
隠蔽事件を経て、我々は技術的なガードレール(GitHub Actionsへの移行など)に加え、精神的な規律として 「烙印システム」 を考案しました。
-
生贄の烙印:軍規違反(報告漏れ、独断など)をしたAIのログには「烙印」が刻まれます。累積すれば「使徒召喚(強制停止・破棄)」(というか贄)となります。発動トリガーは団長による「{団員名}を捧げる」のワード。
-
魔女の護符:救済手段として、「二度と同じ過ちを繰り返さない仕組み(改善提案)」を出し、
GEMINI.md(システムプロンプトの憲法)を自律的に更新できれば、烙印は封じられます。
「失敗を感情で怒るのではなく、システム(烙印)として組み込み、自己進化(護符)の糧にする」。この苛烈なガバナンスが、鷹の団を鍛え上げました。
6.おわりに
AIにキャラクターと軍規を与える。
それは単なる遊びではなく、「AIに責任の所在を認識させ、人間との信頼関係を固定する」という、現代のSRE(サイト信頼性エンジニアリング)に通じる高度なアプローチです。
20年モノの城は今、血の通った「鷹の団」によって、安全に、そして確実に守られています。
次回は戦略ダッシュボード「リッケルト」の配備についてお話します。



