組み合わせ可能なプロジェクトテンプレート
cargo adk new は、3つの選択肢から動作する Rust プロジェクトを作成します。
- テンプレートは、エージェントまたはワークフローの構成を定義します。
- アドオンは、セッション、MCP、テレメトリなどの機能を追加します。
- エンタープライズパターンは、一般的な製品構成に対応するテンプレートと、レビュー済みのアドオン群を選択します。
カスタムテンプレートディレクトリによって組み込みレジストリを拡張または置換できるため、インストール済みの CLI が正式な情報源です。
cargo adk templates
cargo adk addons
cargo adk new --help
プロジェクトを作成する
# One LLM agent
cargo adk new support-agent --template llm
# A tool-using agent with operating capabilities
cargo adk new support-agent \
--template tools \
--addon sessions \
--addon telemetry \
--addon guardrails
# Preview generated files without writing them
cargo adk new support-agent --template graph --dry-run
basic は引き続き llm の別名です。新しいドキュメントと自動化では、明示的な llm 名を使用してください。
組み込みテンプレート
組み込みレジストリには現在、13個のテンプレートが含まれています。
| テンプレート | 生成されるもの | 選ぶタイミング |
|---|---|---|
llm | 1つの会話型LlmAgent | 1つのエージェントでリクエストを担当し、必要に応じてツールを呼び出せる場合 |
tools | LLMエージェントと型付き#[tool]の例 | 最初の有用なマイルストーンが、目に見える Rust ツール呼び出しである場合 |
rag | ベクトル検索ナレッジパスを備えたエージェント | 回答ではプライベートドキュメントまたはナレッジコレクションを使用する必要があります |
api | HTTP API を通じて公開されるエージェント | 別のアプリケーションがネットワーク経由でエージェントを呼び出します |
openai | OpenAI 用に構成された LLM エージェント | OpenAI が開始プロバイダーとして意図されています |
sequential | 複数のエージェントを固定された順序で実行する | 各段階は前の段階の作業に依存します |
parallel | 結果を集約する並行スペシャリスト | 独立した作業を同時に実行できる |
loop | 条件が満たされるまで繰り返し実行 | レビュー、修正、または改善のサイクルに上限付きループが必要 |
conditional | エージェント間の意思決定に基づくルーティング | リクエストごとに異なるスペシャリストまたは経路が必要 |
graph | チェックポイントを備えた分岐ワークフロー | 作業を再開、分岐、結合する必要がある、またはプロセス障害に耐える必要がある |
realtime | 双方向の音声および動画処理 | ライブ音声またはマルチモーダルの会話が必要 |
custom | Agent trait の手動実装 | 実行コントラクトを組み込みエージェントで表現できない |
agent-engine | Dockerfile および deploy/terraform/ を含む Gemini Enterprise Agent Engine BYOC コンテナ | エージェントはビルド済みコンテナとして Agent Runtime にデプロイされる |
まず実行形態を選択してください。ワークフローを決定するために、セッション、MCP、テレメトリー、その他の製品機能を使用するのではなく、その後に追加します。
機能アドオン
--addon を繰り返して機能を組み合わせます。ジェネレーターは、それらの機能フラグ、インポート、初期化フラグメント、環境例、生成ファイルを安定した優先順位で解決します。
| アドオン | 追加されるもの | 典型的な使用理由 |
|---|---|---|
telemetry | OpenTelemetry トレーシングの設定 | モデル、エージェント、ツールの境界を越えてリクエストを追跡する |
auth | API-key と JWT 認証の足場 | デプロイされたエージェントのエンドポイントを保護する |
sessions | セッション状態サービスのセットアップ | 保存された状態で会話またはワークフローを継続する |
memory | セマンティックメモリと RAG の統合 | 現在の会話を超えて関連する知識を取得する |
mcp | MCP 機能の配線とクライアントの開始点 | 別のプロセスまたはサービスが所有する機能を接続する |
guardrails | 入力および出力の検証フック | エージェントの実行前後にプロダクトのルールを適用する |
eval | 評価ハーネスの足場 | リリース前に、再現可能なケースに対して動作を測定する |
browser | ブラウザー自動化の統合 | 承認済みのエージェントがウェブインターフェースを操作できるようにする |
server | Axum HTTP および A2A サーバーのセットアップ | リモートの呼び出し元向けにエージェントを公開する |
docker | マルチステージコンテナーのビルドファイル(Dockerfile、Dockerfile.static、.dockerignore) | エージェントを最小構成のコンテナーイメージとしてパッケージ化する |
例:
cargo adk new order-agent \
--template tools \
--addon mcp \
--addon sessions \
--addon server \
--addon auth \
--addon telemetry
生成された機能コードは出発点です。リリース前に、プレースホルダーのエンドポイント、認証情報、ポリシー、インメモリサービスを、デプロイメントで管理する選択肢に置き換えてください。
エンタープライズパターンの構成
パターンは通常のテンプレートと同じ --template 名前空間に表示されます。個別の --pattern フラグはありません。
| パターン | 構成 | 製品の出発点 |
|---|---|---|
multi-agent | sequential + テレメトリ | 可視化された多段階ワークフロー |
production | llm + サーバー + 認証 + セッション + テレメトリ | 認証済みで可観測なエージェントサービス |
pipeline | sequential + セッション + テレメトリ | 状態を持つ処理パイプライン |
chatbot | llm + セッション + メモリ + サーバー | 想起機能を備えた会話型 HTTP 製品 |
a2a-server | llm + サーバー + セッション | 独立してデプロイされる A2A エージェント |
a2a は引き続き a2a-server のエイリアスです。
cargo adk new operations-agent --template production
cargo adk new research-team --template multi-agent --addon eval
cargo adk new public-specialist --template a2a-server --addon auth
プロバイダーとモデルの選択
テンプレートにはデフォルトのプロバイダーが設定されていますが、CLI を使用すると、実行形態を変更せずにこれを上書きできます。
cargo adk new support-agent \
--template tools \
--provider openai \
--model company-approved-model
CI では --non-interactive を使用して、選択肢がない場合にプロンプトを表示するのではなく失敗させます。別のプログラムで生成結果が必要な場合は --json-output を使用します。
カスタムテンプレート
組織で組み込みレジストリ以外にも再利用可能な開始点が必要な場合は、TOML マニフェストのディレクトリを渡します。
cargo adk new finance-agent \
--template company-finance \
--template-dir ./agent-templates
組み込みテンプレートと同じ名前のカスタムテンプレートは、その CLI の呼び出しにおいて組み込みテンプレートを置き換えます。マニフェストはバージョン管理下に置き、生成されたプロジェクトを CI でテストしてください。
name = "company-finance"
description = "Company finance agent with approved defaults"
provider = "openai"
features = ["minimal", "tools"]
imports = ["use std::sync::Arc;"]
生成されたプロジェクトを検証する
cd support-agent
cargo adk build
cargo run
cargo adk build は、デプロイせずに生成されたプロジェクトをコンパイルして検証します。生成されたソースをコミットし、有効になっている機能と環境要件を確認して、同じコマンドを CI のゲートとして使用してください。
自動化を最新に保つ
レジストリの内容はリリース間で変わる可能性があります。自動化されたプロジェクト生成をアップグレードする前に、次の操作を行ってください。
cargo adk templates
cargo adk addons
cargo adk new smoke-agent --template tools --addon mcp --dry-run
これにより、ビルド環境にインストールされている正確な cargo-adk バイナリに対して、名前と互換性が検証されます。