はじめに
AIエージェントの開発で、もっとも時間を消費する作業は何でしょうか。
モデルの選定やツールの統合も重要ですが、実際の開発現場ではプロンプトの手動チューニングが最大のボトルネックになっています。エージェントが失敗するたびにログを確認し、プロンプトを書き直し、また動かしてみる——この繰り返しは、スケールするほど非効率になります。
2026年3月29日、Amazonの研究者らが開発したA-Evolveがオープンソースで公開されました。A-Evolveは、このチューニング作業を自動化する「エージェント自動進化フレームワーク」です。公式GitHubリポジトリ公表値によると、MCP-Atlasベンチマークで79.4%(#1)、SWE-bench Verifiedで**76.8%(~#5)**を達成しています。
この記事で解説すること
- A-Evolveが解決する課題と設計思想
- Agent Workspaceの構造(
manifest.yaml/ prompts / skills / tools / memory) - 5段階の自動進化ループ(Solve → Observe → Evolve → Gate → Reload)
- Pythonでの基本的な使い方
- ベンチマーク結果の詳細
- BYOA/BYOE/BYO-Algoによるカスタマイズ
対象読者
- AIエージェントを開発・運用しているエンジニア
- プロンプトチューニングの工数を削減したい方
- MCPエコシステムでエージェントを構築している方
TL;DR
- A-EvolveはAmazon発のOSSフレームワーク。AIエージェントのプロンプト・スキル・メモリを自動的に最適化する
- エージェントの状態を「Agent Workspace」(ファイルシステム上のディレクトリ)として定義し、LLMが直接ファイルを変異させる
- 5段階ループ(Solve→Observe→Evolve→Gate→Reload)でイテレーションし、Gitでバージョン管理
- MCP-Atlas #1(79.4%)、SWE-bench Verified ~#5(76.8%)、Terminal-Bench 2.0 ~#7(76.5%)を達成(GitHubリポジトリ公表値)
-
pip install -e ".[all,dev]"→ 3行のPythonコードで動き始める
課題:手動プロンプトチューニングの限界
エージェント開発のボトルネック
現在のAIエージェント開発では、次のようなサイクルが繰り返されます。
- エージェントをタスクに対して実行する
- 失敗したケースのログを解析する
- プロンプトやスキルを手動で修正する
- 1に戻る
このプロセスには根本的な問題があります。タスクの種類やモデルが変わるたびに、同じ作業を繰り返す必要がある点です。SWE-benchで高スコアを出すためのチューニングは、MCP-Atlasのタスクには必ずしも転移しません。
さらに、成功したプロンプトの変更がどのベンチマークを改善し、どこを悪化させたかを人間が追跡するのは、規模が大きくなるにつれて困難になります。
A-Evolveのアプローチ
A-EvolveはGitHubの公式リポジトリで「The PyTorch for Agentic AI」と説明されています。PyTorchが深層学習の標準基盤になったように、A-Evolveはエージェント進化の標準インフラを目指しています。
核心となるアイデアは**「エージェントの状態をファイルシステム上に置き、LLMが直接ファイルを編集して変異させる」**ことです。
A-Evolveのアーキテクチャ
Agent Workspace:エージェントのDNA
A-EvolveはAgent Workspaceという標準構造を定義しています。エージェントの「DNA」にあたるすべての設定が、次のディレクトリ構造に収まります。
my_agent/
├── manifest.yaml # エージェントID・エントリーポイント・進化対象レイヤー
├── prompts/
│ └── system.md # システムプロンプト
├── skills/ # スキル定義(SKILL.mdファイル群)
├── tools/ # ツール設定
└── memory/ # エピソード記憶 + セマンティック記憶(JSONL形式)
この設計の重要な点は、進化エンジンがエージェントの内部実装を知らなくてもよいことです。LLMはファイルを読み、ログを分析し、変更を書き込むだけです。
manifest.yaml には、エージェントのIDや変異対象のレイヤー(プロンプトのみ変異させるか、スキルも含めるか等)を定義します。
# manifest.yaml の例
id: my-coding-agent
version: "1.0"
entrypoint: prompts/system.md
evolvable:
- prompts
- skills
- memory
5段階進化ループ
進化は次の5段階のサイクルで実行されます。
| ステージ | 処理内容 |
|---|---|
| Solve | エージェントがベンチマークタスクを実行する |
| Observe | 実行ログを記録し、成功・失敗パターンを分析する |
| Evolve | 進化エンジンが観測結果をもとにワークスペースファイルを変異させる |
| Gate | 変異をホールドアウトタスクで検証。回帰が発生した変異はGitでロールバック |
| Reload | エージェントが変異後(またはロールバック後)のワークスペースを再ロードする |
ループは**Evolutionary Generality Loss(EGL)**が安定するか、max_cyclesに達したときに収束します。EGLは「変異によってどの程度の汎化性能が失われたか」を示す指標で、特定タスクへの過学習を防ぎます。
Git版管理によるトレーサビリティ
受理された変異はすべてGitタグ(evo-1、evo-2...)として記録されます。これにより、次のことが可能になります。
- どの変異がどのベンチマークスコアに寄与したかの追跡
- 回帰が発生した場合の即時ロールバック
- チーム間での進化履歴の共有
インストールと基本的な使い方
インストール
git clone https://github.com/A-EVO-Lab/a-evolve.git
cd a-evolve
pip install -e ".[all,dev]"
Python 3.11以上が必要です。
最小構成での実行
ビルトインのプリセット(SWE-bench Verified向け)を使う場合、わずか3行で実行できます。
import agent_evolve as ae
evolver = ae.Evolver(agent="swe-verified", benchmark="swe-verified")
results = evolver.run(cycles=10)
cycles=10は進化ループの最大反復回数です。各サイクルで変異→検証→コミット(またはロールバック)が行われます。
カスタムエージェントを進化させる場合
独自のAgent Workspaceを使う場合はパスを指定します。
import agent_evolve as ae
evolver = ae.Evolver(
agent="./my_agent", # Agent Workspaceのパス
benchmark="swe-verified", # 評価ベンチマーク
max_cycles=20, # 最大進化サイクル数
llm_provider="anthropic", # 進化エンジンが使うLLM
)
results = evolver.run()
print(f"最終スコア: {results.final_score:.1%}")
ベンチマーク結果
A-EvolveはGitHubリポジトリで公開されている評価結果によると、以下のスコアを達成しています。
MCP-Atlas(Scale AI)
MCP-Atlasは、Scale AIが作成したMCPプロトコル特化のベンチマークです。1,000件の人間が作成したタスクと36個のリアルMCPサーバー、220ツールで構成されています。
| モデル | スコア |
|---|---|
| A-Evolve(#1) | 79.4% |
| 従来ベースライン | 76.0%(推定) |
タスクの約1/3は条件分岐を含んでおり、前の操作結果によって後続のツール選択が変わります。これはエージェントの実世界タスク能力を測る厳しい指標です。
SWE-bench Verified
GitHubの実際のバグ修正タスクを評価するベンチマークです。
| モデル | スコア |
|---|---|
| A-Evolve(~#5) | 76.8% |
Terminal-Bench 2.0
Dockerized CLI環境でのコマンドライン操作能力を評価します。
| モデル | スコア |
|---|---|
| A-Evolve(~#7) | 76.5% |
SkillsBench
エージェントが自律的にスキルを発見・作成する能力を評価します。A-EvolveはMCP-Atlas leaderboardのトップを達成するために必要な5つのターゲットスキルを自律的に発見しています。
BYOA/BYOE/BYO-Algo:モジュラー設計
A-Evolveは**"Bring Your Own"**の哲学で設計されており、3つの主要コンポーネントを交換できます。
BYOA:独自エージェント(Bring Your Own Agent)
自社で開発したエージェントをそのまま持ち込めます。Agent Workspaceの構造(manifest.yaml等)に準拠していれば、フレームワークの内部実装に依存しません。
BYOE:独自評価環境(Bring Your Own Environment)
SWE-benchやMCP-Atlas以外の独自ベンチマークを定義できます。社内のタスクセットや業務特化の評価データを使って、ドメイン固有の進化を行えます。
BYO-Algo:独自進化アルゴリズム(Bring Your Own Algorithm)
A-Evolveには4つのリファレンス進化アルゴリズムが含まれています。それぞれalgorithms/以下のディレクトリに独立して配置されているため、独自のアルゴリズムを差し込むことも可能です。
スキルの標準化とMCPエコシステムとの連携
A-EvolveのAgent Workspaceで使われるスキルは、SKILL.md(YAMLフロントマター付きMarkdown)形式です。これはAnthropicのClaude CodeやOpenAIのCodexが採用しているスキル形式と互換性があります。
公式ドキュメントによると、「スキルはベンダーロックされた機能ではなく、ポータブルでバージョン管理されたアセット」として設計されており、VS CodeやCursor等の対応プラットフォームに移植できます。
GitHubリポジトリ公表値では、MCP-Atlasで79.4%(#1)を達成しており、A-EvolveがMCPエコシステムと深く統合されていることを示しています。MCPサーバーを通じた複雑なツール連携タスクで高い性能を発揮するように設計されています。
注意点
manifest.yamlの設定ドリフト
GitHubリポジトリのドキュメントによると、自動生成されたスキルを過度に依存するとmanifest.yamlの設定とワークスペースの実態がずれる**「設定ドリフト」**が発生することがあります。進化サイクルの後はmanifest.yamlを定期的にレビューすることが推奨されています。
計算コスト
各進化サイクルでLLMがファイルを読み書きし、ベンチマークを実行します。max_cyclesを大きくするほど実行時間と費用が増加します。初回はcycles=5程度から始めることが実用的です。
まとめ
Amazon A-Evolveは、AIエージェント開発における手動チューニングのボトルネックを解消する新しいアプローチを提示しています。
- Agent Workspace:エージェントの全状態をファイルシステムで標準化し、フレームワーク非依存の進化を可能にする
- 5段階進化ループ:Solve→Observe→Evolve→Gate→Reloadの自動サイクルで、ヒューマンインザループを排除
- Git統合:変異履歴をgitタグで管理し、トレーサビリティとロールバックを保証
- ベンチマーク結果(GitHubリポジトリ公表値):MCP-Atlas #1(79.4%)、SWE-bench Verified ~#5(76.8%)、Terminal-Bench 2.0 ~#7(76.5%)
エージェントエンジニアリングが「人間がプロンプトを書く」フェーズから「エージェントが自分を改善する」フェーズへ移行しつつあることを示す一例です。MCPエコシステムとの親和性も高く、現在MCPベースのエージェント開発を進めているチームには特に注目に値するフレームワークです。
参考リンク
- GitHub - A-EVO-Lab/a-evolve — 公式リポジトリ(インストール・使い方)
- MCP-Atlas Leaderboard(Scale AI) — ベンチマーク詳細
- SWE-bench — ソフトウェアエンジニアリング評価ベンチマーク
- Amazon Bedrock AgentCore — AWSのマネージドエージェント基盤