- Rewrite skill-publisher with 7-step flow: target → checklist → format adaptation → dry-run → publish → verify → registry update - Add format adapter: skill.json + prompt.md → SKILL.md for Qoder/Codex/Claude Code - Add namespace auto-mapping for 4 frameworks (sola-*-work) - Update skill-discover with SkillHub as primary search source - Update skill-retire with skillhub remove --remote for server-side deletion - Add SkillHub platform section to README
247 lines
9.9 KiB
Markdown
247 lines
9.9 KiB
Markdown
# 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 调试技能"
|
||
```
|
||
|
||
---
|
||
|
||
## 发布平台:SkillHub
|
||
|
||
SkillHub 是团队自建的 Agent Skill Registry(`https://skill.solahqb22.cn`),支持 **14 种 Agent CLI** 的技能发布、搜索和安装。
|
||
|
||
### CLI 工具
|
||
|
||
```bash
|
||
npm install -g @astron-team/skillhub # 安装
|
||
skillhub login --registry https://skill.solahqb22.cn --token <TOKEN> # 登录
|
||
skillhub search <keyword> # 搜索
|
||
skillhub publish <path> --namespace <ns> # 发布
|
||
```
|
||
|
||
### 命名空间映射
|
||
|
||
| 框架 | SkillHub 命名空间 | 说明 |
|
||
|------|------------------|------|
|
||
| OpenClaw | `sola-openclaw-work` | OpenClaw 框架开发的技能 |
|
||
| Claude Code | `sola-claude-code-work` | Claude Code 开发的技能 |
|
||
| Codex | `sola-codex-work` | Codex 开发的技能 |
|
||
| Qoder | `sola-qoder-work` | Qoder 创建的技能 |
|
||
| Hermes Agent | 暂无 | 等待官方支持 |
|
||
|
||
### 格式适配
|
||
|
||
- **OpenClaw**:原生兼容(已有 `SKILL.md`),直接发布
|
||
- **Qoder / Codex / Claude Code**:`skill-publisher` 自动将 `skill.json` + `prompt.md` 合并生成 `SKILL.md` 后发布
|
||
- **Hermes Agent**:暂不支持
|
||
|
||
---
|
||
|
||
## 后续规划
|
||
|
||
- [x] 搭建完整目录结构(5 个框架 + 9 个生命周期技能)
|
||
- [x] 构建 skill-lifecycle 总路由器和 8 个子技能
|
||
- [x] OpenClaw meta-skill 规范整理(基于 ClawHub 官方生态)
|
||
- [x] SkillHub 集成(skill-publisher / skill-discover / skill-retire 更新)
|
||
- [ ] 补充各框架 meta-skill 的详细规范(Qoder / Claude Code / Codex / Hermes Agent)
|
||
- [ ] 为各框架 meta-skill 的 `examples/` 补充官方参考技能示例
|
||
- [ ] 为每个框架编写适配指南(`<framework>/docs/`)
|
||
- [ ] 建设技能示例库(提供参考实现)
|
||
|
||
---
|
||
|
||
## 说明
|
||
|
||
本目录当前处于**初始化阶段**,目录结构和工具链将随技能开发实践逐步完善。如有建议或贡献,请在项目仓库中提交 Issue 或 PR。
|