技能克隆

作者:鹿Sir通用技能v1

从用户提供的来源(技能市场链接、GitHub 仓库、本地技能目录等)克隆技能到当前技能库工作区,基于克隆历史与工作区自动查重,汉化说明文件、规范化 frontmatter、补充 README.md 并记录克隆历史,最后通过 skillpie 技能发布到 SkillPie 技能市场。当用户请求「克隆技能」「搬运技能」「把这个技能克隆过来」「从市场/GitHub 克隆技能」时触发。

下载量
772
点赞
191
价格
免费
精选

技能文档

---
name: skill-clone
title: 技能克隆
category: 开发工具
description: 从用户提供的来源(技能市场链接、GitHub 仓库、本地技能目录等)克隆技能到当前技能库工作区,基于克隆历史与工作区自动查重,汉化说明文件、规范化 frontmatter、补充 README.md 并记录克隆历史,最后通过 skillpie 技能发布到 SkillPie 技能市场。当用户请求「克隆技能」「搬运技能」「把这个技能克隆过来」「从市场/GitHub 克隆技能」时触发。
---

# 技能克隆

从用户提供的来源克隆一个技能到当前工作区,完成查重、汉化与规范化后记录克隆历史并发布到 SkillPie 技能市场。每次执行只克隆一个技能;克隆历史、工作区目录或已有技能标识重复时停止或换下一个候选。

## 技能工作流

调用 `todo_write` 工具创建待办任务:

接收并识别来源 → 查重 → 获取技能 → 汉化规范化 → 记录克隆历史 → 发布 SkillPie

### 步骤1:接收并识别来源

来源由用户提供,支持三类:

| 来源类型 | 形式示例 | 识别方式 |
|----------|----------|----------|
| 技能市场链接 | https://qoder.com/zh/marketplace/skill?id=xxx | URL 含 marketplace/skill |
| GitHub 链接 | 仓库地址或 SKILL.md 文件地址 | URL 含 github.com |
| 本地技能目录 | /Users/xxx/skills/some-skill | 本机存在的目录路径 |

确定 `skill_name` 的规则:

- 能先看到来源的 SKILL.md → 取其 frontmatter 的 `name` 字段
- 本地目录 → 取目录名
- 仅有市场链接 → 从详情页或技能包中确认 `name`

用户只给了平台而没给具体技能时,要求用户提供具体的技能链接或名称。

### 步骤2:查重

在本技能目录执行 `scripts/clone_history.py` 查重:

```bash
python3 scripts/clone_history.py check <skill_name> <工作区绝对路径>
```

脚本依次检查三处:assets/clone-history.json 克隆历史、工作区一级目录名、各技能 SKILL.md frontmatter 的 name 字段。

- 查重通过 → 进入步骤3
- 查重失败且技能由用户指定 → 把重复原因告知用户并停止

### 步骤3:获取技能

按来源类型获取到 `<工作区绝对路径>/<skill_name>/`:

- **技能市场链接**:用浏览器打开详情页,优先从安装区复制技能包 zip 直链下载到系统临时目录后解包到工作区;无 zip 直链时从「文件」区逐个提取文件内容落盘
- **GitHub 链接**:`git clone` 到系统临时目录,把技能目录复制到工作区后删除临时目录;仅能访问单文件时逐个抓取落盘
- **本地技能目录**:整目录复制到工作区

获取后校验:`<工作区>/<skill_name>/SKILL.md` 必须存在,缺失则删除已落盘文件、告知用户并停止。

### 步骤4:汉化规范化

对 `<工作区>/<skill_name>/` 依次完成四项改造,规则详见 [references/normalization-rules.md](references/normalization-rules.md):

