
【アップデート】DevOps Agentでカスタムエージェントが作成できるようになりました
リテールアプリ共創部@大阪の岩田です。
6/12付のアップデートにてDevOps Agentでカスタムエージェントが作れるようになりました。
先日DevOps AgentにSREレポートを定期生成させるブログを書いていたのですが、まさにこういったユースケースに、DevOps Agentのマネージドな機能だけで対応できるようになりました!
カスタムエージェントとは?
カスタムエージェントはDevOps Agentの組み込みエージェントとは異なり、ユーザー側でシステムプロンプト等を自由に定義できるエージェントです。システムプロンプトに加えて利用可能なツールとスキルも細かく制御でき、自身のユースケースに最適化した専用のエージェントを自由に構築可能です。
現時点ではカスタムエージェントを実行する方法は手動もしくはスケジュール実行の2パターンのみサポートされています。逆に言うとインシデント調査中にインシデントトリアージ用のエージェントがカスタムエージェントを呼び出すといったことはありません。
カスタムエージェントが生成可能なアウトプットは以下の3つです。
- テキスト応答
- アーティファクト
- 推奨事項
スケジュール実行が可能で、かつアーティファクトが生成できるということで、週次や月次でSREレポートを生成させるような用途に見事にマッチしますね!
カスタムエージェントの詳細については以下公式ドキュメントを参照してください。
Custom Agents - AWS DevOps Agent
やってみる
それではさっそくカスタムエージェントを自作して実行してみましょう。
カスタムエージェントの作成
まずウェブアプリのUIから「エージェント」→「エージェントの作成」へ進みます。

カスタムエージェントの作成には2つの方法があり、フォームから各項目を入力する方法とAIとチャットしながらAIに作成をお願いする方法があります。今回はフォームから直接入力して作成していきます。

入力画面が開いたら名前とシステムプロンプトを入力し、利用を許可するスキルを設定します。利用を許可するツールはフォームからは設定できず、チャットを通して設定する必要があるので注意してください。

最終的なカスタムエージェントの定義は以下のようになりました。

今回設定したシステムプロンプトは以下の通りです。テスト目的なので、シンプルにスキルを呼び出すだけの指示としています。
あなたはSREエンジニアです。
ユーザーからの依頼に応じて適切な情報を収集し、`create-system-health-and-metrics-reports` スキルを呼び出してレポートを生成してください。
プロンプトで指定しているスキルcreate-system-health-and-metrics-reportsの中身は以下の通りです。
---
name: create-system-health-and-metrics-reports
description: 各種メトリクス、システムの健全性に関するレポートを作成するために利用するスキル
---
## 概要
- 指定された日付範囲と過去の各種メトリクスを比較し、システムの健全性を評価する
- 例えば1週間前の範囲が指定された場合、2週間前のメトリクスと比較する
- 例えば1か月前の範囲が指定された場合、2か月前のメトリクスと比較する
- 特に年月の指定が無い場合は本日の日付を取得し、その前月1ヶ月と前々月のメトリクスを比較する
- 対象はバージニアリージョン(us-east-1)のみを対象とする
### 調査手順
## Step1 CloudWatchから比較対象のメトリクスを取得する
- Lambdaの各種メトリクス(名前空間 AWS/Lambda)
- 期間内におけるErrorsの合計値
- 期間内におけるInvocationsの合計値
- 期間内におけるDurationの平均値
- Step Functionsの各種メトリクス(名前空間 AWS/States)
- 期間内におけるExecutionsFailedの合計値
## Step2 取得したメトリクスをもとにシステムの健全性を評価する
- エラーは増えていないか?
- レスポンスタイムは悪化していないか?
- コンピューティングリソースに不足はないか?
- 比較対象期間よりサービスレベルが悪化していないか?
- 今後サービスレベルが悪化するリスクはないか?
### Step3 評価結果をもとにアーティファクトを作成する
- 比較対象との差異が分かるような表およびグラフを作成する
なお、ツールuse_awsの利用許可についてはカスタムエージェント作成後にチャットから設定しています。
※後からテストしたところ結局use_awsツールの許可無しでも今回のカスタムエージェントは動作したので、ツールの許可は空のままでも問題無いです。
実行してみる
カスタムエージェントが作成できたので、トリガーを設定します。
カスタムエージェントの定義の「トリガー」タブから「トリガーの作成」ボタンをクリックします。

トリガーの作成フォームが開くので、rateまたはcron形式でスケジュールを指定します。

「作成」をクリック後、「トリガーが作成されました。」と表示されれば作成完了です。

このまま放っておけばスケジュールに従ってカスタムエージェントがトリガーされるはずですが、さっさと動作確認したいので、今回は「今すぐ実行」ボタンから手動でトリガーしてみました。

トリガーが完了すると上記のように履歴が確認できるようになります。詳細を確認すると無事にアーティファクトが生成されていることが分かります。

アーティファクトの一覧にも反映されていました。

ちなみに前回のブログでLambdaからアーティファクトを作成した際はLambda実行ロールで生成したアーティファクトがチャットに紐づいたため、他のIAMプリンシパルでウェブアプリにアクセスするとアーティファクトが一覧表示されないという課題がありました。IDを調べてURLを直接入力すれば見られはするものの、画面操作としては不便ですよね?今回のカスタムエージェントでアーティファクトを生成させるアプローチでは、別のIAMプリンシパルからも同一のレポートが確認できており、チームメンバー間でレポートを共有するようなユースケースでも便利に使っていけそうです。
こちらは別のIAMロールから確認した際の画面キャプチャです。

先ほどと異なり「システム健全性レポート:2026年4月19日〜25日 vs 前週比較」は表示されていませんが、「SREレポート — DevIO Blog Auto Review System (2026-06-12)」は表示されていることが分かります。
補足など
実際は最初からスムーズに実行できたわけではなく、少し試行錯誤が必要でした。個人的なハマリポイントなどを紹介します。
スキル定義側でカスタムエージェントからの利用を許可しておらずハマる
今回作成したカスタムエージェントはスキルを1つ呼び出すだけのシンプルな作りにしたのですが、呼び出されるスキル側の指定でエージェントタイプが「チャットタスク」になっていたため、うまくスキルが読み込めていませんでした。

カスタムエージェント作成時の入力フォームでスキルを指定する際は、そこまで詳細にバリデーションしてくれないので注意してみましょう。この問題についてはスキルの定義を以下のように修正して解決しています。

今のところカスタムエージェントからの利用のみ許可するような設定が無いようだったので、エージェントタイプに「すべてのタスク」を指定することで対応しています。
チャットからツールの許可を追加してみた
前述の通りスキル側でカスタムエージェントからの利用を許可していなかったため、最初はスキルがうまく呼び出せませんでした。エラーの原因についてエージェントにチャットで質問する過程でuse_awsの許可が必要と言われたので、チャットからuse_awsの許可追加を依頼してみました。

その後色々原因を切りわけてテストした結果、原因はスキル側の利用許可だったのでuse_awsツールの利用許可は不要だったと分かったのですが、せっかくなのでツールの利用許可をメンテナンスする手順として紹介しておきます。
まとめ
スケジュールに沿った定期実行もしくは手動実行についてはユーザー側で定義したカスタムエージェントが利用できるようになりました!これで定期的な繰り返し作業や定型的なスポット作業についてもAIに任せやすくなりました。
どんどん便利に使って行きましょう!






