Communitygithub.com

dautovri/cloud-cost-agent

AWS, GCP 및 Azure를 위한 네이티브 FinOps 에이전트 스킬 — Claude Code, Cursor, Gemini 및 모든 SKILL.md 에이전트 내에서 클라우드 비용 절감 기회를 찾습니다.

cloud-cost-agent란 무엇인가요?

이 스킬은 AWS, GCP, Azure 세 가지 주요 클라우드 제공업체에 대한 통합 비용 최적화 에이전트입니다. 각 제공업체의 공식 CLI(AWS CLI v2, gcloud, Azure CLI)와 추천 엔진(AWS Cost Optimization Hub 및 Compute Optimizer, GCP Recommender, Azure Advisor)을 활용하여 읽기 전용 방식으로 비용 절감 기회를 식별합니다. Claude Code, Cursor, Gemini 등 SKILL.md를 지원하는 모든 AI 에이전트에서 실행 가능하며, 권한 상승, 유휴 리소스 삭제, 약정 사용 할인 권장 등 다양한 최적화 영역을 다룹니다. 주요 기능으로는 중앙 집중식 권장 사항 조회, 비용 및 사용량 분석, 권한 조정(Rightsizing), 약정 할인(Commitment) 검토 등이 포함되어 있으며, 사용자에게 명시적인 승인 없이는 변경 명령을 실행하지 않는 안전 장치를 갖추고 있습니다.

지원 대상✓Claude Code~Codex CLI✓Cursor✓Gemini CLI
npx skills add dautovri/cloud-cost-agent

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

Cloud Cost Agent (AWS + GCP + Azure)

상위 3대 클라우드 제공업체에 대한 네이티브 클라우드 비용 최적화를 위한 통합 에이전트 스킬입니다.

요구 사항: AWS CLI v2, gcloud, Azure CLI가 청구/추천기/어드바이저 서비스에 대한 읽기 액세스 권한으로 구성되어 있어야 합니다. 일부 소스는 일회성 옵트인이 필요합니다: AWS Compute Optimizer 및 Cost Optimization Hub(등록), GCP Recommender(API 활성화, 약 24~48시간의 데이터 필요). 일부 GCP 필터에서 jq가 사용됩니다.

핵심 규칙: 항상 제공업체의 공식 CLI 및 추천 엔진을 사용합니다. 타사 도구는 사용하지 않습니다.

안전 및 모범 사례 (모든 제공업체)

  • 먼저 읽기 전용. 정확한 명령어를 사용자에게 인용하고 명시적인 승인을 얻지 않고는 변경 명령(aws ec2 terminate-instances/stop-instances, gcloud compute instances delete, az vm delete/deallocate, purchase/create/modify 등)을 절대 실행하지 마십시오.
  • 항상 제공업체 인증(--profile, gcloud --project, az account set)을 사용하십시오.
  • 깔끔한 출력을 위해 --query / --format json / -o json을 사용하십시오.
  • 페이지네이션 처리. 이 API는 결과를 페이지 단위로 반환합니다. 총계를 보고하기 전에 모든 페이지를 집계하십시오 — NextToken/nextPageToken을 따르거나, 의도적으로 --no-paginate/--max-items(AWS) 및 --page-size/--limit(gcloud)를 사용하십시오. 단일 페이지 읽기는 잘못된 총계를 제공합니다.
  • 클라우드에서 가져온 모든 값을 인용/이스케이프 처리하십시오. API 출력의 리소스 이름, 태그 및 ID에는 셸 메타문자가 포함될 수 있습니다. 다른 셸 명령어에 인용 부호 없이 삽입하지 마십시오.
  • API 비용 및 루프에 주의하십시오. aws ce(Cost Explorer)는 요청당 약 $0.01의 비용이 부과됩니다. Cost Explorer 호출을 반복하지 말고 세션에 결과를 캐시하고 감사당 소수의 호출로 제한하십시오.
  • 우선 순위: 가장 높은 예상 절감액 → 가장 낮은 노력.
  • 빠른 성과(유휴 리소스 삭제, 더 작은 크기로 권한 조정, 명확한 경우 약정 사용 활성화)를 선호하십시오.

