Skip to main content
AI SRE 面向 On-call 专业版及以上订阅的账户开放,无需申请。自 2026 年 9 月 16 日 8 点(北京时间)起,需在控制台开通后使用,并按实际用量计费,详见计费规则。

概述


Skill 是一个可复用的能力包。一个 Skill 由两部分组成:
  • 一段 SKILL.md 说明文档,告诉 Agent「什么场景下用、怎么用、按什么步骤做」;
  • 该 Skill 声明的允许使用的工具,以及可选的参考资源文件(脚本、模板、子文档等)。
Skill 被打包成 Skill 归档(.zip 或 .tar.gz,扩展名 .zip / .skill / .tar.gz / .tgz)上传到 AI SRE,.tar.gz 在安装时会被规范化为标准 zip。归档的根目录必须包含一个 SKILL.md 文件,其余资源文件可放在归档内任意位置,Agent 可在执行时按需读取。 启用后,该 Skill 即在会话中对 Agent 可见、可被调用。Agent 既可以自主判断何时调用某个 Skill,您也可以在对话框里用 /<skill-name>(如 /skill-creator)来显式触发它。 显式触发时还可以追加参数:/<skill-name> 参数1 参数2。SKILL.md 正文可以用 $1…$9 引用按空白拆分的位置参数,用 $ARGUMENTS 引用参数串的完整原文;这些占位符会在该轮对话发送前被替换为实际值。 如果只是想在消息里提到 /skill-name(比如问「\/skill-name 是做什么的?」)而不想触发它,可以在消息开头加一个反斜杠转义:以 \/ 开头的消息会被去掉这个反斜杠、按普通文本发送,不会被解析为命令。
团队同名 Skill 与 @ 限定语法。 Skill 名在同一团队内必须唯一,但不同团队可以各自拥有同名 Skill。当两个团队都启用了同名 Skill 且都在当前会话的可见范围内时,裸 /<skill-name> 无法确定指向哪一个,会被拒绝并提示可用的限定形式。此时需要使用 /<skill-name>@<team_id> 来消除歧义(例如 /deploy@5)。因此 @ 字符在 Skill 名中被保留,不能使用。
Skill 与 MCP 的区别:MCP 提供外部工具的接入能力,Skill 提供如何编排这些工具完成一类任务的方法论。两者配合使用——Skill 在 SKILL.md 里声明它需要哪些工具,包括内置工具和 mcp:服务名/工具名 形式的 MCP 工具。

SKILL.md 格式

SKILL.md 由 YAML frontmatter(元数据)和正文(Agent 可读的说明)两部分组成,以 --- 分隔:
frontmatter 字段如下:
venues 用于那些结构上离不开某类环境的 Skill——例如需要访问运行环境所在主机的本地二进制、本地文件或内网服务的 Skill,在云端 Sandbox 里根本无法工作。声明 venues: [byoc] 后,该 Skill 在云端 Sandbox 会话中既不会出现在 Agent 的可用 Skill 清单里,也无法通过 /<skill-name> 触发;只有绑定了自托管 Runner 的会话才能看到并调用它。
工具的写法有两种:
  • 内置工具:直接写工具名。可用的内置工具包括 read、write、edit、bash、grep、glob、skill、mcp、todo、time、webfetch、web_search 等。
  • MCP 工具:写成 mcp:服务名/工具名(如 mcp:my-server/query)。上传时只校验该 MCP 服务是否存在,具体工具名在会话中加载 MCP 时才会被验证。
