Upgrade to Pro — share decks privately, control downloads, hide ads and more …

障害調査用のAIエージェントに指示の記憶機能を追加してみた / Teaching Our In...

Sponsored · SiteGround - Reliable hosting with speed, security, and support you can count on. →

障害調査用のAIエージェントに指示の記憶機能を追加してみた / Teaching Our Incident Investigation AI Agent to Remember: Self-Service Runbooks and Memory

AWS アカウントが 100 を超える環境では、障害調査のたびにプロファイルの指定やアカウント番号の変換が必要になります。私たちはこの負担を減らすため、アラートの一次調査を行う AI エージェントを内製してきました。

しかし、指示した内容を Wiki に書かないと次回の調査に活かされず、SKILL の修正にも PR、マージ、デプロイが必要でした。さまざまなサービスに展開するには、セルフサービス化が課題でした。

この発表では、エージェントに指示の記憶機能を追加した取り組みをお話しします。

- Slack チャネル、通知、AWS アカウント、サービス、関連リソース、Runbook を結ぶ、JSON によるグラフ風の構造
- DynamoDB、S3 Vectors、S3 を使った Runbook の管理と検索
- 自動で記憶を提案する機能と手動での記憶
- 定期ジョブによる、使われていない記憶の削除、事例の抽象化、システムプロンプト修正の PR 提案
- 開発で苦労した点: 自走させたコーディングエージェントによる要件の削ぎ落としと、単体テストの肥大化、およびそれらへの対応策

---

In an environment with over 100 AWS accounts, every incident investigation means specifying profiles and translating account IDs. To reduce that burden, we have been building an in-house AI agent that handles first-pass alert investigation.

But instructions given to the agent weren't used in the next investigation unless someone wrote them in the wiki, and changing a SKILL required a pull request, merge, and deployment. To roll the agent out to many services, we needed to make it self-service.

This talk covers how we added instruction memory to the agent:

- A graph-like structure in JSON linking Slack channels, notifications, AWS accounts, services, related resources, and runbooks
- Runbook management and search with DynamoDB, S3 Vectors, and S3
- Memory saved manually, or suggested automatically by the agent
- Scheduled jobs that remove unused memories, generalize service-specific cases, and propose system prompt changes as pull requests
- Lessons learned: coding agents running autonomously stripped out requirements, unit tests ballooned, and how we dealt with both

Avatar for Takashi Yamaguchi

Takashi Yamaguchi

November 09, 2026

More Decks by Takashi Yamaguchi

Other Decks in Technology

