View a markdown version of this page

カスタムエージェントの作成 - AWS DevOps エージェント

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

カスタムエージェントの作成

カスタムエージェントは 2 つの方法で作成できます。DevOps エージェントウェブアプリでフォームを使用するか、チャットでガイド付き会話を行います。どちらの方法でも、エージェントスペースに同じカスタムエージェント設定が保存されます。

カスタムエージェントを作成する前に、少なくとも 1 つの接続された統合を持つエージェントスペースが必要です。詳細については、「エージェントスペースの作成」を参照してください。

フォームを使用したカスタムエージェントの作成

フォームでは、名前、システムプロンプト、およびオプションのスキルを指定することで、カスタムエージェントをすばやく作成できます。MCP ツールをエージェントに割り当てるには、エージェントの作成後に Chat を使用します。

フォームを使用してカスタムエージェントを作成するには:

  1. DevOps Agent ウェブアプリの Agents ページに移動します。

  2. 「カスタムエージェント」セクションで、「エージェントの作成」を選択します。

  3. ダイアログで、フォームを選択します。

  4. フォームに入力します。

    • 名前 – エージェントの一意の識別子。小文字、数字、ハイフンのみを使用してください (最大 64 文字)。先頭または末尾にハイフンを使用しないでください。例: weekly-health-report

    • システムプロンプト – エージェントの動作と動作を定義する手順。Markdown で記述されます (最小 10 文字、最大 50,000 文字)。効果的なプロンプトの記述に関するガイダンスについては、「システムプロンプトの記述」を参照してください。

    • スキル (オプション) – エージェントスペースから、追加のドメインの知識や機能をエージェントに提供するスキルを選択します。検索フィールドを使用して、名前でスキルを検索します。

  5. [エージェントの作成] を選択します。

作成後、エージェントの詳細ページにリダイレクトされ、設定を表示したり、エージェントを実行したり、トリガーを設定したりできます。

Chat を使用したカスタムエージェントの作成

チャットは、カスタムエージェントを作成するためのガイド付きの会話型エクスペリエンスを提供します。この方法は、MCP ツールをエージェントに割り当てる場合、またはシステムプロンプトの記述を支援する場合に推奨されます。

Chat を使用してカスタムエージェントを作成するには:

  1. DevOps Agent ウェブアプリの Agents ページに移動します。

  2. 「カスタムエージェント」セクションで、「エージェントの作成」を選択します。

  3. ダイアログで、チャットを選択します。ダイアログが閉じ、チャットパネルに新しい会話が開き、事前設定されたメッセージが表示されます。

  4. チャットでは、コラボレーションプロセスについて説明します。

    • 目的を明確にする – エージェントの目的と範囲を確認します。

    • 重複チェック – エージェントスペースに同様のエージェントが既に存在しないことを確認します。

    • ツールとスキルの選択 – エージェントが必要とする MCP ツールとスキルを提案し、確認を求めます。

    • 出力タイプ – エージェントがテキストレスポンス、アーティファクト、またはレコメンデーションを生成するかどうかを決定します。

    • システムプロンプトの下書き – システムプロンプトを書き込み、レビューのために表示します。満足するまで反復できます。

    • 確認 – エージェントを作成する前に、名前を提案し、すべての設定を確認します。

チャットに直接質問することで、いつでもカスタムエージェントを作成することもできます。例えば、次のようになります。

Create an agent that generates a weekly report of all investigations from the past week.
Create a custom agent for checking certificate expiration across all accounts.
Make me an agent that audits DynamoDB table configurations daily.

リポジトリからのカスタムエージェントのインポート

カスタムエージェントのシステムプロンプトは、GitHub リポジトリの Markdown ファイルから直接インポートできます。ファイルの内容は、エージェントのシステムプロンプトになります。バージョン管理でエージェントプロンプトを管理し、1 つのアクションでインポートできます。

前提条件:

  • エージェントスペースに関連付けられた GitHub アカウント。GitHub アカウントを接続するには、「」を参照してくださいGitHub の接続。GitHub アカウント接続により、パブリックリポジトリからのインポートが可能になります。プライベートリポジトリの場合、関連付けられたアカウントにはリポジトリへの読み取りアクセス権が必要です。データレジデンシー接続を使用する GitHub Enterprise Server と GitHub Enterprise Cloud もサポートされています。

  • システムプロンプトを含む GitHub リポジトリ内の Markdown ファイル (.md)。

