Comprehensive developer toolkit providing reusable skills for Java/Spring Boot, TypeScript/NestJS/React/Next.js, Python, PHP, AWS CloudFormation, AI/RAG, DevOps, and more.
90
90%
Does it follow best practices?
Impact
Pending
No eval scenarios have been run
Risky
Do not use without reviewing
Guide a structured AWS cost review covering right-sizing, elasticity, pricing models, storage optimization, and continuous monitoring. References AWS native tools (Cost Explorer, Budgets, Compute Optimizer, Trusted Advisor, Cost Anomaly Detection) and delivers twelve prioritized best practices organized under five optimization pillars. All examples use the AWS CLI.
Trigger: "Optimize my AWS costs", "Review AWS spending", "Find unused AWS resources", "Help me with FinOps", "Reduce my EC2 bill", "Clean up unused EBS volumes", "Set up AWS Budgets"
Work through each pillar in order during a cost review.
Match provisioned resources to actual workload needs.
Schedule instance stop/start and leverage Auto Scaling Groups.
Choose the optimal mix of On-Demand, Spot, Reserved Instances, and Savings Plans.
Eliminate waste in EBS, S3, and snapshots.
available state) and recommend deletion after backup reviewEstablish continuous cost governance.
Environment, Team, Project, CostCenter)Follow this structured flow when the user asks for a cost review:
User: "Find unused EBS volumes in my account."
CLI commands to include in the response:
# List all EBS volumes in available (unattached) state
aws ec2 describe-volumes \
--filters Name=status,Values=available \
--query 'Volumes[*].{VolumeId:VolumeId,Size:Size,Type:VolumeType,Zone:AvailabilityZone,CreateTime:CreateTime}' \
--output table
# Get monthly cost estimate for unused volumes (approx $0.08/GB/mo for gp3)
aws ec2 describe-volumes \
--filters Name=status,Values=available \
--query 'length(Volumes[*].[VolumeId,Size])' \
--output text
# List orphaned snapshots (not linked to any AMI)
aws ec2 describe-snapshots \
--owner-ids self \
--query 'Snapshots[?!contains(Description, `ami-`)].[SnapshotId,VolumeId,StartTime,Size]'User: "How can I reduce my EC2 bill?"
CLI commands to include in the response:
# Get Compute Optimizer right-sizing recommendations for EC2
aws compute-optimizer get-ec2-instance-recommendations \
--query 'instanceRecommendations[*].{InstanceArn:instanceArn,CurrentInstanceType:currentInstanceType,RecommendedInstanceType:recommendations[0].instanceType,MonthlySaving:recommendations[0].estimatedMonthlySavings.value}' \
--output table
# Pull average CPU utilization for an instance over 14 days
aws cloudwatch get-metric-statistics \
--namespace AWS/EC2 \
--metric-name CPUUtilization \
--dimensions Name=InstanceId,Value=i-1234567890abcdef0 \
--start-time 2026-03-09T00:00:00Z \
--end-time 2026-03-23T00:00:00Z \
--period 86400 \
--statistics Average \
--output table
# List all running instances by type for baseline analysis
aws ec2 describe-instances \
--filters Name=instance-state-name,Values=running \
--query 'Reservations[].Instances[].[InstanceId,InstanceType,Tags[?Key==`Name`].Value|[0],State.Name]' \
--output tableUser: "Set up AWS Budgets and monitor my spend."
CLI commands to include in the response:
# Create a monthly cost budget with alert thresholds at 50%, 80%, 100%
aws budgets create-budget \
--account-id 123456789012 \
--budget '{
"BudgetName": "Monthly-Cost-Budget",
"BudgetLimit": {"Amount": "5000", "Unit": "USD"},
"TimeUnit": "MONTHLY",
"BudgetType": "COST"
}' \
--notifications-with-subscribers '[{"Notification": {"ComparisonOperator": "GREATER_THAN", "NotificationType": "ACTUAL", "Threshold": 80},"Subscribers": [{"Address": "email@example.com","SubscriptionType": "EMAIL"}]}]'
# Get top-5 cost drivers from Cost Explorer (last 30 days)
aws ce get-cost-and-usage \
--time-period Start=2026-02-23,End=2026-03-23 \
--granularity MONTHLY \
--metrics "BlendedCost" "UnblendedCost" \
--group-by Type=DIMENSION,Key=SERVICE \
--query 'ResultsByTime[0].Groups[*].{Service:Keys[0],BlendedCost:Metrics.BlendedCost.Amount}' \
--output table
# Enable Cost Anomaly Detection alert
aws ce create-anomaly-monitor \
--monitor-name "Daily-Cost-Anomaly" \
--monitor-arn "arn:aws:ce::123456789012:anomaly-monitor/cost-explorer"User: "Optimize my S3 storage costs."
CLI commands to include in the response:
# List S3 buckets with size and storage class distribution
aws s3api list-buckets --query 'Buckets[*].Name'
aws s3api get-bucket-storage-type-aggregation --bucket YOUR-BUCKET-NAME
# Apply S3 Intelligent-Tiering lifecycle rule for objects older than 90 days
aws s3api put-bucket-lifecycle-configuration \
--bucket YOUR-BUCKET-NAME \
--lifecycle-configuration '{
"Rules": [{
"ID": "MoveToIntelligentTiering",
"Status": "Enabled",
"Filter": {},
"Transitions": [
{"Days": 30, "StorageClass": "INTELLIGENT_TIERING"},
{"Days": 90, "StorageClass": "GLACIER_IR"}
]
}]
}'User: "Should I use Spot Instances or Savings Plans?"
CLI commands to include in the response:
# Check current RI and Savings Plans coverage
aws ce get-savings-plans-coverage \
--time-period Start=2026-01-01,End=2026-03-23 \
--granularity MONTHLY
# List available Spot price history for an instance type
aws ec2 describe-spot-price-history \
--instance-types t3.medium \
--product-description "Linux/UNIX" \
--availability-zone us-east-1a \
--query 'SpotPriceHistory[*].{Price:SpotPrice,Date:Timestamp}' \
--output table
# Estimate savings with Savings Plans vs On-Demand
aws savingsplans describe-savings-plans-rates \
--savings-plan-arn arn:aws:savingsplans::123456789012:savings-plan/SP-EXAMPLE| Tool | Use Case |
|---|---|
| Cost Explorer | Visualize and filter AWS spend by service, account, or tag |
| AWS Budgets | Set custom spend budgets with threshold alerts |
| AWS Pricing Calculator | Model pricing for new or changed workloads |
| Compute Optimizer | ML-driven right-sizing recommendations for EC2, EBS, Lambda |
| Trusted Advisor | Automated cost optimization, security, performance checks |
| Data Lifecycle Manager | Automate EBS snapshot creation and retention |
| Cost Anomaly Detection | ML-powered spend anomaly alerts with root-cause analysis |
| # | Practice | Pillar |
|---|---|---|
| 1 | Choose appropriate AWS region (cost, latency, data sovereignty) | Right-Size |
| 2 | Schedule start/stop for non-production instances | Elasticity |
| 3 | Identify under-utilized EC2 instances | Right-Size |
| 4 | Reduce EC2 costs with Spot Instances | Pricing Model |
| 5 | Optimize Auto Scaling Group policies | Elasticity |
| 6 | Use or resell under-utilized Reserved Instances | Pricing Model |
| 7 | Leverage Compute Savings Plans | Pricing Model |
| 8 | Monitor and delete unused EBS volumes | Storage |
| 9 | Identify and clean up orphaned EBS snapshots | Storage |
| 10 | Remove idle load balancers; use CloudFront | Right-Size |
| 11 | Implement cost allocation tagging | Monitoring |
| 12 | Automate anomaly detection | Monitoring |
docs
plugins
developer-kit-ai
developer-kit-aws
agents
docs
skills
aws
aws-cli-beast
aws-cost-optimization
aws-drawio-architecture-diagrams
aws-sam-bootstrap
aws-cloudformation
aws-cloudformation-auto-scaling
aws-cloudformation-bedrock
aws-cloudformation-cloudfront
aws-cloudformation-cloudwatch
aws-cloudformation-dynamodb
aws-cloudformation-ec2
aws-cloudformation-ecs
aws-cloudformation-elasticache
references
aws-cloudformation-iam
references
aws-cloudformation-lambda
aws-cloudformation-rds
aws-cloudformation-s3
aws-cloudformation-security
aws-cloudformation-task-ecs-deploy-gh
aws-cloudformation-vpc
references
developer-kit-core
agents
commands
skills
developer-kit-devops
developer-kit-java
agents
commands
docs
skills
aws-lambda-java-integration
aws-rds-spring-boot-integration
aws-sdk-java-v2-bedrock
aws-sdk-java-v2-core
aws-sdk-java-v2-dynamodb
aws-sdk-java-v2-kms
aws-sdk-java-v2-lambda
aws-sdk-java-v2-messaging
aws-sdk-java-v2-rds
aws-sdk-java-v2-s3
aws-sdk-java-v2-secrets-manager
clean-architecture
graalvm-native-image
langchain4j-ai-services-patterns
references
langchain4j-mcp-server-patterns
references
langchain4j-rag-implementation-patterns
references
langchain4j-spring-boot-integration
langchain4j-testing-strategies
langchain4j-tool-function-calling-patterns
langchain4j-vector-stores-configuration
references
qdrant
references
spring-ai-mcp-server-patterns
spring-boot-actuator
spring-boot-cache
spring-boot-crud-patterns
spring-boot-dependency-injection
spring-boot-event-driven-patterns
spring-boot-openapi-documentation
spring-boot-project-creator
spring-boot-resilience4j
spring-boot-rest-api-standards
spring-boot-saga-pattern
spring-boot-security-jwt
assets
references
scripts
spring-boot-test-patterns
spring-data-jpa
references
spring-data-neo4j
references
unit-test-application-events
unit-test-bean-validation
unit-test-boundary-conditions
unit-test-caching
unit-test-config-properties
references
unit-test-controller-layer
unit-test-exception-handler
references
unit-test-json-serialization
unit-test-mapper-converter
references
unit-test-parameterized
unit-test-scheduled-async
references
unit-test-service-layer
references
unit-test-utility-methods
unit-test-wiremock-rest-api
references
developer-kit-php
developer-kit-project-management
developer-kit-python
developer-kit-specs
commands
docs
hooks
test-templates
tests
skills
developer-kit-tools
developer-kit-typescript
agents
docs
hooks
rules
skills
aws-cdk
aws-lambda-typescript-integration
better-auth
clean-architecture
drizzle-orm-patterns
dynamodb-toolbox-patterns
references
nestjs
nestjs-best-practices
nestjs-code-review
nestjs-drizzle-crud-generator
nextjs-app-router
nextjs-authentication
nextjs-code-review
nextjs-data-fetching
nextjs-deployment
nextjs-performance
nx-monorepo
react-code-review
react-patterns
shadcn-ui
tailwind-css-patterns
tailwind-design-system
references
turborepo-monorepo
typescript-docs
typescript-security-review
zod-validation-utilities
references
github-spec-kit