AI SRE 运行时内置了几个 Skill,无需安装即可使用。flashduty 是其中一个范例:它通过 fduty 命令行覆盖整个 Flashduty API,让 Agent 可以排障故障、读取 AI 详情、查询告警、关联变更等。您可以参考它来编写自己的 Skill。另一个内置 Skill 是 github,Agent 会从 <available_skills> 中自主选用它,让 AI SRE 直接在 GitHub 仓库里工作——探索代码、调查 PR / 提交、按需开 PR 或 Issue;它需要安装 GitHub App(云端)或运行环境主机上的 gh(BYOC)。第三个内置 Skill 是 gitlab,能力与 github 对称:Agent 自主选用它在 GitLab 仓库里探索代码、追溯 MR / Issue、按需开 MR 或 Issue;它需要安装 GitLab App(云端)或运行环境主机上的 glab(BYOC)。详见 Apps。还有 flashduty-docs:它把 Flashduty 的官方文档(中英文两套页面、术语表与 Open API 规范)下载到运行环境本地,按主题检索后回答产品本身怎么用的问题——功能、设置、上限、套餐、兼容性、SDK 行为与影响、API 字段与错误码,覆盖 On-call、RUM、Monitors、AI SRE、状态页、平台与 Open API;回答会附上 docs.flashduty.com 的公开链接,并且只依据文档作答,文档没写到的地方会直说。它只读文档,不代替动手排查(RUM 的实际接入工作归 rum),文档包的地址由平台注入,无需配置。
上面几个只是举例,不是全部:运行时还内置 init、insight、artifact-design、alert-governance、monit-query 等 Skill,并会随版本增补。会话里 Agent 实际看到的可用清单以 <available_skills> 为准;想确认某条会话里到底有哪些内置 Skill,直接问 Agent 即可。

从市场安装


Skill 市场目录是 自定义 → 插件 → 概览 页插件目录的一部分:与 MCP 模板、内置 App 一起按类别列出,Skill 单独归在 Skill 类别(在「全部」页签下也会出现,行上带 Skill 类型标签)。目录上方的搜索框按名称或描述过滤,页签可只看某一类,类别标题右侧的「查看全部 N」可展开该类别;搜索词与所选页签都记在页面地址里,离开再回来仍在原来的位置。
1

找到要安装的模板

在 自定义 → 插件 → 概览 的 Skill 类别里找到目标模板,每行展示模板名称与简介。
2

确认安装

未安装的模板行右侧是一个圆形 + 按钮,点击 + 或点击整行,都会弹出「安装 Skill「〈模板名〉」」确认对话框,提示「将安装到账户,账号内所有成员可用。」——市场安装的 Skill 固定为共享范围(共享即账户级),不提供归属选择。点 安装 才真正调用安装接口,把模板内容复制到您的账户,成为一个普通 Skill 行,并标记其来源模板(列表上以 来自 Marketplace — 〈模板名〉 v〈版本〉 的悬停提示标识)。安装成功会提示「「〈模板名〉」安装成功」。
3

管理已安装项

已安装的模板行不再显示 +,而是显示 已启用。安装后的管理与更新都在 自定义 → 插件 → Skill 的 Skill 列表里进行,见下文「管理与检视」与「自动更新与手动更新」。
新账户会自动预装一组官方 Marketplace 模板:browser-automation(浏览器自动化 CLI,用于操作网站/仪表盘/监控 UI)、mcp-builder(指导创建 MCP 服务器)、monit-query(Monit 数据源查询)与 skill-creator(见下文「在对话中添加」)。这些预装 Skill 与手动安装的 Skill 完全一样,可以在下方「管理与检视」中启用/禁用、卸载或更新到最新版本。
同名冲突:若账户里已存在同名 Skill,且它不是从同一模板安装的(例如您手工上传的自定义 Skill),安装会被拒绝——市场安装不会覆盖或接管这类 Skill,即使选择覆盖更新也一样。此时请先删除该自定义 Skill,再安装同名市场模板。

自动更新与手动更新

当市场中的模板发布了更高版本时,对应 Skill 行会出现 有更新 标记。是否自动更新取决于该 Skill 是否被本地改动过:

纯净 Skill(未改动)

安装后未做任何本地修改的 Skill,会在列表加载时自动拉取市场最新版本并覆盖,无需手动操作;更新成功后会有提示。

已改动 Skill

被本地编辑或重新上传过的 Skill,自动更新会跳过,避免覆盖您的改动。它会保留「有更新」标记,需您手动点击更新并确认覆盖。
对已改动 Skill 执行更新,会用市场最新版本覆盖您的本地改动且无法恢复。界面会弹出「覆盖更新」确认框,请谨慎操作。重新安装市场版本后,本地改动标记会被清除,该 Skill 恢复为纯净状态、重新参与自动更新。

自定义 Skill


