Token导航 LogoToken导航TokenDH.com
研究检索需要联网github未标认证来源可访问许可证需确认审计异常

aliyun-billing-skills阿里云计费技巧

Agent Skill

aliyun-billing-skills 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

760

周安装

32

GitHub Stars

2

下载量

266
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:aliyun-billing-skills(阿里云计费技巧)
来源仓库:https://github.com/shigzz/aliyun-skills
仓库路径:skills/aliyun-billing-skills
安装命令:
npx skills add https://github.com/shigzz/aliyun-skills --skill aliyun-billing-skills
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/shigzz/aliyun-skills --skill aliyun-billing-skills

简介

用于查询阿里云账号下各实例级别的详细账单信息。

  • 通过 BSS OpenAPI 获取资源消耗明细,支持成本分析与预算管理。
  • 需提前配置 AccessKey ID 与 Secret,或通过 .env 文件加载凭证。
  • 安装命令为 npx skills add https://github.com/shigzz/aliyun-skills --skill aliyun-billing-skills。
  • 操作前应确认权限范围,避免泄露敏感财务数据。

SKILL.md

阿里云实例账单查询

通过 Python SDK alibabacloud_bssopenapi20171214 调用阿里云 BSS OpenAPI,查询当前账号下的实例级账单。

前置检查(必须首先执行)

执行任何查询前,必须先确认 AK/SK 已配置。

从当前工作目录的 .env 文件读取

检查当前工作目录下是否存在 .env 文件:

find . -maxdepth 1 -name ".env" -exec cat {} \;

.env 文件格式:

ALIBABA_CLOUD_ACCESS_KEY_ID=your-access-key-id
ALIBABA_CLOUD_ACCESS_KEY_SECRET=your-access-key-secret

Python 代码中加载:

from dotenv import load_dotenv
import os

load_dotenv()  # 从当前工作目录的 .env 文件加载

access_key_id = os.environ.get("ALIBABA_CLOUD_ACCESS_KEY_ID")
access_key_secret = os.environ.get("ALIBABA_CLOUD_ACCESS_KEY_SECRET")

或者通过环境变量

export ALIBABA_CLOUD_ACCESS_KEY_ID="your-access-key-id"
export ALIBABA_CLOUD_ACCESS_KEY_SECRET="your-access-key-secret"

未通过凭证检查时,不应继续执行查询步骤。

安装依赖

pip install alibabacloud_bssopenapi20171214 alibabacloud_credentials alibabacloud_tea_openapi alibabacloud_tea_util python-dotenv

请求参数

必填参数

参数类型说明
BillingCyclestring账期,格式为 YYYY-MM,仅支持最近 18 个月,如 2024-03

可选参数(筛选条件)

参数类型说明
ProductCodestring产品代码,如 rdsecs
ProductTypestring产品类型,当 ProductCode 为云市场产品时需指定
SubscriptionTypestring订阅类型:Subscription(预付费)/ PayAsYouGo(后付费)
IsBillingItemboolean是否按计费项维度拉取,默认 false
Granularitystring账单颗粒度:MONTHLY(月)/ DAILY(日),选择 DAILY 时需指定 BillingDate
BillingDatestring账单日期,格式 YYYY-MM-DD,仅 Granularity=DAILY 时必填
IsHideZeroChargeboolean是否隐藏零费用账单,默认 false
BillOwnerIdinteger资源归属账号 ID

分页参数(SDK 使用 NextToken 方式)

参数类型说明
MaxResultsinteger每页数量,最大 300
NextTokenstring下一页令牌,首次请求为空,后续使用上一次响应中的 NextToken

响应结构

response.body.data = {
    "NextToken": "xxx",         # 下一页的令牌(如果没有更多数据则不返回)
    "MaxResults": 300,          # 每页数量
    "TotalCount": 100,          # 总记录数
    "BillingCycle": "2024-03",
    "Items": {
        "Item": [...]           # 账单详情列表
    }
}

分页获取完整数据

必须实现分页逻辑,因为单次 API 调用最多返回 300 条记录。

分页规则

  1. 首次请求:不指定 NextToken 或设为空字符串
  2. 后续请求:使用上一次响应中 response.body.data.next_token 的值
  3. 终止条件:响应中 next_token 为空或不存在(表示已获取完所有数据)

分页获取示例代码

