← 返回 Skills 市场
crazylion

aws-price-csv

作者 crazylion · GitHub ↗ · v1.0.0
cross-platform ⚠ suspicious
343
总下载
0
收藏
0
当前安装
1
版本数
在 OpenClaw 中安装
/install aws-price-csv
功能描述
Generate AWS cost CSVs from a user-provided service list. Use when someone supplies an item list + AWS region and needs per-item pricing plus totals via AWS...
使用说明 (SKILL.md)

AWS Price CSV Skill

Overview

Transforms a user-provided AWS service list (instances, volumes, S3 buckets, etc.) into a pricing CSV. The script can query the AWS Price List API (via aws-cli) or reuse cached bulk JSON files. It supports On-Demand and Reserved terms and automatically adds up per-item and total costs.

Quick Start

  1. Prepare a YAML/JSON file with name, service_code, filters, term, and usage fields (see sample in references/api_reference.md).
  2. Pick the data source:
    • API mode – requires aws pricing get-products permission and an internet connection.
    • Bulk mode – no IAM access required; the script downloads/caches public bulk JSON files.
  3. Run the script with the region and desired options:
    python3 scripts/generate_pricing_csv.py \
      --input inputs/sample.yml \
      --region ap-northeast-1 \
      --source bulk \
      --cache-dir ~/.cache/aws-price-csv \
      --output quotes/apac_quote.csv
    
  4. Inspect the CSV (each line item + TOTAL) and deliver alongside the original request if needed.

Workflow

1. Prepare the input list

  • Use the YAML/JSON templates in references/api_reference.md.
  • filters must map to AWS pricing attributes (instanceType, regionCode, volumeApiName, usagetype, termType, etc.).
  • term.type: OnDemand or Reserved (RI).
  • term.attributes (optional) filter Reserved prices (LeaseContractLength, PurchaseOption, OfferingClass, ...).
  • usage.quantity represents the amount to multiply (hours, GB-Mo, requests, ...).

2. Choose the data source

Mode When to use Notes
API (--source api) You already have IAM creds and want real-time data Uses aws pricing get-products in us-east-1
Bulk (--source bulk) Offline, no IAM, or you want caching The script checks --cache-dir (default ~/.cache/aws-price-csv); cached files newer than 30 days are reused, otherwise they are re-downloaded

You can still override with --bulk-files ServiceCode=/path/to/file.json; those files win over the cache.

3. Generate the CSV

  • Script path: scripts/generate_pricing_csv.py
  • Key arguments:
    • --input: YAML/JSON list
    • --region: AWS region code (location name is auto-added to filters)
    • --output: CSV path (default aws_pricing.csv)
    • --source: api (default) or bulk
    • --cache-dir: bulk cache directory (default ~/.cache/aws-price-csv)
    • --force-refresh: ignore cached bulk files and re-download
    • --bulk-files: ServiceCode=/path/to/file.json overrides the cache
  • Output columns: item_name, service_code, term_type, region, location, quantity, usage_unit, price_unit, price_per_unit_usd, cost_usd, description, plus a TOTAL row.

4. Validate & deliver

  • Review the CSV to ensure every line item has pricing and a description.
  • Confirm the TOTAL matches expectations.
  • Include the source list or any supporting docs if required.

Troubleshooting

Issue Fix
aws pricing returns empty results Double-check filters (location, regionCode, termType, etc.) or fall back to bulk mode
aws CLI missing Install aws-cli v2, configure credentials, or rely on bulk mode
Need to refresh cached data Use --force-refresh or delete the cached JSON so it gets re-downloaded
PyYAML missing pip install pyyaml or convert input to JSON
Reserved price not found Add LeaseContractLength, PurchaseOption, OfferingClass inside term.attributes

Resources

  • scripts/generate_pricing_csv.py – main script with API/bulk support, caching logic, and On-Demand/Reserved handling.
  • references/api_reference.md – Price List API examples, bulk download pointers, region/location table, and sample input templates (including gp3 and RI cases).