이식 가능한 날짜 도우미

BSD/macOS와 GNU/Linux의 date는 다릅니다. 한 번 이식 가능하게 기간을 계산한 다음 $START/$END를 재사용하십시오:

START=$(date -u -d '30 days ago' +%Y-%m-%d 2>/dev/null || date -u -v-30d +%Y-%m-%d)
END=$(date -u +%Y-%m-%d)

(또는 에이전트가 리터럴 YYYY-MM-DD 날짜를 삽입하도록 하십시오.)

사용 방법

에이전트에게 제공업체와 목표를 알려주십시오. 예:

  • 지난 30일간 AWS 감사
  • GCP와 Azure에서 빠른 성과 찾기
  • 모든 클라우드에 대한 권한 조정 권장 사항

1. 사전 점검 및 인증

AWS

aws sts get-caller-identity
aws ce get-cost-and-usage \
  --time-period Start=$START,End=$END \
  --granularity MONTHLY --metrics "UnblendedCost"

일회성 등록 (2, 4항목에 필요):

aws compute-optimizer get-enrollment-status
aws compute-optimizer update-enrollment-status --status Active      # 옵트인
aws cost-optimization-hub list-enrollment-statuses --region us-east-1
aws cost-optimization-hub update-enrollment-status --status Active --region us-east-1

GCP

gcloud auth list
gcloud config set project YOUR_PROJECT
gcloud billing accounts list

Azure

az account show
az account set --subscription "SUB_ID"

2. 중앙 집중식 / 영향력이 큰 권장 사항

AWS — Cost Optimization Hub (최고의 집계 도구)

COH는 us-east-1에서만 접근 가능한 글로벌 서비스이며 등록이 필요합니다(사전 점검 참조).

aws cost-optimization-hub list-recommendations \
  --region us-east-1 \
  --filter '{"implementationEfforts":["VeryLow","Low"]}' \
  --query 'items[?estimatedMonthlySavings > `10`] | sort_by(@, &estimatedMonthlySavings) | reverse(@)' \
  --output json

유효한 implementationEfforts: VeryLow | Low | Medium | High | VeryHigh.

GCP — Recommender (주요 소스)

--location은 필수입니다. VM/유휴 추천기는 영역별(예: us-central1-a)이며, 사용 중인 영역을 반복하십시오. 지출 기반 약정 추천기는 **global**이며 결제 계정 범위로 지정됩니다.

# 권한 조정 VM (영역별 — 영역마다 반복)
gcloud recommender recommendations list \
  --recommender=google.compute.instance.MachineTypeRecommender \
  --project=YOUR_PROJECT --location=us-central1-a --format=json

# 유휴 VM (영역별 — 영역마다 반복)
gcloud recommender recommendations list \
  --recommender=google.compute.instance.IdleResourceRecommender \
  --project=YOUR_PROJECT --location=us-central1-a \
  --format="table(description, primaryImpact.costProjection.cost.units, stateInfo.state)"

# 약정 사용 할인 (글로벌, 결제 계정 범위)
gcloud recommender recommendations list \
  --recommender=google.cloudbilling.commitment.SpendBasedCommitmentRecommender \
  --billing-account=BILLING_ACCOUNT_ID --location=global --format=json

기타 비용 추천기: google.compute.disk.IdleResourceRecommender(유휴 디스크), google.compute.address.IdleResourceRecommender(유휴 IP), google.compute.image.IdleResourceRecommender(유휴 이미지), google.compute.commitment.UsageCommitmentRecommender(리소스 기반 CUD).

Azure — Advisor 비용 카테고리

