클로드스킬마트스킬 둘러보기스킬이 뭐예요?
목록으로

Terraform 스킬 (Terraform/OpenTofu 진단 가이드)

Terraform·OpenTofu 코드를 작성·리뷰·디버깅할 때 실패 유형을 먼저 진단하고 버전에 맞는 안전한 해법을 제시하는 스킬입니다.

개발·코딩중급2,254199AI 점수 9/10마지막 업데이트: 2026. 7. 3.

무엇을 해주나

Terraform/OpenTofu 작업을 "바로 코드 생성"이 아니라 진단 → 처방 → 검증 순서로 처리하도록 Claude의 행동을 바꿔주는 스킬입니다.

  • 실패 유형 라우팅: identity churn(리소스 주소 변경), 시크릿 노출, blast radius, destroy 연쇄 삭제, CI 드리프트, 컴플라이언스 공백, 테스트 맹점, state 손상/복구, 프로바이더 업그레이드 리스크 등 13개 카테고리로 증상을 분류하고 필요한 참조 문서만 로드합니다.
  • 응답 계약(Response Contract): 답변마다 ① 가정과 최소 버전(런타임·프로바이더·백엔드·실행 경로) ② 다룬 리스크 ③ 선택한 해법과 트레이드오프 ④ 정확한 검증 명령(fmt -check, validate, plan -out, 정책 검사) ⑤ 롤백 방법을 반드시 붙입니다.
  • 안전 가드: 리뷰된 plan 산출물과 승인 없이 프로덕션 apply를 권하지 않고, terraform destroyplan -destroy로 삭제 대상 전체(locals·for_each로 끌려오는 암묵적 의존까지)를 보여준 뒤 명시적 확인을 받도록 강제합니다. destroy에 -auto-approve 금지.
  • 버전 인식 기능 가드: moved(1.1+), optional()(1.3+), import/check(1.5+), 네이티브 terraform test(1.6+), mock provider(1.7+), removed(1.7+), 교차 변수 validation(1.9+), S3 네이티브 락파일(1.10+), write_only(1.11+)를 런타임 하한선과 함께 안내합니다.
  • 모범 구조 요약: 모듈 계층(resource → resource module → infra module → composition), 디렉터리 레이아웃, 네이밍/블록 정렬 규칙, 변수·출력 계약, state 분리 기준(>500 리소스면 분리, <100이면 통합), 버전 핀 전략, trivy·checkov 보안 파이프라인.
  • terraform-ls 코드 인텔리전스: 정의/참조 탐색은 위치 앵커 기반 LSP로, 리소스 이름 변경은 텍스트 치환 대신 moved 블록으로 처리하도록 규율을 잡아줍니다.

이런 분께 추천

  • 팀의 Terraform 모듈을 만들고 리뷰하는 플랫폼/인프라 엔지니어
  • 멀티 환경(dev/staging/prod) 구성과 원격 state 백엔드를 정리해야 하는 분
  • GitHub Actions·GitLab CI·Atlantis로 IaC 파이프라인을 구축하거나 CI/로컬 plan 불일치를 잡아야 하는 분
  • terraform test, Terratest, mock provider로 테스트 전략을 세우려는 분
  • OpenTofu 전환이나 프로바이더 메이저 업그레이드를 앞둔 팀

반대로 단순 HCL 문법 질문이나 프로바이더 API 레퍼런스 조회에는 과합니다.

활용 예시

  1. countfor_each 리팩터링: "서브넷 5개를 count로 만들었는데 중간 하나를 지우니 전부 재생성됩니다." → identity churn으로 진단하고 for_each = toset(...) 전환 + moved 블록 세트를 생성한 뒤 plan에서 destroy 0건임을 확인하는 절차를 제시합니다.
  2. CI 드리프트 정리: "로컬 plan과 GitHub Actions plan 결과가 다릅니다." → 런타임/프로바이더 핀, .terraform.lock.hcl 커밋, apply 잡에서 plan을 재실행하지 않고 리뷰된 plan 아티팩트를 적용하는 파이프라인으로 수정안을 제시합니다.
  3. 시크릿이 state에 남는 문제: "sensitive = true를 붙였는데 안전한가요?" → 표시만 마스킹된다는 점을 짚고, 1.11+라면 write_only/*_wo, 그 이하라면 Secrets Manager/Key Vault 런타임 조회로 우회하는 안을 트레이드오프와 함께 제안합니다.
  4. state 락 걸림/백엔드 이전: 스턱 락 해제 절차, S3 use_lockfile(1.10+) vs DynamoDB 선택, 백엔드 마이그레이션 시 백업·증적 보관과 롤백 노트를 함께 안내합니다.

· · · 설치 가이드 · · ·

Claude 앱에 설치 (터미널 필요 없음)
  1. 아래 버튼으로 ZIP 파일을 받으세요.
  2. Claude 설정 → Capabilities에서 '코드 실행 및 파일 생성'을 켭니다. (한 번만)
  3. Claude에서 Customize → Skills → + → '스킬 업로드'를 누르고 받은 ZIP을 올립니다.
ZIP 내려받기
Claude Code에 설치

Claude에게 맡기기 — 아래 문장을 Claude Code에 붙여넣으세요

클로드스킬마트에서 찾은 스킬을 설치해줘.
GitHub 저장소 antonbabenko/terraform-skill 의 skills/terraform-skill 폴더를 내 ~/.claude/skills/antonbabenko-terraform-skill/ 에 그대로 복사해줘.
설치가 끝나면 이 스킬로 무엇을 할 수 있는지 한 줄로 알려줘.

직접 명령으로 설치하기

git clone https://github.com/antonbabenko/terraform-skill.git && mkdir -p ~/.claude/skills && cp -r terraform-skill/skills/terraform-skill ~/.claude/skills/

제3자가 만든 스킬입니다. 설치 전 원본 저장소를 한 번 확인하세요.

  1. 터미널을 열고 Claude 스킬 폴더가 없으면 만듭니다: mkdir -p ~/.claude/skills
  2. 저장소를 임시로 내려받습니다: git clone https://github.com/antonbabenko/terraform-skill.git
  3. 스킬 폴더를 통째로(하위 references/ 문서 포함) 복사합니다: cp -r terraform-skill/skills/terraform-skill ~/.claude/skills/
  4. 파일이 잘 들어갔는지 확인합니다: ls ~/.claude/skills/terraform-skillSKILL.mdreferences/ 디렉터리가 보이면 정상입니다.
  5. (권장) 로컬에 terraform 또는 tofu가 설치되어 PATH에 있는지 확인하고, 작업 디렉터리에서 terraform init을 한 번 실행해 둡니다. terraform-ls 기반 코드 탐색 기능이 이때 제대로 동작합니다.
  6. Claude Code를 다시 시작한 뒤 "이 모듈 리뷰해줘", "count를 for_each로 안전하게 바꾸는 방법" 같이 Terraform 관련 요청을 하면 스킬이 자동으로 활성화됩니다.
  7. 임시 클론 폴더는 지워도 됩니다: rm -rf terraform-skill
  8. 주의: 스킬이 제안하는 apply, destroy, state 조작 명령은 반드시 plan 결과를 직접 확인한 뒤 실행하세요.
GitHub에서 원본 보기라이선스: NOASSERTION