安全使用建议
This appears to be a legitimate AWS pricing CSV tool, but review these practical points before using it: (1) If you run in API mode the script will call the local aws-cli and therefore use whatever AWS credentials are configured on the machine — ensure those credentials have only the minimal permission (pricing:GetProducts) you intend to permit. (2) Bulk mode will download large JSON files from the official AWS pricing endpoint and store them in your cache directory (~/.cache/aws-price-csv by default) — check disk space and network policy. (3) Because the package includes runnable Python scripts, inspect them locally and run them in a controlled environment (or a container) if you don't fully trust the source. (4) The repository contains two copies of the same script and some minor doc/code mismatches; that is not itself malicious but you may want to verify which file/version you run. If you want added assurance, run a dry-run (--dry-run) first, or use bulk files you supply instead of API mode.
功能分析
Type: OpenClaw Skill Name: aws-price-csv Version: 1.0.0 The skill is designed to generate AWS pricing reports but contains high-risk capabilities including network access, file system operations, and execution of external commands. Specifically, `scripts/generate_pricing_csv.py` uses `urllib.request.urlopen` to fetch data from the official AWS pricing endpoint (pricing.us-east-1.amazonaws.com), writes to a local cache directory (~/.cache/aws-price-csv), and executes `aws` CLI commands via `subprocess.run`. While these actions are clearly aligned with the tool's stated purpose and no malicious intent or exfiltration logic was identified, the presence of these powerful capabilities qualifies the skill as suspicious under the provided security criteria.
能力评估
Purpose & Capability
Name/description match the behavior: the scripts fetch pricing via the AWS Pricing CLI or download AWS-hosted bulk JSON and produce CSV output. The requested capabilities (none declared) and included code are reasonable for this purpose.
Instruction Scope
SKILL.md instructions stay within the stated purpose. One important runtime behavior is implicit: API mode invokes the local aws-cli, which will use whatever AWS credentials are configured on the host (shared credentials file / environment). SKILL.md documents API vs bulk modes. There is a small documentation/code mismatch (instructions mention compression of inputs/outputs, but the scripts do not appear to implement zipping).
Install Mechanism
No install spec and included code is pure Python. Network downloads (bulk mode) target the official AWS pricing host (pricing.us-east-1.amazonaws.com). There are no untrusted third-party download URLs or installers.
Credentials
The skill declares no required env vars or credentials, which aligns with the repo, but API mode implicitly relies on the host's AWS credentials (via aws-cli). This is proportionate for querying pricing (requires pricing:GetProducts). The script writes cached bulk JSON into a user cache dir (~/.cache/aws-price-csv by default), which is expected but should be noted.
Persistence & Privilege
No special persistence or elevated privileges are requested (always:false). The skill writes only its own cache files and output CSVs; it does not modify other skills or system-wide agent settings.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install aws-price-csv
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /aws-price-csv 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.0.0
Initial release of aws-price-csv. - Generate AWS pricing CSVs from user-supplied service/item lists and regions. - Supports both live AWS Price List API and bulk JSON pricing queries. - Handles On-Demand and Reserved pricing terms, including key filters and contract types. - Outputs detailed cost breakdowns per item plus a total row in CSV format. - Includes caching and offline mode with cache refresh/override options. - Supports YAML/JSON input files and customizable output paths.
元数据
Slug aws-price-csv
版本 1.0.0
许可证
累计安装 0
当前安装数 0
历史版本数 1
常见问题

aws-price-csv 是什么?

Generate AWS cost CSVs from a user-provided service list. Use when someone supplies an item list + AWS region and needs per-item pricing plus totals via AWS... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 343 次。

如何安装 aws-price-csv?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install aws-price-csv」即可一键安装,无需额外配置。

aws-price-csv 是免费的吗?

是的,aws-price-csv 完全免费(开源免费),可自由下载、安装和使用。

aws-price-csv 支持哪些平台?

aws-price-csv 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 aws-price-csv?

由 crazylion(@crazylion)开发并维护,当前版本 v1.0.0。

💬 留言讨论