(已废弃)更新指定 Skill 的元数据或内容。
PUT /api/v1/cloud/skills/{skill_id}
⚠️ 本端点已废弃,将在后续版本下线。更新指定 Skill 的元数据或内容。仅支持 JSON 请求体。
- 内容更新请改用 创建 Skill 版本:
POST /api/v1/cloud/skills/{skill_id}/versions。通过本端点更新content时,内部同样会生成一个新版本,而非原地覆盖。name不可修改:Skill 名称在所有版本间必须保持一致,传入与当前不同的name会返回 400。- 仅
description/metadata补丁更新仍可用,但同样计划下线。
请求头
| 头部 | 必选 | 说明 |
|---|---|---|
Authorization | 是 | Bearer <PAT 或 SAT> |
Content-Type | 是 | application/json |
路径参数
| 参数 | 类型 | 必选 | 说明 |
|---|---|---|---|
skill_id | string | 是 | Skill 的唯一标识符 |
请求体
| 字段 | 类型 | 必选 | 说明 |
|---|---|---|---|
name | string | 否 | ⚠️ 已废弃:不再支持改名——传入且与当前 name 不同返回 400;等于当前值时为 no-op(无替代:name 跨版本不可变) |
description | string | 否 | ⚠️ 已废弃:更新 Skill 壳的描述,将下线(替代:描述随每个版本的 SKILL.md frontmatter 维护) |
content | string | 否 | ⚠️ 已废弃:base64 编码 zip 包,内部转为创建新版本;纯文本 content 已下线,传入返回 400(替代:POST /skills/{skill_id}/versions) |
content_encoding | string | 否 | ⚠️ 已废弃:content 为 base64 编码 zip 时必须设为 "base64"(替代:同上) |
metadata | object | 否 | ⚠️ 已废弃:替换当前存储的元数据对象,将下线(替代:暂无,后续版本移除) |
示例请求
示例响应
HTTP 200 OK
响应说明
updated_at字段会更新为操作时间- 更新
content时会生成一个新版本,latest_version指向新版本 - 仅更新元数据时不产生新版本
- 未提供的字段保持原值不变
错误码
| HTTP | type | 触发条件 |
|---|---|---|
| 400 | invalid_request_error | 使用 multipart 而非 JSON 请求体 |
| 400 | invalid_request_error | 传入与当前不同的 name(不允许改名),或 base64 zip 中 SKILL.md 的 name 与该 Skill 既有 name 不一致 |
| 400 | invalid_request_error | 传入无 content_encoding 的纯文本 content(已下线,请改用 base64 zip 或版本端点) |
| 401 | authentication_error | 缺少或无效的认证令牌 |
| 404 | not_found_error | Skill 不存在或不再可访问 |
| 409 | conflict_error | 乐观锁冲突 |