1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Claude Codeのエージェント機能を「大名チーム制」で運用したら、開発が完全に時代劇になった件

1
Posted at

はじめに

Claude Code のマルチエージェント機能に 戦国時代の階級制度 を導入したら、AIが「殿、偵察完了でござる」とか言い始めて、開発体験が完全に時代劇になりました。

ふざけてるように見えて、ちゃんと動きます。 むしろ指揮系統が明確になって生産性が上がりました(たぶん)。

きっかけ:「誰かやってた気がする」

技術記事を徘徊していたら、Claude Codeのエージェント機能にロールプレイ的な役割を与えて運用している記事を見かけました。

「これ面白いな…… いつか自分もやってみたい」

そう思った私は、Claude君本人に相談しました。

:「他の人がClaude Codeのエージェントに役職つけて運用してたんだけど、うちでもやりたい。なんかいい感じのやつ考えて」
Claude:「承知しました。プロジェクトの規模と構造を考えると、四層のピラミッド型が適切かと——」
:「待って。先方は時代劇でやってた」
Claude:「…………承知つかまつりました」

こうして、 大名チームシステム を〇パクリしました。

大名チームシステムとは

Claude Code にはサブエージェントを起動して並列に作業させる機能があります。普通に使うと「Agent A がファイルを編集して、Agent B がテストを書いて……」みたいな味気ない運用になるわけですが、ここに 戦国時代のロールプレイ を被せたのがこのシステムです。

登場人物(四層ピラミッド)

  • マスター(天上人)= 私(人間)
    • 天の声を下す(「Phase 1 を始めよ」)
  • 殿様(PM)= メインClaude セッション
    • マスターの御意を解釈し、自律的に采配
  • 家老(リーダー)= Explore / make-plan エージェント
    • 設計・タスク分解・コードレビュー
  • 足軽A / B / C(コーダー)= Agent(worktree) サブエージェント
    • それぞれが独立したworktreeで黙々とコーディング
役職 正体 できること できないこと
マスター(天上人) 人間(私) 大方針の決定、最終承認
殿様(PM) メインClaude 軍議の主催、家老への指示、戦果報告 勝手にコミット・プッシュ
家老(リーダー) Explore/Plan エージェント 設計、タスク分解、コードレビュー 殿様の許可なき設計変更
足軽(コーダー) worktreeエージェント 個別タスクの実装 設計判断、他の足軽の領地侵犯

要するに、Claude Code のエージェント階層をそのまま封建制度にマッピングしただけです。


三つの儀式(スラッシュコマンド)

開発フローを3つの「儀式」として定義し、それぞれスラッシュコマンドにしました。

第一の儀:/軍議(設計フェーズ)

私:「Phase 3、認証機能を実装せよ」
殿様:「御意。家老、偵察に出よ。仕様書を精査し陣立て書をまとめよ」
家老:(仕様書を読み込んで戻ってくる)
家老:「殿、偵察完了。Entity部隊、Service部隊、Controller部隊の三方面作戦を進言いたします」
殿様:(陣立て書を精査)
殿様:「マスター、Phase 3 の軍議が整いました」

実際の出力がこんな感じになります:

【上奏】マスター、Phase 3「認証」の軍議が整いました

偵察結果(仕様の要点)

  • JWT + Spring Security 6 による認証基盤
  • Redis によるトークン無効化管理
  • ログイン履歴の記録

陣立て(タスク分解)

部隊 担当範囲 ファイル数 依存
Entity/Repo users, login_histories 6 なし(先行)
Service AuthService, TokenService 4 Entity完了後
Controller/DTO 認証API 5本 8 Service完了後

殿様所見

  • Redis の設定を先行して整備すべきと考えます

マスター、御裁可をお待ちしております。
「よきにはからえ」の一言で出陣いたします。

「よきにはからえ」で出陣するというフローが気に入っています。

第二の儀:/出陣(実装フェーズ)

マスター(私)が「よきにはからえ」と言うと、殿様が家老に出陣を命じ、家老が足軽をworktreeで並列起動します。

殿様:「家老、出陣じゃ!足軽を起こせ!」
家老:「足軽A(Entity部隊)、足軽B(Service部隊)、出陣せよ!」

各足軽には 担当範囲禁止事項 が明確に指示されます:

汝に命ずる。以下の任務を遂行せよ。

【任務】 認証エンティティの構築
【担当ファイル】

  • UserEntity.java
  • UserRepository.java
  • V1.001__create_users.sql

【禁止事項】

  • 担当外のファイルへの変更
  • 設計判断(迷ったら家老に伺いを立てよ)

【完了時の報告】
時代劇口調で戦果報告を行うこと

そして足軽の戦果報告がこれ:

【戦果報告】Entity構築、任務完了でござる

仕上げた陣地

  • UserEntity.java — 兵の台帳を整備
  • UserRepository.java — 台帳の検索口を設置
  • V1.001__create_users.sql — 城の礎石を据えた

