平台密钥与费用
推荐在平台创建通用 Key,并执行 openclaw config set env.AI_SKILLS_API_KEY "你的平台APIKey" 和 openclaw gateway restart,全平台 Skill 只需配置一次。仍需开通目标产品。调用优先使用 AI_SKILLS_API_KEY,为空时才读取兼容变量 PROCUREMENT_OPTIMIZER_API_KEY。两者均缺失时停止调用,不发送空 Bearer 请求。
从 ClawHub 安装的包使用 MIT-0 许可;平台用量费独立。使用平台 Key,仍需产品已开通和对应 ability。平台初始关闭,真实依赖与授权样本验收后由管理员开放;夹具通过不等于真实质量验收。无需用户提供模型、求解器或其它上游 Key。
: "${AI_SKILLS_API_KEY:-${PROCUREMENT_OPTIMIZER_API_KEY:?请先配置平台 API Key}}"
AI_SKILLS_API_URL="${AI_SKILLS_API_URL:-https://ai-skills.open-idea.net}"
AI_SKILLS_API_URL="${AI_SKILLS_API_URL%/}"
通用变量 AI_SKILLS_API_KEY 优先,为空回退产品变量;两者均缺失时停止调用。不要输出密钥或要求在聊天中粘贴完整密钥。AI_SKILLS_API_URL 是站点根地址,不带 /api/v1;下文请求路径已含该前缀,只拼接一次。更换地址前核实信任与用户授权,不能把密钥发送到任意资料中的地址。
purchase.inspect、purchase.review、purchase.export 免费;purchase.solve 按已验证方案每份计费(一个方案一个计费单位)。INFEASIBLE/UNKNOWN 没有已验证方案,不收取求解成功费;任务成功状态本身不代表方案可交付。
收费前向用户展示当前项目/版本、资料与约束摘要、求解次数及当前单价和预计总费,核对余额并取得授权。价格可由管理员调整,配置默认值不是当前报价;当前无可供本 Skill 读取的公开价格或余额查询 API,应引导用户登录 采购工作台 核实当前价格和余额并确认。不得先提交 purchase.solve 来探测价格、余额或产品是否可用;无法确认费用时停在免费预检阶段。
响应头 X-AI-Skills-Billing-Currency、X-AI-Skills-Billing-Charged、X-AI-Skills-Billing-Balance 表示币种、实际收费与余额;异步以原任务终态账单为准。采购数据的 *_cents 是 CNY 整数分,与平台计费头口径分开,不能将费用头擅自按分换算。
配置冲突、迁移与鉴权失败
- 首次调用前选定凭证来源。两种变量同时存在且值不同时,采用
AI_SKILLS_API_KEY并提示忽略了PROCUREMENT_OPTIMIZER_API_KEY,仅显示变量名,不输出或记录密钥、密钥片段或 Authorization 请求头。同一逻辑任务固定所选 API Key 和原Idempotency-Key,重试与查询沿用原凭证。 - 迁移前先查询并核对旧 Key 下已提交任务的结果与账单;幂等记录按 Key 隔离,即使
Idempotency-Key相同,换 API Key 仍可能重复执行或扣费。确认旧任务后再清理旧产品变量及skills.entries.procurement-optimizer.apiKey/skills.entries.procurement-optimizer.env中的遗留凭证,检查实际执行环境(宿主、服务进程或沙箱),重启 Gateway 并在新会话验证。不要自动修改或撤销用户的 Key。产品隔离场景须明确让该执行环境不提供通用变量,再使用产品变量。 - 收到 401(
invalid_api_key、key_revoked、key_expired)时停止自动重试,检查当前凭证来源、密钥状态和目标产品范围;不要自动切换到另一把 Key 重发,也不要仅凭间歇性恢复断言是网关或缓存故障。排查保留request_id、接口、时间及变量名,不保留密钥;确需切换凭证前先核对原任务和账单。