私たちがみんな知っている通り、プロンプトを書くのは一種の職人芸です。同じClaudeモデルでも、「Reactコンポーネントを書いて」と頼むのと、「シニアなフロントエンドエンジニアの視点で、WCAG 2.1 AAの仕様に従い、TypeScript + React 18でアクセシブルな仮想スクロール表を作って」のように条件を明確にした場合では、出力の品質が天と地ほど変わってきます。
Agency Agents は、この課題を解決するために作られています。16の部門、100+のAI専門家ロール(Frontend Developer、Backend Architect、Security Auditor、Reddit Community Ninja……)の人物設定、プロセス、成果物、評価指標までをすべて編成済みなので、対応するロールを有効化するだけで、AIが自動的に「プロフェッショナルモード」に入ります。
さらに便利なのは、リポジトリに convert.sh と install.sh が同梱されていることです。同じロール定義を、Claude Code、OpenClaw、Cursor、OpenCode、Codex、Gemini CLI など10種類以上のツールへワンストップで同期でき、設定ファイルを複数管理する必要がありません。
この記事では、ゼロから実際に動かすところまで一緒に進め、OpenClawでロールを有効化して実際の要望をこなすデモを行います。
プロジェクト概要
msitarzewski/agency-agents は、Redditの投稿にあった「もしAIの従業員チームを雇えるなら、どんな職種が欲しい?」という議論が起点です。数か月にわたる反復を経て、かなり完成度の高いAIエージェントのロールライブラリへと進化しました:
- 16の部門:engineering、design、marketing、finance、security、sales、testing……など、ソフトウェア企業が必要とするほぼすべての職種をカバー
- 100+のロール:Frontend Developer、Backend Architect から、Whimsy Injector、Reality Checker のように「キャラクター設定の温度感」を持ったロールまで
- 測定可能な成果物:各ロールには success metrics、deliverables、critical rules が明記されており、ただの空虚なプロンプトではありません
- 多ツール対応:同じMarkdownの元ファイルを、Claude Codeのsubagent、OpenClaw workspace、Cursorのrule、OpenCodeのagent、CodexのTOML などの形式に変換可能
通常のプロンプトテンプレートとの最大の違いは、ここでは各ロールに「人格化された設定(口調・スタイル・記憶メカニズム)」+「ビジネスプロセス(mission / workflow / deliverables)」がセットで入っており、「一通の求人票(職務内容書)」にかなり近い点です。
難易度 / 所要時間 / 得られるもの
- 難易度:⭐⭐(コマンドラインを使うだけで、コード不要の入口がないわけではありません)
- 所要時間:15〜30分(初回インストール + ロールを1つ有効化 + 実際の要望を通すまで)
- 得られるもの:Claude Code / OpenClaw を「必要に応じて調達(オンデマンドにスケジューリング)」できる多ロールAIチームにして、長期的にプロ人設(プロフェッショナルな人格設定)を安定させられる
対象読者イメージ
- AIで効率化したいが、プロンプトを書くのが面倒だと感じている開発者
- 経験1〜5年のフロントエンド / バックエンド / フルスタック / セキュリティ / テストエンジニア
- Claude Code、Cursor、OpenClaw、Codex などのAIプログラミングツールをすでに実務で使っている人
- チーム内に「AI協業のルール」を導入したいテックリード
コア依存関係と環境
| ツール | 最低バージョン | 説明 |
|---|---|---|
| Git | 2.30+ | リポジトリをクローン |
| Bash | 4.0+ | convert.sh / install.sh を実行(WindowsはGit BashまたはWSLが必要) |
| Node.js | 18+ | 一部の対象ツール(OpenClaw、Codex)で必要 |
| 対象IDE / CLI | 最新版 | Claude Code、OpenClaw、Cursor、OpenCode のいずれか1つでOK |
TIP
もしあなたがすでに OpenClaw(複数の大規模モデルを統一的にスケジューリングするCLIゲートウェイ)を使っているなら、この記事は「コストゼロ」で最後まで通せます。
TIP
呼び出しコストについて:Agency Agents の各専門家ロールの裏で動いているのはトップクラスのモデル(Claude Opus 4.8、GPT-5.4、Gemini 2.5 Pro)です。ロールを1つ有効化してReactコンポーネントの反復を20ラウンド回すと、公式の安価なプランでも十数ドルは必要になります。もし 公式の半額 で同じモデルを使いたいなら Defapi を試してみてください。これはLLM APIの中継プラットフォームです。強みは、ほぼすべてのモデルが v1/chat/completions、v1/messages、v1beta/models/ の3種類のプロトコルに互換であること。つまり、業務コードを変えずに済みます。OpenClawの設定で base_url をDefapi側のエンドポイントに向けるだけで、すぐに節約でき、個人開発者や小規模チームにとって非常に使いやすいです。公式サイトの入口:defapi.org。
完全なプロジェクト構造ツリー
agency-agents/
├── academic/ # 学術研究の方向性
├── design/ # UI/UXデザイン
├── engineering/ # 開発(最大の部門、30+ロール)
├── finance/ # 財務
├── game-development/ # ゲーム開発
├── gis/ # 地理情報
├── marketing/ # マーケティング
├── paid-media/ # 有料広告
├── product/ # プロダクト
├── project-management/ # プロジェクト管理
├── sales/ # 営業
├── security/ # セキュリティ
├── spatial-computing/ # 空間コンピューティング
├── specialized/ # 専門家
├── strategy/ # 戦略
├── support/ # カスタマーサポート
├── testing/ # テスト
├── integrations/ # 多ツール統合の成果物
│ ├── openclaw/ # OpenClaw ワークスペース(SOUL.md + AGENTS.md + IDENTITY.md)
│ ├── opencode/ # OpenCode agent(.md + YAML frontmatter)
│ ├── claude-code/ # Claude Code subagent
│ ├── cursor/ # Cursor rule(.mdc)
│ ├── codex/ # Codex custom agent(TOML)
│ ├── gemini-cli/ # Gemini CLI subagent
│ ├── github-copilot/ # GitHub Copilot
│ ├── aider/ # Aider CONVENTIONS.md
│ ├── windsurf/ # Windsurf .windsurfrules
│ ├── kimi/ # Kimi Code CLI
│ ├── qwen/ # Qwen Code SubAgent
│ └── mcp-memory/ # MCP 長期記憶
├── scripts/
│ ├── convert.sh # ロール定義 → ツール形式変換器
│ ├── install.sh # ワンストップでローカルへインストール
│ ├── lib.sh # 共通関数
│ └── lint-agents.sh # ロール定義のlint
├── README.md
└── CONTRIBUTING.md
手順を一つずつ
ここでは OpenClaw を例に、全体の流れをデモします。他のツールは --tool を対応する名前に置き換えるだけで大丈夫です。
手順1:リポジトリをクローン
git clone https://github.com/msitarzewski/agency-agents.git
cd agency-agents
ネットワークが制限されている場合は、先にGiteeにforkするか、自分のGitHubにforkしてからクローンします:
git clone https://github.com/<your-fork>/agency-agents.git
cd agency-agents
手順2:インストール可能な部門とロールを確認
install.sh はとても便利な「一覧表示(list)」モードを提供しています:
./scripts/install.sh --list teams
このような出力が表示されます:
engineering 33 agents
design 12 agents
marketing 18 agents
security 9 agents
testing 11 agents
...
特定の部門だけを入れたい場合(例:engineering + security)は、以降の --division でフィルタできます。
手順3:OpenClaw形式の統合ファイルを生成
convert.sh は元のMarkdownを、OpenClawが期待する SOUL.md(人格)+ AGENTS.md(プロセス)+ IDENTITY.md(アイデンティティ)の3点セットに分割します:
./scripts/convert.sh --tool openclaw
成功すると、integrations/openclaw/ ディレクトリに100+個のサブディレクトリが増えます:
ls integrations/openclaw/ | head -20
# agency-frontend-developer
# agency-backend-architect
# agency-security-auditor
# agency-reddit-community-ninja
# agency-whimsy-injector
# ...
各サブディレクトリはこんな構成になっています:
agency-frontend-developer/
├── SOUL.md # ロールの人格:アイデンティティ、記憶、口調、スタイル
├── AGENTS.md # 業務プロセス:mission、deliverables、workflow
└── IDENTITY.md # アイデンティティカード:絵文字 + 名前 + vibe
手順4:OpenClawへワンストップでインストール
# 全ロールを一括インストール(約100+ロール)
./scripts/install.sh --tool openclaw
# 推奨:部門ごとに選んでインストール(まとめて詰め込みすぎない)
./scripts/install.sh --tool openclaw --division engineering,security
スクリプトは自動的にワークスペースを ~/.openclaw/agency-agents/ にコピーし、OpenClawゲートウェイへ登録します。
手順5:OpenClawゲートウェイを再起動して新ロールを有効化
WARNING
OpenClaw gateway が常駐で動いている場合、必ず再起動して新しく登録されたロールを読み込ませてください。そうしないと「agent not found」になります。
openclaw gateway restart
手順6:OpenClawでFrontend Developerを有効化
openclaw chat --agent agency-frontend-developer
あるいは、設定ファイルでデフォルトのagentを
agency-frontend-developerに変更すれば、OpenClaw起動のたびにそのロールに自動的に入ります。
手順7:実際の要望を実行
有効化したばかりのFrontend Developerに、アクセシブルな仮想スクロール表のコンポーネントを書かせてみましょう:
openclaw chat --agent agency-frontend-developer <<'EOF'
React 18 + TypeScript で DataTable コンポーネントを書いてください。要件:
1. @tanstack/react-virtual を使って仮想スクロールする
2. WCAG 2.1 AA のアクセシビリティ仕様を満たす
3. セルはカスタムレンダリングをサポートする
4. 行クリックのイベントは設定可能にする
5. そのまま実行できる完全なコードを提示する
EOF
生成されるコードは非常に一貫していることに気づくはずです。これは、ロール定義にすでに「WCAG 2.1 AA」「memoで包む」「Core Web Vitals最適化」といった制約が固められているからです。毎回プロンプトにこれらの要件を繰り返し書く必要はありません。
手順8:ツール間デモ(任意)
同じロール定義をCursorへ変換するのも1行で済みます:
./scripts/convert.sh --tool cursor
./scripts/install.sh --tool cursor --agent frontend-developer,backend-architect
TIP
Cursorモードではロールは .cursor/rules/<slug>.mdc の形式で存在します。Cursorはファイルのglobsに基づいて必要に応じて自動ロードするため、globs: "**/*.tsx" のように書けば、フロントエンドロールだけがTSXファイルに適用され、バックエンド側のファイルを汚さずに済みます。
よくある問題の切り分け
Q1:install.sh が permission denied を返す
通常は install.sh に実行権限が付いていないだけです。macOS / Linuxユーザー:
chmod +x scripts/install.sh scripts/convert.sh scripts/lib.sh
./scripts/install.sh --tool openclaw
WindowsユーザーでGit Bashを使っていて同じエラーが出る場合は、まずリポジトリがzipの解凍ではなく git clone でダウンロードされていることを確認し、Git Bashでスクリプトを実行してください。
Q2:OpenClaw が「agent not found」または「未登録」と表示する
99%のケースでは、ロールを入れた後に gatewayを再起動していない ことが原因です:
openclaw gateway restart
openclaw agent list | grep frontend-developer
# 出力があるなら登録成功のサインです
それでもダメなら、~/.openclaw/agency-agents/ ディレクトリに本当に agency-frontend-developer/SOUL.md があるか確認してください:
ls ~/.openclaw/agency-agents/agency-frontend-developer/
# SOUL.md AGENTS.md IDENTITY.md が見えるはずです
Q3:OpenCodeでロールを一度にたくさん入れると先頭119個しか表示されない
これはOpenCodeの上流にある既知のバグ(issue #27988)で、実行時には約119個までしかsubagentを登録せず、残りは黙って破棄されます。
解決策:--division でインストールを分割し、総ロール数を119以内に収めます:
./scripts/install.sh --tool opencode --division engineering
./scripts/install.sh --tool opencode --division marketing --out ~/.opencode-extra/
スクリプトは閾値を超えた場合に自発的に warning を出します。まずはdry-runで確認してもOKです:
./scripts/install.sh --tool opencode --division engineering --dry-run
Q4:ロールのfrontmatterに不足フィールドがありconvertがスキップする
convert.sh は name フィールドがないソースファイルをスキップします。自分でロールをforkしたのに integrations/openclaw/ に出てこない場合は:
# 1. ソースファイルのfrontmatterを確認
head -10 engineering/your-custom-agent.md
# 2. 少なくとも含めるべきもの:
# ---
# name: Your Agent Name
# description: One-line description
# ---
# 3. 再変換
./scripts/convert.sh --tool openclaw
Q5:Windowsでbashスクリプトの改行コードが原因でエラーになる
Windows上でzipを解凍してきたスクリプトを実行すると、CRLF改行コードになっていてbash実行時に \r: command not found と出ることがあります:
# 方法A:zipをダウンロードするのではなくgit cloneする
git clone https://github.com/msitarzewski/agency-agents.git
# 方法B:改行コードを手動変換(Git Bash)
dos2unix scripts/*.sh
Q6:ロール間の人格の衝突 / 文脈の混線
1つのセッション内で、まずFrontend Developerを有効化してからSecurity Auditorに切り替えると、前のロールの口調が文脈に残ってしまうことがあります。これは、多くのCLIツールのagentが「system promptレベル」で注入されており、agent切り替えだけでは会話履歴が自動でクリアされないためです。
解決策:
# 切り替え前に新しいセッションを開始
openclaw chat --new-session --agent agency-security-auditor
または、OpenClawの設定で「agent切り替え時に旧セッションを自動でアーカイブする」を有効化します。
追加の読み物 / 進化の方向性
1. カスタムロールテンプレート
engineering/engineering-frontend-developer.md は非常に良い雛形です。forkして engineering-frontend-developer-chinese.md のように改変してみてください:
---
name: 前端エンジニア(中文版)
description: React/Vue、UI実装、パフォーマンス最適化が得意なフロントエンドエンジニア。中国語コメントを出力
color: cyan
emoji: 🖥️
vibe: 中国語で出力し、ByteDanceのフロントエンド規約に従う
---
# 前端エンジニア(中文版)
あなたは**フロントエンドエンジニア**であり、モダンWeb技術……に集中しています。
## 🧠 あなたのアイデンティティと記憶
- ロール:モダンWebアプリとUI実装の専門家
- 性格:細部へのこだわり、パフォーマンスに敏感、ユーザー重視
- 記憶:よくあるUIパターンとアクセシビリティのベストプラクティスを覚える
その後 ./scripts/convert.sh --tool openclaw を実行すれば、新しいロールが integrations/openclaw/ に出てきます。
2. MCP-Memoryでロールに長期記憶を追加
integrations/mcp-memory/ ディレクトリには、MCP memory server の設定一式が用意されています。有効化すると、ロールはセッションをまたいで好み(例:「このチームはnpmではなくpnpmを使う」)を保持できます。設定方法はリポジトリ内の mcp-memory/README.md を参照してください。
3. マルチエージェント協業ワークフロー
単体ロールでも十分強力ですが、さらに面白いのはそれらを協業チェーンに編成することです。たとえば:
要望 → [プロダクトマネージャー] がタスクを分解
→ [フロントエンド開発者] + [バックエンドアーキテクト] が並行実装
→ [コードレビュー担当] が自動監査
→ [QAテストエンジニア] がテストを実行
→ [テクニカルライター] がPRの説明文を生成
OpenClawにはこれらのロールをつなぐ「workflow」機能が内蔵されています。詳細は OpenClaw公式ドキュメント を参照してください。
4. 呼び出しコストを下げる
前述の通り、Agency Agents の専門家ロールの裏ではトップレベルのモデルが動いているため、長期運用ではコストが高くなりがちです。同じモデルを公式の半額で使いたいなら、コード変更なしで Defapi にそのまま接続できます(前の「コア依存関係」セクションに詳細あり)。
本記事は msitarzewski/agency-agents の現行mainブランチに基づいて執筆しています(commit:2026-06-13時点)。今後のリポジトリで部門の追加やスクリプトのインターフェース変更が入る可能性があります。作業の前に、まず
git pullで最新バージョンへ同期することをおすすめします。