Overview
このガイドでは、次のコマンドを使用して新しいエージェントプロジェクトを作成および登録する方法を学習できます。
Agent engine create: スターター テンプレートを取得し、プロジェクトID フィールドを書き換えて、構成値を使用するパーソナライズされた環境ファイルを書込みます。
スターター テンプレートを使用する代わりにプロジェクトファイルを手動で作成する場合は、「 エージェントを手動で設定する 」セクションを参照してください。
プロジェクトの足場
このセクションでは、agentengine create コマンドを使用して新しいプロジェクトをスキャフォールディングする方法を説明します。
agentengine create コマンドには agentengine auth login は必要ないため、Atlas Agent Engine にプロジェクトが登録されません。エージェントをローカルで実行してテストする前に、スキャフォールディング ファイルを手動でカスタマイズできます。
コマンド構文
以下のコマンドを使用して、新しいプロジェクトを足場します。
agentengine create [--template <template-id>] [--name <display-name>] [--dir <path>] [--llm <provider>] [--llm-base-url <url>] [--llm-model <model>] [--llm-auth-header <header>] [--memory] [--yes]
指定するフラグに応じて、CLI はプロジェクトを構成する ように要求します。
このコマンドは、project-config.yamlファイルを含むプロジェクトディレクトリを作成し、<project-directory>/agents/<slug> サブディレクトリにエージェントのワークスペースディレクトリを足場します。 <slug> 値は、--name 値の小文字のハイフン付きバージョンです。ワークスペースディレクトリには、agent.yaml、.env、および今後のセクションで説明されるその他のエージェント固有のファイルが保存されています。
コマンド フラグ
Flag | 説明 |
|---|---|
| 任意。スターター テンプレートID。サポートされている値は: |
| アプリケーションの表示名。 |
| 任意。ターゲットプロジェクトディレクトリ。エージェントのワークスペース ファイルは、このパスの |
| 条件付き( |
| 条件付き( |
| 条件付き( |
| 条件付き(OpenRoute と互換性のある接続に必要)。モデルまたは配置名。 |
| 任意。エージェントスターター テンプレートのメモリを有効にし、 |
| 任意。 |
| 任意。選択した LM ホストを一覧表示する代わりに、エージェントとツールのオープン アウトバウンド アクセスを許可します。 |
| 任意。検出されたローカル環境変数の値を含む、すべてのオプションのプロンプトのデフォルトを受け入れます。 |
| 任意。コマンドの使用情報を表示する標準 CLI ヘルプ フラグ。 |
表示名の制限
CLI は、生成されたソース ファイルに表示名をコピーします。名前に次の文字を含めることはできません。
二重引用符(
")バックスラッシュ(
\)バックティッド
制御、改行、またはテキスト方向文字
対話型 CLI を使用中に無効な名前を入力すると、CLI はエラーを表示し、再度プロンプトを表示します。 --name フラグに無効な名前を渡すと、コマンドは失敗し、許可されていない文字または文字カテゴリに名前を付けるエラーが発生します。
サポートされているテンプレート
以下の表では、agentengine create コマンドに渡すことができるスターター テンプレートを説明しています。
Template | タイプ | ユースケース |
|---|---|---|
| エージェント スターター | 任意のメモリを持つ最小の Atlas Agent Engineエージェント。 |
| エージェント スターター | Google開発キット(ADK)で構築された最小エージェント。 |
| エージェント スターター | 人間が実行する機能と IANA タイムゾーン をサポートする最小の TypeScript LingGraphエージェント。 |
| エージェント スターター | ツール、ポリシー、クレーム、任意のメモリ、人間のレビューを持つ実際のエージェント。 |
| エージェント スターター | Google ADK で構築された保証ドメインエージェント。 |
| エージェント スターター | ディープエージェント、サブエージェント、メモリ付きツールを組み合わせたフル機能の TypeScriptエージェント。 |
| クライアントアプリ | 既存の配置されたエージェントの Next.js および Vercel AI SDK チャットUI 。 |
ローカル環境のデフォルト
プロバイダー カタログから LM 接続を選択する場合、agentengine create はAPIキーなど、必要な接続の詳細の入力を要求します。 シェル環境で LLM_API_KEY が設定されている場合、コマンドはそれをデフォルトの として提供します。値を確認すると、コマンドは生成された .envファイルに LLM_API_KEY としてそれを書込みます。この値を手動で設定する必要はありません。
Tip
エージェントの LM 呼び出しをゲートウェイ 経由でルーティングするには、「 LM ゲートウェイの構成 」セクションを参照してください。
メモリが有効になっている場合、agentengine create はローカル環境から VOYAGE_API_KEY を検出し、それをデフォルトの として提供します。値を確認すると、生成された .env にその値が書き込まれます。
--yes フラグを指定して agentengine create を実行すると、コマンドは検出された環境値を要求しません。 custom を除くすべてのプロバイダー カタログ オプションは、コマンドを実行する前に環境内で LLM_API_KEY を設定する必要があります。 --memory --yesも渡す場合は、コマンドを実行する前に環境内に VOYAGE_API_KEY を設定する必要があります。そうしないと、 コマンドは失敗します。
注意
サポートされている LM プロバイダーを選択すると、CLI.env は共有LLM_API_KEY 変数名の下に生成された ファイルに LM 認証情報を書込み、LLM_API_KEY api_key_secretのメモリ抽出に と同じ 値を使用します。project-config.yaml 。これにより、エージェントとメモリ抽出で 1 つのアップロード シークレットを共有できます。詳しくは、「 エージェントにメモリを追加する 」を参照してください。
chatbot-client テンプレートは、.envファイルではなく .env.localファイルを生成します。アプリを実行する前に、.env.localファイルに次の値を手動で入力する必要があります。
配置されたエージェントのAPI URL
サービス アカウント アクセス トークン
足場 エージェントをカスタマイズする
agentengine create が完了したら、エージェントのワークスペースディレクトリ(<project-directory>/agents/<slug>)に移動し、生成されたファイルを確認します。
すべての生成エージェントには、.agents/skills/atlas-agent-engine(Codex、Copiload、およびその他のエージェント)または .claude/skills/atlas-agent-engine(Clude Code の場合)の atlas-agent-engine 能力が含まれます。
エージェントスターター テンプレートを使用する場合は、生成されたエージェントソースと .envファイルを確認して、LM 接続が要件を満たしていることを確認します。 LMクライアント、モデル、エンドポイント、および認証動作は、生成されたエージェントソースコードで構成されます。
LM 接続を構成するカタログ オプションの場合、生成された.env ファイルにはLLM_API_KEY としての共有認証情報が含まれます。 を選択した場合は、エージェントコードでManual setup LM 接続を構成し、コードに必要なシークレットを.env ファイルに追加します。詳細については、「 コードで LM ゲートウェイを設定する 」を参照してください。
chatbot-client テンプレートを使用する場合は、.env.localファイルを確認し、配置されたエージェントのAPI URL、プロジェクトID、 ワークスペースID 、およびサービス アカウント アクセス トークンが正しく設定されていることを確認します。チャットボットクライアントアプリには agent.yamlファイルはありません。
注意
テンプレートは、ローカル Git 認証情報を使用して取得されます。生成されたプロジェクトディレクトリは、Gitリポジトリとして自動的に初期化されます。
エージェントの手動設定
agentengine create コマンドを使用してエージェントをスキャフォールディングする代わりに、必要なファイルを自分で作成できます。各エージェントには、1 つのディレクトリに次のファイルが一緒に必要です。
agent.yaml: プラットフォームがエージェントを実行する方法を説明するエージェント構成.env: ランタイムシークレットと環境変数pyproject.toml:[project].nameフィールドを含むPythonプロジェクトメタデータを定義します
このディレクトリは ワークスペースディレクトリであり、ここから agentengine コマンドを実行します。後で agentengine init コマンドを実行すると、Atlas Agent Engine はこのディレクトリをワークスペースとして登録します。
次の手順では、エージェントを手動で設定する方法について説明します。
Pythonプロジェクトをブートストラップします。
空のディレクトリから起動する場合は、rv ツールをインストールし、新しいプロジェクトを初期化します。
mkdir my-agent && cd my-agent uv init
agent.yamlファイルを作成します。
ワークスペースディレクトリに agent.yamlファイルを作成します。 entrypoint と sandboxes フィールドは必須です。
次の表では、使用可能な agent.yaml フィールドを説明しています。
フィールド | 必須 | 説明 |
|---|---|---|
| はい | アプリインスタンスへのPythonインポート パス( |
| はい | エージェントとそのツールを実行する と サンドボックスを構成します。各サンドボックスは、どのシークレットとツールにアクセスできるかを宣言します。 |
| No | Docker Compose サービスとネットワーク名のプレフィックスとして使用されるエージェント名。ハイフンを含む小文字の英数字を使用しますが、先頭または末尾のハイフンは含めないでください。 |
| No | 人間が判読可能なエージェントの説明 。最大 500 文字を使用します。 |
| No | フレームワーク識別子( |
| No | エージェント言語。サポートされている値は |
| No | エージェント バージョン。言語マニフェスト( |
| No | リモート MCPサーバー構成。詳細については、「 リモート MCP サーバーの使用 」を参照してください。 |
| No | プラットフォームUIに表示されるエージェント機能。フィールドは、 |
| No | 非推奨。ローカル サービス ポートのオーバーライドを、 |
| No | 機能フラグ。ブロックは |
| No | マネージド ビルドのプライベートパッケージレジストリを宣言します。詳しくは、「 エージェント YAML スキーマ 」を参照してください。 |
次の例は、最小の agent.yaml 構成を示しています。
entrypoint: my_agent.graph:app name: my-agent framework: langgraph sandboxes: agent: secrets: ["*"] tools: [] tool: secrets: - ANTHROPIC_API_KEY tools: - invoke_llm
.env ファイルを作成します。
エージェントコードに必要なシークレットを提供するには、ワークスペースディレクトリに .envファイルを作成します。 LMクライアントに必要な シークレット変数 をこのファイルに追加します。
LM プロバイダー、モデル、エンドポイント、認証動作を、agent.yaml .envではなくエージェントコードで構成します。 ファイルはAPIキーなどのシークレット専用です。agent.yaml ファイルの詳細については、 エージェント 契約に関する参考ガイドを参照してください。
次の表は、.envファイルに必要な変数とオプションの変数を示しています。
変数 | 必須 | 説明 |
|---|---|---|
| はい | MongoDB接続文字列 |
| No | LM プロバイダー キー。プラットフォームは特定のプロバイダーを必要とせず、LM 認証情報を検証しますが、エージェントがない場合はエージェントの実行時に失敗します。一般的なキーには、 |
重要
.envファイルは、実行時に検証されたシークレットの唯一のソースです。ホスト環境変数はコンテナによって意図的に無視されます。コンテナは実行時にのみ .env をマウントするため、ファイルに欠落しているキーは、コンテナ内にも欠落しています。バージョン管理システムに実際のシークレットをコミットしないでください。
LVM ゲートウェイの構成
エージェントが LVM 呼び出しを実行および認証する方法は、コードによって完全に決定されます。環境変数を設定する手順、または agentengine create で LM オプションを選択する手順は、例スターター テンプレートにのみ適用されます。 Atlas Agent Engine は、LM 接続をホストまたは管理しません。
LM ゲートウェイを設定するには、次の 2 つの方法があります。
スターター テンプレートを使用して、動作する LVM 接続を生成されたエージェントに実行します。
スターター テンプレートからビルドしないエージェントを含む、任意のエージェントで機能するコード内でゲートウェイを設定します。
スターター テンプレートから LM ゲートウェイを設定する
agentengine create コマンドを実行すると、次の の例のように、コマンドによって LM 接続を選択するように求められます。
Which LLM connection do you want to use? 1) OpenAI 2) Anthropic 3) Google Gemini 4) OpenRouter 5) OpenAI-compatible - AWS Bedrock, Azure Foundry 6) Anthropic-compatible - AWS Bedrock, Azure Foundry 7) Manual setup - implement the LLM client in code
このカタログからプロバイダーを選択すると、agentengine create コマンドは接続に必要な詳細を入力するよう求めます。これには次のものが含まれます。
ベース URL
モデルまたは配置名
API キー
ホストが認識されない場合の接続の認証ヘッダー
このコマンドは、選択した LMクライアントを生成されたエージェントソースに書き込み、共有認証情報を生成された .envファイルに LLM_API_KEY として保存します。
コマンドでは、エージェントとツールが外部ホストにアクセスする方法を選択するプロンプトも表示されます。
推奨される
network.egress構成を適用します。ゲートウェイ ホストが使用できない場合(Manual setup(custom)を選択した場合など)、このオプションは後で LM Egress を構成するように指示します。すべてのアウトバウンド アクセスを許可します。
重要
選択したプロバイダーは、この agentengine create コマンドによって作成されたスタータープロジェクトのみを構成します。後で作成する他のエージェントを自動的に構成することはありません。
LVM 接続がリストされたオプションのいずれにもない場合は、Manual setup を選択し、コードでゲートウェイを設定します。このオプションはモデルビルダのスタブを作成し、エージェントコードで接続を構成できるようにします。
コードで LM ゲートウェイを設定する
LVM をエージェントに接続するには、フレームワーク固有のモデルを作成し、結果のモデルインスタンスをエージェントのエントリポイントから app.llm(...) メソッドに渡します。モデル構築コードはエージェントコード内の任意のファイルに配置できますが、スターター テンプレートは言語固有のファイルにスタブを配置します。スターター テンプレートを使用しない場合は、app.llm(...) がサポートされている モデルオブジェクト を受け取った限り、他の場所でモデルを定義できます。
次の表では、さまざまなランタイムにわたってコード内で LM ゲートウェイを設定するための規則を説明しています。
ランタイム | ファイル | 返す結果 |
|---|---|---|
LongGraph Python |
| A LgChuin |
LingGraph TypeScript |
| A LgChuin |
ADK Python |
| ADK |
コンストラクターは、エンドポイント、認証ヘッダー、モデル名を設定するものです。例、LgGraph Python insurance-agent テンプレートは src/<module>/llm.py の build_llm() を定義し、Lgachein BaseChatModel を返します。エージェントエントリポイントは build_llm() をインポートし、返されたモデルを app.llm(...) に渡します。
エージェントがアクセスできるように、ゲートウェイ ホストを許可します。カスタム ゲートウェイ ホストとポートを agent.yamlファイルの network.egress ブロックに追加します。例、 ツール サンドボックスの既存の Egress 許可リストに gateway.example.com:443 を追加するには、次のコマンドを実行します。
agentengine agent egress add --component tool gateway.example.com:443
エージェントのネットワーク Egress 構成の詳細については、「 ネットワーク Egress を使い始める 」ガイドを参照してください。
エージェントを登録する
エージェントをスケーリングした後、 agentengine initコマンドを使用してエージェントを登録し、ローカル開発ファイルを生成できます。このコマンドを実行中前に、次の前提条件タスクを実行してください。
agent.yaml.env、 、およびpyproject.tomlまたはpackage.jsonのいずれかを含むエージェントワークスペースディレクトリを作成します。 Agent engine create コマンドは<project-directory>/agents/<slug>にこのディレクトリを足場します。または、エージェントを手動で設定することで作成できます。
コマンド構文
エージェントの ワークスペースディレクトリから、次のコマンドを実行してエージェントを登録し、ローカル ファイルを生成します。
agentengine init [--workspace-id <id>] [--project-id <id>] [--org-id <id>] [--base-url <url>] [--context <name>]
このコマンドは、組織とプロジェクト を対話的に選択または作成し、ローカル 開発ファイルを生成して、エージェントをAtlas Agent Engine のワークスペースとして登録します。
コマンド フラグ
Flag | 説明 |
|---|---|
| (任意)このディレクトリを作成する代わりに既存のワークスペースにリンクします。 |
| (任意)プロンプトなしで使用するプロジェクトID 。 |
| (任意)プロンプトなしで使用する組織ID 。 |
| (任意) Atlas Agent Engine APIベースURLを上書きします。 |
| (任意)作成または更新する名前付きローカル コンテキスト。 |
インタラクティブ フロー
agentengine init を実行すると、CLI は次の手順をガイドします。
"Create a new organization..."オプションを含む番号付きメニューで組織を一覧表示します。組織が存在しない場合、CLI は組織を作成するための名前を入力するように要求します。組織 を選択すると、
"Create a new project..."オプションを含む番号付きメニューでプロジェクトが一覧表示されます。プロジェクトが存在しない場合、CLI はプロジェクトを作成するための名前を入力するように要求します。選択したプロジェクトをアクティブな
project_idとしてローカル認証状態で保存します。エージェントディレクトリに次のローカル開発ファイルを生成します。
docker-compose.yml.agentengine/Dockerfile.agentengine/entrypoint.py.dockerignore.gitignore
エージェントをプラットフォーム上のワークスペースとして登録し、
workspace_id、org_id、project_idが指定された.agentengine/state.jsonファイルを作成します。
注意
.agentengine/state.jsonファイルがすでに存在する場合、CLI はワークスペース登録をスキップします。生成されたファイルを上書きせずにエージェントを再登録するには、 agentengine init コマンドを再実行します。ワークスペース名がプラットフォームにすでに存在する場合は、既存の workspace_id が再利用されます。
次のステップ
以下のセクションでは、各テンプレート型ごとにローカル開発を開始する方法について説明します。ローカル開発とテストの詳細については、「 エージェントをローカルで実行とテスト 」および「 エージェントをテストする 」を参照してください。
エージェント スターター テンプレート
TypeScript テンプレートを使用している場合は、エージェントをローカルで起動する前にNode.js の依存関係をインストールします。
pnpm install
スキャフォールディングされたエージェントを確認したら、agentengine dev up を実行してエージェントをローカルで起動します。
agentengine dev up
チャットボット クライアント テンプレート
.env.localファイルに必要な値を設定したら、依存関係をインストールし、開発サーバーを起動します。
pnpm install pnpm run dev
チャットUIを使用するには、ブラウザで http://localhost:3000 を開きます。