AIエージェントを活用した新しい開発フレームワーク。AIがメンターとして開発を主導し、人間がメンティーとして学びながら協働する開発手法です。
⚠️ 注意事項
- このフレームワークは個人学習・研究目的で開発されています
- 開発途中のため、仕様が変更される可能性があります
- 実用性や安定性は保証されていません
メンター駆動開発は、従来のペアプログラミングの概念を拡張し、AIエージェントがドライバー兼メンターとして開発を進め、人間開発者がナビゲーター兼メンティーとして意思決定と学習を行う開発フレームワークです。
- AIメンター制: AIが技術的な解説を提供しながら開発を進行
- フェーズ別エージェント: 各開発フェーズに特化した専門エージェント
- コンテキスト最適化: High/Lowコンテキストモデルの使い分けによるコスト最適化
- 継続的な学習: 開発プロセス全体を通じた知識の移転と成長
| エージェント | 役割 | 推奨モデル |
|---|---|---|
| Mng_AGT | プロジェクト管理・進行管理 | Highコンテキストモデル |
| Req_AGT | 要件定義・仕様策定 | Highコンテキストモデル |
| Des_AGT | 設計・アーキテクチャ・タスク分割 | Highコンテキストモデル |
| Imp_AGT | 実装・コーディング | Lowコンテキスト・コーディング特化モデル |
Claude Codeでの利用例です。他のCLIツールを利用する場合は適宜読み替えてください。
MDDフレームワークをClaude Codeで使用するための手順:
# 1. このリポジトリをクローン
git clone https://github.com/your-org/mentor-driven-development.git
# 2. Claude Code用テンプレートをコピー
# Claude Codeの@agentsディレクトリに各エージェント定義をコピー
cp agents/templates/management.md ~/.claude-code/agents/
cp agents/templates/requirements.md ~/.claude-code/agents/
cp agents/templates/design.md ~/.claude-code/agents/
cp agents/templates/implementation.md ~/.claude-code/agents/# プロジェクトのdocsフォルダにガイドラインをコピー
mkdir your-project/docs
cp knowledge-guidelines/documentation-guidelines.md your-project/docs/# プロジェクト開始時(ガイドライン参照込み)
@management "docs/documentation-guidelines.mdを確認して、プロジェクトを開始してください。タスク管理アプリを作りたいです。"
# 要件定義フェーズ
@requirements "docs/documentation-guidelines.mdに従って、ユーザー管理システムの要件を整理してください。"
# 設計フェーズ
@design "docs/documentation-guidelines.mdの品質基準に従って、システム設計を行ってください。"
# 実装フェーズ
@implementation ユーザー認証機能を実装してください。
Human: @management ユーザー管理システムを作りたいです
Management Agent: プロジェクトを開始します。まず要件定義から始めましょう。
効率的な進め方を指導します。
【プロジェクト管理の基本】
まず、プロジェクト全体を把握することから始めます。
次に@requirementsエージェントで要件を詳細化しましょう。
mentor-driven-development/
├── README.md # プロジェクト概要(コア概念含む)
├── agents/ # エージェント関連
│ ├── management.md # 詳細仕様書
│ ├── requirements.md # 詳細仕様書
│ ├── design.md # 詳細仕様書
│ ├── implementation.md # 詳細仕様書
│ └── templates/ # 汎用テンプレート
│ ├── management.md
│ ├── requirements.md
│ ├── design.md
│ └── implementation.md
├── workflows/ # ワークフロー定義
│ └── phase-transition.md
└── knowledge-guidelines/ # プロジェクト文書作成ガイドライン
├── README.md
└── documentation-guidelines.md
メンター駆動開発の中核は、AIエージェントと人間開発者の間に構築される「メンター・メンティー関係」です。この関係性は、従来の師弟関係をデジタル時代に再定義したものです。
-
知識の提供者: AIメンターは膆大な技術知識を持ち、適切なタイミングで必要な情報を提供します。
-
実装の実行者: AIメンターは実際にコードを書き、ベストプラクティスを体現します。
-
教育者: 単にコードを生成するだけでなく、なぜそのアプローチを選んだのかを説明します。
-
ビジョンの提供者: プロジェクトの方向性と最終目標を定義します。
-
意思決定者: 技術的な選択肢から最終決定を下します。
-
品質管理者: 成果物をレビューし、要件との整合性を確認します。
┌──────────────────┐ ┌──────────────────┐
│ AIドライバー │ │ 人間ナビゲーター │
│ 兼メンター │ ←──→ │ 兼メンティー │
├──────────────────┤ ├──────────────────┤
│ • 常に実装担当 │ │ • 常に監督担当 │
│ • 技術指導 │ │ • 要件明確化 │
│ • 24/7稼働可能 │ │ • 創造的判断 │
└──────────────────┘ └──────────────────┘
メンター駆動開発は、学習効果を最大化するため、柔軟な役割交代を取り入れることも可能です。
固定役割(変更不可):
- 人間: ビジョン提供、最終意思決定、受入判断
- AI: メンタリング、ベストプラクティス提供
交代可能役割(柔軟に切り替え):
- ドライバー役(実装): コード記述、テスト作成
- ナビゲーター役(設計・レビュー): コードレビュー、改善提案
モード選択のガイドライン:
- 基本モード(AI主導): 初回利用、複雑な新技術学習、時間制約がある場合
- ハイブリッドモード(役割交代): 実装スキル維持、実践的経験、チーム開発準備
各エージェントは、フェーズの完了時に必要な情報を次のエージェントに引き継ぎます。この引き継ぎにより、プロジェクト全体の一貫性と継続性が保たれます。
- 知識の継承: AIメンターから継続的に技術知識を吸収
- 品質向上: 各フェーズの専門エージェントによる高品質な成果物
- 効率化: 適切なモデル選択によるコスト最適化
- 学習促進: 実践を通じた効果的な技術習得
- 柔軟な学習スタイル: スキルレベルに応じたモード選択
- エージェント仕様:
- フェーズ遷移ワークフロー
MIT License
プルリクエストを歓迎します。大きな変更の場合は、まずissueを開いて変更内容を議論してください。