- 本项目是依据SkillHub进行的二次开发.
- 后端重构,迁移到NestJS
- 认证重构 -> 白名单鉴权
- 去除前端,增加CLI功能
- 集成Cloudflare R2 存储
- 基于 NestJS 的 SkillHub 后端服务 - 更适合1-5人小型团队智能体技能管理。
- 框架: NestJS 10.x + TypeScript 5.x
- ORM: Prisma 5.x
- 数据库: PostgreSQL 16
- 存储: Cloudflare R2 (S3兼容)
- 文档: Swagger/OpenAPI
# 安装依赖
npm install
# 配置环境
cp .env.example .env
# 编辑 .env 填入你的配置
# 生成 Prisma 客户端
npm run prisma:generate
# 运行数据库迁移
npm run prisma:migrate
# 启动开发服务器
npm run start:devskillhub-server/
├── src/
│ ├── cli/ # CLI 接口模块 (ClawHub 兼容)
│ ├── skills/ # 技能管理模块
│ ├── versions/ # 版本管理模块
│ ├── storage/ # 存储服务模块
│ ├── scripts/ # 管理脚本模块
│ ├── common/ # 共享组件
│ │ ├── guards/ # 守卫
│ │ ├── decorators/# 装饰器
│ │ ├── interceptors/
│ │ ├── dtos/ # 数据传输对象
│ │ └── entities/ # 实体定义
│ ├── app.module.ts
│ └── main.ts
├── prisma/
│ └── schema.prisma # 数据库模型
├── test/ # 测试文件
└── scripts/ # 实用脚本
服务提供 ClawHub 兼容的 CLI 接口:
# 配置环境
export CLAWHUB_REGISTRY=http://localhost:8080
export CLAWHUB_TOKEN=your-token
# 使用 npx clawhub
npx clawhub search <keyword>
npx clawhub install <skill>
npx clawhub publish ./my-skillApache-2.0