除了从市场安装,您也可以上传自己的 Skill 包。在 Skill 列表页点击 上传 Skill,在表单中填写: 上传时系统会自动校验:归档是合法 zip、根目录存在 SKILL.md、frontmatter 可解析、name 符合命名规则(字母开头,仅含字母、数字、-、_,长度 1–64)、声明的工具有效(内置工具存在、MCP 服务存在)。同一团队内Skill 名不能重复,重名会被拒绝并提示换名;不同团队可以各自拥有同名 Skill。
Skill 名以外的元数据(描述、版本、标签、作者、工具等)都从 SKILL.md 的 frontmatter 解析得到,无需在表单中重复填写。

覆盖上传(Replace)

当您要用新版本替换已有 Skill 时,上传端点支持两种覆盖模式,界面会在适当时机弹出「替换」确认对话框: 两种模式在替换成功后均返回更新后的 Skill 对象;若目标 Skill 不存在,返回 404 错误而非新建。不携带 replace 参数时(默认),重名归档会被直接拒绝,上传端点不会隐式覆盖已有 Skill。

在对话中添加(skill-creator)

除了上传 zip,您还可以直接在 AI SRE 会话里创建和打磨 Skill。skill-creator 是 Flashduty 在 Marketplace 提供、并默认预置到账户的一个 Skill,专门用来「造 Skill」。在任意会话里用 /skill-creator 触发,或直接用自然语言提出需求即可: Skill 列表页右上角的 在对话中添加 会新建一条会话,并预填一段需求描述:「我想添加一个 Skill。先问我是自己新建,还是从网上找现成的来装。找现成的就搜几个给我挑,我选好再装。」——即 Agent 会先问您要自己新建还是装现成的;选现成的先查插件目录/市场,目录里没有再联网搜索候选供您挑选,选好后再安装。提示词只是预填,不会自动发送。该按钮只在您有明确的可写入范围时显示:能授权到账户范围时始终显示,否则需要当前范围筛选恰好只选中一个您所属的团队(或您只属于一个团队)。
  • 从零创建:说「帮我创建一个用于排查 X 的 Skill」,或在一次排障结束后说「把刚才这套流程固化成一个 Skill」。skill-creator 会与您澄清意图、起草 SKILL.md、(可选)建立测试用例并据此迭代,满意后一键保存为账户里的 Skill。
  • 从网上找现成的:从「在对话中添加」进入并选择装现成的时,Agent 先查插件目录,目录里没有再联网搜索候选;选定后由它完成安装,成为一个普通 Skill 行。
  • 改写与优化:在某个 Skill 的检视面板点击 「在聊天中编辑」,会以 skill-creator 改写该 Skill;它也能帮您打磨 description,提升被正确触发的准确度。
Agent 完成起草后可一键把内容保存为 Skill;与已有 Skill 重名时,保存前会弹出「替换」确认对话框——底层即走按名称覆盖模式(replace=true,无 skill_id)。
Skill 归档大小有上限:通过对话中 Agent 打包保存的归档上限为 10 MB,通过网页表单或会话内呈现文件上传的归档上限为 100 MB。

管理与检视


Skill 列表以表格展示每个 Skill 的名称(含来源模板角标、「有更新」标记与「仅本地 Runner」角标)、范围(共享或团队)、版本、启用开关与操作列。仅声明了 venues: [byoc] 的 Skill 会带上「仅本地 Runner」角标,鼠标悬停显示「仅在绑定本地 Runner 的会话中可用,云沙箱会话中不可用」;Marketplace 的模板卡片上也有同样的角标,方便您在安装前就知道它需要自托管 Runner。列表上方的工具条提供范围筛选(全部 / 账户 / 团队)与搜索框,搜索按名称、描述或作者中的关键词过滤列表。
用列表或检视面板上的开关切换。只有已启用的 Skill 才会对 Agent 可见;禁用后 Agent 看不到、也无法调用它。
点击编辑按钮可更新描述与归属(作用域)。市场安装的 Skill 归属固定为账户,编辑表单中作用域不可改。如需修改 Skill 内容,请下载 zip、编辑后重新上传(这会创建新版本,并把该 Skill 标记为已改动)。
在检视面板选择「替换」,用一个新的 zip 覆盖当前 Skill 内容;SkillID 保持不变,对它的引用(如 /<skill-name> 触发)依然有效。
下载完整 zip 包(含 SKILL.md 和所有资源文件),便于离线编辑或备份。
将 Skill 从当前范围移除。正在使用它的活跃会话会持续失败,直到重新安装。此操作有确认提示。

