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
Kiro Hookを Terraformで検証
Search
ao-inoue
July 23, 2025
Technology
0
110
Kiro Hookを Terraformで検証
ao-inoue
July 23, 2025
Tweet
Share
Other Decks in Technology
See All in Technology
AI駆動開発 with MixLeap Study【大阪支部 #3】
lycorptech_jp
PRO
0
210
経験がないことを言い訳にしない、 AI時代の他領域への染み出し方
parayama0625
0
170
Railsの限界を超えろ!「家族アルバム みてね」の画像・動画の大規模アップロードを支えるアーキテクチャの変遷
ojima_h
3
440
AI工学特論: MLOps・継続的評価
asei
10
1.7k
DATA+AI SummitとSnowflake Summit: ユーザから見た共通点と相違点 / DATA+AI Summit and Snowflake Summit
nttcom
0
220
20250718_ITSurf_“Bet AI”を支える文化とコストマネジメント
helosshi
1
210
RapidPen: AIエージェントによる高度なペネトレーションテスト自動化の研究開発
laysakura
1
390
分散トレーシングによる コネクティッドカーのデータ処理見える化の試み
thatsdone
0
240
Amazon CloudWatchのメトリクスインターバルについて / Metrics interval matters
ymotongpoo
3
220
AI エンジニアの立場からみた、AI コーディング時代の開発の品質向上の取り組みと妄想
soh9834
7
400
Shadow DOM & Security - Exploring the boundary between light and shadow
masatokinugawa
0
670
ecspressoの設計思想に至る道 / sekkeinight2025
fujiwara3
11
1.7k
Featured
See All Featured
Side Projects
sachag
455
43k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
21
1.3k
Building Adaptive Systems
keathley
43
2.7k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
35
2.5k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
47
9.6k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
109
19k
Statistics for Hackers
jakevdp
799
220k
The Straight Up "How To Draw Better" Workshop
denniskardys
235
140k
How to Ace a Technical Interview
jacobian
278
23k
Transcript
Kiro Hookを Terraformで検証 OisixのSREチームとの交流会 お野菜を添えて 井上 碧
自己紹介 氏名: 井上 碧(いのうえ あおい) 経歴: - 2018-2021: SIer -
2021-2024: SRE - 2024-現在: SIer 趣味: - 将棋 - ランニング
目次 • Kiro概要 • 検証 • まとめ
Kiro概要
Kiro • AWSが開発したAI エージェントが備わったIDE • 仕様駆動開発(spec-driven software development)が特徴 • Claude
Sonnet 4.0搭載* • アイコンが可愛い https://kiro.dev/blog/introducing-kiro/ *2025/7/24時点
Kiroの機能には、SpecとHookがある • Spec: 要件→設計→タスク分解の仕様駆動開発 • Hook: ファイル保存等のイベントでAIが自動実行 ← 今日はこっち
Hook ファイル保存などのイベントをトリガーにタスクを自動実行 自然言語で記載 してAIが文脈を理解して判断、実態はJSON 例えば、.tfファイル保存 → AIエージェントが自動で次の手順を実行する • セキュリティ問題をチェック •
ドキュメントを自動更新 従来ツールとの違い • git hooks: 決まったコマンドを実行 • Claude Code hooks: JSON形式で記載し決まったコマンドを実行
検証
ディレクトリ構成 kiro-sample/ ├── main.tf ├── variables.tf ├── outputs.tf └── terraform.tfvars.example
検証内容 1: セキュリティチェック 2: ドキュメント更新
検証①: セキュリティチェック Hookの設定内容は次のとおり tfファイル保存時に以下をチェックしてください • 0.0.0.0/0のセキュリティグループ開放 • ハードコードされた秘密情報 • S3バケットのpublic設定
• 過度なIAM権限 問題があれば具体的な修正案を提示してください
実行例
.kiroファイルが作られる kiro-sample/ ├── main.tf ├── variables.tf ├── outputs.tf ├── terraform.tfvars.example
└──.kiro └── hooks └── terraform-security-check.kiro.hook # これ
terraform-security-check.kiro.hookの中身 { "name": "Terraform Security Check", "description": ".tfファイル保存時にセキュリティ問題をチェックし、修正案を提示", "trigger": {
"type": "file_save", "filePattern": "**/*.tf" }, "action": { "type": "agent_execution", "request": "保存された.tfファイルのセキュリティをチェックしてください。以下の項目を確認し、..<省略 >", # コマンドなどは書かれていない "includeFiles": [ "{{triggerFile}}" ] } }
テストコード - セキュリティチェック main.tfにある、ingressの設定を次のように書き換える resource "aws_security_group" "demo" { name_prefix =
"${var.project_name}-${var.environment}-" description = "Demo security group for Kiro testing" ingress { from_port = 22 to_port = 22 protocol = "tcp" cidr_blocks = ["0.0.0.0/0"] # これを検出できるか? } ..<省略>.. }
結果: 成功 - セキュリティチェック 危険な設定を 追加すると自動で Chatが立ち上がる
検証②: ドキュメント更新 Hookの設定内容は次のとおり • main.tfが変更されたら、以下を自動更新 • README.mdのリソース一覧 • 新しいリソースの用途説明 •
アーキテクチャの変更点 • 運用時の注意事項
テストコード - ドキュメント更新 main.tfに以下のコードを追加 # これを検出できるか? resource "aws_db_instance" "main" {
identifier = "my-database" engine = "mysql" engine_version = "8.0" instance_class = "db.t3.micro" }
結果: 成功 - ドキュメント更新 README.mdを 更新してくれる
結果のおさらい 検証1: セキュリティチェック • 結果: 成功 → 0.0.0.0/0の危険な設定を検出・警告 検証2: ドキュメント更新
• 結果: 成功 → RDS追加時にREADME.mdを自動更新
まとめ
結論 良かったところ • 自然言語で書けるので簡単 • CIの手前で変更ミスなどが気付ける • README.md更新忘れを防げる 微妙だったところ •
PreviewなのでHook動作したりしなかったり不安定