编写自定义 Skill
封装团队工作流程,让所有已连接 Showly 的智能体都能复用。
官方 Showly 技能涵盖了规范的发布循环。团队通常有特定于其堆栈的_额外_工作流程——品牌质量保证、内容合规性检查、自动本地化。您可以将这些作为自定义技能发送,任何 Showly 连接的代理都会拾取。
何时编写技能与仅编写脚本
在以下情况下编写技能:
- 工作流程是_意图触发_(用户说“部署”或“翻译”并且代理应该知道)。
- 工作流程具有值得编码的拒绝/安全模式(未经检查请勿发货,冻结期间请勿发布)。
- 它可以在团队成员或项目之间重复使用。
只需在以下情况下编写脚本即可:
- 工作流程在 CI 中运行,而不是在代理对话中运行。
- 这是一次性的,你会扔掉的。
Showly 感知技能剖析
技能是清单加上提示。最小值:
name: my-publish-with-localize
description: |
Use when the user wants to publish a Showly site that has
user-facing strings. This skill localizes new/changed strings,
runs `run_checks`, then proposes a publish.
trigger:
intents:
- "publish"
- "ship"
- "release"
mcp:
required:
- showly
- localizer
prompt: |
1. Call mcp__showly__get_site_context to read the change.
2. Identify new/changed strings in any *.tsx files.
3. Call mcp__localizer__translate for each new string.
4. Apply translations via mcp__showly__apply_site_patch.
5. Call mcp__showly__create_preview.
6. Call mcp__showly__run_checks (include `i18n-coverage`).
7. If checks pass, call mcp__showly__request_publish.
8. Refuse to call request_publish if any check failed.
字段参考
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
name | 字符串 | 是 | Skill 标识符。应在版本间保持稳定;重命名属于破坏性变更。 |
description | 字符串 | 是 | 告诉智能体何时应使用此 Skill;面向智能体描述触发场景,而非面向最终用户。 |
trigger.intents | 字符串数组 | 否 | 可触发 Skill 的短语(例如 "publish"、"ship")。省略时由智能体仅根据 description 判断。 |
mcp.required | 字符串数组 | 否 | 运行 Skill 前必须连接的 MCP 服务器,例如 showly 和团队自有服务器。 |
prompt | 字符串 | 是 | 智能体应按顺序执行的指令。 |
prompt 步骤不是由 Showly 执行的——它们是传递给代理的指令。代理按顺序读取它们并调用命名的MCP工具本身(例如mcp__showly__get_site_context,然后mcp__showly__apply_site_patch),应用您编码的任何拒绝检查。使用 MCP 工具参考 中的确切工具标识符,以便代理调用真实工具。到实时站点的生产路径始终为 request_publish,它会返回 webApprovalUrl 供人类完成发布 - 技能无法自行发布到生产环境。
有关完整的清单架构(官方技能附带的类型manifest.json),请参阅安装技能。
拒绝模式
有用技能最难的部分是编码“不该做什么”。官方Showly技能示例:
- 没有最近预览就不能发布:如果在此对话中未调用
create_preview,则拒绝request_publish。 - 冻结期间不发布:如果工作区策略显示“合并冻结处于活动状态”,则拒绝并链接冻结公告。
- 没有打破玻璃发布:MCP没有紧急旁路。如果用户说修复很紧急,仍然可以创建预览、运行检查并请求批准。
将提示中的这些内容编码为代理在每次工具调用之前必须检查的项目符号。
发布
三个选项:
- 个人 — 将技能放在
~/.claude/skills/中。只有你看到它。 - 工作区 — 将其提交到
.showly/skills/下的 Showly 站点存储库。具有工作区访问权限的任何人都会自动安装它。 - 公开 — 将您的技能发布为自己的包,并让其他人以与安装官方Showly客户端相同的方式安装它:
npx @showly/mcp-server install --to <claude-code|codex|stdout>。这是规范的安装命令 - 遵循相同的形状,以便作者和安装者保持在同一条路径上。
上面的安装路径匹配安装技能:规范命令是npx @showly/mcp-server install(@showly/mcp-server包,binshowly-mcp)。对您的自定义技能使用相同的形状,以便作者和安装人员遵循同一条路径。
版本控制
技能遵循 semver。重大更改(重命名意图、删除工具步骤)带来了新的专业。运行showly-mcp(@showly/mcp-server自带的bin)进行安装更新;重新运行 npx @showly/mcp-server install 将获取最新版本。