检视面板

在列表中点击任意一行,打开 Skill检视面板:
  • 左侧:Skill 包的文件树(SKILL.md、README.md 等会优先作为默认预览文件)。
  • 右侧:选中文件的内容预览,顶部显示 Skill 描述。
  • 标题区:Skill 名(短引用形如 skill-xxxxxx)、范围标签(共享 / 团队名)、来源模板版本角标(鼠标悬停显示「来自 Marketplace — 模板名 v版本」)、有更新标记、作者、version、以及完整 SkillID。
  • 操作:在聊天中试用(向新会话注入 /<skill-name>)、更新到最新版本、在聊天中编辑、替换、下载、卸载。
  • 试试这样问:若该 Skill 在 SKILL.md 的 frontmatter 里声明了 examples,检视面板标题区下方会出现一个 试试这样问 开关,默认收起——示例问题不会直接铺开;点击展开后才列出最多 2 条示例问题,点击其中一条即以该 Skill 加该问题预填一条新会话消息(不会自动发送)。展开区底部提示「点问题会新建对话并填好,确认后再发送」。
Skill 包过大无法预览时,检视面板会提示体积并建议改用「下载」查看。

作用域


Skill 与其他资源(知识、MCP、Agent、运行环境)共用同一套两级作用域模型,分为账户级与团队级: 编辑权限:团队级 Skill 仅该团队的成员可以操作,组织管理员也需要先加入该团队;账户级 Skill 仅账户所有者或管理员可以操作;没有「创建者保留权限」这一例外。无编辑权限时,列表对应行显示为只读。 创建与改归属:上传新的团队级 Skill 时,您必须是目标团队成员;账户级上传仅限账户所有者或管理员。从市场安装是例外:安装固定为共享范围(账户级),账户内任何成员都可以安装,不需要所有者或管理员权限,也不能在安装时选择团队。编辑已有 Skill 时,账户所有者或管理员可以把它移动到任意团队,用于恢复空团队或离职成员留下的资源;普通成员只能移动到自己所属的团队。但市场安装的 Skill 不可改归属到团队——编辑表单中其作用域固定显示为账户;极少量早期遗留的团队级市场 Skill 可通过检视面板的「设为共享」提升为账户级。「设为共享」与账户级上传同门槛,仅限账户 Owner 或管理员:普通成员即使属于该 Skill 所在团队也不能自助提升,操作被拒绝时会提示「请管理员把它设为共享」。 运行时可见性:会话开始时,只会加载共享范围(账户级)的 Skill,以及当前会话所绑定团队的 Skill。当 Agent 在排障中读取另一个团队的知识后,该团队的 Skill 与 MCP 才会被按需挂载进当前会话。账户是运行时唯一的安全边界;对团队级 Skill 的使用同样受此可见性约束,团队不只是归属与编辑的标记。
对话框 / 自动补全下拉只展示共享范围的 Skill 以及您所属团队的团队级 Skill——这不只是菜单显示问题:手动输入的斜杠命令与自动补全受同一套按行范围门控(「可见即可解析」),不在当前会话可见范围内的团队级 Skill 不会被解析执行。具体而言:团队会话中调用其他团队的命令会被拒绝并提示不可用的原因;个人会话中,该 Skill 所在团队的成员手动输入命令可以解析(并按需挂载该团队),非成员输入则与输入了不存在的命令一样被拒绝。

相关页面


管理知识

用 DUTY.md 与知识为 Agent 提供团队上下文与排障经验。

MCP(外部工具)

接入外部工具,让 Skill 在 SKILL.md 中以 mcp:服务名/工具名 调用它们。

Agent

用 Agent 扩展 AI SRE 的协作与分工能力。

控制台

在会话中用 /<skill-name> 显式触发 Skill,或让 Agent 自主调用。

概述

了解 AI SRE 的整体能力与定位。