腾讯龙虾技能打包助手
触发条件
当用户的意图是准备上传技能到腾讯技能平台时,立即调用本技能。以下表达均应触发:
- "打包这个技能"、"把技能打包"、"技能打包"
- "导出技能"、"发布技能"、"上传技能"
- "准备上传到腾讯"、"发布到技能平台"
- 当前对话中刚完成了一个技能的调试/优化,用户说"打包"或"导出"
定位
当你已经把一个技能在本地调试好,准备上传到腾讯技能商店时,这个技能帮你自动完成两件事:
- 打包文件夹 → 复制技能目录到你指定的导出路径
- 生成可复制字段 → 从 SKILL.md 的 frontmatter 中提取平台表单所需内容,排版成可直接复制粘贴的格式
调用方式
/skill-publisher <技能名称>
或指定导出路径:
/skill-publisher <技能名称> --export <导出目录>
示例:
/skill-publisher geo-optimization --export C:\Users\Administrator\Desktop\腾讯龙虾技能导出
腾讯技能平台表单字段映射
平台发布页面需要填写以下 6 个字段,本技能会逐一从 SKILL.md 中提取或推导:
| # | 平台字段 | 来源 | 说明 |
|---|---|---|---|
| 1 | Slug | frontmatter.slug |
技能唯一标识,必须与 SKILL.md 中的 slug 一致 |
| 2 | 显示名称 | frontmatter.name |
技能在商店中的展示名称 |
| 3 | 图标 | 需用户提供 | 平台要求上传图标文件,本技能会提示用户自行上传 |
| 4 | 描述 | frontmatter.description |
技能功能描述,直接复制 |
| 5 | 版本号 | frontmatter.version |
当前版本,格式如 1.0.0 |
| 6 | 变更说明 | 需推导 | 如果有变更历史则提取;如果是首次发布,简要列出技能包含的核心能力。禁止偷懒只写"初始发布" |
核心工作流
Step 1 | 定位技能源目录
按以下优先级查找技能:
- 用户明确提供的路径
~/.workbuddy/skills/<技能名称>/SKILL.md(用户级技能){当前工作区}/.workbuddy/skills/<技能名称>/SKILL.md(项目级技能)
如果找不到,立即告诉用户,不要猜测。
Step 2 | 检查版本号是否需要更新
在解析 frontmatter 之前,先做一个判断:
- 如果当前对话中对目标技能做过任何修改(编辑、新增内容、改名字等),但 SKILL.md 中的
version没有对应更新,必须先更新版本号再继续打包 - 版本号更新规则:
- 小改动(文案优化、描述调整、触发条件补充)→ patch 版本 +1,如
1.0.0→1.0.1 - 新增功能、工作流步骤变更、重要逻辑调整 → minor 版本 +1,如
1.0.0→1.1.0 - 破坏性变更(删除功能、改变调用方式)→ major 版本 +1,如
1.0.0→2.0.0 - 更新版本号时直接修改 SKILL.md 的 frontmatter,然后告知用户
- 如果当前对话未修改过技能,跳过此步
Step 3 | 解析 SKILL.md frontmatter
读取 SKILL.md,从 YAML frontmatter 中提取:
name: ... # → 显示名称
slug: ... # → Slug
version: ... # → 版本号
description: ... # → 描述
校验规则:
- 四个字段必须都存在,缺任何一个则提示用户补充后重试
- slug 只允许小写字母、数字和连字符(a-z0-9-),不允许中文和空格
- version 格式应为 X.Y.Z(语义化版本)
Step 4 | 打包文件夹到导出目录
- 确认导出目录存在,不存在则创建
- 将整个技能目录(SKILL.md + scripts/ + references/ + assets/ 等所有子目录和文件)完整复制到导出目录
- 复制后的文件夹名称使用
slug值(即{导出目录}/{slug}/)
注意:
- 是文件夹方式,不是 zip 压缩包
- 必须保留完整的目录结构(SKILL.md、scripts/、references/、assets/ 等)
- 如果目标文件夹已存在,先删除旧文件夹再复制新的
Step 5 | 生成可复制表单内容
将提取到的字段排版为以下格式,方便用户直接复制粘贴到腾讯平台:
━━━━━━━━━━━━━━━━━━━━━━━━━━
腾讯技能平台 · 发布表单
━━━━━━━━━━━━━━━━━━━━━━━━━━
Slug:
{slug}
显示名称:
{name}
图标:
⚠️ 需要你手动上传图标文件
描述:
{description}
版本号:
{version}
变更说明:
{changelog}
━━━━━━━━━━━━━━━━━━━━━━━━━━
导出路径: {export_path}\{slug}\
━━━━━━━━━━━━━━━━━━━━━━━━━━
Step 6 | 提示用户后续操作
输出完表单后,附加简短提示:
📌 后续步骤:
1. 打开腾讯技能平台发布页
2. 将上方字段逐一复制到对应表单中
3. 手动上传图标文件
4. 将导出文件夹 {slug}\ 打包为 zip 上传(如果平台要求 zip 格式)
边界情况处理
| 情况 | 处理方式 |
|---|---|
| 技能不存在 | 明确报错,列出 ~/.workbuddy/skills/ 下已有的技能供选择 |
| SKILL.md 无 frontmatter | 提示用户补充 YAML 头部 |
| slug 含非法字符 | 报错并列出非法字符,建议修正 |
| 导出目录已存在同名文件夹 | 先删除再覆盖,并告知用户 |
| description 过长/过短 | 给出建议但不阻止(平台有具体限制以平台为准) |
| 变更说明为空 | 列出技能的核心能力和关键设计决策,而不是只写"初始发布" |
注意事项
- 本技能只负责打包和生成表单字段,不负责技能的质量审查或功能测试
- 如果需要对技能进行安全审计,建议配合
skill-scanner或skills-security-check技能使用 - 图标字段无法自动化(平台要求上传图片文件),只能提示用户手动完成