命令字典
Slash 命令、CLI 子命令、Hook 事件、启动参数的字典与演进史。
Slash 命令、CLI 子命令、Hook 事件、启动参数的字典与演进史。
将项目中的 Anthropic SDK 依赖跨主要版本升级(目前指 Python `anthropic` 包从 0.x 升级到 1.x)
/claude-api [migrate|upgrade|...]/claude-api upgrade 是 Claude Code 内置 claude-api Skill 下的一个子命令,用途是把项目里的 Anthropic SDK 依赖跨主要版本升级——目前specifically 指 Python anthropic 包从 0.x 升级到 1.x。它不是模型迁移工具(那是同一 Skill 下的 /claude-api migrate),而是专门处理 SDK 包本身的破坏性变更。
官方文档明确写出版本门槛:upgrade 子命令要求 Claude Code v2.1.236 或更高版本。这个 Skill 随 Claude Code 内置分发,无需单独安装;它源码同时开放在 Anthropic 官方 anthropic/skills 仓库中,也可以作为独立 Skill 装进其他支持 Agent Skills 的环境。
/claude-api upgrade python
语法为 /claude-api upgrade [python] [scope],可以在语言之后追加作用域(目录或文件),用于指定要升级的目录或文件:
/claude-api upgrade python src/
除了手动输入,claude-api Skill 在以下情况会自动激活(不一定直接进入 upgrade 分支,但会加载相关参考资料):
import anthropic(Python)或 import @anthropic-ai/sdk(TypeScript/JS)命令内部按官方仓库 python/claude-api/sdk-upgrade.md 定义的流程执行:
它会处理的 0.x → 1.x 关键变更包括:
httpx2 依赖替换.with_raw_response 相关调用需要 await(异步化)claude-api Skill 支持通过 Claude Code 插件市场安装到其他项目:
/plugin marketplace add anthropics/skills
/plugin install claude-api@anthropic-agent-skills
或用 npx skills add 方式安装到任意支持 Agent Skills 的环境:
npx skills add https://github.com/anthropics/skills --skill claude-api
| 约束 | 说明 |
|---|---|
| 版本门槛 | 官方文档要求 upgrade 子命令需要 Claude Code v2.1.236 或更高版本 |
| 语言覆盖 | 目前只有 Python 捆绑了完整的主版本升级指南;其他语言的 SDK(TypeScript、Go、Java 等)没有捆绑升级指南,会转而引导用户查看对应 SDK 的 CHANGELOG |
| Python 版本 | 升级目标(anthropic 1.x)要求 Python ≥ 3.10 |
| 前提条件 | 目标主版本(1.x)必须已经发布,否则命令流程的 Step 0 无法确定目标版本 |
/claude-api upgrade | /claude-api migrate | |
|---|---|---|
| 迁移对象 | Anthropic SDK 包本身(0.x → 1.x) | 调用代码使用的 Claude 模型(如迁移到 Claude Opus 5) |
| 支持语言 | 仅 Python 有完整捆绑指南 | 全部 8 种 SDK 语言(Python、TypeScript、C#、Go、Java、PHP、Ruby、cURL) |
| 触发方式 | /claude-api upgrade [python] [scope] | /claude-api migrate [target-model] |
| 典型改动 | httpx2 依赖、异步 .with_raw_response、移除废弃参数/Text Completions | 模型 ID 替换、thinking 参数形态变化、effort 校准、拒绝(refusal)兜底处理等 |
anthropic 0.x,需要跨主版本升级到 1.x,且调用点较多、属于机械式改动(而非少量深度自定义 httpx 接线的场景)migrate 搞混:upgrade 只处理 SDK 包主版本变更,不做模型迁移;如果目的是换模型(比如切到 Claude Opus 5),应该用 /claude-api migrate 而不是 upgrade。anthropic.Timeout 而不是 httpx.Timeout,因为前者的重新导出已经指向了更新后的 httpx2 包。/claude-api [migrate|upgrade|...] 完整语法与 upgrade 的 v2.1.236+ 版本要求migrate 子命令细节upgrade 的执行流程与 0.x→1.x 关键变更列表/claude-api upgrade python 的经验记录(diff 审查、类型检查、Timeout 写法等实践建议)新增 upgrade 子命令用于迁移 Python 项目从 anthropic 0.x 到 1.x