Infracost Agent SkillでTerraform管理リソースのクラウドコスト最適化をAIエージェントに任せてみた
はじめに
Terraformのコストを見積もるとき、リソースごとの単価調査やFinOpsポリシーの確認は手間がかかります。
Infracost は、TerraformなどのIaCコードからクラウドコストを見積もるツールです。そのInfracostが Agent Skill を公開しており、Claude Codeなどを含むAIコーディングエージェントと統合できます。
今回はInfracost Agent SkillをClaude Codeにインストールし、各スキルを実際に試してみました。
Infracost Agent Skillとは
Infracost Agent Skillは、AIコーディングエージェントからリアルタイムの価格データや組織のFinOpsポリシーを参照できるようにするプラグインです。
GitHubリポジトリ: infracost/agent-skills
利用可能なスキルは以下の通りです。
| スキル | 説明 |
|---|---|
scan |
IaCプロジェクトのコスト見積もり、節約機会の特定、FinOpsポリシー違反の検出 |
iac-generation |
コスト最適化とFinOps/タグポリシーに準拠したIaCコードの生成 |
price-lookup |
既存のIaCコードがなくてもクラウドリソースの価格を調査 |
install |
Infracost CLIのインストール・更新 |
uninstall |
Infracost CLIのアンインストール |
install-lsp |
Infracost Language Serverのインストール・更新 |
Terraform、Terragrunt、CloudFormationに対応しており、AWS・GCP・Azureをサポートしています。
FinOpsポリシーについて
Agent Skillの scan や iac-generation スキルが参照する「FinOpsポリシー」は、Infracost Cloud(SaaSダッシュボード)の機能です。組織のクラウドコストに関するルールを定義し、IaCコードの変更時に自動でチェックできます。
詳細は公式ドキュメントを参照してください。
セットアップ
1. Infracostアカウントの作成
Agent Skillの利用にはInfracostアカウントが必要です。dashboard.infracost.io から無料でサインアップできます(クレジットカード不要)。
2. Claude Codeへのプラグインインストール
Claude Codeのマーケットプレイスからインストールします。
/plugin marketplace add infracost/agent-skills
/plugin install infracost@infracost
インストール後にClaude Codeを再起動すると、/infracost:<スキル名> の形式でスキルが利用できるようになります。
3. CLIのインストールと認証
Agent Skillは内部で infracost-preview という専用CLIを使用します。未インストールの場合、スキル実行時に自動でインストールを提案してくれます。
実際に試したところ、/infracost:install スキルがGitHubリリースから infracost-preview をダウンロードし、/usr/local/bin への配置を試みました。sudo が必要な場合は手動での実行を求められるか、~/.local/bin へのインストールを提案してくれます。
インストール後、以下のコマンドで認証します。
infracost-preview login
なお、今回の検証時点(v0.0.10)では infracost-preview のパーサープラグインダウンロードで403エラーが発生し、スキャンを実行できませんでした。そのため、Homebrewでインストール可能な従来版の infracost CLI(v0.10.43)にフォールバックして検証を進めました。Agent Skillは内部的に従来版CLIも活用できるため、動作自体に問題はありませんでした。
brew install infracost
infracost login
各スキルを試してみた
各スキルは内部的に infracost breakdown コマンドを活用しています。これはIaCコードを解析し、定義されたクラウドリソースの月額料金を見積もるInfracost CLIのメインコマンドです。
スキルごとの使い方は以下の通りです。
- scan: 対象のTerraformディレクトリに対して直接
infracost breakdownを実行 - price-lookup / iac-generation:
/tmpにTerraformコードを自動生成してからinfracost breakdownを実行し、価格を確認
ユーザーがこのコマンドを意識する必要はなく、スキルが自動でハンドリングしてくれます。
scan スキル:既存TerraformコードのコストとポリシーをAIが分析
scan スキルは、既存のIaCプロジェクトを分析し、コスト見積もり・節約機会・FinOpsポリシー違反を報告します。
以下のようなプロンプトで実行できます。
/infracost:scan
このTerraformプロジェクトのコストを分析して、改善点を教えてください。
今回はEC2(m5.xlarge)、RDS(db.r5.xlarge + gp2)、NAT Gateway、S3を含むTerraformプロジェクトに対して実行しました。
スキルの内部動作としては、infracost breakdown コマンドでIaCファイルを解析し、結果をわかりやすく整形して提示してくれます。
実際の出力では、まずコストのサマリーとリソース別内訳がテーブル形式で表示されました。
💰 コスト分析レポート
月額合計: $554.51/月(年間約 $6,654)
📊 リソース別コスト内訳
| リソース | 月額コスト | 全体比率 |
|-------------------------------------|-------------------|----------|
| aws_db_instance.main (db.r5.xlarge) | $376.50 | 67.9% |
| aws_instance.web (m5.xlarge) | $145.16 | 26.2% |
| aws_nat_gateway.main | $32.85 + 従量課金 | 5.9% |
| aws_s3_bucket.logs | 従量課金のみ | - |
続いて、具体的な改善アクションが提示されました。
🔧 コスト最適化の推奨アクション
1. GP2 → GP3 に変更 — 即効性あり 🎯
EC2・RDS両方でgp2を使用。gp3はgp2より20%安く、ベースラインIOPSも高い。
合計節約: 約 $4.50/月
2. Graviton インスタンスに移行 — 最大のコスト削減 💪
m5.xlarge → m7g.xlarge、db.r5.xlarge → db.r7g.xlarge で約20%安価。
合計節約: 約 $101/月($1,212/年)
✅ すべて実施した場合、月額 $554 → 約 $300 に削減可能(最大45%の節約)
変更内容と節約額に加え、「GP2→GP3は設定値変更のみ」「Graviton移行はAMI互換性の確認が必要」といった難易度の情報も出るので、どこから手をつけるか判断しやすいです。
price-lookup スキル:既存コードなしで価格を即調査
price-lookup スキルは、既存のIaCコードがなくても特定リソースの価格を調査できます。
/infracost:price-lookup
RDS PostgreSQL db.r5.xlarge を us-east-1 で使うとどのくらいかかりますか?
スキルが内部でTerraformコードを自動生成し、infracost breakdown で実行するため、ユーザー側でコードを書く必要はありません。
実際に試したところ、Single-AZとMulti-AZの両方の価格を比較して提示してくれました。
💰 RDS PostgreSQL db.r5.xlarge — us-east-1 料金
Single-AZ
| コンポーネント | 月額 |
|--------------------------|---------|
| インスタンス(オンデマンド) | $365.00 |
| ストレージ(100GB gp2) | $11.50 |
| 合計 | $376.50 |
Multi-AZ
| コンポーネント | 月額 |
|--------------------------|---------|
| インスタンス(オンデマンド) | $730.00 |
| ストレージ(100GB gp2) | $23.00 |
| 合計 | $753.00 |
さらに、コスト削減のヒントも自動的に付与されます。
💡 コスト削減のヒント
- Graviton移行: db.r7g.xlarge にすると約20%安くなり、~$292/月(約$73/月の節約)
- GP2 → GP3: ストレージをgp3に変更すると $11.50 → $8.00/月
- リザーブドインスタンス: 1年全前払いで約30〜40%削減
問い合わせた価格だけでなく代替案と節約額も提示されるので、構成を検討するときに便利です。インスタンスタイプやリージョンの比較も自然言語で依頼できます。
iac-generation スキル:コスト最適化されたIaCコードを生成
iac-generation スキルは、IaCコードを書く前にコスト・ポリシーを考慮した設計を行うためのスキルです。
このスキルの特徴は、コード生成前に自動で組織のFinOpsポリシーを確認しようとする点です。内部では infracost-preview policies コマンドでポリシー取得を試みます。
/infracost:iac-generation
payments サービス用の RDS PostgreSQL インスタンスを us-east-1 に作成してください。
必須タグ: team=payments, env=prod, cost-center=platform
予算: $500/月
実際に試したところ、ポリシー取得はプラグインの問題で失敗しましたが、スキルはユーザーが指定した予算とタグ要件に基づいて設計を進めてくれました。動作フローは以下の通りです。
- ポリシー確認を試みる(今回は失敗→ユーザー指定の要件で代替)
infracost breakdownでインスタンスタイプごとの価格を確認- 予算内に収まる構成を選定してコードを生成
- 生成後に再度
infracost breakdownで最終コスト検証
具体的には、まずdb.r7g.xlarge(Graviton)+ gp3の組み合わせでSingle-AZ($360.44/月)とMulti-AZ($720.88/月)の価格を比較し、予算$500/月に収まるSingle-AZを選定していました。
生成されたTerraformコードには、コスト面での判断根拠がコメントで記載されます。
resource "aws_db_instance" "payments" {
identifier = "payments-prod"
engine = "postgres"
engine_version = "16"
instance_class = "db.r7g.xlarge" # Graviton: ~$349/mo (vs r5.xlarge $365/mo)
allocated_storage = 100
storage_type = "gp3" # gp3: ~$11.50/mo (same as gp2, but higher baseline IOPS)
multi_az = false # Multi-AZ would exceed $500/mo budget
skip_final_snapshot = true
backup_retention_period = 7
storage_encrypted = true
tags = {
Name = "payments-prod"
team = "payments"
env = "prod"
cost-center = "platform"
}
}
予算に対する残余($139.56)やMulti-AZが予算を超過する旨も説明してくれるので、構成の取捨選択がしやすいです。加えて、暗号化やバックアップ保持期間といったベストプラクティスも自動で付与されました。
まとめ
Infracost Agent SkillをClaude Codeで試してみました。
各スキルの特徴をまとめると以下の通りです。
| スキル | 向いているシーン |
|---|---|
scan |
既存プロジェクトのコスト棚卸し・ポリシー準拠チェック |
price-lookup |
構成検討前の価格調査・インスタンスタイプ比較 |
iac-generation |
新規インフラ構築時のコスト最適化・ポリシー準拠 |
特に iac-generation スキルは、予算制約を考慮しながらGravitonやgp3を自動で選定し、判断根拠をコメントとして残してくれるのが便利です。
今回の検証時点(v0.0.10)では infracost-preview のパーサープラグインダウンロードで403エラーが発生し、一部のスキル内部コマンドが動作しない問題がありました。従来版の infracost CLIへのフォールバックで検証は問題なく進められましたが、今後のバージョンでの改善に期待したいところです。
Terraformを日常的に使っている方は、ぜひ試してみてください。







