OnestarQQ/oauth-disguise-skill

GitHub: OnestarQQ/oauth-disguise-skill

这是一个 OpenClaw 技巧,通过环境变量注入将 Anthropic OAuth 令牌伪装成 API 密钥,以解决在 OpenClaw 网关中调用官方模型时的认证限制。

Stars: 0 | Forks: 0

# OAuth 伪装技巧 一项用于配置 Anthropic OAuth 令牌(`sk-ant-oat01-*`)的技巧,使其通过环境变量注入作为 API 密钥在 OpenClaw 中工作。 [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) [![OpenClaw Skill](https://img.shields.io/badge/OpenClaw-Skill-blue)](https://clawhub.com) ## 功能 - 将 Anthropic OAuth 令牌转换为可用的 API 密钥 - 环境变量注入以实现安全的令牌管理 - 双提供商支持(官方 API + 代理回退) - 每个代理的配置选项 - 详细的故障排除指南 - 安全的令牌处理(在配置输出中自动编辑) ## 安装 ### 方法 1:使用 skillhub(推荐) ``` skillhub install oauth-disguise ``` ### 方法 2:使用安装脚本 ``` # 克隆 repository git clone https://github.com/huangyixing520-tech/oauth-disguise-skill.git cd oauth-disguise-skill # 运行 setup script ./setup.sh ``` ### 方法 3:手动安装 1. 克隆此仓库或下载 skill 文件夹 2. 将 `oauth-disguise` 文件夹复制到您的 OpenClaw skills 目录: cp -r oauth-disguise ~/.openclaw/workspace/skills/ 3. 重启 OpenClaw gateway ## 用法 ### 基本配置 ``` openclaw config patch '{ "env": { "vars": { "ANTHROPIC_API_KEY": "sk-ant-oat01-YOUR_TOKEN" } }, "models": { "providers": { "anthropic-official": { "baseUrl": "https://api.anthropic.com", "apiKey": "${ANTHROPIC_API_KEY}", "api": "anthropic-messages", "models": [ {"id": "claude-sonnet-4-20250514", "name": "Claude Sonnet 4"}, {"id": "claude-opus-4-6", "name": "Claude Opus 4.6"} ] } } }, "agents": { "defaults": { "model": { "primary": "anthropic-official/claude-sonnet-4-20250514" } } } }' ``` ### 重启网关 ``` openclaw gateway restart ``` ### 验证 运行 `session_status` 或检查 `openclaw status`。查找: - `🧠 Model: anthropic-official/*` → ✅ 成功 - `custom-proxy/*` 或回退通知 → ❌ 令牌无效或认证冷却 ## 使用场景 在以下情况下,此技巧非常有用: 1. **OAuth 令牌身份验证错误**:您拥有 Anthropic OAuth 令牌(`sk-ant-oat01-*`),但在直接调用 API 时出现 `authentication_error` 2. **从代理切换到官方 API**:从第三方代理服务迁移到 Anthropic 官方 API 3. **Claude 订阅令牌**:配置 Claude Pro/Team 订阅令牌以供 API 使用 4. **双提供商设置**:同时保留官方 API 和代理作为回退选项 ## 高级配置 ### 每个代理配置 仅应用于单个代理(其他代理保持使用代理): ``` openclaw config patch '{ "agents": { "list": [{ "id": "YOUR_AGENT_ID", "name": "Agent Name", "workspace": "/path/to/workspace", "model": {"primary": "anthropic-official/claude-opus-4-6"} }] } }' ``` ### 双提供商设置 在使用官方 API 的同时将代理作为回退: ``` { "env": {"vars": {"ANTHROPIC_API_KEY": "sk-ant-oat01-xxx"}}, "models": { "providers": { "custom-proxy": { "baseUrl": "https://your-proxy.com/", "apiKey": "proxy-key", "api": "anthropic-messages", "models": [{"id": "claude-sonnet-4-5", "name": "Claude Sonnet 4.5"}] }, "anthropic-official": { "baseUrl": "https://api.anthropic.com", "apiKey": "${ANTHROPIC_API_KEY}", "api": "anthropic-messages", "models": [ {"id": "claude-sonnet-4-20250514", "name": "Claude Sonnet 4"}, {"id": "claude-opus-4-6", "name": "Claude Opus 4.6"} ] } } } } ``` ## 故障排除 ### 常见问题 | 症状 | 原因 | 修复方法 | |---------|-------|-----| | 仍显示 `custom-proxy/*` | defaults.model.primary 错误 | 设置为 `anthropic-official/MODEL_ID` | | 切换令牌后回退 | 快速切换导致的认证冷却 | 等待 5 分钟,重启网关 | | `env variable missing` | 网关未重启 | `openclaw gateway restart` | | 工作一段后停止 | 令牌已过期 | 在 `env.vars` 中替换令牌,重启 | ### 安全说明 - 令牌在 `config.get` 输出中会自动编辑(`__OPENCLAW_REDACTED__`) - 使用这些令牌直接 curl 会失败(仅通过 OpenClaw 工作) - 切勿将包含原始令牌的 `openclaw.json` 提交到版本控制 - 使用 `env.vars`(而非内联 `apiKey`)将令牌集中管理 ## 贡献 欢迎提交问题请求和拉取请求以改进此技巧。 ## 许可证 MIT License - 详见 [LICENSE](LICENSE) 文件。
标签:AI, Anthropic, API代理, API密钥, CIS基准, Claude, Cutter, CVE检测, Homebrew安装, OAuth, OpenClaw, Skill, 云资产清单, 代理配置, 令牌转换, 大模型, 安全配置, 工具, 开源, 数字取证, 环境变量注入, 自动化代码审查, 自动化脚本, 逆向工程