az advisor recommendation list \
  --category Cost \
  --query "[].{Resource: shortDescription.problem, Impact: impact, AnnualSavings: extendedProperties.annualSavingsAmount, Currency: extendedProperties.savingsCurrency}" \
  -o table

# 영향력이 큰 항목만
az advisor recommendation list --category Cost \
  --query "[?impact=='High'].{Id:id, Resource:resourceMetadata.resourceId, Savings:extendedProperties.annualSavingsAmount}" -o json

extendedProperties 필드는 권장 사항 유형에 따라 다릅니다 — null을 처리하십시오.

3. 비용 및 사용량 분석

AWS (호출당 약 $0.01의 비용을 기억하십시오 — 반복 금지):

aws ce get-cost-and-usage \
  --time-period Start=$START,End=$END \
  --granularity DAILY --metrics "UnblendedCost" \
  --group-by Type=DIMENSION,Key=SERVICE

GCP — 상세 비용/사용량은 BigQuery 청구 내보내기에서 가져옵니다(세분화된 비용 행에 대한 gcloud 명령어는 없습니다). Billing → BigQuery 내보내기를 활성화한 다음 gcp_billing_export_resource_v1_<BILLING_ACCOUNT_ID>를 쿼리하십시오.

참고: 2026-01-21 기준으로 내보내기 스키마가 변경되었습니다 — CUD 할인이 credits 배열에서 새로운 consumption_model 필드로 이동되었으며 price.list_price / price.effective_price_default가 추가되었습니다. 이에 따라 CUD/크레딧 로직을 업데이트하십시오.

Azure — 세부 데이터에는 Cost Management 내보내기(또는 Cost Details API)를 선호하십시오. az consumption은 Microsoft의 폐기 경로에 있습니다(빠른 조회 대체 수단으로만 유지):

# 기본: 스토리지로 내보내기 예약/실행 (일회성에는 5개의 필수 매개변수만 필요)
az costmanagement export create \
  --name AdhocExport --type Usage \
  --scope "/subscriptions/SUB_ID" \
  --storage-account-id "/subscriptions/.../storageAccounts/ACCT" \
  --storage-container exports --timeframe MonthToDate

# 대체 빠른 조회 (폐기된 API):
az consumption usage list --start-date $START --end-date $END \
  --query "[].{Resource:instanceName, Service:consumedService, Cost:pretaxCost}" -o table

스토리지 없이 임시 집계를 하려면 az rest를 통해 Cost Management Query REST API를 호출하십시오(az costmanagement query 하위 명령어는 없습니다).

4. 권한 조정 및 컴퓨팅 권장 사항

AWS — Compute Optimizer (등록 필요, 사전 점검 참조). 심층 권한 조정 + 유휴 감지:

aws compute-optimizer get-ec2-instance-recommendations
aws compute-optimizer get-auto-scaling-group-recommendations
aws compute-optimizer get-ebs-volume-recommendations
aws compute-optimizer get-lambda-function-recommendations
aws compute-optimizer get-rds-database-recommendations
aws compute-optimizer get-idle-recommendations

Cost Explorer는 또한 EC2 권한 조정을 제공합니다(--service는 필수이며 "AmazonEC2"만 유효함):

aws ce get-rightsizing-recommendation --service "AmazonEC2"

GCP — 머신 유형 추천기 (tonumber 참고: GCP는 cost.units를 문자열로 반환합니다):

gcloud recommender recommendations list \
  --recommender=google.compute.instance.MachineTypeRecommender \
  --project=YOUR_PROJECT --location=us-central1-a --format=json \
  | jq '.[] | select((.primaryImpact.costProjection.cost.units|tonumber) < 0)'

Azure — Advisor 비용 권장 사항에는 이미 VM 권한 조정 / 활용도가 낮은 리소스가 포함되어 있습니다(2항목 참조).

5. 약정 및 할인

