本文档帮助你快速上手阿里云 AI 治理中心(AI Registry)的 Skill 管理功能。控制台操作无需任何网络配置,浏览器登录即可完成从创建到发布的完整流程。
概述
AI Registry(AI 治理中心)是阿里云 MSE 提供的 AI 资源管理平台,Skill 是其核心资源类型之一。一个 Skill 是一个可被 AI Agent 复用的能力单元,由 SKILL.md 描述文件和可选的资源文件组成。通过 AI Registry,你可以集中管理 Skill 的版本、发布和分发。
Skill 版本生命周期:草稿(可编辑)→ 待发布(审核通过)→ 已发布(对外服务,内容不可改)。
前提条件
条件 | 说明 |
阿里云账号 | 已拥有阿里云账号,并已开通 AI Registry 服务 |
RAM 权限 | 账号拥有 Skill 相关操作权限。如需为 RAM 用户授权,请参考 AI 治理中心 RAM 权限配置指南 |
步骤一:创建工作空间
工作空间是 AI 治理中心中的资源隔离容器,用于按环境或团队划分 AI 资产边界。
登录 MSE 控制台,在左侧导航栏选择 AI Registry,进入 AI 治理中心。
在左侧导航栏选择 工作空间,点击 创建工作空间。
填写以下参数后,点击 创建:
配置项
是否必填
说明
名称
是
最多 64 个字符
描述
否
最多 512 个字符
标签
否
输入后按回车确认,用于业务分类和检索
扫描策略 - 拦截风险等级
否
可选低、中、高,默认中
扫描策略 - 跳过容忍度
否
0~100 的百分比,默认 80
创建成功后,工作空间将出现在工作空间列表中。
步骤二:创建或导入 Skill
已有本地 Skill 目录的用户请选择"导入已有 Skill",从零开始创建的用户请选择"新建 Skill"。
导入已有 Skill
在 Skill 列表页点击 导入 Skill,系统支持两种导入方式:
导入预置 Skill:系统内置了官方预置 Skill 模板,可直接勾选需要的 Skill 一键导入。
上传文件:将本地 Skill 目录打包为 ZIP 文件上传。
导入后系统自动生成草稿版本。
新建 Skill
在左侧导航栏选择 ,在页面顶部的工作空间下拉框中选择目标工作空间。
点击右上角 + 新建 Skill。
填写基础信息:
配置项
是否必填
说明
Skill 名称
是
最多 64 个字符,仅支持字母、数字、下划线和中划线
描述
是
最多 1000 个字符,描述 Skill 的功能和用途
标签
否
输入后按回车确认,用于业务分类和检索
展开 高级选项 可设置可见性:私有(默认,仅自己可见)或 公开(所有人可见)。
在编辑器中编写
SKILL.md(必填)。SKILL.md使用 Markdown 格式,左侧编辑右侧实时预览。基本结构如下:name(必填):Skill 名称,用于标识description(必填):用途描述,说明 Skill 的功能和适用场景instructions(必填):核心指令,定义 Agent 如何使用该 Skill可选字段:
tools(工具列表)、dependencies(依赖项)等
编辑完成后,点击右上角 立即创建。
步骤三:提交审核并发布
进入 Skill 详情页,确认 SKILL.md 内容无误。
点击 提交审核。系统自动进行内容安全扫描(包括提示词注入检测、合规检查等)。
如需对 Skill 内容进行安全扫描,需先开通阿里云的 AI 安全护栏。具体开启方式请参考 开通 AI 安全护栏按量付费。
审核通过后版本进入 待发布 状态,点击 发布版本。
版本发布后,在右侧信息区域确认 启用 状态已开启。
若审核未通过:在 Skill 详情页查看审核结果及失败原因,根据提示修改 SKILL.md 内容后重新点击 提交审核。
步骤四:使用 Skill
发布成功的 Skill 可通过 Nacos CLI、Java SDK、AgentScope 三种方式集成使用。客户端运行前需根据部署位置选择访问方式:
公网访问:适合本地开发、IDC 或未部署在阿里云 VPC 内的应用。先按AI 治理中心公网访问配置指南添加公网接入点,并将调用方公网出口IP 加入白名单。
VPC 私网访问:适合部署在阿里云 VPC 内的应用。按下文配置 VPC 私网访问后,在已关联 VPC 内的ECS 上运行客户端。
选择集成方式
集成方式 | 适用场景 | 技术栈要求 |
Nacos CLI(推荐) | 命令行操作、脚本集成 | Node.js 环境 |
Java SDK | Java 应用集成 | JDK 1.8+,Maven 项目 |
AgentScope | 使用 AgentScope 框架的 AI 应用 | JDK 17+,Maven 项目 |
配置 VPC 私网访问
如果选择公网访问,可跳过本小节,直接使用公网访问配置指南中的接入点域名作为后续host/ serverAddr。
如果选择VPC 私网访问,可在 AI治理中心控制台「接入管理」中一键关联 VPC,系统自动完成 PrivateLink 终端节点配置,无需手动到 VPC 控制台创建终端节点。
前提条件:
已在目标地域创建 VPC(参考 创建/删除专有网络与交换机)
已创建用于部署应用的 VPC 和交换机。如尚未创建,请参考创建专有网络和交换机
已创建安全组。如尚未创建,请参考使用安全组
配置步骤:
登录 MSE 控制台,在左侧导航栏选择 。
在 VPC 接入 区域点击右上角 + 关联 VPC。
在弹窗中按以下参数配置:
配置项
说明
选择 VPC
选择已创建的目标 VPC
可用区与交换机
选择 VPC 内的可用区及对应交换机,可点击 + 添加交换机 配置多个;建议至少选择两个可用区以具备高可用能力
安全组
选择允许 VPC 内访问的安全组
描述
可选,便于识别该接入记录
点击 确认关联。系统自动创建 VPC 端点,通常 1~2 分钟生效,状态变为
可用即接入完成。
验证连通性:
接入完成后,VPC 接入 区域顶部展示当前地域的私网访问域名。若 VPC 内已有 ECS 实例,可在 ECS 上执行以下命令验证:
# 测试网络连通性(以杭州地域为例)
ping -c 4 airegistry.cn-hangzhou.mse.aliyuncs.com方式 A:Nacos CLI
凭证配置: 在运行客户端的设备上执行以下命令配置登录凭证:
npx @nacos-group/cli profile edit按提示填写:
配置项 | 说明 | 示例 |
| Al 治理中心访问地址。 公网访问填写公网接入点域名; VPC 私网访问填写私网访问域名。 | 私网: 公网: |
| 访问端口 |
|
| 认证方式,固定为 |
|
| 阿里云 AccessKey ID |
|
| 阿里云 AccessKey Secret |
|
| 工作空间命名空间 ID(在控制台工作空间页面查看) |
|
验证连接:
npx @nacos-group/cli skill-list若返回 Skill 列表或空列表,说明配置成功。
下载 Skill: 支持 QwenPaw、Qoder、Claude、Codex、Cursor 等多种 AI 编程工具。在控制台 Skill 详情页选择对应工具后,页面自动生成对应命令,复制执行即可:
# 下载最新版本
npx @nacos-group/cli skill-get <skill-name>
# 下载指定版本
npx @nacos-group/cli skill-get <skill-name> --version 1.0.0 -o ~/my-skills
# 按标签下载
npx @nacos-group/cli skill-get <skill-name> --label latest方式 B:Java SDK
添加依赖:
<dependency>
<groupId>com.alibaba.nacos</groupId>
<artifactId>nacos-client</artifactId>
<version>${nacos.version}</version>
</dependency>初始化 AiService:
将 SERVER_ADDR 替换为公网接入点域名或私网域名。
Properties properties = new Properties();
properties.setProperty(PropertyKeyConst.SERVER_ADDR, "airegistry.cn-hangzhou.mse.aliyuncs.com:80");
properties.setProperty(PropertyKeyConst.NAMESPACE, "xxxxxx-xxxx-xxxx-xxxx-xxxxxx");
properties.setProperty(PropertyKeyConst.ACCESS_KEY, "LTAI5tXXXXXXXXXXXXXX");
properties.setProperty(PropertyKeyConst.SECRET_KEY, "XXXXXXXXXXXXXXXXXXXXxx");
AiService aiService = AiFactory.createAiService(properties);一个AiService实例对应一个命名空间。访问多个命名空间时需分别创建实例;应用内尽量复用同一实例,退出时调用shutdown()释放资源。
下载 Skill ZIP:
SDK 提供按名称、按版本、按标签三种下载方式,返回 ZIP 字节数组(byte[]),包含 SKILL.md 和全部资源文件(二进制资源自动从 Base64 解码)。
try {
// 下载最新版本
byte[] skillZip = aiService.downloadSkillZip("my-first-skill");
// 下载指定版本
byte[] skillZipByVer = aiService.downloadSkillZipByVersion("my-first-skill", "1.0.0");
// 按标签下载
byte[] skillZipByLabel = aiService.downloadSkillZipByLabel("my-first-skill", "latest");
} catch (NacosException e) {
e.printStackTrace();
}订阅 Skill 变更:
通过 subscribeSkill 订阅 Skill 更新,当 ZIP 内容变化时通过监听器回调。version、label 可选,用于限定订阅范围:
try {
aiService.subscribeSkill("my-first-skill", null, null, new AbstractNacosSkillListener() {
@Override
public void onEvent(SkillEvent event) {
byte[] newZip = event.getSkillZip();
System.out.println("skill updated, size: " + newZip.length);
}
});
} catch (NacosException e) {
e.printStackTrace();
}方式 C:AgentScope
通过 agentscope-extensions-nacos-skill 模块在 AgentScope 框架中使用 AI 治理中心的 Skill。
添加依赖:
<dependency>
<groupId>io.agentscope</groupId>
<artifactId>agentscope-extensions-nacos-skill</artifactId>
</dependency>完整示例(复制即用):
将 SERVER_ADDR 替换为公网接入点域名或私网域名。
import com.alibaba.nacos.api.PropertyKeyConst;
import com.alibaba.nacos.api.ai.AiFactory;
import com.alibaba.nacos.api.ai.AiService;
import io.agentscope.core.ReActAgent;
import io.agentscope.core.model.DashScopeChatModel;
import io.agentscope.core.message.Msg;
import io.agentscope.core.nacos.skill.NacosSkillRepository;
import io.agentscope.core.skill.AgentSkill;
import io.agentscope.core.skill.SkillBox;
import java.util.Properties;
public class QuickStart {
public static void main(String[] args) throws Exception {
// 1. 连接 AI Registry
Properties props = new Properties();
props.put(PropertyKeyConst.SERVER_ADDR, "airegistry.cn-hangzhou.mse.aliyuncs.com:80");
props.put(PropertyKeyConst.NAMESPACE, "xxxxxx-xxxx-xxxx-xxxx-xxxxxx");
props.put(PropertyKeyConst.ACCESS_KEY, "your-access-key");
props.put(PropertyKeyConst.SECRET_KEY, "your-secret-key");
AiService aiService = AiFactory.createAiService(props);
// 2. 加载 Skill
NacosSkillRepository repo = new NacosSkillRepository(aiService, "public");
AgentSkill skill = repo.getSkill("my-first-skill");
// 3. 绑定到 Agent
SkillBox skillBox = new SkillBox(repo);
ReActAgent agent = ReActAgent.builder()
.name("MyAgent")
.model(DashScopeChatModel.builder()
.apiKey(System.getenv("DASHSCOPE_API_KEY"))
.modelName("qwen-max")
.build())
.skillBox(skillBox)
.build();
// 4. 对话
Msg response = agent.call(Msg.of("你好"));
System.out.println(response.getText());
aiService.shutdown();
}
}支持按版本(AGENTSCOPE_NACOS_SKILL_VERSION)或标签(AGENTSCOPE_NACOS_SKILL_LABEL)筛选具体版本,仓库为只读。
更多配置选项和高级用法请参考 AgentScope 对接 Nacos AI Registry 使用 Skill。
后续:管理 Skill 生命周期
发布上线后,还可以在控制台进行以下操作:
修改可见性:将 Skill 设为 公开 或 私有(私有仅 Owner 可见)
启用/禁用:控制 Skill 整体是否对外服务,禁用后所有版本立即停止服务
版本迭代:基于已发布版本创建新草稿 → 编辑 → 提交审核 → 发布,更新标签指向新版本
上线/下线:控制单个已发布版本对外可用或不可用
编辑业务标签:为 Skill 添加自定义标签用于分类检索
紧急下线:当 Skill 发现问题需紧急停止时,可禁用整个 Skill(影响所有版本),或只下线出问题的单个版本。删除 Skill 是不可逆操作,建议先禁用观察一段时间。
常见问题
Q:关联 VPC 列表中找不到目标 VPC?
确认当前登录账号在目标 VPC 所在地域具备 VPC 读取权限,且 VPC 与 AI 治理中心实例在同一地域。
Q:关联 VPC 后 ECS 上 ping 不通私网域名?
依次检查: 中该 VPC 的状态是否为 可用、ECS 是否位于已关联的 VPC 与可用区、安全组规则是否放行相应流量、是否使用了对应地域的私网域名。
Q:CLI skill-list 返回认证失败?
检查 AccessKey、SecretKey 是否正确,以及 RAM 用户是否已授权相关权限。
Q:CLI skill-release 返回 HTTP 400 parameter validate error?
评审是异步的,提交 skill-review 后立刻 skill-release 会因版本状态尚未变为 reviewed 而失败。等待几秒后通过 skill-describe 确认版本状态再重试。
Q:Java SDK 如何获取 Skill 资源文件?
downloadSkillZip 返回 ZIP 字节流,包含 SKILL.md 和所有资源文件。二进制资源自动从 Base64 解码,解压后即可使用。
更多参考
AI 治理中心工作空间管理指南:工作空间的创建、查询、编辑操作。
AI 治理中心 Skill 管理指南:Skill 版本管理、发布上线与下载使用。
AI 治理中心 VPC 私网访问配置指南:VPC 私网访问的配置步骤。
AI 治理中心 Prompt 管理指南:Prompt 的创建、版本管理、调试与优化。
AI 治理中心公网访问配置指南:公网接入点和 IP 白名单的配置步骤。
AI 治理中心 VPC 私网访问配置指南:VPC 私网访问的配置步骤。
Nacos CLI 接入 AI 治理中心:通过 Nacos CLI 接入 AI Registry。
Nacos Java SDK 接入 AI 治理中心:Nacos Java SDK 的接入配置与能力概览。
AgentScope 对接 Nacos AI Registry 使用 Skill:在 AgentScope 框架中引用 AI Registry Skill。