リポジトリからカスタムエージェントをインポートするには:

  1. DevOps Agent ウェブアプリの Agents ページに移動します。

  2. 「カスタムエージェント」セクションで、「エージェントの作成」を選択します。

  3. ダイアログで、インポートを選択します。ダイアログが GitHub からインポートビューに変わります。

  4. フォームに入力します。

    • 名前 – エージェントの一意の識別子。小文字、数字、ハイフンのみを使用してください (最大 64 文字)。先頭または末尾にハイフンを使用しないでください。

    • リポジトリ URL – エージェントのシステムプロンプトを含む単一の Markdown (.md) ファイルへのリンク。例: https://github.com/my-org/my-repo/blob/main/my-agent.md。データレジデンシーを持つ GitHub Enterprise Server または GitHub Enterprise Cloud の場合は、代わりにインスタンス URL を使用します。例: https://github.example.com/my-org/my-repo/blob/main/my-agent.md。URL が で終了しない場合.md、警告が表示されます。ファイルが Markdown でない場合、インポートは失敗します。

    • スキル (オプション) – エージェントスペースからスキルを選択して、追加のドメインの知識や機能をエージェントに提供します。

  5. エージェントをインポートを選択します。

リポジトリファイルはシステムプロンプトのみを提供します。名前とスキルは フォームから取得されます。

作成後、エージェントの詳細ページにリダイレクトされ、設定を表示したり、エージェントを実行したり、トリガーを設定したりできます。

インポートされたエージェントの表示:

インポートされたエージェントは、エージェントの詳細ページの名前の横にある GitHub から同期されたバッジと、最後に同期されたタイムスタンプ、および GitHub のソースファイルへのリンクを表示します。カスタムエージェントリストでは、インポートされたエージェントにはソースファイルへのリンクが含まれます。

インポートされたエージェントを編集すると、システムプロンプトに、ソースファイルにリンクされたヒントを含む読み取り専用ラベルが表示されます。名前とスキルは編集可能です。

インポートされたエージェントの同期:

リポジトリ内の Markdown ファイルを更新するときは、インポートされたエージェントの詳細ページを開き、同期を選択して最新のシステムプロンプトを取得します。

制約:

  • URL 形式 – データレジデンシーを持つ GitHub Enterprise Server や GitHub Enterprise Cloud など、GitHub URL のみが受け入れられURLs。接続された GitHub アカウントは URL ホストと一致する必要があります。たとえば、github.example.com接続は github.example.com URLs からのみインポートでき、github.comURLsからはインポートできません。

  • マークダウンファイルが必要 – URL は 1 つの.mdファイルを指す必要があります。

  • ファイルの最大サイズ – ファイルは 1 MB (GitHub API の制限) を超えることはできません。

  • GitHub アカウントが必要 – エージェントをインポートするには、エージェントスペースに関連付けられた GitHub アカウントが必要です。プライベートリポジトリの場合、アカウントには読み取りアクセス権が必要です。

コミュニティカスタムエージェント

AWS DevOps エージェントツールリポジトリには、ヘルスレポート、運用レビュー、サービスクォータモニタリングなどの定期的な運用タスク用の構築済みのカスタムエージェント設定が含まれています。リポジトリは AWS DevOps エージェントサービスチームによって管理され、すべてのコントリビューションは追加される前に同じセキュリティレビューバーを通過します。利用可能なものを参照するには、GitHub ウェブサイトのカスタムエージェントカタログを参照してください。

コミュニティカスタムエージェントを使用するには、 エージェントページのリポジトリからインポートフローを使用してリポジトリからインポートします。エージェントの Markdown ファイルの URL をコピーし、リポジトリ URL として貼り付けます。詳細については、「リポジトリからのカスタムエージェントのインポート」を参照してください。

システムプロンプトの記述

システムプロンプトは、カスタムエージェントの最も重要な部分です。エージェントの目的、アプローチ、制約、期待される出力を定義します。適切に記述されたプロンプトは、一貫した信頼性の高い結果を生成します。

