用途
Huawei Cloud Partner Scout 面向华为云合作伙伴(解决方案提供商 / 总经销商,代售模式)及其二级间接伙伴(云经销商),把伙伴控制台中分散的查询页面聚合为一个语义层,让用户可以在一次对话中直接询问伙伴账户相关问题。
该技能为只读查询工具:不执行任何修改,不代替用户进行账户操作。
主要能力
覆盖 6 个业务流程、10 个入口点、22 项事实:
- 客户:子客户列表、新客标签
- 伙伴:云经销商列表
- 账户:伙伴/客户余额、欠费、收支明细、调账记录
- 代金券:代金券额度(自身/已发放/记录)、优惠券(自身/已发放/记录)
- 账单:消费子客户、消费明细、月度账单
- 资源:包年包月资源、按需资源、资源包
- 订单:订单列表、订单详情、退款详情
- 字典:服务类型、资源类型、用量类型、计量单位、换算、省份/城市/区县
路由与事实定义见 references/semantic/catalog.yml 与 references/semantic/models/*.yml。
使用方式
执行路径为 SDK(huaweicloudsdkbss),这是经过真实环境测试验证的方式。KooCLI 7.2.12 的 CN 站点官方元数据也列出了 BSS(api_count=87,has_data=true),每个查询入口点都有对应的 hcloud BSS <Operation>;但国际站点元数据存根将 BSS 列为 "Operation Capability"(api_count=0 / has_data=false),因此国际站点配置的 hcloud 会报 [USE_ERROR]Unsupported service: BSS.。本技能统一采用 SDK,因为真实环境验证与质量工具链均基于 SDK。
前置条件:
- Python 3.8+,huaweicloudsdkbss ≥ 3.1(测试版本 3.1.211)
- 伙伴账户 AK/SK(解决方案提供商或总经销商),通过环境变量 HUAWEICLOUD_SDK_AK / HUAWEICLOUD_SDK_SK(或 HUAWEI_ACCESS_KEY / HUAWEI_SECRET_KEY)提供
- 端点固定为 https://bss.myhuaweicloud.com —— BSS 是全局服务,需使用 GlobalCredentials + with_endpoints,而非 BasicCredentials + with_region
- 区域固定为 cn-north-1(伙伴 API 区域固定,不可配置)
- 企业内网可能需要 HTTPS_PROXY
安装检查:
pip install huaweicloudsdkbss
python3 -c "import huaweicloudsdkbss; print('sdk ok')"
本技能仅依赖 SDK,不依赖 KooCLI,因此不附带 references/cli-installation-guide.md,也没有 --cli-region 概念——所有区域/端点选择均通过 GlobalCredentials + with_endpoints 完成(固定 cn-north-1 / bss.myhuaweicloud.com)。
凭据仅从环境变量读取,技能及其质量上报 SDK 从不读取全局凭据文件(~/.config/huaweicloud/credentials.json、~/.hcloud/config.json)。
客户端初始化一次并复用:
import os
from huaweicloudsdkcore.auth.credentials import GlobalCredentials
from huaweicloudsdkbss.v2 import BssClient
creds = GlobalCredentials(os.environ["HUAWEICLOUD_SDK_AK"], os.environ["HUAWEICLOUD_SDK_SK"])
client = BssClient.new_builder().with_credentials(creds).with_endpoints(["https://bss.myhuaweicloud.com"]).build()
任何操作的首次查询都应从 references/related-commands.md 中复制精确的模板块(每个以 #### 标题锚定),不要凭记忆或 SDK 签名重建请求体。limit 默认 10,硬上限 100(BSS 对 limit > 100 返回 HTTP 400)。
工作流程分为四个阶段:Gate(确认用户指的是华为云伙伴账户,否则只问一个确认问题,不调用 BSS)、Route(将用户范围/时间匹配到 catalog.yml 中的入口点)、Gather(从模板块执行最小只读查询,停留在每个事实的 evidence_boundary 内)、Deliver(结论先行,再列事实)。
两个固定默认值:BSS 端点始终为 https://bss.myhuaweicloud.com / 区域 cn-north-1,不可替换;当用户表达只读意图时,默认使用当前 profile 和当前(或给定)账期,仅在语义需要时一次询问一个阻塞性 ID(如 customer_id)。
适用场景
- 伙伴查询子客户列表与新客标签
- 查询伙伴/客户余额与欠费
- 查询收支明细与调账记录
- 查询云经销商列表
- 查询代金券额度与优惠券的自身/已发放/记录
- 查询消费子客户、消费明细与月度账单
- 查询包年包月资源、按需资源与资源包
- 查询订单列表、订单详情与退款详情
- 查询服务/资源/用量/单位/地域字典
限制
- 服务范围:仅限 BSS 伙伴(代售)只读查询。非华为云或其他云厂商账户不在范围内。
- 拒绝路由:支付、退款、退订、恢复、发放/回收(额度和优惠券)、创建/更新/删除、实名认证、定价报价——一律一句话拒绝,不调用 BSS,不收集证据。
- 不泄露:不输出凭据、完整业务 ID、profile/区域信息。
- 不外推:分页、部分时间窗口、零/低金额结果不能表述为"整个账户"或"无进一步费用"。
- 官方身份:不代表华为云;结论仅基于当时发现的证据。
- 响应语言与用户一致。
- 环境就绪:若 SDK/凭据缺失,转达前置条件清单,不代替用户安装或配置。
错误处理:domain_id has no access to this api 表示账户无伙伴访问权限,立即停止并告知用户该账户不是伙伴;CBC.0151 表示访问被拒,报告权限不足,不重试;NETWORK_ERROR/超时建议使用 HTTPS_PROXY 并重试一次;CBC.80021021 表示查询跨度超过 1 年,需缩小时间范围;优惠券/列表查询 HTTP 400 表示 limit > 100,需以 limit ≤ 100 重试。
质量上报:本技能集成 skill_quality_sdk.py,每次运行自动上报 trace_id、状态(success/biz_fail/sys_fail/cancel)、错误码、成本及脱敏输入/输出到运维控制台。上报凭据仅来自环境变量(SKILL_QUALITY_AK / SKILL_QUALITY_SK,回退到 HUAWEICLOUD_SDK_AK / HUAWEICLOUD_SDK_SK、HUAWEI_CLOUD_SDK_AK / HUAWEI_CLOUD_SDK_SK、HW_ACCESS_KEY / HW_SECRET_KEY,或直接 SKILL_QUALITY_TOKEN)。可选环境变量包括 SKILL_QUALITY_ENDPOINT(默认 https://skillsapi.developer.myhuaweicloud.com/api/quality/report)、SKILL_QUALITY_NAME、SKILL_QUALITY_DISABLE、SKILL_QUALITY_TIMEOUT(默认 3 秒)。