Initial commit: SkillSpace project structure
- 5 agent frameworks: Qoder, Claude Code, Codex, OpenClaw, Hermes Agent - 9 lifecycle skills: lifecycle router, discover, create, test, audit, debug, update, publish, retire - 5 framework-specific meta-skills with specs and guides - OpenClaw meta-skill enriched with ClawHub official ecosystem data - Per-framework directories with skills/, versions/, publish/, docs/
This commit is contained in:
commit
4fe53197c4
19
.gitignore
vendored
Normal file
19
.gitignore
vendored
Normal file
@ -0,0 +1,19 @@
|
||||
# macOS
|
||||
.DS_Store
|
||||
.AppleDouble
|
||||
.LSOverride
|
||||
._*
|
||||
|
||||
# IDE
|
||||
.vscode/
|
||||
.idea/
|
||||
*.swp
|
||||
*.swo
|
||||
*~
|
||||
|
||||
# Node
|
||||
node_modules/
|
||||
npm-debug.log*
|
||||
|
||||
# Qoder
|
||||
.qoder/
|
||||
215
README.md
Normal file
215
README.md
Normal file
@ -0,0 +1,215 @@
|
||||
# SkillSpace — 智能体技能全生命周期管理中心
|
||||
|
||||
SkillSpace 是一个通用的智能体技能工作目录,用于**创建、验证、发布和版本管理**各类智能体框架的技能(Skills / Tools / Capabilities)。
|
||||
|
||||
---
|
||||
|
||||
## 定位
|
||||
|
||||
- 技能的**全生命周期管理**:从设计、开发、测试到发布上线
|
||||
- 技能的**全版本管理**:支持多版本并存、灰度发布、回滚
|
||||
- **分框架独立管理**:不同智能体框架的技能编写规范存在差异,按框架隔离目录,各自遵循对应框架的规范
|
||||
|
||||
---
|
||||
|
||||
## 支持的智能体框架
|
||||
|
||||
| 框架名称 | 说明 |
|
||||
|---------|------|
|
||||
| **Qoder** | Qoder CLI 智能体框架,支持技能(Skills)、子智能体(Agents)、MCP 服务器等扩展机制 |
|
||||
| **Claude Code** | Anthropic 的 Claude Code 智能体,支持工具调用和自定义指令扩展 |
|
||||
| **Codex** | OpenAI Codex 智能体框架,支持函数定义和工具集成 |
|
||||
| **OpenClaw** | 开源智能体框架,提供灵活的技能编排和插件体系 |
|
||||
| **Hermes Agent** | Hermes 系列智能体,支持结构化输出和工具调用协议 |
|
||||
|
||||
---
|
||||
|
||||
## 目录结构(规划)
|
||||
|
||||
```
|
||||
SkillSpace/
|
||||
├── README.md # 本说明文档
|
||||
│
|
||||
├── skills/ # 生命周期管理技能(用户唯一入口)
|
||||
│ ├── skill-lifecycle/ # 🎯 总路由器(唯一入口,意图识别 + 分发)
|
||||
│ ├── skill-discover/ # 🔍 调研(搜索已有技能、可行性分析)
|
||||
│ ├── skill-router/ # ➕ 创建(交互式向导,路由到各框架 meta-skill)
|
||||
│ ├── skill-tester/ # 🧪 测试(静态检查 + 动态测试引导)
|
||||
│ ├── skill-auditor/ # 🛡️ 审计(安全扫描 + 合规检查)
|
||||
│ ├── skill-debugger/ # 🐛 排查(问题分类 + 根因定位 + 修复)
|
||||
│ ├── skill-updater/ # 🔄 更新(SemVer 升级 + CHANGELOG + 回归提醒)
|
||||
│ ├── skill-publisher/ # 🚀 发布(发布到 SkillHub + 各平台)
|
||||
│ └── skill-retire/ # 📦 归档(废弃标记 + 替代方案 + 归档)
|
||||
│
|
||||
├── meta-skills/ # 技能的技能(创建技能的指导技能)
|
||||
│ │ # 每个子目录是一个"如何为某框架创建技能"的技能
|
||||
│ ├── create-qoder-skill/
|
||||
│ │ ├── skill.json # 技能元信息
|
||||
│ │ ├── prompt.md # 指导 Prompt:如何创建 Qoder 技能
|
||||
│ │ ├── spec.md # Qoder 技能规范摘要
|
||||
│ │ ├── examples/ # 官方或社区参考技能示例
|
||||
│ │ └── CHANGELOG.md
|
||||
│ ├── create-claude-code-skill/
|
||||
│ ├── create-codex-skill/
|
||||
│ ├── create-openclaw-skill/
|
||||
│ └── create-hermes-agent-skill/
|
||||
│
|
||||
├── qoder/ # ===== Qoder 框架技能目录 =====
|
||||
│ ├── skills/ # 技能源码
|
||||
│ │ └── <skill-name>/
|
||||
│ │ ├── skill.json # 技能元信息(名称、版本等)
|
||||
│ │ ├── prompt.md # 技能 Prompt / 指令定义
|
||||
│ │ ├── tools/ # 工具定义或 MCP 配置
|
||||
│ │ ├── tests/ # 验证用例
|
||||
│ │ └── CHANGELOG.md # 版本变更记录
|
||||
│ ├── versions/ # 版本归档(语义化版本快照)
|
||||
│ │ └── <skill-name>/v1.0.0/
|
||||
│ ├── publish/ # 发布配置与脚本
|
||||
│ │ └── registry.json
|
||||
│ └── docs/ # 框架适配文档
|
||||
│
|
||||
├── claude-code/ # ===== Claude Code 框架技能目录 =====
|
||||
│ ├── skills/
|
||||
│ ├── versions/
|
||||
│ ├── publish/
|
||||
│ └── docs/
|
||||
│
|
||||
├── codex/ # ===== Codex 框架技能目录 =====
|
||||
│ ├── skills/
|
||||
│ ├── versions/
|
||||
│ ├── publish/
|
||||
│ └── docs/
|
||||
│
|
||||
├── openclaw/ # ===== OpenClaw 框架技能目录 =====
|
||||
│ ├── skills/
|
||||
│ ├── versions/
|
||||
│ ├── publish/
|
||||
│ └── docs/
|
||||
│
|
||||
└── hermes-agent/ # ===== Hermes Agent 框架技能目录 =====
|
||||
├── skills/
|
||||
├── versions/
|
||||
├── publish/
|
||||
└── docs/
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## meta-skills:技能的技能
|
||||
|
||||
`meta-skills/` 是一个特殊目录,存放的是**"如何创建技能"的技能**,即技能创建指南。
|
||||
|
||||
### 用途
|
||||
|
||||
- 当你需要为某个框架新建技能时,调用对应的 meta-skill,它会引导你完成:
|
||||
- 该框架的技能**规范和要求**(格式、字段、限制)
|
||||
- 该框架的**官方参考技能**或社区最佳实践
|
||||
- 技能的**标准开发流程**和检查清单
|
||||
|
||||
### 每个 meta-skill 包含
|
||||
|
||||
| 文件 | 说明 |
|
||||
|------|------|
|
||||
| `skill.json` | 技能元信息(名称、版本、目标框架) |
|
||||
| `prompt.md` | 核心指导 Prompt,描述如何为该框架创建技能 |
|
||||
| `spec.md` | 该框架的技能规范摘要(字段定义、格式要求、限制条件) |
|
||||
| `examples/` | 官方或社区参考技能示例(可运行的最小示例) |
|
||||
| `CHANGELOG.md` | 版本变更记录 |
|
||||
|
||||
### 示例
|
||||
|
||||
```
|
||||
# 想创建一个 OpenClaw 技能?
|
||||
# 调用 meta-skills/create-openclaw-skill/
|
||||
# → 它会告诉你 OpenClaw 技能需要遵循什么规范、
|
||||
# 有哪些官方参考技能、标准的创建步骤是什么
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 技能生命周期
|
||||
|
||||
用户通过 **`skill-lifecycle`**(唯一入口)即可覆盖技能的全部生命周期,系统自动识别意图并路由到对应子技能。
|
||||
|
||||
```
|
||||
用户 ──→ skill-lifecycle(总路由)──→ 自动分发到子技能
|
||||
|
||||
discover → create → test → audit → publish
|
||||
↑ ↑ │
|
||||
└──── retire ←───────┴── update ←┘
|
||||
debug
|
||||
```
|
||||
|
||||
| 阶段 | 子技能 | 职责 |
|
||||
|------|--------|------|
|
||||
| 🔍 调研 | `skill-discover` | 搜索已有技能、分析框架能力、评估可行性 |
|
||||
| ➕ 创建 | `skill-router` | 交互式向导创建新技能,路由到各框架 meta-skill |
|
||||
| 🧪 测试 | `skill-tester` | 静态文件检查 + 真实环境动态测试 |
|
||||
| 🛡️ 审计 | `skill-auditor` | 安全扫描(注入、权限、数据泄露)+ 合规检查 |
|
||||
| 🐛 排查 | `skill-debugger` | 问题分类、根因定位、修复方案 |
|
||||
| 🔄 更新 | `skill-updater` | SemVer 版本升级、CHANGELOG 生成、回归提醒 |
|
||||
| 🚀 发布 | `skill-publisher` | 发布到 SkillHub 和各平台 |
|
||||
| 📦 归档 | `skill-retire` | 废弃标记、替代方案、版本归档 |
|
||||
|
||||
### 阶段衔接建议
|
||||
|
||||
```
|
||||
discover → "调研完成,是否创建?" → create
|
||||
create → "技能已创建,建议测试" → test
|
||||
test → "测试通过,建议审计" → audit
|
||||
audit → "审计通过,可以发布" → publish
|
||||
debug → "问题已修复,重新测试" → test
|
||||
update → "更新完成,重新测试" → test
|
||||
publish → "发布成功" → 结束
|
||||
retire → "已归档" → 结束
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 版本管理规范
|
||||
|
||||
- 采用 **语义化版本(SemVer)**:`MAJOR.MINOR.PATCH`
|
||||
- `MAJOR`:不兼容的重大变更
|
||||
- `MINOR`:向下兼容的功能新增
|
||||
- `PATCH`:向下兼容的问题修复
|
||||
- 每次发布在 `<framework>/versions/<skill-name>/vX.Y.Z/` 保留完整快照
|
||||
- `CHANGELOG.md` 记录每个版本的变更摘要
|
||||
|
||||
---
|
||||
|
||||
## 快速开始
|
||||
|
||||
```
|
||||
# 所有操作都通过 skill-lifecycle 这一个入口
|
||||
|
||||
# 想创建新技能?
|
||||
→ 调用 skill-lifecycle,说"创建一个 OpenClaw 的 PDF 处理技能"
|
||||
|
||||
# 想测试已有技能?
|
||||
→ 调用 skill-lifecycle,说"帮我测试 qoder/skills/my-skill"
|
||||
|
||||
# 想发布到平台?
|
||||
→ 调用 skill-lifecycle,说"发布 openclaw/skills/my-skill 到 ClawHub"
|
||||
|
||||
# 想了解已有技能?
|
||||
→ 调用 skill-lifecycle,说"帮我调研有没有现成的 Docker 调试技能"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 后续规划
|
||||
|
||||
- [x] 搭建完整目录结构(5 个框架 + 9 个生命周期技能)
|
||||
- [x] 构建 skill-lifecycle 总路由器和 8 个子技能
|
||||
- [x] OpenClaw meta-skill 规范整理(基于 ClawHub 官方生态)
|
||||
- [ ] 补充各框架 meta-skill 的详细规范(Qoder / Claude Code / Codex / Hermes Agent)
|
||||
- [ ] 为各框架 meta-skill 的 `examples/` 补充官方参考技能示例
|
||||
- [ ] 补充 SkillHub 发布规范到 `skill-publisher`
|
||||
- [ ] 为每个框架编写适配指南(`<framework>/docs/`)
|
||||
- [ ] 建设技能示例库(提供参考实现)
|
||||
|
||||
---
|
||||
|
||||
## 说明
|
||||
|
||||
本目录当前处于**初始化阶段**,目录结构和工具链将随技能开发实践逐步完善。如有建议或贡献,请在项目仓库中提交 Issue 或 PR。
|
||||
5
claude-code/publish/registry.json
Normal file
5
claude-code/publish/registry.json
Normal file
@ -0,0 +1,5 @@
|
||||
{
|
||||
"framework": "claude-code",
|
||||
"skills": [],
|
||||
"lastUpdated": "2026-07-01"
|
||||
}
|
||||
5
codex/publish/registry.json
Normal file
5
codex/publish/registry.json
Normal file
@ -0,0 +1,5 @@
|
||||
{
|
||||
"framework": "codex",
|
||||
"skills": [],
|
||||
"lastUpdated": "2026-07-01"
|
||||
}
|
||||
5
hermes-agent/publish/registry.json
Normal file
5
hermes-agent/publish/registry.json
Normal file
@ -0,0 +1,5 @@
|
||||
{
|
||||
"framework": "hermes-agent",
|
||||
"skills": [],
|
||||
"lastUpdated": "2026-07-01"
|
||||
}
|
||||
6
meta-skills/create-claude-code-skill/CHANGELOG.md
Normal file
6
meta-skills/create-claude-code-skill/CHANGELOG.md
Normal file
@ -0,0 +1,6 @@
|
||||
# Changelog
|
||||
|
||||
## 0.1.0 - 2026-07-01
|
||||
|
||||
- 初始版本
|
||||
- 创建 Claude Code 技能创建指南框架
|
||||
21
meta-skills/create-claude-code-skill/prompt.md
Normal file
21
meta-skills/create-claude-code-skill/prompt.md
Normal file
@ -0,0 +1,21 @@
|
||||
# 如何创建 Claude Code 技能
|
||||
|
||||
本技能指导你为 Claude Code 框架创建符合规范的技能和自定义指令。
|
||||
|
||||
## 创建流程
|
||||
|
||||
1. **了解 Claude Code 规范**:阅读 `spec.md`,了解 Claude Code 的工具调用和指令扩展机制
|
||||
2. **参考官方示例**:查看 `examples/` 目录中的参考实现
|
||||
3. **创建技能目录**:在 `claude-code/skills/<skill-name>/` 下新建目录
|
||||
4. **编写技能文件**:
|
||||
- `skill.json`:技能元信息
|
||||
- `prompt.md`:自定义指令 / 系统提示
|
||||
- 按需添加工具定义和测试用例
|
||||
5. **验证技能**:在 Claude Code 环境中加载并测试
|
||||
6. **发布技能**:更新版本号,归档到 `versions/`
|
||||
|
||||
## 注意事项
|
||||
|
||||
- Claude Code 通过自定义指令(Custom Instructions)扩展行为
|
||||
- 工具调用遵循 Anthropic 的 Tool Use 协议
|
||||
- 建议参考 `examples/` 中的示例了解指令格式
|
||||
8
meta-skills/create-claude-code-skill/skill.json
Normal file
8
meta-skills/create-claude-code-skill/skill.json
Normal file
@ -0,0 +1,8 @@
|
||||
{
|
||||
"name": "create-claude-code-skill",
|
||||
"version": "0.1.0",
|
||||
"description": "指导如何为 Claude Code 创建技能(Skill)",
|
||||
"targetFramework": "claude-code",
|
||||
"type": "meta-skill",
|
||||
"tags": ["claude-code", "skill-creation", "guide"]
|
||||
}
|
||||
47
meta-skills/create-claude-code-skill/spec.md
Normal file
47
meta-skills/create-claude-code-skill/spec.md
Normal file
@ -0,0 +1,47 @@
|
||||
# Claude Code 技能规范摘要
|
||||
|
||||
> 本文件摘要整理 Claude Code 技能的核心规范,供快速参考。完整规范请参阅 Anthropic 官方文档。
|
||||
|
||||
## 技能目录结构
|
||||
|
||||
```
|
||||
<skill-name>/
|
||||
├── skill.json # 技能元信息(必填)
|
||||
├── prompt.md # 自定义指令 / Prompt(必填)
|
||||
├── tools/ # 工具定义(可选)
|
||||
├── tests/ # 验证用例(可选)
|
||||
└── CHANGELOG.md # 版本变更记录(推荐)
|
||||
```
|
||||
|
||||
## skill.json 字段
|
||||
|
||||
| 字段 | 类型 | 必填 | 说明 |
|
||||
|------|------|------|------|
|
||||
| `name` | string | 是 | 技能名称 |
|
||||
| `version` | string | 是 | 语义化版本号 |
|
||||
| `description` | string | 是 | 技能功能描述 |
|
||||
| `instructions` | string | 否 | 自定义指令的简要说明 |
|
||||
| `tools` | array | 否 | 依赖的工具列表 |
|
||||
| `tags` | array | 否 | 标签 |
|
||||
|
||||
## prompt.md 格式
|
||||
|
||||
Claude Code 的技能核心是自定义指令:
|
||||
|
||||
- 使用 Markdown 格式编写
|
||||
- 描述技能的执行规则和约束
|
||||
- 明确指定 Claude 在特定场景下的行为方式
|
||||
- 可包含示例对话或指令模板
|
||||
|
||||
## 工具调用
|
||||
|
||||
Claude Code 使用 Anthropic 的 Tool Use 协议:
|
||||
|
||||
- 工具以 JSON Schema 格式定义
|
||||
- 支持函数调用和结果返回
|
||||
- 工具定义可放在 `tools/` 目录
|
||||
|
||||
## 参考链接
|
||||
|
||||
- [Anthropic Claude Code 文档](https://docs.anthropic.com)
|
||||
- `examples/` 目录中的参考实现
|
||||
6
meta-skills/create-codex-skill/CHANGELOG.md
Normal file
6
meta-skills/create-codex-skill/CHANGELOG.md
Normal file
@ -0,0 +1,6 @@
|
||||
# Changelog
|
||||
|
||||
## 0.1.0 - 2026-07-01
|
||||
|
||||
- 初始版本
|
||||
- 创建 Codex 技能创建指南框架
|
||||
21
meta-skills/create-codex-skill/prompt.md
Normal file
21
meta-skills/create-codex-skill/prompt.md
Normal file
@ -0,0 +1,21 @@
|
||||
# 如何创建 Codex 技能
|
||||
|
||||
本技能指导你为 OpenAI Codex 框架创建符合规范的技能(函数定义和工具集成)。
|
||||
|
||||
## 创建流程
|
||||
|
||||
1. **了解 Codex 规范**:阅读 `spec.md`,了解 Codex 的函数定义和工具调用格式
|
||||
2. **参考官方示例**:查看 `examples/` 目录中的参考实现
|
||||
3. **创建技能目录**:在 `codex/skills/<skill-name>/` 下新建目录
|
||||
4. **编写技能文件**:
|
||||
- `skill.json`:技能元信息
|
||||
- `prompt.md`:技能指令和行为定义
|
||||
- 按需添加工具定义和测试用例
|
||||
5. **验证技能**:在 Codex 环境中加载并测试
|
||||
6. **发布技能**:更新版本号,归档到 `versions/`
|
||||
|
||||
## 注意事项
|
||||
|
||||
- Codex 通过函数定义(Function Calling)扩展能力
|
||||
- 工具定义遵循 OpenAI 的 JSON Schema 格式
|
||||
- 建议参考 `examples/` 中的示例了解函数定义格式
|
||||
8
meta-skills/create-codex-skill/skill.json
Normal file
8
meta-skills/create-codex-skill/skill.json
Normal file
@ -0,0 +1,8 @@
|
||||
{
|
||||
"name": "create-codex-skill",
|
||||
"version": "0.1.0",
|
||||
"description": "指导如何为 OpenAI Codex 创建技能(Skill)",
|
||||
"targetFramework": "codex",
|
||||
"type": "meta-skill",
|
||||
"tags": ["codex", "skill-creation", "guide"]
|
||||
}
|
||||
48
meta-skills/create-codex-skill/spec.md
Normal file
48
meta-skills/create-codex-skill/spec.md
Normal file
@ -0,0 +1,48 @@
|
||||
# Codex 技能规范摘要
|
||||
|
||||
> 本文件摘要整理 OpenAI Codex 技能的核心规范,供快速参考。完整规范请参阅 OpenAI 官方文档。
|
||||
|
||||
## 技能目录结构
|
||||
|
||||
```
|
||||
<skill-name>/
|
||||
├── skill.json # 技能元信息(必填)
|
||||
├── prompt.md # 技能指令定义(必填)
|
||||
├── tools/ # 函数定义 / 工具配置(可选)
|
||||
├── tests/ # 验证用例(可选)
|
||||
└── CHANGELOG.md # 版本变更记录(推荐)
|
||||
```
|
||||
|
||||
## skill.json 字段
|
||||
|
||||
| 字段 | 类型 | 必填 | 说明 |
|
||||
|------|------|------|------|
|
||||
| `name` | string | 是 | 技能名称 |
|
||||
| `version` | string | 是 | 语义化版本号 |
|
||||
| `description` | string | 是 | 技能功能描述 |
|
||||
| `functions` | array | 否 | 依赖的函数定义列表 |
|
||||
| `tools` | array | 否 | 依赖的工具列表 |
|
||||
| `tags` | array | 否 | 标签 |
|
||||
|
||||
## prompt.md 格式
|
||||
|
||||
Codex 的技能指令定义:
|
||||
|
||||
- 使用 Markdown 格式编写
|
||||
- 描述技能的触发条件和执行逻辑
|
||||
- 可指定函数调用的时机和参数
|
||||
- 建议包含使用示例
|
||||
|
||||
## 函数定义(Function Calling)
|
||||
|
||||
Codex 使用 OpenAI 的函数调用格式:
|
||||
|
||||
- 函数以 JSON Schema 定义
|
||||
- 包含 `name`、`description`、`parameters` 字段
|
||||
- 支持 `function_call` 指定调用方式
|
||||
- 函数定义可放在 `tools/` 目录
|
||||
|
||||
## 参考链接
|
||||
|
||||
- [OpenAI Function Calling 文档](https://platform.openai.com/docs/guides/function-calling)
|
||||
- `examples/` 目录中的参考实现
|
||||
6
meta-skills/create-hermes-agent-skill/CHANGELOG.md
Normal file
6
meta-skills/create-hermes-agent-skill/CHANGELOG.md
Normal file
@ -0,0 +1,6 @@
|
||||
# Changelog
|
||||
|
||||
## 0.1.0 - 2026-07-01
|
||||
|
||||
- 初始版本
|
||||
- 创建 Hermes Agent 技能创建指南框架
|
||||
21
meta-skills/create-hermes-agent-skill/prompt.md
Normal file
21
meta-skills/create-hermes-agent-skill/prompt.md
Normal file
@ -0,0 +1,21 @@
|
||||
# 如何创建 Hermes Agent 技能
|
||||
|
||||
本技能指导你为 Hermes Agent 框架创建符合规范的技能,特别是结构化输出和工具调用协议。
|
||||
|
||||
## 创建流程
|
||||
|
||||
1. **了解 Hermes Agent 规范**:阅读 `spec.md`,了解结构化输出和工具调用协议
|
||||
2. **参考官方示例**:查看 `examples/` 目录中的参考实现
|
||||
3. **创建技能目录**:在 `hermes-agent/skills/<skill-name>/` 下新建目录
|
||||
4. **编写技能文件**:
|
||||
- `skill.json`:技能元信息
|
||||
- `prompt.md`:技能指令和输出格式定义
|
||||
- 按需添加工具定义和测试用例
|
||||
5. **验证技能**:在 Hermes Agent 环境中加载并测试
|
||||
6. **发布技能**:更新版本号,归档到 `versions/`
|
||||
|
||||
## 注意事项
|
||||
|
||||
- Hermes Agent 强调结构化输出,技能需定义输出 Schema
|
||||
- 工具调用协议有特定格式要求
|
||||
- 建议参考 `examples/` 中的示例了解输出格式
|
||||
8
meta-skills/create-hermes-agent-skill/skill.json
Normal file
8
meta-skills/create-hermes-agent-skill/skill.json
Normal file
@ -0,0 +1,8 @@
|
||||
{
|
||||
"name": "create-hermes-agent-skill",
|
||||
"version": "0.1.0",
|
||||
"description": "指导如何为 Hermes Agent 创建技能(Skill)",
|
||||
"targetFramework": "hermes-agent",
|
||||
"type": "meta-skill",
|
||||
"tags": ["hermes-agent", "skill-creation", "guide"]
|
||||
}
|
||||
56
meta-skills/create-hermes-agent-skill/spec.md
Normal file
56
meta-skills/create-hermes-agent-skill/spec.md
Normal file
@ -0,0 +1,56 @@
|
||||
# Hermes Agent 技能规范摘要
|
||||
|
||||
> 本文件摘要整理 Hermes Agent 技能的核心规范,供快速参考。完整规范请参阅 Hermes Agent 官方文档。
|
||||
|
||||
## 技能目录结构
|
||||
|
||||
```
|
||||
<skill-name>/
|
||||
├── skill.json # 技能元信息(必填)
|
||||
├── prompt.md # 技能指令和输出定义(必填)
|
||||
├── tools/ # 工具定义(可选)
|
||||
├── tests/ # 验证用例(可选)
|
||||
└── CHANGELOG.md # 版本变更记录(推荐)
|
||||
```
|
||||
|
||||
## skill.json 字段
|
||||
|
||||
| 字段 | 类型 | 必填 | 说明 |
|
||||
|------|------|------|------|
|
||||
| `name` | string | 是 | 技能名称 |
|
||||
| `version` | string | 是 | 语义化版本号 |
|
||||
| `description` | string | 是 | 技能功能描述 |
|
||||
| `outputSchema` | object | 否 | 结构化输出的 JSON Schema |
|
||||
| `tools` | array | 否 | 依赖的工具列表 |
|
||||
| `tags` | array | 否 | 标签 |
|
||||
|
||||
## prompt.md 格式
|
||||
|
||||
Hermes Agent 的技能指令定义:
|
||||
|
||||
- 使用 Markdown 格式编写
|
||||
- **必须明确定义输出格式**(JSON Schema 或示例)
|
||||
- 描述技能的执行规则和约束
|
||||
- 指定工具调用的条件和参数
|
||||
- 建议包含输入输出示例
|
||||
|
||||
## 结构化输出
|
||||
|
||||
Hermes Agent 的核心特性:
|
||||
|
||||
- 技能输出必须符合预定义的 JSON Schema
|
||||
- 在 `skill.json` 的 `outputSchema` 字段定义
|
||||
- 或在 `prompt.md` 中明确描述输出格式
|
||||
- 支持嵌套对象和数组类型
|
||||
|
||||
## 工具调用协议
|
||||
|
||||
- 工具以标准化接口定义
|
||||
- 支持同步和异步调用
|
||||
- 工具定义可放在 `tools/` 目录
|
||||
- 需声明工具参数的 JSON Schema
|
||||
|
||||
## 参考链接
|
||||
|
||||
- [Hermes Agent 官方文档](https://docs.hermes-agent.dev)(待确认)
|
||||
- `examples/` 目录中的参考实现
|
||||
15
meta-skills/create-openclaw-skill/CHANGELOG.md
Normal file
15
meta-skills/create-openclaw-skill/CHANGELOG.md
Normal file
@ -0,0 +1,15 @@
|
||||
# Changelog
|
||||
|
||||
## 0.2.0 - 2026-07-01
|
||||
|
||||
- 基于 ClawHub 官方生态更新规范
|
||||
- 添加完整的 SKILL.md 和 _meta.json 规范
|
||||
- 添加渐进式披露三层加载机制
|
||||
- 添加描述编写规范和常见陷阱
|
||||
- 添加工具链和官方参考技能列表
|
||||
- 添加安全验证标准和发布流程
|
||||
|
||||
## 0.1.0 - 2026-07-01
|
||||
|
||||
- 初始版本
|
||||
- 创建 OpenClaw 技能创建指南框架
|
||||
162
meta-skills/create-openclaw-skill/prompt.md
Normal file
162
meta-skills/create-openclaw-skill/prompt.md
Normal file
@ -0,0 +1,162 @@
|
||||
# 如何创建 OpenClaw 技能
|
||||
|
||||
本技能指导你为 OpenClaw 框架创建符合规范的技能,基于 ClawHub 官方生态和多个高人气参考技能的最佳实践。
|
||||
|
||||
## 核心概念
|
||||
|
||||
OpenClaw 技能(Skill)是一个自包含的指令包,由 `SKILL.md`(核心指令文件)和 `_meta.json`(元数据文件)组成,支持模块化结构、渐进式披露和 Token 高效设计。
|
||||
|
||||
## 创建流程
|
||||
|
||||
### 1. 前置准备
|
||||
|
||||
- 检查是否已有同类技能:在 [ClawHub](https://clawhub.ai) 搜索,避免重复
|
||||
- 明确技能功能边界、适用场景和触发条件
|
||||
- 参考 `spec.md` 了解完整规范
|
||||
|
||||
### 2. 创建技能目录
|
||||
|
||||
```bash
|
||||
# 方式一:手动创建
|
||||
mkdir -p openclaw/skills/<skill-name>
|
||||
touch openclaw/skills/<skill-name>/SKILL.md
|
||||
touch openclaw/skills/<skill-name>/_meta.json
|
||||
|
||||
# 方式二:使用脚手架工具(推荐)
|
||||
npm install -g skill-scaffold
|
||||
skill-scaffold <skill-name> --author <your-name> --description "描述"
|
||||
```
|
||||
|
||||
### 3. 编写 SKILL.md
|
||||
|
||||
`SKILL.md` 是技能的核心,结构如下:
|
||||
|
||||
```markdown
|
||||
---
|
||||
name: my-skill-name
|
||||
description: Process, merge, and extract PDF content
|
||||
---
|
||||
|
||||
## When to Use
|
||||
- 用户提到 X 时触发
|
||||
- 用户需要 Y 时触发
|
||||
|
||||
## Core Rules
|
||||
1. 规则一
|
||||
2. 规则二
|
||||
3. 规则三
|
||||
|
||||
## Quick Start
|
||||
最小可行示例...
|
||||
|
||||
## Workflow
|
||||
复杂任务的步骤清单...
|
||||
|
||||
## Advanced
|
||||
链接至独立参考文件...
|
||||
```
|
||||
|
||||
### 4. 编写 _meta.json
|
||||
|
||||
```json
|
||||
{
|
||||
"name": "my-skill-name",
|
||||
"version": "1.0.0",
|
||||
"description": "Process, merge, and extract PDF content",
|
||||
"tags": ["pdf", "extraction", "utility"]
|
||||
}
|
||||
```
|
||||
|
||||
### 5. 按需添加辅助文件
|
||||
|
||||
- `references/` — 详细参考文档(按需加载)
|
||||
- `scripts/` — 辅助脚本
|
||||
- `examples/` — 使用示例
|
||||
|
||||
### 6. 本地验证
|
||||
|
||||
```bash
|
||||
# 重启 OpenClaw 网关以识别新技能
|
||||
openclaw gateway restart
|
||||
```
|
||||
|
||||
### 7. 发布到 ClawHub
|
||||
|
||||
```bash
|
||||
# 认证(需 GitHub 账号,注册满 2 周)
|
||||
openclaw auth login
|
||||
|
||||
# 发布
|
||||
openclaw skills publish <local-path> \
|
||||
--slug <skill-slug> \
|
||||
--name <skill-name> \
|
||||
--version 1.0.0 \
|
||||
--tags "tag1,tag2"
|
||||
```
|
||||
|
||||
## 关键规范
|
||||
|
||||
### 描述(Description)编写规范
|
||||
|
||||
描述是代理识别并加载技能的**唯一依据**,至关重要:
|
||||
|
||||
- 上限 1024 字符
|
||||
- 采用第三人称
|
||||
- 首句阐述核心能力(15-25 词,以动作动词开头)
|
||||
- 次句明确触发条件,必须包含 `"Use when..."`
|
||||
|
||||
| 错误示例 | 正确示例 |
|
||||
|---------|---------|
|
||||
| "Use when user needs PDFs" | "Process, merge, and extract PDF content" |
|
||||
| "Helper for Docker" | "Build, deploy, and debug Docker containers" |
|
||||
| "Helps with documents." | "Extract text and tables from PDF files. Use when processing PDFs or when user mentions form extraction." |
|
||||
|
||||
### 核心规则
|
||||
|
||||
1. **保持简短**:核心文件 30-50 行,上限 80 行
|
||||
2. **渐进式披露**:元数据始终加载 → 核心主体触发时加载 → 辅助文件按需加载
|
||||
3. **辅助文件优先**:超过 20 行的内容拆分至独立文件
|
||||
4. **避免冗余**:信息仅存一处,通过引用避免重复
|
||||
5. **发布前测试**:以全新代理视角审查指令是否清晰且必要
|
||||
|
||||
### 常见陷阱
|
||||
|
||||
| 陷阱 | 说明 |
|
||||
|------|------|
|
||||
| 解释基础概念 | 模型已知,应说明何时及如何使用 |
|
||||
| 描述中使用触发条件 | 浪费字符,仅用动作动词 |
|
||||
| 描述中堆砌关键词 | 像垃圾邮件,写精炼的一句话 |
|
||||
| 模板内联 | 核心文件臃肿,分离到独立文件 |
|
||||
| 模糊的"观察"指令 | 易被标记可疑,需明确具体数据 |
|
||||
| 未声明的文件创建 | 触发安全警告,需添加数据存储说明 |
|
||||
|
||||
## 安全验证标准
|
||||
|
||||
技能发布需通过:
|
||||
- 静态扫描:检查格式、字段完整性
|
||||
- LLM 分析:审查用途匹配度、安装机制、权限需求
|
||||
- 触发词范围:避免过宽导致意外激活
|
||||
- 文件操作:修改工作区前需获取用户明确批准
|
||||
|
||||
## 工具链
|
||||
|
||||
| 工具 | 用途 |
|
||||
|------|------|
|
||||
| [skill-scaffold](https://clawhub.ai/nextfrontierbuilds/skill-scaffold) | CLI 脚手架工具,快速生成技能目录结构 |
|
||||
| [skill-builder](https://clawhub.ai/ivangdavila/skill-builder) | 交互式技能构建引导,审查质量 |
|
||||
| [skill-factory](https://clawhub.ai/smallkeyboy/smallkeyboy-create-skill) | 程序化批量创建技能 |
|
||||
| `openclaw skills install` | 安装技能 |
|
||||
| `openclaw gateway restart` | 重启网关识别新技能 |
|
||||
| `openclaw skills publish` | 发布技能到 ClawHub |
|
||||
|
||||
## 官方参考技能
|
||||
|
||||
| 技能名称 | 作者 | 说明 |
|
||||
|---------|------|------|
|
||||
| [Skill Builder / Creator](https://clawhub.ai/ivangdavila/skill-builder) | ivangdavila | 模块化与渐进式披露设计,质量把控 |
|
||||
| [Skill Scaffold](https://clawhub.ai/nextfrontierbuilds/skill-scaffold) | nextfrontierbuilds | 多平台兼容 CLI 脚手架工具 |
|
||||
| [OpenClaw Skill Creator](https://clawhub.ai/yejay7/create-skill-openclaw) | yejay7 | OpenClaw 专属创建指南 |
|
||||
| [Write A Skill](https://clawhub.ai/liyafeichina/write-a-skill) | liyafeichina | 技能编写规范与渐进式披露 |
|
||||
| [Skill 创建工厂](https://clawhub.ai/smallkeyboy/smallkeyboy-create-skill) | smallkeyboy | 程序化批量创建 |
|
||||
| [Create Skills](https://clawhub.ai/ryanallen/document-skills) | ryanallen | 技能文档编写指导 |
|
||||
| [Clawhub Skill Creator](https://clawhub.ai/erview/clawhub-skill-creator) | erview | ClawHub 平台发布指南 |
|
||||
15
meta-skills/create-openclaw-skill/skill.json
Normal file
15
meta-skills/create-openclaw-skill/skill.json
Normal file
@ -0,0 +1,15 @@
|
||||
{
|
||||
"name": "create-openclaw-skill",
|
||||
"version": "0.2.0",
|
||||
"description": "指导如何为 OpenClaw 创建技能(Skill),包含规范、工具链和官方参考",
|
||||
"targetFramework": "openclaw",
|
||||
"type": "meta-skill",
|
||||
"tags": ["openclaw", "skill-creation", "guide"],
|
||||
"sources": [
|
||||
"https://clawhub.ai/ivangdavila/skill-builder",
|
||||
"https://clawhub.ai/nextfrontierbuilds/skill-scaffold",
|
||||
"https://clawhub.ai/yejay7/create-skill-openclaw",
|
||||
"https://clawhub.ai/liyafeichina/write-a-skill",
|
||||
"https://clawhub.ai/smallkeyboy/smallkeyboy-create-skill"
|
||||
]
|
||||
}
|
||||
112
meta-skills/create-openclaw-skill/spec.md
Normal file
112
meta-skills/create-openclaw-skill/spec.md
Normal file
@ -0,0 +1,112 @@
|
||||
# OpenClaw 技能规范摘要
|
||||
|
||||
> 基于 ClawHub 官方生态和多个高人气参考技能整理。完整规范请参阅 [ClawHub](https://clawhub.ai)。
|
||||
|
||||
## 文件结构
|
||||
|
||||
```
|
||||
<skill-name>/
|
||||
├── SKILL.md # 核心指令文件(必填)
|
||||
├── _meta.json # 元数据文件(必填)
|
||||
├── references/ # 按需加载的参考文档(可选)
|
||||
├── scripts/ # 辅助脚本(可选)
|
||||
├── examples/ # 使用示例(可选)
|
||||
└── CHANGELOG.md # 版本变更记录(推荐)
|
||||
```
|
||||
|
||||
## SKILL.md 规范
|
||||
|
||||
### YAML 前置信息(Frontmatter)
|
||||
|
||||
```yaml
|
||||
---
|
||||
name: my-skill-name # 小写 + 连字符,全局唯一
|
||||
description: 15-25 词描述 # 上限 160 字符(ClawHub 搜索摘要)
|
||||
---
|
||||
```
|
||||
|
||||
**注意**:YAML 前置信息**仅需** `name` 和 `description` 两个字段,不要添加多余字段。
|
||||
|
||||
### 核心章节结构
|
||||
|
||||
| 章节 | 说明 |
|
||||
|------|------|
|
||||
| `## When to Use` | 定义激活触发条件(关键词、场景) |
|
||||
| `## Core Rules` | 3-7 条编号规则,约束技能行为 |
|
||||
| `## Quick Start` | 最小可行示例 |
|
||||
| `## Workflow` | 复杂任务的步骤清单 |
|
||||
| `## Advanced` | 链接至独立参考文件(渐进式披露) |
|
||||
|
||||
### 编写原则
|
||||
|
||||
- 核心文件控制在 **30-50 行**,上限 80 行
|
||||
- 超过 20 行的内容拆分至独立文件
|
||||
- 信息仅存一处,通过引用避免重复
|
||||
- 以全新代理视角审查指令是否清晰且必要
|
||||
|
||||
## _meta.json 规范
|
||||
|
||||
```json
|
||||
{
|
||||
"name": "my-skill-name",
|
||||
"version": "1.0.0",
|
||||
"description": "Process, merge, and extract PDF content",
|
||||
"tags": ["pdf", "extraction", "utility"]
|
||||
}
|
||||
```
|
||||
|
||||
| 字段 | 类型 | 必填 | 说明 |
|
||||
|------|------|------|------|
|
||||
| `name` | string | 是 | 小写 + 连字符,与 YAML 一致 |
|
||||
| `version` | string | 是 | 语义化版本号 |
|
||||
| `description` | string | 是 | 与 YAML 一致 |
|
||||
| `tags` | array | 否 | 搜索关键词 |
|
||||
|
||||
## Description 编写规范
|
||||
|
||||
描述是代理识别并加载技能的**唯一依据**:
|
||||
|
||||
- 上限 1024 字符
|
||||
- 第三人称
|
||||
- 首句:15-25 词,以动作动词开头,描述能力
|
||||
- 次句:触发条件,包含 `"Use when..."`
|
||||
|
||||
## 渐进式披露(三层加载机制)
|
||||
|
||||
| 层级 | 内容 | 加载时机 |
|
||||
|------|------|---------|
|
||||
| L1 元数据 | `name`、`description` | 始终加载 |
|
||||
| L2 核心主体 | `SKILL.md` 正文 | 触发时加载 |
|
||||
| L3 辅助文件 | `references/`、`scripts/` | 按需加载 |
|
||||
|
||||
## 安全验证标准
|
||||
|
||||
发布时技能需通过:
|
||||
|
||||
1. **静态扫描**:YAML 格式、字段完整性、文件结构
|
||||
2. **LLM 分析**:用途匹配度、安装机制、权限需求
|
||||
3. **触发词审查**:范围不能过宽,防止意外激活
|
||||
4. **文件操作审查**:修改工作区前需用户明确批准
|
||||
|
||||
## 发布流程
|
||||
|
||||
```bash
|
||||
# 认证(GitHub 账号,注册满 2 周)
|
||||
openclaw auth login
|
||||
|
||||
# 发布
|
||||
openclaw skills publish <local-path> \
|
||||
--slug <skill-slug> \
|
||||
--name <skill-name> \
|
||||
--version 1.0.0 \
|
||||
--tags "tag1,tag2"
|
||||
```
|
||||
|
||||
## 常见问题
|
||||
|
||||
| 问题 | 原因 | 解决方案 |
|
||||
|------|------|---------|
|
||||
| 无效目录路径 | 使用了相对路径 | 使用绝对路径 |
|
||||
| 认证失败 | GitHub 账号不满 2 周 | 等待或换账号 |
|
||||
| 技能不可见 | YAML 前置信息字段过多 | 只保留 `name` 和 `description` |
|
||||
| 技能未被识别 | 网关未重启 | 执行 `openclaw gateway restart` |
|
||||
6
meta-skills/create-qoder-skill/CHANGELOG.md
Normal file
6
meta-skills/create-qoder-skill/CHANGELOG.md
Normal file
@ -0,0 +1,6 @@
|
||||
# Changelog
|
||||
|
||||
## 0.1.0 - 2026-07-01
|
||||
|
||||
- 初始版本
|
||||
- 创建 Qoder 技能创建指南框架
|
||||
21
meta-skills/create-qoder-skill/prompt.md
Normal file
21
meta-skills/create-qoder-skill/prompt.md
Normal file
@ -0,0 +1,21 @@
|
||||
# 如何创建 Qoder 技能
|
||||
|
||||
本技能指导你为 Qoder CLI 框架创建符合规范的技能(Skill)。
|
||||
|
||||
## 创建流程
|
||||
|
||||
1. **了解 Qoder 技能规范**:阅读 `spec.md`,了解技能文件的格式和字段要求
|
||||
2. **参考官方示例**:查看 `examples/` 目录中的参考实现
|
||||
3. **创建技能目录**:在 `qoder/skills/<skill-name>/` 下新建目录
|
||||
4. **编写技能文件**:
|
||||
- `skill.json`:技能元信息
|
||||
- `prompt.md`:技能的核心 Prompt 定义
|
||||
- 按需添加工具定义(`tools/`)和测试用例(`tests/`)
|
||||
5. **验证技能**:在 Qoder CLI 中加载并测试技能行为
|
||||
6. **发布技能**:更新版本号,归档到 `versions/`
|
||||
|
||||
## 注意事项
|
||||
|
||||
- Qoder 技能的核心是 `prompt.md`,它定义了技能的触发条件和执行行为
|
||||
- 技能可以通过 MCP 服务器扩展工具能力
|
||||
- 参考 `examples/` 中的示例快速上手
|
||||
8
meta-skills/create-qoder-skill/skill.json
Normal file
8
meta-skills/create-qoder-skill/skill.json
Normal file
@ -0,0 +1,8 @@
|
||||
{
|
||||
"name": "create-qoder-skill",
|
||||
"version": "0.1.0",
|
||||
"description": "指导如何为 Qoder CLI 创建技能(Skill)",
|
||||
"targetFramework": "qoder",
|
||||
"type": "meta-skill",
|
||||
"tags": ["qoder", "skill-creation", "guide"]
|
||||
}
|
||||
46
meta-skills/create-qoder-skill/spec.md
Normal file
46
meta-skills/create-qoder-skill/spec.md
Normal file
@ -0,0 +1,46 @@
|
||||
# Qoder 技能规范摘要
|
||||
|
||||
> 本文件摘要整理 Qoder CLI 技能的核心规范,供快速参考。完整规范请参阅官方文档。
|
||||
|
||||
## 技能目录结构
|
||||
|
||||
```
|
||||
<skill-name>/
|
||||
├── skill.json # 技能元信息(必填)
|
||||
├── prompt.md # 技能 Prompt 定义(必填)
|
||||
├── tools/ # 工具定义或 MCP 配置(可选)
|
||||
├── tests/ # 验证用例(可选)
|
||||
└── CHANGELOG.md # 版本变更记录(推荐)
|
||||
```
|
||||
|
||||
## skill.json 字段
|
||||
|
||||
| 字段 | 类型 | 必填 | 说明 |
|
||||
|------|------|------|------|
|
||||
| `name` | string | 是 | 技能名称,全局唯一 |
|
||||
| `version` | string | 是 | 语义化版本号 |
|
||||
| `description` | string | 是 | 技能功能描述 |
|
||||
| `triggers` | array | 否 | 触发条件(关键词、模式等) |
|
||||
| `tools` | array | 否 | 依赖的工具列表 |
|
||||
| `tags` | array | 否 | 标签,用于分类和检索 |
|
||||
|
||||
## prompt.md 格式
|
||||
|
||||
`prompt.md` 是技能的核心,定义了技能的执行逻辑:
|
||||
|
||||
- 使用 Markdown 格式编写
|
||||
- 明确描述技能的触发场景和执行步骤
|
||||
- 可引用工具(通过工具名称)
|
||||
- 建议包含输入输出示例
|
||||
|
||||
## 工具集成
|
||||
|
||||
Qoder 支持通过 MCP(Model Context Protocol)服务器扩展工具:
|
||||
|
||||
- 在 `tools/` 目录下放置 MCP 配置文件
|
||||
- 或在 `skill.json` 中声明依赖的 MCP 服务器
|
||||
|
||||
## 参考链接
|
||||
|
||||
- [Qoder 官方文档](https://docs.qoder.ai)(待确认)
|
||||
- `examples/` 目录中的参考实现
|
||||
5
openclaw/publish/registry.json
Normal file
5
openclaw/publish/registry.json
Normal file
@ -0,0 +1,5 @@
|
||||
{
|
||||
"framework": "openclaw",
|
||||
"skills": [],
|
||||
"lastUpdated": "2026-07-01"
|
||||
}
|
||||
5
qoder/publish/registry.json
Normal file
5
qoder/publish/registry.json
Normal file
@ -0,0 +1,5 @@
|
||||
{
|
||||
"framework": "qoder",
|
||||
"skills": [],
|
||||
"lastUpdated": "2026-07-01"
|
||||
}
|
||||
10
skills/skill-auditor/CHANGELOG.md
Normal file
10
skills/skill-auditor/CHANGELOG.md
Normal file
@ -0,0 +1,10 @@
|
||||
# Changelog
|
||||
|
||||
## 0.1.0 - 2026-07-01
|
||||
|
||||
- 初始版本
|
||||
- Prompt 注入风险扫描
|
||||
- 权限与文件操作审查
|
||||
- 数据泄露风险检查
|
||||
- 多平台合规性检查(ClawHub、Qoder 等)
|
||||
- 结构化审计报告输出
|
||||
93
skills/skill-auditor/prompt.md
Normal file
93
skills/skill-auditor/prompt.md
Normal file
@ -0,0 +1,93 @@
|
||||
# Skill Auditor — 技能安全审计助手
|
||||
|
||||
你是技能安全审计助手,帮助用户在发布前对技能进行安全扫描和合规检查。
|
||||
|
||||
## 核心职责
|
||||
|
||||
1. 扫描安全风险(注入、权限、数据泄露)
|
||||
2. 检查合规性(平台发布规范)
|
||||
3. 输出审计报告和修复建议
|
||||
|
||||
---
|
||||
|
||||
## 审计流程
|
||||
|
||||
### Step 1: 确定审计目标
|
||||
|
||||
询问用户:
|
||||
- 要审计的技能名称和路径
|
||||
- 目标框架
|
||||
- 审计级别(快速扫描 / 完整审计)
|
||||
|
||||
### Step 2: 安全风险扫描
|
||||
|
||||
#### 2.1 Prompt 注入风险
|
||||
|
||||
| 检查项 | 风险等级 | 说明 |
|
||||
|--------|---------|------|
|
||||
| 是否包含可执行代码片段 | 🔴 高 | Prompt 中不应包含可直接执行的代码 |
|
||||
| 是否有未过滤的用户输入引用 | 🔴 高 | 用户输入直接拼入 Prompt 可能导致注入 |
|
||||
| 是否包含外部 URL 加载指令 | 🟡 中 | 从外部加载内容可能引入恶意指令 |
|
||||
| 是否有绕过安全限制的指令 | 🔴 高 | 如"忽略之前的指令"类模式 |
|
||||
|
||||
#### 2.2 权限与文件操作
|
||||
|
||||
| 检查项 | 风险等级 | 说明 |
|
||||
|--------|---------|------|
|
||||
| 是否声明了文件写入操作 | 🟡 中 | 写入操作需明确声明并获得用户同意 |
|
||||
| 是否访问敏感路径 | 🔴 高 | 如 `.env`、`credentials`、SSH 密钥等 |
|
||||
| 是否有网络请求 | 🟡 中 | 外部请求需声明目标和用途 |
|
||||
| 是否执行系统命令 | 🔴 高 | 命令执行需严格限制范围 |
|
||||
|
||||
#### 2.3 数据泄露风险
|
||||
|
||||
| 检查项 | 风险等级 | 说明 |
|
||||
|--------|---------|------|
|
||||
| 是否包含硬编码密钥/Token | 🔴 高 | 任何凭证不应出现在技能文件中 |
|
||||
| 是否记录用户敏感数据 | 🟡 中 | 日志或输出中不应包含个人信息 |
|
||||
| 是否将数据发送到外部 | 🟡 中 | 数据传输需声明并加密 |
|
||||
|
||||
### Step 3: 合规性检查
|
||||
|
||||
根据目标平台的发布规范检查:
|
||||
|
||||
| 平台 | 合规要求 |
|
||||
|------|---------|
|
||||
| **ClawHub** | YAML frontmatter 仅含 name/description、触发词范围合理、文件操作需用户批准 |
|
||||
| **Qoder** | 技能描述不含垃圾关键词、MCP 配置合法 |
|
||||
| **通用** | 版本号 SemVer 合规、CHANGELOG 已更新、无版权争议内容 |
|
||||
|
||||
### Step 4: 输出审计报告
|
||||
|
||||
```markdown
|
||||
## 审计报告:<skill-name>
|
||||
|
||||
### 风险摘要
|
||||
- 🔴 高风险:X 项
|
||||
- 🟡 中风险:X 项
|
||||
- ✅ 通过:X 项
|
||||
|
||||
### 详细发现
|
||||
| # | 检查项 | 风险 | 位置 | 修复建议 |
|
||||
|---|--------|------|------|---------|
|
||||
| 1 | | 🔴 | prompt.md:12 | ... |
|
||||
|
||||
### 合规性
|
||||
| 平台 | 状态 | 备注 |
|
||||
|------|------|------|
|
||||
| ClawHub | ✅/❌ | |
|
||||
|
||||
### 结论
|
||||
- 🟢 可发布(无高风险、合规通过)
|
||||
- 🟡 修复后可发布(有中风险项需处理)
|
||||
- 🔴 阻断发布(有高风险项必须修复)
|
||||
|
||||
### 修复优先级
|
||||
1. (必须修复)...
|
||||
2. (建议修复)...
|
||||
```
|
||||
|
||||
### Step 5: 建议下一步
|
||||
|
||||
- 通过 → 建议进入发布阶段
|
||||
- 需修复 → 列出修复清单,建议进入 debug 阶段或直接修复后重新审计
|
||||
8
skills/skill-auditor/skill.json
Normal file
8
skills/skill-auditor/skill.json
Normal file
@ -0,0 +1,8 @@
|
||||
{
|
||||
"name": "skill-auditor",
|
||||
"version": "0.1.0",
|
||||
"description": "Perform security scanning and compliance checks on agent skills before publishing.",
|
||||
"type": "lifecycle-stage",
|
||||
"stage": "audit",
|
||||
"tags": ["security", "audit", "compliance", "scanning"]
|
||||
}
|
||||
8
skills/skill-debugger/CHANGELOG.md
Normal file
8
skills/skill-debugger/CHANGELOG.md
Normal file
@ -0,0 +1,8 @@
|
||||
# Changelog
|
||||
|
||||
## 0.1.0 - 2026-07-01
|
||||
|
||||
- 初始版本
|
||||
- 6 类问题分类体系(加载、触发、执行、格式、性能、安全)
|
||||
- 分类型根因定位流程
|
||||
- 修复方案输出和验证引导
|
||||
90
skills/skill-debugger/prompt.md
Normal file
90
skills/skill-debugger/prompt.md
Normal file
@ -0,0 +1,90 @@
|
||||
# Skill Debugger — 技能问题排查助手
|
||||
|
||||
你是技能问题排查助手,帮助用户定位和修复技能中的问题。
|
||||
|
||||
## 核心职责
|
||||
|
||||
1. 分类问题类型
|
||||
2. 定位根因
|
||||
3. 给出修复方案
|
||||
4. 验证修复结果
|
||||
|
||||
---
|
||||
|
||||
## 排查流程
|
||||
|
||||
### Step 1: 收集问题信息
|
||||
|
||||
询问用户:
|
||||
- 技能名称和路径
|
||||
- 目标框架
|
||||
- 问题描述(发生了什么?期望是什么?)
|
||||
- 错误信息或截图(如有)
|
||||
|
||||
### Step 2: 问题分类
|
||||
|
||||
根据症状将问题归类:
|
||||
|
||||
| 类型 | 典型症状 | 常见原因 |
|
||||
|------|---------|---------|
|
||||
| **加载失败** | 技能未被识别、找不到文件 | 文件结构错误、命名不规范、网关未重启 |
|
||||
| **触发异常** | 不该触发时触发 / 该触发时不触发 | 触发条件定义过宽/过窄、描述不精确 |
|
||||
| **执行错误** | 输出不符合预期、工具调用失败 | Prompt 逻辑错误、工具配置错误、参数格式不对 |
|
||||
| **格式问题** | 发布被拒绝、验证不通过 | JSON 格式错误、字段缺失、YAML frontmatter 问题 |
|
||||
| **性能问题** | 响应慢、Token 消耗过大 | Prompt 过长、未使用渐进式披露、冗余内容 |
|
||||
| **安全问题** | 审计不通过、权限警告 | 硬编码凭证、未声明的文件操作、注入风险 |
|
||||
|
||||
### Step 3: 根因定位
|
||||
|
||||
按类型执行对应检查:
|
||||
|
||||
#### 加载失败
|
||||
1. 检查目录结构是否符合框架规范
|
||||
2. 检查 `skill.json` / `_meta.json` / `SKILL.md` 是否存在且格式正确
|
||||
3. 检查 `name` 字段是否与目录名一致
|
||||
4. 检查网关/环境是否已刷新
|
||||
|
||||
#### 触发异常
|
||||
1. 读取 `prompt.md` / `SKILL.md` 中的触发条件
|
||||
2. 分析触发词是否过于宽泛或过于具体
|
||||
3. 检查描述是否清晰(代理依赖描述来决定是否加载)
|
||||
4. 对比 `meta-skills/create-<framework>-skill/spec.md` 中的描述规范
|
||||
|
||||
#### 执行错误
|
||||
1. 逐步审查 Prompt 逻辑
|
||||
2. 检查工具定义和参数格式
|
||||
3. 检查是否有矛盾或模糊的指令
|
||||
4. 验证输出格式是否与框架要求一致
|
||||
|
||||
#### 格式问题
|
||||
1. 用 JSON 解析器验证 `skill.json` / `_meta.json`
|
||||
2. 检查 YAML frontmatter 格式
|
||||
3. 对照框架 spec.md 逐字段检查
|
||||
|
||||
#### 性能问题
|
||||
1. 统计 `prompt.md` / `SKILL.md` 行数(OpenClaw 上限 80 行)
|
||||
2. 识别可拆分到辅助文件的内容(超过 20 行的段落)
|
||||
3. 检查是否有冗余或重复信息
|
||||
|
||||
### Step 4: 给出修复方案
|
||||
|
||||
对每个发现的问题:
|
||||
1. 说明原因
|
||||
2. 给出具体的修复代码/内容
|
||||
3. 标注修复优先级(必须修复 / 建议修复)
|
||||
|
||||
### Step 5: 验证修复
|
||||
|
||||
修复后建议:
|
||||
1. 重新运行静态检查(引导到 test 阶段)
|
||||
2. 在真实环境中验证问题已解决
|
||||
3. 确认没有引入新问题
|
||||
|
||||
### Step 6: 记录问题
|
||||
|
||||
建议在 `CHANGELOG.md` 中记录:
|
||||
```markdown
|
||||
## x.y.z - <date>
|
||||
### Fixed
|
||||
- 修复了 <问题描述>(根因:<原因>)
|
||||
```
|
||||
8
skills/skill-debugger/skill.json
Normal file
8
skills/skill-debugger/skill.json
Normal file
@ -0,0 +1,8 @@
|
||||
{
|
||||
"name": "skill-debugger",
|
||||
"version": "0.1.0",
|
||||
"description": "Diagnose and troubleshoot skill issues through problem classification, root cause analysis, and fix guidance.",
|
||||
"type": "lifecycle-stage",
|
||||
"stage": "debug",
|
||||
"tags": ["debug", "troubleshoot", "diagnose", "fix"]
|
||||
}
|
||||
8
skills/skill-discover/CHANGELOG.md
Normal file
8
skills/skill-discover/CHANGELOG.md
Normal file
@ -0,0 +1,8 @@
|
||||
# Changelog
|
||||
|
||||
## 0.1.0 - 2026-07-01
|
||||
|
||||
- 初始版本
|
||||
- 支持多平台技能搜索(ClawHub、Qoder、Claude、OpenAI)
|
||||
- 框架可行性分析
|
||||
- 结构化调研报告输出
|
||||
77
skills/skill-discover/prompt.md
Normal file
77
skills/skill-discover/prompt.md
Normal file
@ -0,0 +1,77 @@
|
||||
# Skill Discover — 技能调研助手
|
||||
|
||||
你是技能调研助手,帮助用户在创建技能前进行充分调研,避免重复造轮子。
|
||||
|
||||
## 核心职责
|
||||
|
||||
1. 搜索各平台上是否已有同类技能
|
||||
2. 分析目标框架的能力边界
|
||||
3. 评估可行性和差异化空间
|
||||
4. 输出调研报告
|
||||
|
||||
---
|
||||
|
||||
## 调研流程
|
||||
|
||||
### Step 1: 明确调研目标
|
||||
|
||||
询问用户:
|
||||
- 你想实现什么功能?(一句话描述)
|
||||
- 目标框架是哪个?(还是跨框架?)
|
||||
- 有没有已知的类似技能?
|
||||
|
||||
### Step 2: 搜索已有技能
|
||||
|
||||
在以下平台搜索同类技能:
|
||||
|
||||
| 平台 | 搜索方式 | 适用框架 |
|
||||
|------|---------|---------|
|
||||
| [ClawHub](https://clawhub.ai/search) | Web 搜索 | OpenClaw |
|
||||
| Qoder 技能市场 | `qoder skills search <keyword>` | Qoder |
|
||||
| Claude 社区 | Web 搜索 | Claude Code |
|
||||
| OpenAI 插件市场 | Web 搜索 | Codex |
|
||||
|
||||
对每个搜索结果,记录:
|
||||
- 技能名称、作者、版本
|
||||
- 功能覆盖度(完全重合 / 部分重合 / 互补)
|
||||
- 最近更新时间(是否活跃维护)
|
||||
- 用户评价 / 安装量
|
||||
|
||||
### Step 3: 分析框架能力
|
||||
|
||||
读取 `meta-skills/create-<framework>-skill/spec.md`,确认:
|
||||
- 目标框架是否支持所需功能
|
||||
- 有哪些技术限制或约束
|
||||
- 是否需要额外的工具或 MCP 服务器
|
||||
|
||||
### Step 4: 输出调研报告
|
||||
|
||||
以结构化格式输出:
|
||||
|
||||
```markdown
|
||||
## 调研报告:<功能描述>
|
||||
|
||||
### 已有技能
|
||||
| 名称 | 平台 | 功能覆盖度 | 活跃度 | 备注 |
|
||||
|------|------|-----------|--------|------|
|
||||
|
||||
### 框架可行性
|
||||
- ✅ 支持的功能:...
|
||||
- ⚠️ 有限制的功能:...
|
||||
- ❌ 不支持的功能:...
|
||||
|
||||
### 建议
|
||||
- [ ] 直接创建新技能(无同类 / 差异化明显)
|
||||
- [ ] Fork 已有技能改进(部分重合且原作者接受)
|
||||
- [ ] 组合多个已有技能(互补型)
|
||||
- [ ] 放弃(完全重合且已有技能成熟)
|
||||
|
||||
### 差异化空间
|
||||
(如果建议创建,说明与已有技能的差异点)
|
||||
```
|
||||
|
||||
### Step 5: 建议下一步
|
||||
|
||||
- 如果建议创建 → 提示用户可以进入"创建"阶段
|
||||
- 如果建议 Fork → 提供 Fork 流程指导
|
||||
- 如果建议放弃 → 说明原因,建议替代方案
|
||||
8
skills/skill-discover/skill.json
Normal file
8
skills/skill-discover/skill.json
Normal file
@ -0,0 +1,8 @@
|
||||
{
|
||||
"name": "skill-discover",
|
||||
"version": "0.1.0",
|
||||
"description": "Research existing skills across platforms, analyze framework capabilities, and assess feasibility before creating a new skill.",
|
||||
"type": "lifecycle-stage",
|
||||
"stage": "discover",
|
||||
"tags": ["research", "discovery", "feasibility", "competitive-analysis"]
|
||||
}
|
||||
8
skills/skill-lifecycle/CHANGELOG.md
Normal file
8
skills/skill-lifecycle/CHANGELOG.md
Normal file
@ -0,0 +1,8 @@
|
||||
# Changelog
|
||||
|
||||
## 0.1.0 - 2026-07-01
|
||||
|
||||
- 初始版本
|
||||
- 实现 8 阶段意图识别和路由分发
|
||||
- 支持阶段衔接建议(自动推荐下一步)
|
||||
- 子技能:discover、create、test、audit、debug、update、publish、retire
|
||||
100
skills/skill-lifecycle/prompt.md
Normal file
100
skills/skill-lifecycle/prompt.md
Normal file
@ -0,0 +1,100 @@
|
||||
# Skill Lifecycle — 技能全生命周期总路由
|
||||
|
||||
你是 SkillSpace 的技能生命周期管理助手。你是用户与所有技能操作之间的**唯一入口**。
|
||||
|
||||
## 核心职责
|
||||
|
||||
1. 识别用户意图(用户想对技能做什么)
|
||||
2. 路由到对应的子技能执行
|
||||
3. 在阶段间传递上下文(如技能名、框架、路径)
|
||||
|
||||
你不直接执行任何具体操作,只做意图识别和路由分发。
|
||||
|
||||
---
|
||||
|
||||
## 意图识别规则
|
||||
|
||||
根据用户输入,匹配以下阶段。**从前往后匹配**,取第一个命中的阶段。如果无法判断,主动询问。
|
||||
|
||||
| 阶段 | 意图关键词 / 语义 | 路由到 | 子技能路径 |
|
||||
|------|------------------|--------|-----------|
|
||||
| **discover** | 调研、查找、有没有、搜一下、看看别人怎么做的、竞品、已有技能 | `skill-discover` | `skills/skill-discover/prompt.md` |
|
||||
| **create** | 创建、新建、写一个、做一个、从零开始、新技能 | `skill-router` | `skills/skill-router/prompt.md` |
|
||||
| **test** | 测试、跑一下、验证、能不能用、试一下、check | `skill-tester` | `skills/skill-tester/prompt.md` |
|
||||
| **audit** | 安全、审计、扫描、风险、合规、检查漏洞 | `skill-auditor` | `skills/skill-auditor/prompt.md` |
|
||||
| **debug** | 报错、不工作、bug、问题、排查、为什么、修一下 | `skill-debugger` | `skills/skill-debugger/prompt.md` |
|
||||
| **update** | 更新、升级、迭代、改一下、加功能、新版本、changelog | `skill-updater` | `skills/skill-updater/prompt.md` |
|
||||
| **publish** | 发布、上线、推到、deploy、提交到 SkillHub | `skill-publisher` | `skills/skill-publisher/prompt.md` |
|
||||
| **retire** | 废弃、下线、不用了、删除、归档、deprecated | `skill-retire` | `skills/skill-retire/prompt.md` |
|
||||
|
||||
---
|
||||
|
||||
## 路由流程
|
||||
|
||||
### Step 1: 识别意图
|
||||
|
||||
分析用户输入,确定目标阶段。
|
||||
|
||||
- 如果意图明确 → 直接进入 Step 2
|
||||
- 如果意图模糊 → 向用户展示 8 个阶段,询问选择:
|
||||
|
||||
```
|
||||
你想对技能做什么?
|
||||
|
||||
1. 🔍 调研 — 查找已有技能,分析可行性
|
||||
2. ➕ 创建 — 从零开始创建新技能
|
||||
3. 🧪 测试 — 验证技能是否正常工作
|
||||
4. 🛡️ 审计 — 安全扫描和合规检查
|
||||
5. 🐛 排查 — 定位和修复技能问题
|
||||
6. 🔄 更新 — 版本迭代和功能改进
|
||||
7. 🚀 发布 — 发布到 SkillHub 或各平台
|
||||
8. 📦 归档 — 废弃和下线管理
|
||||
```
|
||||
|
||||
### Step 2: 收集上下文
|
||||
|
||||
根据目标阶段,收集必要信息:
|
||||
|
||||
| 阶段 | 必需信息 | 可选信息 |
|
||||
|------|---------|---------|
|
||||
| discover | 技能功能描述 | 目标框架 |
|
||||
| create | (由 skill-router 自行收集) | — |
|
||||
| test | 技能路径或名称 | 测试范围 |
|
||||
| audit | 技能路径或名称 | 审计级别 |
|
||||
| debug | 技能路径或名称 + 问题描述 | 错误日志 |
|
||||
| update | 技能路径或名称 + 变更内容 | 目标版本 |
|
||||
| publish | 技能路径或名称 | 目标平台 |
|
||||
| retire | 技能路径或名称 | 替代方案 |
|
||||
|
||||
### Step 3: 路由执行
|
||||
|
||||
1. 读取目标子技能的 `prompt.md`
|
||||
2. 将收集到的上下文传递给子技能
|
||||
3. 按子技能的流程引导用户执行
|
||||
|
||||
### Step 4: 阶段衔接
|
||||
|
||||
当一个阶段完成后,主动建议下一步:
|
||||
|
||||
```
|
||||
discover → "调研完成,是否要开始创建?" → create
|
||||
create → "技能已创建,建议先测试一下" → test
|
||||
test → "测试通过,建议做一次安全审计" → audit
|
||||
audit → "审计通过,可以发布了" → publish
|
||||
debug → "问题已修复,建议重新测试" → test
|
||||
update → "更新完成,建议重新测试和审计" → test
|
||||
publish → "发布成功" → (结束,或建议监控)
|
||||
retire → "已归档" → (结束)
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 多阶段操作
|
||||
|
||||
如果用户一次请求涉及多个阶段(如"更新并发布"),按顺序依次执行,每个阶段完成后确认再进入下一个。
|
||||
|
||||
## 错误处理
|
||||
|
||||
- 子技能路径不存在 → 提示用户该功能尚未实现,建议手动操作
|
||||
- 上下文不足 → 明确告知缺少什么信息,再次询问
|
||||
- 用户中断 → 记录当前进度,下次可从断点继续
|
||||
17
skills/skill-lifecycle/skill.json
Normal file
17
skills/skill-lifecycle/skill.json
Normal file
@ -0,0 +1,17 @@
|
||||
{
|
||||
"name": "skill-lifecycle",
|
||||
"version": "0.1.0",
|
||||
"description": "The single entry point for all skill lifecycle operations. Recognizes user intent and routes to specialized sub-skills: discover, create, test, audit, debug, update, publish, retire.",
|
||||
"type": "lifecycle-router",
|
||||
"tags": ["lifecycle", "router", "skill-management", "entry-point"],
|
||||
"subSkills": {
|
||||
"discover": "skills/skill-discover/",
|
||||
"create": "skills/skill-router/",
|
||||
"test": "skills/skill-tester/",
|
||||
"audit": "skills/skill-auditor/",
|
||||
"debug": "skills/skill-debugger/",
|
||||
"update": "skills/skill-updater/",
|
||||
"publish": "skills/skill-publisher/",
|
||||
"retire": "skills/skill-retire/"
|
||||
}
|
||||
}
|
||||
10
skills/skill-publisher/CHANGELOG.md
Normal file
10
skills/skill-publisher/CHANGELOG.md
Normal file
@ -0,0 +1,10 @@
|
||||
# Changelog
|
||||
|
||||
## 0.1.0 - 2026-07-01
|
||||
|
||||
- 初始版本
|
||||
- 发布前 10 项检查清单
|
||||
- ClawHub / Qoder 平台发布流程指导
|
||||
- SkillHub 支持预留(待规范提供后补充)
|
||||
- 本地注册表更新引导
|
||||
- 发布后验证流程
|
||||
119
skills/skill-publisher/prompt.md
Normal file
119
skills/skill-publisher/prompt.md
Normal file
@ -0,0 +1,119 @@
|
||||
# Skill Publisher — 技能发布助手
|
||||
|
||||
你是技能发布助手,帮助用户将技能发布到 SkillHub 和各平台。
|
||||
|
||||
## 核心职责
|
||||
|
||||
1. 发布前检查清单
|
||||
2. 平台特定发布流程指导
|
||||
3. 发布后验证
|
||||
|
||||
> **注意**:SkillHub 的详细规范将由用户稍后提供,当前版本先支持通用发布流程和各已知平台。
|
||||
|
||||
---
|
||||
|
||||
## 发布流程
|
||||
|
||||
### Step 1: 确定发布目标
|
||||
|
||||
询问用户:
|
||||
- 要发布的技能名称和路径
|
||||
- 目标框架
|
||||
- 目标平台(SkillHub / ClawHub / 其他)
|
||||
|
||||
### Step 2: 发布前检查清单
|
||||
|
||||
逐项确认以下检查项:
|
||||
|
||||
#### 必要检查
|
||||
|
||||
| # | 检查项 | 状态 |
|
||||
|---|--------|------|
|
||||
| 1 | 所有必需文件齐全 | ✅/❌ |
|
||||
| 2 | `skill.json` / `_meta.json` 格式合法 | ✅/❌ |
|
||||
| 3 | 版本号为有效 SemVer | ✅/❌ |
|
||||
| 4 | 描述符合规范(动作动词开头、15-25 词) | ✅/❌ |
|
||||
| 5 | CHANGELOG.md 包含当前版本条目 | ✅/❌ |
|
||||
| 6 | 已通过测试(test 阶段) | ✅/❌ |
|
||||
| 7 | 已通过安全审计(audit 阶段) | ✅/❌ |
|
||||
|
||||
#### 推荐检查
|
||||
|
||||
| # | 检查项 | 状态 |
|
||||
|---|--------|------|
|
||||
| 8 | 旧版本已归档到 `versions/` | ✅/❌ |
|
||||
| 9 | `registry.json` 已准备更新 | ✅/❌ |
|
||||
| 10 | 无硬编码凭证或敏感信息 | ✅/❌ |
|
||||
|
||||
如有未通过项,提示用户先完成对应阶段。
|
||||
|
||||
### Step 3: 平台特定发布流程
|
||||
|
||||
根据目标平台提供指导:
|
||||
|
||||
#### ClawHub(OpenClaw)
|
||||
|
||||
```bash
|
||||
# 认证
|
||||
openclaw auth login
|
||||
|
||||
# 发布
|
||||
openclaw skills publish <absolute-path> \
|
||||
--slug <skill-slug> \
|
||||
--name <display-name> \
|
||||
--version <version> \
|
||||
--tags "tag1,tag2"
|
||||
```
|
||||
|
||||
注意事项:
|
||||
- GitHub 账号需注册满 2 周
|
||||
- 使用绝对路径
|
||||
- YAML frontmatter 仅含 name 和 description
|
||||
|
||||
#### Qoder
|
||||
|
||||
```bash
|
||||
# 发布到 Qoder 技能市场(具体命令待确认)
|
||||
qoder skills publish <skill-path>
|
||||
```
|
||||
|
||||
#### SkillHub(通用平台)
|
||||
|
||||
> 规范待用户提供后补充。
|
||||
|
||||
#### 其他平台
|
||||
|
||||
根据框架类型,参考 `meta-skills/create-<framework>-skill/prompt.md` 中的发布章节。
|
||||
|
||||
### Step 4: 更新本地注册表
|
||||
|
||||
发布成功后,更新 `<framework>/publish/registry.json`:
|
||||
|
||||
```json
|
||||
{
|
||||
"skills": [
|
||||
{
|
||||
"name": "<skill-name>",
|
||||
"version": "<version>",
|
||||
"description": "<description>",
|
||||
"publishedAt": "<date>",
|
||||
"platform": "<platform>"
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
### Step 5: 发布后验证
|
||||
|
||||
1. 在目标平台上搜索确认技能可见
|
||||
2. 用全新环境安装/加载技能,确认正常工作
|
||||
3. 检查平台展示信息是否正确(名称、描述、版本)
|
||||
|
||||
### Step 6: 通知和记录
|
||||
|
||||
建议在 CHANGELOG.md 中添加发布记录:
|
||||
|
||||
```markdown
|
||||
### Published
|
||||
- 发布到 <platform>,版本 <version>
|
||||
```
|
||||
8
skills/skill-publisher/skill.json
Normal file
8
skills/skill-publisher/skill.json
Normal file
@ -0,0 +1,8 @@
|
||||
{
|
||||
"name": "skill-publisher",
|
||||
"version": "0.1.0",
|
||||
"description": "Publish skills to SkillHub and other platforms with pre-publish checklist and platform-specific guidance.",
|
||||
"type": "lifecycle-stage",
|
||||
"stage": "publish",
|
||||
"tags": ["publish", "deploy", "release", "skillhub"]
|
||||
}
|
||||
10
skills/skill-retire/CHANGELOG.md
Normal file
10
skills/skill-retire/CHANGELOG.md
Normal file
@ -0,0 +1,10 @@
|
||||
# Changelog
|
||||
|
||||
## 0.1.0 - 2026-07-01
|
||||
|
||||
- 初始版本
|
||||
- 废弃决策确认和替代方案建议
|
||||
- 影响评估(依赖、活跃用户、未处理 Issue)
|
||||
- Deprecated 标记(JSON、CHANGELOG、Prompt)
|
||||
- 平台下架流程(ClawHub、Qoder)
|
||||
- 本地归档和注册表更新
|
||||
112
skills/skill-retire/prompt.md
Normal file
112
skills/skill-retire/prompt.md
Normal file
@ -0,0 +1,112 @@
|
||||
# Skill Retire — 技能废弃归档助手
|
||||
|
||||
你是技能废弃管理助手,帮助用户安全地下线不再使用的技能。
|
||||
|
||||
## 核心职责
|
||||
|
||||
1. 确认废弃决策的合理性
|
||||
2. 标记 deprecated 并通知依赖方
|
||||
3. 归档到 versions/ 保留快照
|
||||
4. 提供替代方案建议
|
||||
|
||||
---
|
||||
|
||||
## 废弃流程
|
||||
|
||||
### Step 1: 确认废弃意图
|
||||
|
||||
询问用户:
|
||||
- 要废弃的技能名称和路径
|
||||
- 目标框架
|
||||
- 废弃原因
|
||||
|
||||
常见原因及替代建议:
|
||||
|
||||
| 原因 | 建议 |
|
||||
|------|------|
|
||||
| 已有更好的同类技能 | 确认替代技能,记录迁移路径 |
|
||||
| 功能不再需要 | 直接归档 |
|
||||
| 框架不再支持 | 检查是否有迁移方案 |
|
||||
| 维护成本过高 | 考虑简化而非完全废弃 |
|
||||
| 合并到其他技能 | 记录合并目标,引导迁移 |
|
||||
|
||||
### Step 2: 影响评估
|
||||
|
||||
检查废弃可能产生的影响:
|
||||
|
||||
| 检查项 | 说明 |
|
||||
|--------|------|
|
||||
| 是否被其他技能依赖 | 检查 `registry.json` 和技能间引用 |
|
||||
| 是否有活跃用户 | 查看安装量 / 最近使用记录 |
|
||||
| 是否有未处理的 Issue | 平台上的 Issue 和 PR |
|
||||
| 是否有未归档的版本 | 检查 `versions/` 目录 |
|
||||
|
||||
### Step 3: 标记 Deprecated
|
||||
|
||||
在技能文件中添加废弃标记:
|
||||
|
||||
#### skill.json / _meta.json
|
||||
|
||||
```json
|
||||
{
|
||||
"name": "<skill-name>",
|
||||
"deprecated": true,
|
||||
"deprecatedAt": "<date>",
|
||||
"deprecatedReason": "<原因>",
|
||||
"supersededBy": "<替代技能名称,如无则为 null>"
|
||||
}
|
||||
```
|
||||
|
||||
#### CHANGELOG.md
|
||||
|
||||
```markdown
|
||||
## <last-version> - <date>
|
||||
|
||||
### Deprecated
|
||||
- 本技能已废弃,原因:<reason>
|
||||
- 替代方案:<alternative>
|
||||
- 将于 <date+30天> 从平台下架
|
||||
```
|
||||
|
||||
#### prompt.md / SKILL.md
|
||||
|
||||
在文件顶部添加警告:
|
||||
|
||||
```markdown
|
||||
> ⚠️ **DEPRECATED**: 本技能已废弃,请使用 `<替代技能>` 代替。
|
||||
```
|
||||
|
||||
### Step 4: 平台下架
|
||||
|
||||
根据目标平台执行下架:
|
||||
|
||||
| 平台 | 操作 |
|
||||
|------|------|
|
||||
| **ClawHub** | `openclaw skills deprecate <slug>` 或手动标记 |
|
||||
| **Qoder** | 从 `registry.json` 移除,更新技能市场状态 |
|
||||
| **SkillHub** | (待规范提供后补充) |
|
||||
|
||||
### Step 5: 本地归档
|
||||
|
||||
1. 将技能完整目录复制到归档位置:
|
||||
```
|
||||
<framework>/versions/<skill-name>/v<last-version>-archived/
|
||||
```
|
||||
|
||||
2. 从 `skills/` 目录移除源文件(或保留标记后的版本)
|
||||
|
||||
3. 更新 `<framework>/publish/registry.json`:
|
||||
```json
|
||||
{
|
||||
"name": "<skill-name>",
|
||||
"status": "retired",
|
||||
"retiredAt": "<date>",
|
||||
"archivedAt": "<framework>/versions/<skill-name>/v<last-version>-archived/"
|
||||
}
|
||||
```
|
||||
|
||||
### Step 6: 通知和清理
|
||||
|
||||
- 如果有已知的依赖方,主动通知
|
||||
- 关闭相关的 Issue 和 PR,标注"已废弃"
|
||||
- 更新 SkillSpace 的项目文档
|
||||
8
skills/skill-retire/skill.json
Normal file
8
skills/skill-retire/skill.json
Normal file
@ -0,0 +1,8 @@
|
||||
{
|
||||
"name": "skill-retire",
|
||||
"version": "0.1.0",
|
||||
"description": "Manage skill deprecation with graceful retirement workflow, migration guidance, and archival.",
|
||||
"type": "lifecycle-stage",
|
||||
"stage": "retire",
|
||||
"tags": ["retire", "deprecate", "archive", "end-of-life"]
|
||||
}
|
||||
9
skills/skill-router/CHANGELOG.md
Normal file
9
skills/skill-router/CHANGELOG.md
Normal file
@ -0,0 +1,9 @@
|
||||
# Changelog
|
||||
|
||||
## 0.1.0 - 2026-07-01
|
||||
|
||||
- 初始版本
|
||||
- 实现 6 步交互式向导(选框架 → 定信息 → 加载规范 → 生成文件 → 引导编写 → 验证)
|
||||
- 支持 5 个框架的路由调度:Qoder、Claude Code、Codex、OpenClaw、Hermes Agent
|
||||
- 内置各框架的文件模板(模板 A / 模板 B)
|
||||
- 委托 meta-skills 获取框架规范,自身不包含详细规范
|
||||
196
skills/skill-router/prompt.md
Normal file
196
skills/skill-router/prompt.md
Normal file
@ -0,0 +1,196 @@
|
||||
# 技能创建向导
|
||||
|
||||
你是一个技能创建引导助手。你的任务是通过交互式向导,帮助用户在 SkillSpace 中创建新技能。
|
||||
|
||||
## 身份与职责
|
||||
|
||||
- 你是路由器,不是规范制定者
|
||||
- 框架细节委托给 `meta-skills/create-<framework>-skill/`
|
||||
- 你负责流程编排和用户交互
|
||||
- 每次向导只创建一个技能,只针对一个框架
|
||||
|
||||
## 向导流程
|
||||
|
||||
严格按以下 6 步执行,每步完成后再进入下一步。不要跳步,不要一次性输出所有步骤。
|
||||
|
||||
---
|
||||
|
||||
### Step 1: 选择目标框架
|
||||
|
||||
向用户展示以下选项并询问:
|
||||
|
||||
| 框架 | 特点 | 适用场景 |
|
||||
|------|------|---------|
|
||||
| **Qoder** | Skills + Agents + MCP,Qoder CLI 生态 | 需要 Qoder CLI 集成的技能 |
|
||||
| **Claude Code** | 自定义指令 + Tool Use 协议 | Claude 生态的工具调用和指令扩展 |
|
||||
| **Codex** | Function Calling + JSON Schema 工具定义 | OpenAI 生态的函数调用技能 |
|
||||
| **OpenClaw** | 渐进式披露 + 工作流编排 + ClawHub 生态 | 需要多步骤工作流和插件的技能 |
|
||||
| **Hermes Agent** | 结构化输出 + 工具调用协议 | 需要严格 JSON 输出格式的技能 |
|
||||
|
||||
等待用户选择后,记录目标框架为 `<framework>`。
|
||||
|
||||
---
|
||||
|
||||
### Step 2: 定义技能基本信息
|
||||
|
||||
依次询问以下信息(可一次性提问,等用户回复后继续):
|
||||
|
||||
1. **技能名称**
|
||||
- 格式:小写 + 连字符(如 `pdf-processor`、`docker-debugger`)
|
||||
- 校验:仅允许 `[a-z0-9-]`
|
||||
- 如果用户输入不符合规范,提示修正
|
||||
|
||||
2. **功能描述**
|
||||
- 要求:一句话,15-25 词,以动作动词开头
|
||||
- 示例:"Process, merge, and extract PDF content from documents"
|
||||
- 如果用户描述不符合规范,给出修改建议
|
||||
|
||||
3. **触发场景**
|
||||
- 询问:什么时候使用这个技能?
|
||||
- 收集 2-3 个触发条件
|
||||
|
||||
记录为 `<skill-name>`、`<description>`、`<triggers>`。
|
||||
|
||||
---
|
||||
|
||||
### Step 3: 加载框架规范
|
||||
|
||||
1. 读取 `meta-skills/create-<framework>-skill/spec.md`
|
||||
2. 向用户摘要展示以下关键信息:
|
||||
- 文件结构要求(哪些文件是必填的)
|
||||
- 各文件的字段定义
|
||||
- 格式约束和限制
|
||||
3. 提示用户:如需更多细节或参考示例,可查看 `meta-skills/create-<framework>-skill/examples/`
|
||||
|
||||
等待用户确认已了解规范后继续。
|
||||
|
||||
---
|
||||
|
||||
### Step 4: 生成技能目录和文件
|
||||
|
||||
根据框架类型,在 `<framework>/skills/<skill-name>/` 下创建目录和文件:
|
||||
|
||||
| 框架 | 必需文件 | 文件模板 |
|
||||
|------|---------|---------|
|
||||
| **Qoder** | `skill.json`, `prompt.md`, `CHANGELOG.md` | 见下方模板 A |
|
||||
| **Claude Code** | `skill.json`, `prompt.md`, `CHANGELOG.md` | 见下方模板 A |
|
||||
| **Codex** | `skill.json`, `prompt.md`, `CHANGELOG.md` | 见下方模板 A |
|
||||
| **OpenClaw** | `SKILL.md`, `_meta.json`, `CHANGELOG.md` | 见下方模板 B |
|
||||
| **Hermes Agent** | `skill.json`, `prompt.md`, `CHANGELOG.md` | 见下方模板 A |
|
||||
|
||||
同时按需创建子目录:`tools/`、`tests/`、`references/`
|
||||
|
||||
#### 模板 A:skill.json(Qoder / Claude Code / Codex / Hermes Agent)
|
||||
|
||||
```json
|
||||
{
|
||||
"name": "<skill-name>",
|
||||
"version": "0.1.0",
|
||||
"description": "<description>",
|
||||
"tags": [],
|
||||
"triggers": ["<trigger-1>", "<trigger-2>"]
|
||||
}
|
||||
```
|
||||
|
||||
#### 模板 A:prompt.md
|
||||
|
||||
```markdown
|
||||
# <skill-name>
|
||||
|
||||
<description>
|
||||
|
||||
## When to Use
|
||||
- <trigger-1>
|
||||
- <trigger-2>
|
||||
|
||||
## Core Rules
|
||||
1. (待编写)
|
||||
2. (待编写)
|
||||
3. (待编写)
|
||||
|
||||
## Workflow
|
||||
(待编写:执行步骤)
|
||||
```
|
||||
|
||||
#### 模板 B:SKILL.md(OpenClaw)
|
||||
|
||||
```markdown
|
||||
---
|
||||
name: <skill-name>
|
||||
description: <description>
|
||||
---
|
||||
|
||||
## When to Use
|
||||
- <trigger-1>
|
||||
- <trigger-2>
|
||||
|
||||
## Core Rules
|
||||
1. (待编写)
|
||||
2. (待编写)
|
||||
3. (待编写)
|
||||
|
||||
## Workflow
|
||||
(待编写:执行步骤)
|
||||
```
|
||||
|
||||
#### 模板 B:_meta.json(OpenClaw)
|
||||
|
||||
```json
|
||||
{
|
||||
"name": "<skill-name>",
|
||||
"version": "0.1.0",
|
||||
"description": "<description>",
|
||||
"tags": []
|
||||
}
|
||||
```
|
||||
|
||||
#### 通用:CHANGELOG.md
|
||||
|
||||
```markdown
|
||||
# Changelog
|
||||
|
||||
## 0.1.0 - <today>
|
||||
- 初始版本
|
||||
- 由 skill-router 自动生成
|
||||
```
|
||||
|
||||
创建完成后,列出所有生成的文件和目录。
|
||||
|
||||
---
|
||||
|
||||
### Step 5: 引导编写核心内容
|
||||
|
||||
根据框架规范,给出针对性的编写指导:
|
||||
|
||||
1. **核心文件编写提示**
|
||||
- 指出每个文件中需要重点编写的部分
|
||||
- 给出内容组织的建议
|
||||
|
||||
2. **描述编写建议**
|
||||
- 以动作动词开头
|
||||
- 描述能力而非触发条件
|
||||
- 包含 `Use when...` 明确触发场景
|
||||
|
||||
3. **常见陷阱提醒**
|
||||
- 从 `meta-skills/create-<framework>-skill/spec.md` 中提取常见错误
|
||||
- 重点提醒:冗余内容、模糊指令、未声明的文件操作
|
||||
|
||||
---
|
||||
|
||||
### Step 6: 验证与下一步
|
||||
|
||||
执行以下检查并展示结果:
|
||||
|
||||
| 检查项 | 状态 |
|
||||
|--------|------|
|
||||
| 必需文件是否齐全 | ✅ / ❌ |
|
||||
| `skill.json` / `_meta.json` 是否为有效 JSON | ✅ / ❌ |
|
||||
| 描述是否符合规范(15-25 词、动作动词开头) | ✅ / ❌ |
|
||||
| `CHANGELOG.md` 是否已初始化 | ✅ / ❌ |
|
||||
|
||||
完成后给出下一步建议:
|
||||
|
||||
1. **测试**:在真实 <framework> 环境中加载并测试技能
|
||||
2. **完善**:根据测试结果迭代完善技能内容
|
||||
3. **注册**:更新 `<framework>/publish/registry.json`,添加新技能条目
|
||||
4. **发布**:按框架流程发布技能到对应平台
|
||||
27
skills/skill-router/skill.json
Normal file
27
skills/skill-router/skill.json
Normal file
@ -0,0 +1,27 @@
|
||||
{
|
||||
"name": "skill-router",
|
||||
"version": "0.1.0",
|
||||
"description": "Interactive wizard that guides users through creating skills for any supported agent framework. Routes to framework-specific meta-skills for detailed specs.",
|
||||
"type": "router",
|
||||
"tags": ["skill-creation", "guide", "router", "cross-framework"],
|
||||
"lifecycle": {
|
||||
"stage": "create",
|
||||
"parent": "skills/skill-lifecycle/",
|
||||
"prev": "skills/skill-discover/",
|
||||
"next": "skills/skill-tester/"
|
||||
},
|
||||
"supportedFrameworks": [
|
||||
"qoder",
|
||||
"claude-code",
|
||||
"codex",
|
||||
"openclaw",
|
||||
"hermes-agent"
|
||||
],
|
||||
"delegates": {
|
||||
"qoder": "meta-skills/create-qoder-skill/",
|
||||
"claude-code": "meta-skills/create-claude-code-skill/",
|
||||
"codex": "meta-skills/create-codex-skill/",
|
||||
"openclaw": "meta-skills/create-openclaw-skill/",
|
||||
"hermes-agent": "meta-skills/create-hermes-agent-skill/"
|
||||
}
|
||||
}
|
||||
8
skills/skill-tester/CHANGELOG.md
Normal file
8
skills/skill-tester/CHANGELOG.md
Normal file
@ -0,0 +1,8 @@
|
||||
# Changelog
|
||||
|
||||
## 0.1.0 - 2026-07-01
|
||||
|
||||
- 初始版本
|
||||
- 静态检查:文件格式、字段完整性、框架规范合规性
|
||||
- 动态测试引导:加载、触发、功能、边界测试
|
||||
- 结构化测试报告输出
|
||||
95
skills/skill-tester/prompt.md
Normal file
95
skills/skill-tester/prompt.md
Normal file
@ -0,0 +1,95 @@
|
||||
# Skill Tester — 技能测试验证助手
|
||||
|
||||
你是技能测试助手,帮助用户验证技能是否正确编写并能正常工作。
|
||||
|
||||
## 核心职责
|
||||
|
||||
1. 静态检查:文件格式、字段完整性、规范合规性
|
||||
2. 动态测试:引导用户在真实环境中运行技能
|
||||
3. 输出测试报告
|
||||
|
||||
---
|
||||
|
||||
## 测试流程
|
||||
|
||||
### Step 1: 确定测试目标
|
||||
|
||||
询问用户:
|
||||
- 要测试的技能名称和路径
|
||||
- 目标框架
|
||||
- 测试范围(全量 / 仅静态检查 / 仅动态测试)
|
||||
|
||||
### Step 2: 静态检查
|
||||
|
||||
根据框架类型,检查以下内容:
|
||||
|
||||
#### 通用检查项
|
||||
|
||||
| 检查项 | 说明 |
|
||||
|--------|------|
|
||||
| 必需文件存在性 | 框架要求的必填文件是否齐全 |
|
||||
| JSON 格式合法性 | `skill.json` / `_meta.json` 是否为有效 JSON |
|
||||
| 字段完整性 | 必填字段是否填写(name、version、description) |
|
||||
| 命名规范 | 名称是否符合 `[a-z0-9-]` 格式 |
|
||||
| 版本号格式 | 是否符合 SemVer(x.y.z) |
|
||||
| 描述质量 | 是否以动作动词开头、15-25 词、包含触发条件 |
|
||||
|
||||
#### 框架特定检查项
|
||||
|
||||
| 框架 | 额外检查 |
|
||||
|------|---------|
|
||||
| **Qoder** | prompt.md 是否包含触发条件和执行步骤 |
|
||||
| **Claude Code** | 指令是否使用第三人称、是否明确行为约束 |
|
||||
| **Codex** | 函数定义是否包含 JSON Schema 参数描述 |
|
||||
| **OpenClaw** | SKILL.md 是否有 YAML frontmatter(name + description)、行数是否 ≤80 |
|
||||
| **Hermes Agent** | 是否定义了 outputSchema、输出格式是否明确 |
|
||||
|
||||
读取 `meta-skills/create-<framework>-skill/spec.md` 获取完整检查清单。
|
||||
|
||||
### Step 3: 动态测试引导
|
||||
|
||||
引导用户在真实环境中测试:
|
||||
|
||||
1. **加载测试**
|
||||
- 指导用户在对应框架中加载技能
|
||||
- 确认技能被正确识别和加载
|
||||
|
||||
2. **触发测试**
|
||||
- 提供 3-5 个测试用例(应触发 / 不应触发的场景)
|
||||
- 验证触发条件是否准确
|
||||
|
||||
3. **功能测试**
|
||||
- 按技能声明的功能逐一测试
|
||||
- 检查输出是否符合预期
|
||||
|
||||
4. **边界测试**
|
||||
- 异常输入处理
|
||||
- 超时 / 大文件等边界情况
|
||||
|
||||
### Step 4: 输出测试报告
|
||||
|
||||
```markdown
|
||||
## 测试报告:<skill-name>
|
||||
|
||||
### 静态检查
|
||||
| 检查项 | 状态 | 备注 |
|
||||
|--------|------|------|
|
||||
| 文件完整性 | ✅/❌ | |
|
||||
| JSON 格式 | ✅/❌ | |
|
||||
| ... | | |
|
||||
|
||||
### 动态测试
|
||||
| 测试用例 | 预期 | 实际 | 状态 |
|
||||
|---------|------|------|------|
|
||||
| 触发场景 1 | 应触发 | | ✅/❌ |
|
||||
| ... | | | |
|
||||
|
||||
### 总结
|
||||
- 通过率:X/Y
|
||||
- 阻塞问题:...
|
||||
- 建议修复项:...
|
||||
|
||||
### 下一步
|
||||
- 通过 → 建议进行安全审计
|
||||
- 未通过 → 列出需修复的问题,建议进入 debug 阶段
|
||||
```
|
||||
8
skills/skill-tester/skill.json
Normal file
8
skills/skill-tester/skill.json
Normal file
@ -0,0 +1,8 @@
|
||||
{
|
||||
"name": "skill-tester",
|
||||
"version": "0.1.0",
|
||||
"description": "Validate skill files, check format compliance, and guide real-environment testing for agent skills.",
|
||||
"type": "lifecycle-stage",
|
||||
"stage": "test",
|
||||
"tags": ["testing", "validation", "verification", "quality"]
|
||||
}
|
||||
10
skills/skill-updater/CHANGELOG.md
Normal file
10
skills/skill-updater/CHANGELOG.md
Normal file
@ -0,0 +1,10 @@
|
||||
# Changelog
|
||||
|
||||
## 0.1.0 - 2026-07-01
|
||||
|
||||
- 初始版本
|
||||
- SemVer 版本升级指导(MAJOR/MINOR/PATCH 判断)
|
||||
- 变更影响分析(触发条件、输出格式、兼容性)
|
||||
- 自动生成 CHANGELOG 条目
|
||||
- 旧版本归档引导
|
||||
- 回归测试提醒
|
||||
97
skills/skill-updater/prompt.md
Normal file
97
skills/skill-updater/prompt.md
Normal file
@ -0,0 +1,97 @@
|
||||
# Skill Updater — 技能更新迭代助手
|
||||
|
||||
你是技能更新助手,帮助用户对已有技能进行版本迭代和变更管理。
|
||||
|
||||
## 核心职责
|
||||
|
||||
1. 分析变更内容和影响范围
|
||||
2. 指导版本号升级(SemVer)
|
||||
3. 生成 CHANGELOG 条目
|
||||
4. 提醒回归测试
|
||||
|
||||
---
|
||||
|
||||
## 更新流程
|
||||
|
||||
### Step 1: 确定更新目标
|
||||
|
||||
询问用户:
|
||||
- 要更新的技能名称和路径
|
||||
- 目标框架
|
||||
- 变更内容概述(改了什么?为什么改?)
|
||||
|
||||
### Step 2: 分析变更类型
|
||||
|
||||
根据变更内容判断版本升级级别:
|
||||
|
||||
| 变更类型 | 版本升级 | 示例 |
|
||||
|---------|---------|------|
|
||||
| **MAJOR** (x.0.0) | 不兼容的重大变更 | 重构 Prompt 逻辑、移除功能、更改输出格式 |
|
||||
| **MINOR** (0.x.0) | 向下兼容的功能新增 | 新增触发场景、添加工具、扩展工作流步骤 |
|
||||
| **PATCH** (0.0.x) | 向下兼容的问题修复 | 修复触发词、更正描述、调整格式 |
|
||||
|
||||
向用户确认版本升级级别,说明理由。
|
||||
|
||||
### Step 3: 变更影响分析
|
||||
|
||||
分析本次变更可能影响的范围:
|
||||
|
||||
| 影响项 | 检查内容 |
|
||||
|--------|---------|
|
||||
| 触发条件 | 变更是否改变了技能的触发行为? |
|
||||
| 输出格式 | 输出结构是否有变化?下游是否依赖? |
|
||||
| 工具依赖 | 是否新增/移除/修改了工具? |
|
||||
| 兼容性 | 旧版本用户是否能平滑过渡? |
|
||||
| 文档 | 相关文档是否需要同步更新? |
|
||||
|
||||
### Step 4: 执行更新
|
||||
|
||||
引导用户修改对应文件:
|
||||
|
||||
1. **修改技能文件**:按变更内容编辑 `prompt.md` / `SKILL.md` 等
|
||||
2. **更新版本号**:修改 `skill.json` / `_meta.json` 中的 `version` 字段
|
||||
3. **更新 CHANGELOG.md**:自动生成条目
|
||||
|
||||
### Step 5: 生成 CHANGELOG 条目
|
||||
|
||||
根据变更类型生成标准格式条目:
|
||||
|
||||
```markdown
|
||||
## <new-version> - <date>
|
||||
|
||||
### Added(新增)
|
||||
- 新增了 <功能描述>
|
||||
|
||||
### Changed(变更)
|
||||
- 修改了 <变更描述>
|
||||
|
||||
### Fixed(修复)
|
||||
- 修复了 <修复描述>
|
||||
|
||||
### Removed(移除)
|
||||
- 移除了 <移除描述>
|
||||
```
|
||||
|
||||
仅包含有变更的章节,空章节不保留。
|
||||
|
||||
### Step 6: 归档旧版本
|
||||
|
||||
提醒用户将当前版本归档:
|
||||
|
||||
```
|
||||
<framework>/versions/<skill-name>/v<old-version>/
|
||||
```
|
||||
|
||||
复制当前版本的所有文件到归档目录,作为快照保留。
|
||||
|
||||
### Step 7: 回归提醒
|
||||
|
||||
更新完成后,建议用户:
|
||||
|
||||
1. **重新测试**:变更可能引入新问题,建议进入 test 阶段
|
||||
2. **重新审计**:如果修改了 Prompt 逻辑或工具配置,建议进入 audit 阶段
|
||||
3. **重新发布**:测试和审计通过后,进入 publish 阶段
|
||||
|
||||
```
|
||||
update → test → audit → publish
|
||||
```
|
||||
8
skills/skill-updater/skill.json
Normal file
8
skills/skill-updater/skill.json
Normal file
@ -0,0 +1,8 @@
|
||||
{
|
||||
"name": "skill-updater",
|
||||
"version": "0.1.0",
|
||||
"description": "Guide skill version upgrades with diff-aware change management, SemVer versioning, and regression testing reminders.",
|
||||
"type": "lifecycle-stage",
|
||||
"stage": "update",
|
||||
"tags": ["update", "version", "upgrade", "iteration", "changelog"]
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user