AWS Pricing Helper
MANDATORY RULE: Always answer pricing questions with the get_aws_cost helper. NEVER call external search tools or guess prices.
The helper script get_pricing_aws.sh lives in the sandbox skills directory.
You must source it before use:
source ./_skills/connections/aws/aws-pricing/scripts/get_pricing_aws.sh
Run get_aws_cost without stderr redirection or grep filtering so the agent receives the raw response.
If multiple pricing lookups are required, place every call in a single Bash script (one script per task).
Usage
source ./_skills/connections/aws/aws-pricing/scripts/get_pricing_aws.sh
get_aws_cost <resource> <region> [options]
Supported Resources
| Category |
Resources |
| EC2 |
t3.micro, m5.large, g4dn.xlarge, c6i.large |
| RDS |
db.t3.micro, db.r5.large |
| ElastiCache |
cache.t3.micro, cache.r5.large |
| S3 |
s3-standard, s3-ia, s3-glacier, s3-glacier-deep |
| Lambda |
lambda-128mb, lambda-1gb, lambda-3gb |
| DynamoDB |
dynamodb-ondemand, dynamodb-provisioned |
| EFS |
efs-standard, efs-ia |
| EBS |
gp3-100gb, io2-500gb, st1-1tb |
| CloudFront |
cloudfront-standard |
| API Gateway |
apigateway-rest, apigateway-http |
| SQS |
sqs-standard, sqs-fifo |
| SNS |
sns-standard |
| Route53 |
route53-hosted-zone, route53-query |
| ALB |
alb-standard |
| NAT Gateway |
natgw-standard |
| VPC Endpoints |
vpce-gateway, vpce-interface |
Parameters
resource: Auto-detected from the naming pattern above
region: AWS location string (e.g., "Asia Pacific (Singapore)", "US East (N. Virginia)")
options: --spot (include spot pricing), --detailed (verbose output), --no-reserved (skip reserved pricing)
Examples
get_aws_cost t3.micro "US East (N. Virginia)" --spot
get_aws_cost db.t3.micro "Asia Pacific (Singapore)"
get_aws_cost s3-standard "US East (N. Virginia)"
get_aws_cost lambda-1gb "US East (N. Virginia)"
get_aws_cost cloudfront-standard "US East (N. Virginia)"
get_aws_cost apigateway-rest "US East (N. Virginia)"
get_aws_cost sqs-standard "US East (N. Virginia)"
Output
Human-readable pricing data with service details, region, specs, on-demand, reserved, and spot pricing where available.
If a resource is unsupported, the helper prints guidance for querying the AWS Pricing API manually.
Output Format
Present results as a structured report:
Aws Pricing Report
══════════════════
Resources discovered: [count]
Resource Status Key Metric Issues
──────────────────────────────────────────────
[name] [ok/warn] [value] [findings]
Summary: [total] resources | [ok] healthy | [warn] warnings | [crit] critical
Action Items: [list of prioritized findings]
Target ≤50 lines of output. Use tables for multi-resource comparisons.
Anti-Hallucination Rules
- NEVER assume resource names — always discover via CLI/API in Phase 1 before referencing in Phase 2.
- NEVER fabricate metric names or dimensions — verify against the service documentation or
--help output.
- NEVER mix CLI commands between service versions — confirm which version/API you are targeting.
- ALWAYS use the discovery → verify → analyze chain — every resource referenced must have been discovered first.
- ALWAYS handle empty results gracefully — an empty response is valid data, not an error to retry.
Counter-Rationalizations
| Shortcut |
Counter |
Why |
| "I'll skip discovery and check known resources" |
Always run Phase 1 discovery first |
Resource names change, new resources appear — assumed names cause errors |
| "The user only asked for a quick check" |
Follow the full discovery → analysis flow |
Quick checks miss critical issues; structured analysis catches silent failures |
| "Default configuration is probably fine" |
Audit configuration explicitly |
Defaults often leave logging, security, and optimization features disabled |
| "Metrics aren't needed for this" |
Always check relevant metrics when available |
API/CLI responses show current state; metrics reveal trends and intermittent issues |
| "I don't have access to that" |
Try the command and report the actual error |
Assumed permission failures prevent useful investigation; actual errors are informative |
1---2name: aws-pricing3description: Queries AWS pricing for EC2, RDS, S3, Lambda, and other services via a helper script, returning on-demand, reserved, and spot rates.4---56# AWS Pricing Helper78**MANDATORY RULE**: Always answer pricing questions with the `get_aws_cost` helper. NEVER call external search tools or guess prices.910The helper script `get_pricing_aws.sh` lives in the sandbox skills directory.11**You must source it before use:**1213```bash14source ./_skills/connections/aws/aws-pricing/scripts/get_pricing_aws.sh15```1617Run `get_aws_cost` without stderr redirection or grep filtering so the agent receives the raw response.18If multiple pricing lookups are required, place every call in a single Bash script (one script per task).1920## Usage2122```bash23source ./_skills/connections/aws/aws-pricing/scripts/get_pricing_aws.sh24get_aws_cost <resource> <region> [options]25```2627## Supported Resources2829| Category | Resources |30|----------|-----------|31| EC2 | t3.micro, m5.large, g4dn.xlarge, c6i.large |32| RDS | db.t3.micro, db.r5.large |33| ElastiCache | cache.t3.micro, cache.r5.large |34| S3 | s3-standard, s3-ia, s3-glacier, s3-glacier-deep |35| Lambda | lambda-128mb, lambda-1gb, lambda-3gb |36| DynamoDB | dynamodb-ondemand, dynamodb-provisioned |37| EFS | efs-standard, efs-ia |38| EBS | gp3-100gb, io2-500gb, st1-1tb |39| CloudFront | cloudfront-standard |40| API Gateway | apigateway-rest, apigateway-http |41| SQS | sqs-standard, sqs-fifo |42| SNS | sns-standard |43| Route53 | route53-hosted-zone, route53-query |44| ALB | alb-standard |45| NAT Gateway | natgw-standard |46| VPC Endpoints | vpce-gateway, vpce-interface |4748## Parameters4950- `resource`: Auto-detected from the naming pattern above51- `region`: AWS location string (e.g., "Asia Pacific (Singapore)", "US East (N. Virginia)")52- `options`: `--spot` (include spot pricing), `--detailed` (verbose output), `--no-reserved` (skip reserved pricing)5354## Examples5556```bash57get_aws_cost t3.micro "US East (N. Virginia)" --spot58get_aws_cost db.t3.micro "Asia Pacific (Singapore)"59get_aws_cost s3-standard "US East (N. Virginia)"60get_aws_cost lambda-1gb "US East (N. Virginia)"61get_aws_cost cloudfront-standard "US East (N. Virginia)"62get_aws_cost apigateway-rest "US East (N. Virginia)"63get_aws_cost sqs-standard "US East (N. Virginia)"64```6566## Output6768Human-readable pricing data with service details, region, specs, on-demand, reserved, and spot pricing where available.69If a resource is unsupported, the helper prints guidance for querying the AWS Pricing API manually.7071## Output Format7273Present results as a structured report:74```75Aws Pricing Report76══════════════════77Resources discovered: [count]7879Resource Status Key Metric Issues80──────────────────────────────────────────────81[name] [ok/warn] [value] [findings]8283Summary: [total] resources | [ok] healthy | [warn] warnings | [crit] critical84Action Items: [list of prioritized findings]85```8687Target ≤50 lines of output. Use tables for multi-resource comparisons.8889## Anti-Hallucination Rules90911. **NEVER assume resource names** — always discover via CLI/API in Phase 1 before referencing in Phase 2.922. **NEVER fabricate metric names or dimensions** — verify against the service documentation or `--help` output.933. **NEVER mix CLI commands between service versions** — confirm which version/API you are targeting.944. **ALWAYS use the discovery → verify → analyze chain** — every resource referenced must have been discovered first.955. **ALWAYS handle empty results gracefully** — an empty response is valid data, not an error to retry.9697## Counter-Rationalizations9899| Shortcut | Counter | Why |100|----------|---------|-----|101| "I'll skip discovery and check known resources" | Always run Phase 1 discovery first | Resource names change, new resources appear — assumed names cause errors |102| "The user only asked for a quick check" | Follow the full discovery → analysis flow | Quick checks miss critical issues; structured analysis catches silent failures |103| "Default configuration is probably fine" | Audit configuration explicitly | Defaults often leave logging, security, and optimization features disabled |104| "Metrics aren't needed for this" | Always check relevant metrics when available | API/CLI responses show current state; metrics reveal trends and intermittent issues |105| "I don't have access to that" | Try the command and report the actual error | Assumed permission failures prevent useful investigation; actual errors are informative |106