ADK-Rust 公式ドキュメント
ADK-Rust(Rust 向け Agent Development Kit)の公式ドキュメントへようこそ。このドキュメントでは、ADK フレームワークの Rust 実装を使って AI エージェントを構築するための包括的なガイドとリファレンスを提供します。
はじめに
- イントロダクション - ADK-Rust の概要、アーキテクチャ、および主要な概念
- クイックスタート - 10 分以内に最初のエージェントを構築
- A2UI クイックスタート - A2UI JSONL を出力し、React でレンダリング
- 1.0 → 2.0 への移行 - 変更前/変更後のコード付きの破壊的変更の完全一覧
コア
- コア型 - 基本型: Content、Part、Agent trait、Tool trait、contexts
- Runner - エージェント実行ランタイムと設定
- プラグイン - ツール/モデル介入とミドルウェアのライフサイクルフック
モデル
- モデルプロバイダー - LLM 連携: Gemini、OpenAI、Anthropic、DeepSeek、Groq、Ollama
- Ollama - Ollama によるローカル推論
- mistral.rs 統合 - 高性能なローカル推論のためのネイティブ mistral.rs
エージェント
- LlmAgent - Large Language Models を使用するコアのエージェント型
- CodeAgent(CodeAct) -
CodeRuntimeを介してコードを書き、実行することで動作 - ワークフローエージェント - 決定的なエージェント: Sequential、Parallel、Loop
- マルチエージェントシステム - サブエージェントを使ったエージェント階層の構築
- グラフエージェント - LangGraph 風のワークフローオーケストレーション
- リアルタイムエージェント - OpenAI/Gemini を備えた音声対応エージェント
コーディングエージェント
サンドボックス化されたワークスペースでコードを読み、編集し、実行するネイティブなコーディングエージェント。自律的な目標モードと、並列の ultra-review ワークフローを備えています。
- 概要 - まずはここから: 構成要素、インストール、60 秒のクイックスタート
- 開発ツール -
adk-devtools: read/write/edit/glob/grep/bash + サンドボックス化されたWorkspace - Harness -
CodingAgent(coding機能)、plan ループ、write_todos - CLI -
adk-rust code/goal(永続的、再開可能)/ultracode - ワークフロー -
adk-graph上の ultra-review: 並列レビュアー + fan-in - 例 - 実行可能な 3 つのサンプル crate
リアルタイム & マルチモーダル
音声 + マルチモーダルエージェントを構築するための、新規利用者向けの専用ガイド — アーキテクチャ、概念、実行可能な例を含みます。
- 概要 - まずはここから: メンタルモデル、インストール、60 秒のクイックスタート
- アーキテクチャ - 4 層、イベントループ、オーディオパイプライン、turn のライフサイクル
- プロバイダー - OpenAI Realtime と Gemini Live のモデル、音声、選び方
- ツール - サーバーサイドのアクション: ネイティブハンドラ、ブリッジされた
adk_core::Tool、並列呼び出し - マルチモーダル -
send_video_frameとブラウザカメラキャプチャによる動画入力 - 感情対話 - Gemini のネイティブ音声での感情認識応答
- メモリ - コンテキスト注入、turn 保存、知識グラフによる自己キュレーション
- Web アプリの構築 - サーバーサイドブリッジ、WS プロトコル、Web Audio
- 例 - 実行可能な 4 つの例と推奨学習パス
ツール
- 関数ツール - async Rust 関数でカスタムツールを作成
- 組み込みツール - GoogleSearchTool のような事前構築済みツール
- MCP の概要とアーキテクチャ - MCP がどこに適合するか、どの ADK-Rust サーフェスを使うか
- MCP クライアント - ツール、リソース、プロンプト、完了、購読、エリシテーション、タスク、HTTP
- 動的 MCP サーバーマネージャー - 実行時のローカルサーバー登録、永続化、監視、再起動
- MCP サーバー作成 - 整合した公式 Rust SDK でツールやその他の機能を公開
- MCP セキュリティ - 認証、可視性、認可、承認、シークレット処理
- MCP テスト - 決定的なゲートとデプロイ検証
- ブラウザツール - Web 自動化のための 46 個の WebDriver ツール
- UI ツール - フォーム、カード、チャートを使った動的 UI 生成
- RAG - ナレッジベース検索のための Retrieval-Augmented Generation
- ACP ツール - 型付きの ADK-Rust ツールとして ACP コーディングエージェントを使用
- Retry & Reflect - 反省プロンプトによるツール失敗の回復
- アクションノード - ワークフローグラフのための 14 個の決定的なノード型
- ベンチマーク -
cargo adk benchによる性能測定
Agent Client Protocol
ADK-Rust から外部のコーディングエージェントを使用するか、安定した ACP v1 を通じて ADK-Rust エージェントをエディタに公開します。
- アーキテクチャと概念 - クライアント/ホストとコーディングエージェントの役割、セッション、機能、プロトコルの流れ
- ACP クライアントとホスト - 委譲、永続セッション、ストリーミング、キャンセル、権限、ファイル、端末、MCP
- ACP エージェントサーバー - Runner、ツール、セッション、ライブイベントを stdio 経由で公開
- テストとサポートマトリクス - 検証済みの相互運用性と、意図的に公表していない機能
セッション & 状態
メモリ
セッションを超えて存続する長期メモリ — セッション状態の永続版。セマンティックストアと、二時相の知識グラフの両方を扱う、初心者向けの専用ガイド。
- 概要 - ここから始める: 2種類のメモリ、メンタルモデル、インストール、クイックスタート
- 概念 -
MemoryEntry、MemoryServicetrait、検索、プロジェクトのスコープ、GDPR消去 - バックエンド - 6つのストア(InMemory、SQLite、Postgres+pgvector、Redis、MongoDB、Neo4j)と選び方
- ナレッジグラフ -
GraphMemoryService: エンティティ、観測、関係、そして bi-temporal が重要な理由 - ツールとエージェント - メモリをエージェントに組み込む;
remember/relateとメモリツール
コールバックとイベント
アーティファクト
- アーティファクト - バイナリデータの保存と取得
可観測性
- テレメトリ - ロギング、トレース、監視
デプロイ
- ランチャー - コンソールまたはサーバーモードでエージェントを実行する
- サーバー - REST API と Web UI 連携
- A2A プロトコル - エージェント間通信
- Agentic Web Protocol - エージェントネイティブな Web サービス向けの AWP プロトコル
評価
管理対象エージェント
- 管理対象エージェントランタイム - ベンダー非依存で、永続的かつ再開可能なエージェント実行エンジン(Experimental)
セキュリティ
- アクセス制御 - ロールベースの権限と監査ログ
- ガードレール - PII のマスキング、コンテンツフィルタリング、スキーマ検証
- メモリ - エージェント向けの長期セマンティックメモリ
- 支払いとコマース - エージェントコマースのジャーニー、プロトコル対応、検証パス
スタジオ
- ADK Studio - エージェント構築のためのビジュアル開発環境
- アクションノード - 自動化ワークフロー向けの非-LLM プログラムノード
- トリガー - ワークフロー向けの Webhook、スケジュール、イベントトリガー
開発
- 開発ガイドライン - 貢献ガイドとベストプラクティス
- Performance 0.8 - 最適化リリースの例と採用重視の検証
検証ステータス
README と公式ドキュメント内の Cargo コマンドと依存関係のスニペットは、scripts/check-doc-examples.sh によって検証されています。CI は scripts/check-cargo-adk-templates.sh を使った cargo-adk スキャフォールドもチェックし、scripts/check-example-name-collisions.sh を使って重複する example ターゲット名を拒否し、cargo check --workspace --examples を使ってワークスペースの example をコンパイルします。