Files
chill_notes/wiki/AI工程/SkillHub科大讯飞智能体技能注册中心.md
2026-05-06 09:47:31 +08:00

126 lines
4.7 KiB
Markdown
Executable File
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# SkillHub — 科大讯飞开源智能体技能注册中心
> 来源: https://mp.weixin.qq.com/s/989DJSRSihmEs6JSbLGnkw
> 研究日期: 2026-05-05
> 协议: Apache-2.0
## 项目概览
- **名称**: SkillHub
- **GitHub**: https://github.com/iflytek/skillhub
- **作者**: 科大讯飞iFlytek
- **定位**: 企业级开源智能体技能注册中心
- **口号**: 在组织内发布、发现和管理可复用的技能包
## 解决的核心问题
| 痛点 | SkillHub 方案 |
| -------- | -------------------- |
| **版本混乱** | 语义化版本控制,自动 latest 跟踪 |
| **权限失控** | 企业级 RBAC + 审核机制 |
| **发现困难** | 全文搜索 + 评分/下载量筛选 |
| **分发低效** | CLI 一键安装,类似 npm 体验 |
| | |
## 核心功能
| 功能 | 说明 |
| ------------ | --------------------------------- |
| **Skill 发布** | 一键上传技能包,自动版本管理/元数据提取 |
| **自托管私有化** | 部署在自有基础设施,数据不出防火墙 |
| **团队命名空间** | 按团队/全局组织技能,独立成员/角色管理 |
| **审核与治理** | 团队管理员审核,平台管理员控制推广,审计日志 |
| **发现与搜索** | 全文搜索,支持按命名空间/下载量/评分/时间筛选 |
| **社交功能** | 收藏、评分、下载量跟踪 |
| **账户合并** | 多个 OAuth 身份 + API 令牌整合到单账户 |
| **CLI 优先** | 原生 REST API + ClawHub 风格注册中心客户端兼容 |
## 技术栈
| 层级 | 技术 | 说明 |
|------|------|------|
| **前端** | React 19 + TypeScript + Vite + shadcn/ui | SPA支持 i18next 国际化 |
| **后端** | Java 21 + Spring Boot 3.2 + Spring Security | 模块化 REST API |
| **数据库** | PostgreSQL 16 + Flyway | 主数据存储 + 全文搜索 |
| **缓存** | Redis 7 | 会话管理 + 分布式锁 + 限流 |
| **对象存储** | 本地文件系统 / S3 / MinIO | 技能包文件存储 |
| **安全** | Spring Security OAuth2 + RBAC + API 令牌 | 认证授权 |
| **扫描器** | Python 服务 | 上传技能包多引擎安全分析 |
| **部署** | Docker Compose + Kubernetes | 容器编排 |
## 项目结构
```
skillhub/
├── server/
│ ├── skillhub-app/ # 入口点、控制器
│ ├── skillhub-domain/ # 核心实体、领域服务
│ ├── skillhub-auth/ # OAuth2、RBAC、API 令牌
│ ├── skillhub-search/ # 搜索 SPI + PostgreSQL 全文检索
│ ├── skillhub-storage/ # 对象存储 SPI
│ ├── skillhub-infra/ # JPA 仓库、事件
│ └── skillhub-notification/ # 邮件与告警
├── web/ # React 19 前端
│ └── src/
│ ├── pages/ # 路由级页面
│ ├── features/ # 业务功能模块
│ ├── shared/ # 可复用组件
│ └── api/ # OpenAPI 生成类型
├── scanner/ # Python 安全扫描器
├── deploy/ # Kubernetes 清单
├── monitoring/ # Prometheus / Grafana
└── docker-compose.yml # 开发依赖
```
## 快速启动
```bash
git clone https://github.com/iflytek/skillhub.git
cd skillhub
make dev-all # 启动完整开发栈
# 或分别启动
make dev-backend # 仅后端
make dev-web # 仅前端
```
**前置要求**: Java 21+ / Node.js 20+ / Docker
## 架构亮点
### 治理模型
```
开发者 → 发布技能到命名空间 → 团队管理员审核 → 推广到全局
```
- 每个命名空间独立管理Owner/Admin/Member 角色)
- 所有治理操作记录审计日志
- 可见性规则确保用户只能看到有权访问的技能
### 安全设计
- **API 令牌**: 基于前缀的安全哈希,作用域控制
- **CSRF 防护**: 前端请求保护
- **多引擎扫描**: 上传技能包自动安全分析
- **数据主权**: 完全自托管,专有技能保留在防火墙后
## 与 OpenClaw/ClawHub 的关系
- SkillHub 兼容 **ClawHub 风格注册中心客户端**
- 可作为 OpenClaw 技能的**企业级私有注册中心**
- 提供与公共注册中心相同的体验,但完全可控
## 项目评价
**优点**
- ✅ 科大讯飞出品,企业级品质
- ✅ 完整治理模型(审核/权限/审计)
- ✅ 技术栈现代React 19 / Java 21 / PG 16
- ✅ 自托管,数据完全可控
- ✅ Apache-2.0 协议,商用友好
**适用场景**
- 企业内部 Agent 技能共享平台
- 团队私有技能注册中心
- 需要权限控制的技能分发场景