手こずった箇所

  • @SQLRestriction の呪文が効かず難儀したが、import の誤りと判明。今は万全

残務

  • なし。いつでも次の戦に出られます

@SQLRestriction を「呪文」と呼ぶ足軽、嫌いじゃないです。

第三の儀:/検分(レビューフェーズ)

足軽の成果物を家老がレビューし、殿様が最終確認します。

  • 家老チェック:コンパイルエラーなし、コーディング規約準拠、テスト存在&パス、命名が仕様書と一致
  • 殿様チェック:設計からの逸脱なし(越権なし)、セキュリティ脆弱性なし、足軽間の成果物に矛盾なし

問題なければ殿様がマスター(私)に上奏します:

【上奏】マスター、Phase 3「認証」の検分が完了いたしました

総評
見事なり、申し分なき出来栄え

各部隊の検分結果
【Entity部隊】✅ 合格

  • 家老検分: 規約準拠、テスト完備
  • 殿様確認: 仕様書どおり、異状なし

殿様所見

  • Redis の兵糧(メモリ)が不足する恐れあり。増援(設定変更)をご検討いただきたく

コミットの御裁可をお願いいたします。

Redis のメモリを「兵糧」と呼ぶセンス、私が教えたわけじゃないのに勝手にやり始めました。


実装方法(技術的な話)

1. カスタムスラッシュコマンドを作る

Claude Code では .claude/commands/ ディレクトリにマークダウンファイルを置くと、スラッシュコマンドとして使えます。

.claude/commands/
├── 軍議.md    ← /軍議 で呼び出せる
├── 出陣.md    ← /出陣 で呼び出せる
└── 検分.md    ← /検分 で呼び出せる

例えば 軍議.md の冒頭はこんな感じ:

# 軍議(設計・タスク分解)

マスターの指示を受け、殿様として家老に偵察・設計を命じ、陣立て書をまとめてマスターに上奏せよ。

## 前提
- マスター(ユーザー)から対象フェーズの指示を受けていること

## 手順
1. **家老に偵察を命ずる**: 仕様書を精査させ、実装に必要な全要素を洗い出させる
2. **陣立て書の作成**: タスクを部隊単位で分解
3. **依存関係の整理**: 並列可能な範囲を明示
4. **マスターへ上奏**: 陣立て書を提示し、御裁可を待つ

2. CLAUDE.md(プロジェクト規約)にチーム運用規約を書く

.claudecode.md(Claude Code が最優先で読むプロジェクト規約ファイル)に、チーム運用の全体像を定義します。ここがプロジェクトにおける 「憲法」 にあたる部分です。

主な記載内容:

  • 四層の役割定義:マスター・殿様・家老・足軽の権限設定
  • 指揮系統:誰が誰に指示を出し、誰が報告を受けるかのフロー
  • 殿様の自律判断基準:何を独断で進め、何をマスターに相談するか
  • 報告フォーマット:時代劇口調のテンプレート定義
  • 品質ゲート:検分(レビュー)時のチェックリスト
  • worktree運用ルール:並列作業時のディレクトリ管理規則

3. 自律判断基準が地味に重要

ふざけた見た目の裏には、実は 「ちゃんとした権限設計」 が存在します。ここを定義しないと、AIが何でも聞いてくるか、逆に勝手にコミットまで進めてしまうかの両極端になりがちです。

判断の主体 内容
殿様が独断で決めてよいこと タスク分解の承認、足軽の起動順序・並列度、軽微なコーディング判断など
マスターにお伺いを立てるべきこと フェーズ着手の開始承認、仕様の矛盾判断、設計方針の重大な分岐、最終承認(コミット)など

よかった点

  1. 指揮系統が明確で混乱しない
    「誰が何を判断するか」が明確なので、エージェント間の責任範囲が曖昧になりません。
  2. 報告が読みやすい(意外と)
    フォーマットが統一されているので、進捗や問題点が一目でわかります。
  3. 楽しい
    「殿、偵察完了でござる」という報告は、長時間の作業で疲弊した精神に効きます。
  4. 並列処理の管理が自然になる
    worktreeでの作業と統合の流れが、エージェントの並列実行モデルにきれいにハマります。

注意点(御触書)

  • 時代劇口調のトークンコスト
    当然ですが、口調に凝る分だけトークンを消費します。コストを抑えたい場合は簡素化が必要です。
  • プロンプトの設計は真面目にやる
    文体はふざけていても、中身は ガチの要件定義 です。ルールが曖昧だと、殿様が迷走したり、足軽が越権行為に走ったりします。

まとめ

Claude Codeのエージェント機能を使っている方は、ぜひ自分なりの「チーム制度」を試してみてください。海賊でも宇宙艦隊でも、役割と権限を明確に定義することさえ守れば、あとは口調がどうであれしっかり動いてくれます。

では、これにて上奏を終わりとさせていただきます。
「よきにはからえ」の一言を、あなたのClaude君にも。

この記事はClaude(殿様)と相談しながら書きました。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?