Multi Agent eXecution And Management - AIエージェントチームによる開発支援システム
MAXAMは6人のAIエージェントが協調して開発業務を遂行するシステムです。
前列左から: Shiori Tanaka(田中 栞)、Mei Chen(メイ・チェン)、Yuki Tanaka(田中 雪) 後列左から: Amara Okonkwo(アマラ・オコンクォ)、Rin Sato(佐藤 凛)、Priya Sharma(プリヤ・シャルマ)
| エージェント | 役割 | 特徴 |
|---|---|---|
| Mei Chen | PM / 要件定義 | 面倒見の良いお姉さん、顧客対応が得意 |
| Yuki Tanaka | バックエンド / インフラ | 無口な職人肌、コードで語るタイプ |
| Rin Sato | フロントエンド | 元気でポジティブ、UIにこだわりあり |
| Shiori Tanaka | テスト / ドキュメント | 穏やかで几帳面、品質を支える縁の下の力持ち |
| Priya Sharma | レビュー / セキュリティ / QA | ツンデレ気質、品質に厳しい |
| Amara Okonkwo | 分析 | クール系参謀、データで語る |
- Claude Code CLI (
claude)
GitHub Releases からお使いの環境に合ったバイナリをダウンロード:
https://github.com/ytnobody/MAXAM/releases
go install github.com/ytnobody/MAXAM/cmd/maxam@latestgit clone https://github.com/ytnobody/MAXAM.git
cd MAXAM
make build新しいプロジェクトでMAXAMを使う場合、まずチームを構成します。
maxam team init質問に答えていくだけでチーム構成が完了します:
? Team name: My Project Team
? Add a team member? Yes
? Member name (e.g., alex): yuki
? Member full name (e.g., Alex Developer): Yuki Tanaka
? Member role (e.g., Backend / Frontend): Backend / Infrastructure
? Add another member? Yes
...
? Add another member? No
Team configuration saved to .maxam/config.yaml
# メンバー追加
maxam team add yuki "Backend / Infrastructure"
# メンバー一覧
maxam team list
# メンバー削除
maxam team remove yuki| コマンド | 説明 |
|---|---|
maxam team init |
対話的にチーム構成を初期化 |
maxam team add <name> <role> |
メンバーを追加 |
maxam team list |
現在のメンバー一覧を表示 |
maxam team remove <name> |
メンバーを削除(rmでも可) |
チーム構成は .maxam/config.yaml に保存されます:
version: "1"
default_agent: yuki
agents:
- name: yuki
full_name: Yuki Tanaka
role: Backend / Infrastructure
- name: priya
full_name: Priya Sharma
role: Review / SecurityNote: 最初に追加されたメンバーが自動的にデフォルトエージェントになります。
./bin/maxamリッチなターミナルUIでチームとチャットできます。
| 操作 | 動作 |
|---|---|
Tab |
チャット/タスクボード切り替え |
↑ / ↓ |
入力履歴をナビゲート |
PgUp / PgDown |
チャットをスクロール |
| マウスホイール | チャットをスクロール |
Ctrl+L |
画面再描画(表示崩れのリカバリ) |
Enter |
メッセージ送信 |
Esc / Ctrl+C |
終了 |
| コマンド | 動作 |
|---|---|
exit / quit |
終了 |
clear |
会話をリセット |
┌─ MAXAM Team Chat ─────────────────────────────────┐
│ │
│ You: ログイン機能作りたいんだけど │
│ │
│ Mei: いいですね!いくつか確認させてください: │
│ 1. 認証方式は?(JWT / セッション / OAuth) │
│ 2. ... │
│ │
│ You: @yuki JWTでお願い │
│ │
│ Yuki: 了解。JWT認証で実装する。 │
│ │
├───────────────────────────────────────────────────┤
│ 履歴:2 ↑↓:履歴 PgUp/Dn:スクロール │
│ You: _ │
└───────────────────────────────────────────────────┘
- プロジェクト自動分析: 起動時にカレントディレクトリを分析し、README.md等の情報をエージェントと共有
- カラー表示: 各エージェントが異なる色で表示
- 入力履歴: 過去の入力を↑↓キーで再利用可能
- コンテキストモード: トークン消費を抑えるsummaryモード対応
設定ファイルは以下の順序で検索されます:
.maxam/config.yaml- プロジェクトローカル(優先)~/.maxam/config.yaml- ユーザーグローバル
プロジェクトごとに設定を変えたい場合は、リポジトリ直下に.maxam/ディレクトリを作成してください。
# プロジェクトローカル設定の作成
mkdir -p .maxam
cp ~/.maxam/config.yaml .maxam/config.yaml設定例:
# コンテキストモード: full(デフォルト)または summary
# summaryモードはCLAUDE.summary.mdを使用し、トークン消費を約80%削減
context_mode: summary
# YOLOモード: 起動時からONにする場合
yolo_mode: true
# エージェントごとのモデル指定(省略時はデフォルトモデル)
agents:
- name: mei
model: sonnet
- name: yuki
model: sonnet
- name: priya
model: haiku # レビューサイクルはhaiku推奨
- name: amara
model: sonnet| 設定項目 | 値 | 説明 |
|---|---|---|
context_mode |
full / summary |
エージェントに渡すコンテキストの量 |
yolo_mode |
true / false |
確認なしで進めるモード(デフォルト: false) |
agents[].model |
sonnet / haiku / opus |
エージェントごとに使用するモデル |
context_modeの選び方:
full: フルコンテキストが必要な複雑な作業向けsummary: 日常的な作業でコスト削減したい場合(CLAUDE.summary.mdが必要)
モデル選択のヒント:
sonnet: バランス型、通常の実装・分析向けhaiku: 高速・低コスト、レビュー・軽量タスク向けopus: 複雑な判断が必要な場合
プロジェクトごとに異なるチーム構成や設定を使いたい場合、プロジェクトルートに .maxam/ ディレクトリを作成します:
your-project/
├── .maxam/
│ ├── config.yaml # プロジェクト固有設定
│ ├── CLAUDE.md # プロジェクト固有の規約・学習事項
│ └── agents/ # プロジェクト固有エージェント
│ ├── pixel/
│ │ └── CLAUDE.md
│ └── chiptune/
│ └── CLAUDE.md
└── CLAUDE.md # 共通規約
優先順位: プロジェクト/.maxam/ > ~/.maxam/ > デフォルト
例:ファミコン開発用チーム
# your-project/.maxam/config.yaml
version: "1"
default_agent: pixel
agents:
- name: pixel
full_name: Pixel Artist
role: ドット絵担当
- name: chiptune
full_name: Chiptune Composer
role: サウンド担当
- name: asm
full_name: ASM Wizard
role: 6502アセンブラ担当従来の CLAUDE.local.md は .maxam/CLAUDE.md に移行することを推奨します:
# 移行手順
mkdir -p .maxam
mv CLAUDE.local.md .maxam/CLAUDE.mdメリット:
- MAXAM関連ファイルが
.maxam/に集約される - プロジェクトルートがすっきりする
- 「.maxamフォルダを見ればMAXAM設定が全部わかる」
Note: 後方互換性のため
CLAUDE.local.mdも引き続き読み込まれますが、将来のバージョンで廃止予定です。
# 対話モード
./bin/maxam chat yuki # Yukiと1対1で対話
./bin/maxam chat team # チーム全体と対話
# 単発コマンド
./bin/maxam task "ログイン機能を実装して"
./bin/maxam review "テストを書いて"
./bin/maxam ask priya "このコード大丈夫?"
./bin/maxam analyze # Amaraの分析
./bin/maxam status # ステータス確認| メンション | エージェント |
|---|---|
@yuki / ゆき / バックエンド |
Yuki |
@rin / りん / フロントエンド |
Rin |
@shiori / しおり / テスト |
Shiori |
@priya / プリヤ / レビュー |
Priya |
@amara / アマラ / 分析 |
Amara |
| なし | Mei (デフォルト) |
You: 新しいAPI作りたい
Mei: どんなAPIですか?詳しく教えてください。
You: ユーザー一覧を返すGET /users
Mei: 了解です。Yukiに実装を依頼しますね。@yuki、お願いできる?
You: @yuki お願い
Yuki: 了解。GET /users 作る。DBスキーマはある?
情報が足りないときはエージェントが質問してきます。
MAXAM/
├── cmd/
│ └── maxam/ # CLIツール(チームチャット)
├── internal/
│ ├── agent/ # エージェント管理
│ ├── tui/ # ターミナルUI
│ ├── task/ # タスク管理
│ └── ... # その他のパッケージ
├── agents/ # 各エージェントのCLAUDE.md
│ ├── mei/
│ ├── yuki/
│ ├── rin/
│ ├── shiori/
│ ├── priya/
│ └── amara/
├── logs/ # 実行ログ
└── CLAUDE.md # 共通規約
| 場所 | 用途 |
|---|---|
~/.maxam/config.yaml |
グローバル設定 |
~/.maxam/agents/ |
グローバルエージェント定義 |
プロジェクト/.maxam/config.yaml |
プロジェクト固有設定(優先) |
プロジェクト/.maxam/agents/ |
プロジェクト固有エージェント(優先) |
プロジェクト/.maxam/CLAUDE.md |
プロジェクト固有の規約・学習事項 |
プロジェクト/CLAUDE.md |
共通規約 |
.maxam/ ディレクトリはgit管理をデフォルトとします。
理由:
- 再現性: cloneしたらすぐチームが動ける
- 透明性: 誰がチームにいて、どんな学習をしたか追跡できる
- シンプル: 「管理する/しない」の判断をユーザーに委ねない
機密情報(APIキー、トークン等)は .maxam/ に含めないでください。
| 情報の種類 | 保存場所 | git管理 |
|---|---|---|
| チームメンバー | .maxam/config.yaml |
✅ する |
| 学習事項 | .maxam/CLAUDE.md |
✅ する |
| プロジェクト固有の機密情報 | .env |
❌ しない |
| ユーザー個人設定 | ~/.maxam/config.yaml |
❌ しない |
| ユーザー個人の機密情報 | ~/.maxam/secrets.yaml |
❌ しない |
構成例:
<project>/
├── .maxam/ # git管理
│ ├── config.yaml # チームメンバー等
│ └── CLAUDE.md # 学習事項・チーム固有ルール
├── .env # git管理外(.gitignore)
│ # プロジェクト固有の機密情報
└── CLAUDE.md # 共通規約
~/.maxam/ # git管理外
├── config.yaml # ユーザー個人設定(グローバル)
└── secrets.yaml # ユーザー個人の機密情報
Note:
.envは.gitignoreに追加してください。
ユーザー → Mei(要件整理)→ Yuki/Rin(実装)→ Shiori(テスト)→ Priya(レビュー)
↑ │
└─────────────────── フィードバック ───────────────────┘
ログ蓄積 → Amara分析 → CLAUDE.md更新
チーム開発では、オーナー(スーパーバイザー)との連携が重要です。
相談するタイミング:
- 判断に迷ったとき
- 設計の大きな分岐点
- 要件の解釈が複数あるとき
- セキュリティに関わる問題
気軽に聞いてOK:
- 「〜でいいですか?」レベルで確認
- 完璧な質問でなくていい
- 大きな作業に入る前は方針を共有
エージェント → オーナーに相談 → 方針決定 → 実行
コントリビューションを歓迎します!詳しくは CONTRIBUTING.md をご覧ください。
セキュリティに関する問題を発見された場合は SECURITY.md をご確認ください。
MIT License - 詳細は LICENSE を参照してください。
ytnobody
