Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Strands Agents × AWS DevOps Agent 〜自作エージェントに組み込...
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
ryu-ki
June 19, 2026
94
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Strands Agents × AWS DevOps Agent 〜自作エージェントに組み込んでみた〜
ryu-ki
June 19, 2026
More Decks by ryu-ki
See All by ryu-ki
北海道の地名をAIは読めるのか
ryuki0947
1
170
AgentCore Harness × AgentCore Browser × Live View
ryuki0947
1
130
VPCとも向き合いたい2026(年度)
ryuki0947
0
340
AI-DLCを試してみて困ったことを共有したい
ryuki0947
0
510
Claude Codeに要件をヒアリングしてもらった体験がかなり良かった(2026年版)
ryuki0947
0
520
Qiita 週1投稿を1年間完走した感想
ryuki0947
0
66
AWS × LINE で始める FinOps ~Terraform を添えて~
ryuki0947
0
170
A2A のトレース事情 〜親子エージェントの動きをLangfuseで可視化してみる〜
ryuki0947
1
650
A2A においてエージェント同士はどのようにやりとりしているのか
ryuki0947
0
410
Featured
See All Featured
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
870
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Mobile First: as difficult as doing things right
swwweet
225
10k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
3k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
202
76k
Why Our Code Smells
bkeepers
PRO
340
58k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
35
2.8k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
470
Leo the Paperboy
mayatellez
8
2.2k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
11k
Transcript
2026/06/19(金) 品川会 #6 Strands Agents × AWS DevOps Agent 〜自作エージェントに組み込んでみた〜
やりたかったこと 2
やりたかったこと DevOps Agent は Web アプリから操作するのが基本 自分のエージェントから呼び出せたら面白いのでは? チャットで環境の状況を聞く – インシデント調査を起票する
– 調査結果を取得する – プレビュー時点では boto3 API が使えなかったが... GA のタイミングで使えるようになった – Strands Agents のカスタムツールとして組み込んでみた – 3
今回作ったもの 4
ツールと構成 3つのツールを作成 ツール 何をする? devops_agent_chat DevOps Agent とチャットする devops_agent_investigate 調査タスクを起票する
devops_agent_get_result 調査結果を取得する Strands Agent ├── devops_agent_chat ← 「このアラーム何が起きてる?」 ├── devops_agent_investigate ← 「調査タスクを起票して」 └── devops_agent_get_result ← 「調査結果を教えて」 5
boto3 での呼び出し方 6
サービス名は devops-agent import boto3 client = boto3.client("devops-agent", region_name="us-east-1") botocore 1.42.79
(GA)以降で利用可能 それ以前だと UnknownServiceError になります – 7
ツール 1:チャット 8
チャットの流れ 1. CreateChat でセッションを作成 2. SendMessage でメッセージを送信 3. EventStream から応答を抽出
9
EventStream のパース type 内容 text ストリーミングテキスト context_usage コンテキスト使用量 final_response 最終応答(これを使う)
chat_title 自動タイトル レスポンスのキーは "events" ブロックの type は以下の 4 種類 10
チャットの実装 @tool def devops_agent_chat(message: str) -> str: chat = devops_client.create_chat(
agentSpaceId=AGENT_SPACE_ID, userType="IAM", ) send_resp = devops_client.send_message( agentSpaceId=AGENT_SPACE_ID, executionId=chat["executionId"], content=message, ) # final_response ブロックだけ抽出 ... 11
ツール 2:調査起票 12
調査起票の実装 @tool def devops_agent_investigate( title: str, description: str, priority: str
= "HIGH" ) -> str: resp = devops_client.create_backlog_task( agentSpaceId=AGENT_SPACE_ID, title=title, description=description, priority=priority, taskType="INVESTIGATION", ) return json.dumps({"taskId": resp["task"]["taskId"], ...}) 起票すると DevOps Agent がバックグラウンドで自律的に調査 13
ツール 3:結果取得 14
結果取得の流れ 1. GetBacklogTask でステータスを確認 2. COMPLETED なら ListJournalRecords で調査ジャーナルを取得 (ステータスは以下のように推移)
3. ジャーナルから最終回答を抽出 PENDING_TRIAGE → PENDING_START → IN_PROGRESS → COMPLETED 抽出のポイント recordType: "message" かつ role: "assistant" が対象 – その中の type: "text" ブロックの最後が最終回答 – 15
デモ 16
チャットの動作 17
Langfuse でトレースを確認 18
調査起票の動作 19
DevOps Agent Web アプリで確認 20
調査結果の取得 21
設計判断 22
起票と結果取得を分離した理由 方式 用途 ポーリング ツール内で結果を待って返したい場合 EventBridge Slack 等への完了通知 分離(今回) エージェントに判断を委ねる
調査完了まで数分〜十数分かかる ポーリングでブロックするのは現実的ではない エージェント自身が「起票→待ち→結果確認」を判断できる 23
まとめ 24
まとめ といったことを Claude Code が調査してくれて楽に実装できたが... こういった試行錯誤が楽しかった時期もあったなぁとしみじみしました DevOps Agent を boto3
経由で Strands のツールとして組み込んだ チャット・調査起票・結果取得の 3 つのツールを実装 EventStream のパースが少し複雑 キーは "events" 、取得すべきは final_response のみ – 起票と結果取得の分離がポイント 25
ご清聴ありがとうございました 26