Skip to content

masanami/mentor-driven-development

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 

Repository files navigation

メンター駆動開発 (MDD: Mentor-Driven Development)

AIエージェントを活用した新しい開発フレームワーク。AIがメンターとして開発を主導し、人間がメンティーとして学びながら協働する開発手法です。

⚠️ 注意事項

  • このフレームワークは個人学習・研究目的で開発されています
  • 開発途中のため、仕様が変更される可能性があります
  • 実用性や安定性は保証されていません

概要

メンター駆動開発は、従来のペアプログラミングの概念を拡張し、AIエージェントがドライバー兼メンターとして開発を進め、人間開発者がナビゲーター兼メンティーとして意思決定と学習を行う開発フレームワークです。

主な特徴

  • AIメンター制: AIが技術的な解説を提供しながら開発を進行
  • フェーズ別エージェント: 各開発フェーズに特化した専門エージェント
  • コンテキスト最適化: High/Lowコンテキストモデルの使い分けによるコスト最適化
  • 継続的な学習: 開発プロセス全体を通じた知識の移転と成長

エージェント構成

エージェント 役割 推奨モデル
Mng_AGT プロジェクト管理・進行管理 Highコンテキストモデル
Req_AGT 要件定義・仕様策定 Highコンテキストモデル
Des_AGT 設計・アーキテクチャ・タスク分割 Highコンテキストモデル
Imp_AGT 実装・コーディング Lowコンテキスト・コーディング特化モデル

クイックスタート

Claude Codeでの利用例です。他のCLIツールを利用する場合は適宜読み替えてください。

1. Claude Codeでの導入手順

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/

2. プロジェクト文書ガイドラインの設定

# プロジェクトのdocsフォルダにガイドラインをコピー
mkdir your-project/docs
cp knowledge-guidelines/documentation-guidelines.md your-project/docs/

3. 基本的な使い方

# プロジェクト開始時(ガイドライン参照込み)
@management "docs/documentation-guidelines.mdを確認して、プロジェクトを開始してください。タスク管理アプリを作りたいです。"

# 要件定義フェーズ
@requirements "docs/documentation-guidelines.mdに従って、ユーザー管理システムの要件を整理してください。"

# 設計フェーズ
@design "docs/documentation-guidelines.mdの品質基準に従って、システム設計を行ってください。"

# 実装フェーズ
@implementation ユーザー認証機能を実装してください。

4. エージェントとの対話例

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メンターの役割

  1. 知識の提供者: AIメンターは膆大な技術知識を持ち、適切なタイミングで必要な情報を提供します。

  2. 実装の実行者: AIメンターは実際にコードを書き、ベストプラクティスを体現します。

  3. 教育者: 単にコードを生成するだけでなく、なぜそのアプローチを選んだのかを説明します。

人間メンティーの役割

  1. ビジョンの提供者: プロジェクトの方向性と最終目標を定義します。

  2. 意思決定者: 技術的な選択肢から最終決定を下します。

  3. 品質管理者: 成果物をレビューし、要件との整合性を確認します。

AIペアプログラミングイメージ

メンター駆動ペアプログラミング(基本モード)

┌──────────────────┐      ┌──────────────────┐
│   AIドライバー    │      │  人間ナビゲーター  │
│    兼メンター     │ ←──→ │   兼メンティー    │
├──────────────────┤      ├──────────────────┤
│ • 常に実装担当    │      │ • 常に監督担当    │
│ • 技術指導       │      │ • 要件明確化      │
│ • 24/7稼働可能   │      │ • 創造的判断      │
└──────────────────┘      └──────────────────┘

ハイブリッドモード(役割交代あり)

メンター駆動開発は、学習効果を最大化するため、柔軟な役割交代を取り入れることも可能です。

固定役割(変更不可):

  • 人間: ビジョン提供、最終意思決定、受入判断
  • AI: メンタリング、ベストプラクティス提供

交代可能役割(柔軟に切り替え):

  • ドライバー役(実装): コード記述、テスト作成
  • ナビゲーター役(設計・レビュー): コードレビュー、改善提案

モード選択のガイドライン:

  • 基本モード(AI主導): 初回利用、複雑な新技術学習、時間制約がある場合
  • ハイブリッドモード(役割交代): 実装スキル維持、実践的経験、チーム開発準備

エージェント間の協調

各エージェントは、フェーズの完了時に必要な情報を次のエージェントに引き継ぎます。この引き継ぎにより、プロジェクト全体の一貫性と継続性が保たれます。

主なメリット

  1. 知識の継承: AIメンターから継続的に技術知識を吸収
  2. 品質向上: 各フェーズの専門エージェントによる高品質な成果物
  3. 効率化: 適切なモデル選択によるコスト最適化
  4. 学習促進: 実践を通じた効果的な技術習得
  5. 柔軟な学習スタイル: スキルレベルに応じたモード選択

ドキュメント

ライセンス

MIT License

コントリビューション

プルリクエストを歓迎します。大きな変更の場合は、まずissueを開いて変更内容を議論してください。

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published