Provider Key Manager 是一个面向 OpenClaw 多 agent 架构的供应商 API Key 管理技能,核心目标是实现“一条命令更换供应商 API Key,全员生效,零遗漏”。
用途与背景 在 OpenClaw 多 agent 架构下,每个 agent 都有独立的 models.json。更换一个 provider key 原本需要:修改 openclaw.json 全局配置、修改 13+ 个 agent 的 models.json、更新 pass 存储、重启 Gateway、逐个验证。一个 key 要改 15+ 处,漏改一个就报错。本技能通过环境变量统一引用解决这一问题。
核心方案 OpenClaw 原生支持 ${ENV_VAR} 语法引用环境变量。核心原则包括:API Key 只存在 env.vars 中(单一真相源);所有 provider 的 apiKey 用 "${ENV_VAR}" 引用;各 agent 的 models.json 删除 apiKey 字段,继承全局 provider;换 key 等于改一个 env var 加重启,全员自动生效。
主要能力(命令)
- 审计当前配置:python3 ~/clawd/skills/provider-key-manager/scripts/manager.py audit,扫描所有 agent 的 models.json,报告使用 ${ENV_VAR} 引用的 provider、硬编码 apiKey 的 provider、key 值不一致的 agent。
- 迁移到环境变量模式:python3 ~/clawd/skills/provider-key-manager/scripts/manager.py migrate [--provider zai] [--dry-run],自动将 openclaw.json 中的硬编码 key 移入 env.vars、替换 provider apiKey 为 "${ENV_VAR}"、从各 agent models.json 中删除 apiKey 字段(继承全局)、更新 pass 存储、生成迁移报告。
- 更换 API Key:python3 ~/clawd/skills/provider-key-manager/scripts/manager.py update <provider> <new-key> [--base-url <url>],一条命令完成更新 env.vars 中的 key、如有 agent 仍硬编码则同步更新、更新 pass 存储、测试 key 可用性、输出重启命令。
- 测试 Key 可用性:python3 ~/clawd/skills/provider-key-manager/scripts/manager.py test <provider>,对指定 provider 发送最小请求,验证 key 有效。
- 查看 Provider 总览:python3 ~/clawd/skills/provider-key-manager/scripts/manager.py status,显示所有 provider 的 key 来源、baseUrl、模型列表。
触发词 换key、更换key、provider key、API key 更换、模型key、key管理、供应商密钥。
Provider 与环境变量映射 zai → ZAI_API_KEY → pass 路径 api/zai;xingjiabiapi → XINGJIABIAPI_KEY → api/xingjiabiapi;xai → XAI_API_KEY → api/xai;xingsuancode → XINGSUANCODE_KEY → api/xingsuancode;moonshot → MOONSHOT_API_KEY → api/kimi;minimax → MINIMAX_API_KEY → api/minimax;xinyuan → XINYUAN_API_KEY → api/xinyuan;boluobao → BOLUOBAO_API_KEY → api/boluobao;google → GOOGLE_API_KEY → api/google-ai-studio。
架构说明 openclaw.json 中的 env.vars 存放各 provider 的 key,作为单一真相源;models.providers 中的 apiKey 通过 ${ENV_VAR} 引用;各 agent 的 models.json 不再包含 apiKey,继承全局 provider。
注意事项 env.vars 中的 key 是明文,但 openclaw.json 已在 .gitignore,不会被 commit;per-agent models.json 仍需保留 provider 结构,只是删除 apiKey 字段;迁移后换 key 流程为 manager.py update zai <new-key> → Gateway 重启 → 完成;回退方案为迁移前自动备份所有 models.json 到 /tmp/provider-key-backup/。
适用场景 适用于使用 OpenClaw 多 agent 架构、需要频繁轮换或同步多个供应商 API Key 的工作区,尤其是 agent 数量较多、手工维护容易遗漏的场景。
限制 资料未提供该技能的收费、价格、平台兼容范围、性能指标等信息;具体行为以实际脚本实现为准。