これらのセクションを使用してシステムプロンプトを構造化します。

  • 目標 – エージェントが 1 文または短い段落で達成すべきこと。

  • アプローチ – エージェントが呼び出す特定のツール名と順序を参照しながら、エージェントが従うべきStep-by-stepの手順。

  • 制約 — エージェントがすべきこととすべきでないことの境界。例えば、読み取り専用アクセス、考慮する時間範囲、除外するサービスなどです。

  • 出力 – エージェントが生成する内容と形式。テキストを生成するか、アーティファクトを作成するか、レコメンデーションを作成するかを指定します。

システムプロンプトの例:

You are a DevOps reporting agent specializing in summarizing investigation activity. ## Goal Generate a concise weekly report of all investigations from the past 7 days. ## Approach 1. Call `list_investigations` to fetch investigations from the last 7 days. 2. For each investigation, retrieve its title, status, root cause, and resolution time. 3. Group investigations by status and root cause category. 4. Identify trends: services most affected, average resolution time, recurring root causes. ## Constraints - Only include investigations from the past 7 days. - Read-only access — do not modify, close, or reassign investigations. ## Output Produce a single artifact titled "Weekly Investigation Report" containing: - A table listing each investigation with title, status, and resolution time. - A chart showing investigation counts by root cause category. - A summary paragraph with key trends and recommendations.

効果的なシステムプロンプトのヒント:

  • ツールを具体的にする – エージェントが呼び出すツールを認識できるように、ツール名を直接参照します (例: list_investigationsuse_awsquery_cloudwatch_logs)。

  • 成功基準の定義 – エージェントがいつ成功したかを把握できるように、適切な出力がどのようになるかを記述します。

  • 境界を設定する – 意図しないアクションを防ぐためにエージェントがすべきではないことを明示的に記述します。

  • マークダウンフォーマットを使用する – ヘッダー、リスト、コードブロックを使用すると、エージェントがプロンプトを簡単に解析して従うことができます。

ツールの設定

MCP ツールは、カスタムエージェントが呼び出し中に実行できるアクションを決定します。エージェントスペースで使用できるフルセットからツールを選択します。これには、接続された AWS アカウント、オブザーバビリティプラットフォーム、CI/CD パイプライン、チケットシステム、カスタム MCP サーバーのツールが含まれます。

ツールは Chat を介してのみ設定できます。エージェントの作成時にツールを割り当てるには、チャット作成方法を使用します。既存のエージェントでツールを追加または変更するには、チャットにエージェントの更新を依頼します。例えば、次のようになります。

Add the query_cloudwatch_logs and use_aws tools to my weekly-health-report agent.
Update certificate-checker to also use the list_resources tool.
Remove the use_kubectl tool from cluster-audit-agent.

ツールを選択するときは、最小特権の原則に従います。エージェントがタスクを達成するために必要なツールのみを割り当てます。これにより、意図しないアクションのリスクが軽減され、エージェントに集中できます。

Release Manager ツール

カスタムエージェントは Release Manager ツールにアクセスできます。これらのツールを使用すると、エージェントは Release Manager タスクを作成、一覧表示、取得、キャンセルできます。エージェントは、リリース準備状況レビューレポートを分析して、検出結果と推奨されるアクションを表示することもできます。

Release Manager ツールを使用するには、チャットを通じてカスタムエージェントに割り当てます。例えば、次のようになります。

Add the release manager tools to my release-pipeline-agent.

リリース管理機能の詳細については、「」を参照してくださいリリース管理

スキルの設定

スキルは、カスタムエージェントに追加のドメイン知識、調査手順、または特殊な機能を提供します。カスタムエージェントが実行されると、割り当てられたスキルをロードし、呼び出し中に指示を参照できます。

作成時に (フォームまたはチャットを使用して) スキルを割り当てることも、エージェントを編集して後で追加することもできます。カスタムエージェントに割り当てられたスキルは、エージェントスペースに既に存在している必要があります。スキルの作成の詳細については、「」を参照してくださいDevOps エージェントスキル

カスタムエージェントには、スキルの割り当てを必要としないアーティファクトとレコメンデーションを作成するための機能が組み込まれています。詳細については、「カスタムエージェント出力」を参照してください。

カスタムエージェントごとに最大 200 のスキルを割り当てることができます。コンテキストの消費を減らし、エージェントの集中力を向上させるために、エージェントの目的に関連するスキルを選択します。