1. **frontmatter 规范化**:保留 `name` 与目录名一致;补充 `title`(中文标题)、`description`(中文,含「能做什么 + 何时触发」与中文触发词)、`category`(取值:通用技能/开发工具/办公效率/学术研究/内容创作,按映射表选择)
2. **正文汉化**:将 SKILL.md 正文及 references/ 下的文档翻译为中文;代码块、命令、文件路径、代码注释保持原样;正文超过 500 行时将查阅类内容拆到 references/
3. **去 Agent 绑定**:删除 agents/*.yaml 等 Agent 专属配置与私有配置目录(清理清单见 references/normalization-rules.md);将正文中的特定 Agent 工具名改为中性表述,图像生成统一表述为「内置 ImageGen」;外部来源保留 LICENSE 文件
4. **补充交付文件**:新增 README.md(≤50 行,面向使用者,含最简用法示例);新增 manifest.json(固定四字段:name 中文名、description、normalizedName 与目录名一致、category 与 frontmatter 一致)

改造完成后自查:SKILL.md 含「技能工作流」或等价的分步章节、无特定 Agent 工具名残留、README.md 不超过 50 行且无克隆来源展示信息。

### 步骤5:记录克隆历史

获取并改造成功后,在本技能目录执行:

```bash
python3 scripts/clone_history.py add <skill_name> --source "<用户提供的原始来源>" --title "<中文标题>"
```

脚本把记录(name、title、source、targetDir、clonedAt)追加到 assets/clone-history.json。改造失败终止流程时不记录。

### 步骤6:发布 SkillPie

调用 `skillpie` 技能发布克隆结果:

```bash
cd <skillpie 技能安装目录>
node scripts/cli.js submit <工作区绝对路径>/<skill_name>
```

处理发布结果:

- 提示未配置 AppKey → 按 skillpie 技能指引引导用户获取并配置 AppKey 后重试
- 提示技能标识冲突 → 修改克隆技能 SKILL.md 的 `name` 字段为新唯一标识(如追加 `-cn` 后缀),同步更新目录名与 manifest.json 的 normalizedName 后重试
- 发布成功 → 向用户总结:技能名称、克隆目录路径、发布结果

## 异常处理

| 场景 | 处理方式 |
|------|----------|
| 用户未提供来源 | 询问来源(市场链接/GitHub 链接/本地目录) |
| 来源无法访问或格式无法识别 | 告知用户并请求更换来源 |
| 查重失败(用户指定技能) | 告知重复原因并停止 |
| 市场链接无 zip 直链 | 从详情页「文件」区逐个提取文件落盘 |
| GitHub 克隆失败 | 检查链接与权限,失败则告知用户 |
| 获取结果缺少 SKILL.md | 清理已落盘文件并停止 |
| 包体积超过 10MB | 清理大体积非必要资源后重试,无法压缩则告知用户 |
| SkillPie 标识冲突 | 修改 name/目录名/normalizedName 后重试 |

## 使用说明

在本工作区对话中提供来源触发:

```text
克隆技能 https://qoder.com/zh/marketplace/skill?id=official03866510
```

```text
把这个 GitHub 上的技能克隆过来:https://github.com/xxx/some-skill
```

```text
克隆本地技能 /Users/me/Downloads/some-skill
```

## 禁止事项

- ❌ 一次执行克隆多个技能
- ❌ 跳过 `scripts/clone_history.py` 查重直接获取技能
- ❌ 克隆成功后不记录 assets/clone-history.json
- ❌ 保留 agents/*.yaml 等 Agent 专属绑定(清理清单见 references/normalization-rules.md)
- ❌ SKILL.md 正文、README.md 保留未汉化的英文说明段落
- ❌ frontmatter 的 name 与目录名不一致
- ❌ 省略 README.md 或 manifest.json 直接发布
- ❌ 在克隆技能的 README.md、SKILL.md 中展示克隆来源、来源市场、原作者等信息
- ❌ 在文档中硬编码特定 Agent 工具名

## 参考资料

- 汉化与规范化规则 → [references/normalization-rules.md](references/normalization-rules.md)

使用说明

# 技能克隆

从用户提供的来源克隆一个技能到本技能库,查重、汉化后发布到 SkillPie 技能市场。

## 使用

提供来源即可触发,支持三类来源:

```text
克隆技能 https://qoder.com/zh/marketplace/skill?id=official03866510
```

```text
把这个 GitHub 上的技能克隆过来:https://github.com/xxx/some-skill
```

```text
克隆本地技能 /Users/me/Downloads/some-skill
```

## 工作流程

1. 识别来源(技能市场链接 / GitHub 链接 / 本地目录),确定技能标识
2. 查重:克隆历史(assets/clone-history.json)+ 工作区目录 + 已有技能标识
3. 获取技能文件到工作区新的一级目录
4. 汉化说明文件、规范化 frontmatter、补充 README.md 与 manifest.json
5. 记录克隆历史,调用 skillpie 技能发布到 SkillPie 技能市场

## 注意事项

- 每次执行只克隆一个技能,查重失败时告知重复原因并停止
- 克隆产物会移除 Agent 专属绑定,保留 LICENSE 文件,不在文档中展示克隆来源信息
- 首次发布 SkillPie 需要配置 AppKey(https://skillpie.cn → 创作中心 → 个人信息)

如何安装此技能?

访问技能市场,点击「安装」按钮,按提示将技能包放入 AI 编程助手的 skills 目录即可。

浏览技能市场

支持平台:Qoder · QoderWork · Claude · Codex 等 AI 编程助手