导入技能包¶
导入技能 ZIP 包及其中的静态文件,并创建版本 1 的活动技能。可以用表单字段覆盖包内清单的名称、描述、分类和标签。
POST https://moi.matrixorigin.cn/newmoi/workspaces/{workspace_id}/skills/import
调用前准备¶
先检查技能包确认包格式通过校验。准备有目标工作区访问权限的个人访问令牌、目标工作区 ID 和本地技能包文件。
下方示例使用:
$AI_STUDIO_API_KEY:实际个人访问令牌,通过X-API-KeyHeader 传递。$WORKSPACE_ID:要导入技能的工作区 ID,通过X-Workspace-IDHeader 传递。
该接口的请求类型为 multipart/form-data;示例使用 curl -F 提交文件,不要添加 Content-Type: application/json。
路径参数¶
参数 |
类型 |
是否必填 |
说明 |
|---|---|---|---|
|
string |
是 |
当前工作区 ID。 |
表单字段¶
字段 |
类型 |
是否必填 |
说明 |
|---|---|---|---|
|
file |
是 |
|
|
string |
否 |
覆盖 |
|
string |
否 |
覆盖 |
|
string |
否 |
覆盖 |
|
string |
否 |
JSON 字符串数组,例如 |
请求示例¶
curl -X POST "https://moi.matrixorigin.cn/newmoi/workspaces/$WORKSPACE_ID/skills/import" \
-H "X-API-Key: $AI_STUDIO_API_KEY" \
-H "X-Workspace-ID: $WORKSPACE_ID" \
-F "file=@./skill-package.zip" \
-F 'tags=["摘要","文本处理"]'
成功响应¶
成功时返回 201。静态文件随导入结果保存;后续技能版本更新不会使这些文件自动回到历史版本。
{
"code": 0,
"data": {
"skill": {
"id": "skill_01",
"workspace_id": "ws_01",
"name": "摘要技能",
"description": "总结输入内容。",
"status": "active",
"source_type": "custom",
"source_ref": "skill_package:sha256:abc123",
"version": 1
},
"files": [
{
"file_path": "SKILL.md",
"file_kind": "manifest",
"media_type": "text/markdown",
"sha256": "abc123",
"size_bytes": 512
}
],
"warnings": []
}
}
响应字段如下。
字段 |
类型 |
说明 |
|---|---|---|
|
integer |
成功时为 |
|
object |
新建的技能; |
|
string |
指向导入压缩包摘要的技能包来源引用。 |
|
array |
已保存的静态文件元数据。 |
|
string(字符串数组) |
非阻塞导入警告。 |
错误响应¶
{
"code": 2,
"message": "<错误信息>",
"details": {
"reason": "SKILL_PACKAGE_INVALID_ZIP"
}
}
常见 HTTP 错误¶
HTTP 状态码 |
错误代码 |
常见原因 |
建议操作 |
|---|---|---|---|
|
|
包格式、清单、表单 |
根据 |
|
|
压缩包或解压后的内容超出大小限制。 |
缩小包体或移除不需要的文件。 |
|
|
缺少有效身份凭据。 |
检查 API Key。 |
|
|
当前身份没有导入技能包的权限。 |
检查工作区授权。 |
|
|
技能包存储或授权依赖暂不可用。 |
稍后重试。 |