def fetch_all_bills(client, billing_cycle, max_results=300, **filter_kwargs):
    """获取指定账期的所有账单记录(自动分页)"""
    all_items = []
    next_token = None

    while True:
        request = bss_open_api_20171214_models.DescribeInstanceBillRequest(
            billing_cycle=billing_cycle,
            max_results=max_results,
            next_token=next_token,
            **filter_kwargs
        )
        response = client.describe_instance_bill_with_options(request, util_models.RuntimeOptions())

        if not response.body.success or not response.body.data.items.item:
            break

        items = response.body.data.items
        all_items.extend(items)

        # 判断是否还有更多数据
        next_token = getattr(response.body.data, 'next_token', None)
        if not next_token:
            break

    return all_items

DescribeInstanceBill 用法

核心流程:

  1. 从环境变量(或当前工作目录的 .env)读取 ALIBABA_CLOUD_ACCESS_KEY_ID / ALIBABA_CLOUD_ACCESS_KEY_SECRET
  2. 创建 BssOpenApi20171214Client
  3. 根据查询条件构建请求参数(包括筛选条件和分页参数)
  4. 实现分页逻辑,循环调用直到获取完整数据
  5. 汇总并处理所有账单记录

参考实现

reference/ 目录包含的是 Agent 参考样例,不是直接运行的脚本。使用此 skill 的 agent 应参考这些代码的结构和 API 调用方式,生成适合自己上下文的实现。

Agent 使用方式

  1. 阅读 reference/describe_instance_bill.py 了解 API 调用模式
  2. 根据当前项目结构生成相应的实现代码
  3. 不要直接复制运行,而是作为参考模板

核心 API 调用模式

from alibabacloud_bssopenapi20171214.client import Client as BssOpenApi20171214Client
from alibabacloud_tea_openapi import models as open_api_models
from alibabacloud_bssopenapi20171214 import models as bss_open_api_20171214_models

# 1. 创建客户端
config = open_api_models.Config(
    access_key_id=os.environ.get("ALIBABA_CLOUD_ACCESS_KEY_ID"),
    access_key_secret=os.environ.get("ALIBABA_CLOUD_ACCESS_KEY_SECRET"),
)
config.endpoint = 'business.aliyuncs.com'
client = BssOpenApi20171214Client(config)

# 2. 调用 API(单次调用,带分页参数)
request = bss_open_api_20171214_models.DescribeInstanceBillRequest(
    billing_cycle="2024-03",
    max_results=300,
    next_token=None,  # 首次请求设为 None,后续使用响应中的 next_token
    product_code="ecs",  # 可选筛选条件
)
response = client.describe_instance_bill_with_options(request, util_models.RuntimeOptions())

常见查询场景

场景 1:查询某月全部账单

all_items = fetch_all_bills(client, billing_cycle="2024-03", max_results=300)

场景 2:查询指定产品的账单

all_items = fetch_all_bills(
    client,
    billing_cycle="2024-03",
    max_results=300,
    product_code="rds"
)

场景 3:查询后付费产品账单

all_items = fetch_all_bills(
    client,
    billing_cycle="2024-03",
    max_results=300,
    subscription_type="PayAsYouGo"
)

场景 4:按天查询账单

all_items = fetch_all_bills(
    client,
    billing_cycle="2024-03",
    max_results=300,
    granularity="DAILY",
    billing_date="2024-03-15"
)

错误处理建议

  • 401/403:AK/SK 无效、未配置或 RAM 权限不足
  • InvalidAccessKeyId:AccessKeyId 错误
  • SignatureDoesNotMatch:AccessKeySecret 错误或签名不一致
  • 若异常包含 Recommend 字段,优先按诊断链接排查

使用流程

  1. 检查当前工作目录的 .env 文件或环境变量,确认 AK/SK 已配置
  2. 安装依赖
  3. 阅读 reference/describe_instance_bill.py,理解 API 调用模式
  4. 根据查询需求构建请求参数(筛选条件 + 分页参数)
  5. 实现分页循环,获取完整账单数据
  6. 汇总并处理所有账单记录

注意事项

  • BillingCycle 参数格式为 YYYY-MM(如 2024-03),调用时必须提供
  • 必须实现分页逻辑,单次调用最多返回 300 条记录
  • 分页使用 NextToken 方式:首次请求 next_token=None,后续使用响应中的 next_token
  • 分页终止条件:响应中 next_token 为空或不存在
  • 筛选条件:product_codesubscription_typegranularity 等可有效减少返回数据量
  • reference 代码是样例,用于帮助 agent 理解 API 调用方式
  • agent 应根据实际需求生成代码,包括错误处理、参数传递等

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

40.46%
按下载量换算108

Claude

29.14%
按下载量换算78

Cursor

18.75%
按下载量换算50

Gemini CLI

9.35%
按下载量换算25

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

未通过

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills