.claude/skills/terraform-iac/SKILL.md
Terraform による AWS インフラ定義のパターン集。モジュール構造・variables.tf・outputs.tf の設計、terraform plan/validate の実行、IAM ポリシー定義など、Terraform コードを書く・修正するときに自動適用する。
npx skillsauth add rikunisikawa/health-logger terraform-iacInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
health-logger の AWS インフラを Terraform で安全に管理するためのパターン集。 モジュール設計から plan 実行・apply 依頼まで一貫したフローを提供する。
terraform/modules/<name>/
main.tf # リソース定義
variables.tf # 入力変数
outputs.tf # 出力値
variable "function_name" {
description = "Lambda 関数名"
type = string
}
variable "secret_key" {
description = "シークレット値(GitHub Secrets から渡す)"
type = string
sensitive = true # ← シークレットには必ず付ける
}
output "invoke_arn" {
description = "Lambda 関数の Invoke ARN"
value = aws_lambda_function.this.invoke_arn
}
module "lambda" {
source = "../../modules/lambda"
function_name = "create_record"
s3_bucket = module.s3.bucket_name
s3_key = var.lambda_s3_keys["create_record"]
stream_arn = module.firehose.stream_arn
environment_vars = {
FIREHOSE_STREAM_NAME = module.firehose.stream_name
ATHENA_DATABASE = module.glue.database_name
ATHENA_OUTPUT_LOCATION = "s3://${module.s3.bucket_name}/athena-results/"
}
}
data "aws_iam_policy_document" "lambda_firehose" {
statement {
actions = ["firehose:PutRecord"]
resources = [module.firehose.stream_arn]
}
}
# Docker 経由で実行(ローカルに Terraform 不要)
BASE="docker compose -f docker-compose.terraform.yml run --rm terraform -chdir=terraform/envs/prod"
$BASE fmt -recursive # フォーマット
$BASE validate # 構文検証
$BASE plan \
-var='lambda_s3_keys={"create_record":"placeholder","get_latest":"placeholder"}'
$BASE output # 出力値確認
sensitive = true をシークレット変数に必ず付与terraform.tfvars にシークレット値を直接書かない(CI は TF_VAR_xxx 環境変数で渡す)cors_allow_origins は ["*"] にしない(Amplify ドメインを指定)plan 実行後の以下を報告:
Plan: X to add, Y to change, Z to destroy.
変更されるリソース一覧(種別・名前・変更内容)
documentation
実装変更を検知し、対応するドキュメントの更新が必要な箇所を特定する PM スキル。変更ファイルと既存ドキュメントを照合し、更新候補と更新案を提示する。PR 作成時や documentation エージェントがドキュメントを更新するときに自動参照される。
development
React 18 + TypeScript strict + Amplify Auth v6 のフロントエンド実装パターン集。コンポーネント・カスタムフック・API クライアント・オフラインキューの実装を含む。frontend/ ディレクトリを変更するときに自動適用する。
data-ai
大きな Issue をサブタスクに分解し、子 Issue として作成する PM スキル。要件を実装単位(S/M/L)に分割し、依存関係を整理する。pm-agent がエピックを分割するときや実装着手前の分解フェーズで自動参照される。
testing
週次/月次の開発状況レポートを生成する PM スキル。GitHub から closed Issue・merged PR・CI 結果を取得し、進捗・リスク・次アクションをまとめる。/status-report コマンド実行時や pm-agent が定期レポートを生成するときに自動参照される。