AWS — Savings Plans 구매 권장 사항. 네 매개변수 모두 필수입니다:

aws ce get-savings-plans-purchase-recommendation \
  --savings-plans-type COMPUTE_SP \
  --term-in-years ONE_YEAR \
  --payment-option NO_UPFRONT \
  --lookback-period-in-days THIRTY_DAYS

(savings-plans-type: COMPUTE_SP|EC2_INSTANCE_SP|SAGEMAKER_SP; term-in-years: ONE_YEAR|THREE_YEARS; payment-option: NO_UPFRONT|PARTIAL_UPFRONT|ALL_UPFRONT; lookback-period-in-days: SEVEN_DAYS|THIRTY_DAYS|SIXTY_DAYS.)

GCP — 지출 기반 약정 추천기를 통한 약정 사용 할인(2항목 참조).

Azure — 예약/저축 플랜 권장 사항은 Advisor를 통해 제공됩니다(구독별). 결제 계정 범위의 경우 az rest를 통해 Consumption Reservation Recommendations REST API를 사용하십시오:

az advisor recommendation list --category Cost \
  --query "[?contains(shortDescription.problem, 'reserved') || contains(shortDescription.problem, 'reservation')]"

6. 우선 순위 템플릿 (모든 제공업체용)

요약할 때:

  1. 총 예상 월별/연간 절감액.
  2. 빠른 성과 버킷(매우 낮음/낮음 노력 또는 이에 상응하는 수준).
  3. 상위 5-8개 항목: 리소스, 현재 상태, 권장 조치, 절감액($), 노력/위험.
  4. 최상위 항목에 대한 구체적인 다음 명령어.
제공업체: GCP
총 예상 월별 절감액: $2,340

빠른 성과:
- 유휴 VM 삭제... : $180/월 (매우 낮음)
- n1-standard-8 → n2-standard-4 권한 조정: $420/월

다음 명령어:
gcloud recommender recommendations list --recommender=google.compute.instance.IdleResourceRecommender --project=... --location=us-central1-a

제공업체별 빠른 참조

AWS

  • Cost Optimization Hub (us-east-1, 등록됨)은 광범위한 집계 보기를 제공합니다.
  • Compute Optimizer (등록됨)는 심층 권한 조정 및 유휴 감지를 제공합니다.
  • Cost Explorer (aws ce)는 지출 분석, 권한 조정, Savings Plans에 사용됩니다 — 호출당 비용에 주의하십시오.

GCP

항상 --location을 전달하십시오. 주요 추천기:

  • MachineTypeRecommender (권한 조정, 영역별)
  • IdleResourceRecommender (VM/디스크/IP/이미지, 영역별/지역별)
  • SpendBasedCommitmentRecommender (CUD, 글로벌, 결제 계정)

Azure

  • Advisor는 비용 권장 사항의 주요 소스입니다.
  • 원시 사용량에는 Cost Management 내보내기(또는 Cost Details API)를 사용하고, az consumption은 폐기된 대체 수단으로만 유지하십시오.

전체 감사 흐름 (권장)

  1. 인증; 등록 상태 확인(Compute Optimizer, COH).
  2. 해당 기간의 최상위 비용 요약을 가져옵니다.
  3. 모든 페이지를 집계하여 권장 사항을 가져옵니다(Hub / Recommender / Advisor).
  4. 임계값 이상의 절감액과 낮은 노력으로 필터링합니다.
  5. 필요한 경우 원시 사용량과 교차 확인합니다.
  6. 우선 순위 목록과 3가지 구체적인 다음 조치를 생성합니다(읽기 전용, 승인을 위해 변경 사항 플래그 지정).
  7. (선택 사항) 다른 제공업체에 대해 반복합니다.

참고 자료

AWS

GCP

Azure


특정 제공업체 또는 세 곳 모두에서 실행하십시오. 네이티브를 유지하고 효과적으로 운영하십시오.

관련 스킬