名称: skill-exporter
描述: 将 Clawdbot 技能导出为独立、可部署的微服务。适用于将技能 Docker 化、部署到 Railway 或 Fly.io,或创建独立的 API 服务。生成 Dockerfile、FastAPI 包装器、requirements.txt、部署配置以及可选的 LLM 客户端集成。
许可证: MIT
compatibility: 需要 python3。兼容任何支持 AgentSkills 的智能体。
元数据:
author: MacStenk
version: "1.0.0"
clawdbot:
emoji: "📦"
requires:
bins:
- python3
将 Clawdbot 技能转换为独立、可部署的微服务。
Clawdbot 技能 (已测试可用)
↓
技能导出器
↓
独立微服务
↓
Railway / Fly.io / Docker
python3 {baseDir}/scripts/export.py \
--skill ~/.clawdbot/skills/instagram \
--target railway \
--llm anthropic \
--output ~/projects/instagram-service
| 选项 | 描述 | 默认值 |
|---|---|---|
--skill |
技能目录路径 | 必填 |
--target |
部署目标: railway, fly, docker |
docker |
--llm |
LLM 服务商: anthropic, openai, none |
none |
--output |
输出目录 | ./<技能名称>-service |
--port |
API 端口 | 8000 |
railway — 生成 railway.json、优化的 Dockerfile 和健康检查配置
fly — 生成 fly.toml,支持多区域部署
docker — 生成通用 Dockerfile 和 docker-compose.yml
当指定 --llm 参数时,会生成 llm_client.py 文件,包含:
- 标题/提示词生成功能
- 决策辅助工具
- 速率限制和错误处理机制
<技能名称>-service/
├── Dockerfile
├── docker-compose.yml
├── api.py # FastAPI 包装器
├── llm_client.py # 如果指定了 --llm 参数
├── requirements.txt
├── .env.example
├── railway.json # 如果目标为 railway
├── fly.toml # 如果目标为 fly
└── scripts/ # 从原技能复制
└── *.py
源技能必须满足以下要求:
- 包含有效 frontmatter 的 SKILL.md 文件
- scripts/ 目录下至少有一个脚本
- 脚本应可调用(包含函数,而非仅内联代码)
.env.example 为 .env 并填写密钥信息docker-compose uprailway up 或 fly deploy