Transcript

  1. ⾃⼰紹介 ⽒名:⼭⼝隆史(やまぐちたかし) 所属:株式会社エス・エム・エス プロダクト推進本部 技術推進グループ 業務:全社SREとしての活動 略歴:フリーランス、SIer、Web系を渡り歩く→現職(2024/05〜) ⾃称:Security Hub芸⼈ 通称:千葉⽀部公式AWS

    BuilderCards審判員 好きなAWSサービス:営業、Security Hub、GuardDuty 他:AWS Community Builder(Security & Identity)、JAWS-UG千葉⽀部運営 Snyk Ambassador、SRE NEXTコアスタッフ 第022587号 © SMS Co., Ltd. 2
  2. 会社概要 基礎情報 業績 会社名 株式会社エス・エム・エス(英語表記)SMS Co., Ltd. 社会課題の解決につながる事業を 創造・拡大し、継続的に成長 設立

    2003年 4月4日 市場情報 東京証券取引所プライム市場(証券コード:2175) 資本金 25億5,172万円(2026年3月31日時点) 従業員数 連結:4,660人、単体:3,214人(2026年3月31日時点) 関連会社 国内:4社、海外:アジア・オセアニア等16の国と地域 ミッション 「高齢社会に適した情報インフラを構築することで人々の 売上推移 *1 (売上高・億円) 生活の質を向上し、社会に貢献し続ける」 高齢社会に求められる領域を、医療・介護/障害福祉・ヘルスケア ・シニアライフと捉え、価値提供先であるエンドユーザ・従事者・事 業者をつなぐプラットフォームとしての情報インフラを構築し、40以 上のサービスを展開 *1:第7期迄は単体数値、第8期より連結数値にて記載 © SMS Co., Ltd. 4
  3. サービス一覧(一部抜粋) 分野 キャリア 区分 人材紹介サー ビス DR・その他 介護・障害福祉 経営支援 サービス

    介護職向け人材紹介 看護師向け 人材紹介 保育士向け 人材紹介 放射線技師向け 人材紹介 臨床検査技師向け 人材紹介 臨床工学技士向け 人材紹介 職種横断ダイレクト 看護師・看護学生向け リクルーティング コミュニティ 管理栄養士・栄養士向け 人材紹介 看護学生向け 就職情報 介護で悩む人向け コミュニティ 医療従事者向け医薬情報 © SMS Co., Ltd. 看護師の職場を 診断するツール 介護で働く人の ためのスクール 介護・医療・福祉の 管理栄養士・栄養士 治療家を目指す人のため 資格講座情報 向けコミュニティ の総合メディア 企業の健康管理 業務サポート 障害のある方向け 人材紹介 障害のある方向け 就労支援事業所情報 高齢者向け 住宅紹介 リフォーム会社 紹介 建設・不動産 業界向け人材紹介 ヘルスケア 海外 治療家*1・セラピスト向け 人材紹介 ケアマネジャー・相談員 ・障がい福祉の人材紹介 高齢社会の 障害福祉事業者向け 介護事業の 介護/障害福祉 業務支援 事業者向け経営支援 経営者・管理者向け情報 調査・研究・情報発信 遠隔指導重症化 遠隔指導特定保健指導 予防サービス サービス シニアライフ PT/OT/ST向け 人材紹介 高齢者向け 食事宅配紹介 医療従事者向け人材紹介 (マレーシア、フィリピン、アイルランド、UK、ドイツ等) 産業保健に 医療介護業界特化型 関わる人向け情報 ストレスチェック 葬儀社紹介 認知症予防 ソリューション 認知症患者とその家族 向け認知症情報 看護師向け キャリアサービス *1.柔道整復師、あん摩マッサージ師、はり師、きゅう師のこと 5
  4. プロファイルを指定しないとログインできない • 前提 ◦ コーディングエージェントは、端末のローカル認証で動く ◦ マルチアカウントだとアカウント毎にSSOプロファイルを⽤意 してloginコマンドを実⾏する必要がある ▪ aws

    sso login --profile XXX • つらみ ◦ エージェントに --profile XXX を使ってと指⽰する必要あり ◦ 通知はアカウント番号、プロファイルはプロファイル名、なの で毎回変換が発⽣する © SMS Co., Ltd. 9
  5. CloudWatch Alarm リンクがマルチアカウントで機能しない • 前提 ◦ SNS ペイロードにはアカウントID(`AWSAccountId`)が ⼊っているのに、Slack に出るリンクは

    region だけで アカウントIDを含まない • つらみ ◦ マルチセッション有効だとどうやっても開かない ◦ 単⼀セッションだと今ログイン中の別アカウントで開く可能 性がある © SMS Co., Ltd. 10
  6. 環境の前提 • AlertはSlackチャネルに通知される • Alertの送信元はCloudWatch、Sentry、Datadog等がある • 通知チャネルは1サービスで1チャネルの場合と、複数サービス で1チャネルの場合がある • 1サービスの場合も、DEV、STG、PRDと複数環境を1チャネル

    に通知している場合がある • CloudWatch Alarmを集約して管理している場合がある ◦ この場合、通知されるAWSアカウントが集約アカウントの AWSアカウント番号になる © SMS Co., Ltd. 13
  7. 相談する段階で出来ていたこと • Alert系を⼀次調査する内製AIエージェントは既にある • 調査⽤のRunbookは社内のWikiに存在していて、それを取り込 むコマンドを打ち込むとAIエージェントに取り込まれる • GitHubリポジトリで管理しているSKILLを修正することで全体 的な動きの修正ができる •

    AIエージェントができること ◦ Slackチャネル、通知内容からAWSアカウントが類推できる場 合はRunbookのマッピングが可能 ◦ Slack投稿で⾃動調査と、スタンプで調査開始することができ る © SMS Co., Ltd. 14