Skill Exporter
by @macstenk
Export Clawdbot skills as standalone, deployable microservices. Use when you want to dockerize a skill, deploy it to Railway or Fly.io, or create an independent API service. Generates Dockerfile, FastAPI wrapper, requirements.txt, deployment configs, and optional LLM client integration.
clawhub install skill-exporterπ About This Skill
name: skill-exporter description: Export Clawdbot skills as standalone, deployable microservices. Use when you want to dockerize a skill, deploy it to Railway or Fly.io, or create an independent API service. Generates Dockerfile, FastAPI wrapper, requirements.txt, deployment configs, and optional LLM client integration. license: MIT compatibility: Requires python3. Works with any AgentSkills-compatible agent. metadata: author: MacStenk version: "1.0.0" clawdbot: emoji: "π¦" requires: bins: - python3
Skill Exporter
Transform Clawdbot skills into standalone, deployable microservices.
Workflow
Clawdbot Skill (tested & working)
β
skill-exporter
β
Standalone Microservice
β
Railway / Fly.io / Docker
Usage
Export a skill
python3 {baseDir}/scripts/export.py \
--skill ~/.clawdbot/skills/instagram \
--target railway \
--llm anthropic \
--output ~/projects/instagram-service
Options
| Flag | Description | Default |
|------|-------------|---------|
| --skill | Path to skill directory | required |
| --target | Deployment target: railway, fly, docker | docker |
| --llm | LLM provider: anthropic, openai, none | none |
| --output | Output directory | ./ |
| --port | API port | 8000 |
Targets
railway β Generates railway.json, optimized Dockerfile, health checks
fly β Generates fly.toml, multi-region ready
docker β Generic Dockerfile, docker-compose.yml
LLM Integration
When --llm is set, generates llm_client.py with:
What Gets Generated
-service/
βββ Dockerfile
βββ docker-compose.yml
βββ api.py # FastAPI wrapper
βββ llm_client.py # If --llm specified
βββ requirements.txt
βββ .env.example
βββ railway.json # If --target railway
βββ fly.toml # If --target fly
βββ scripts/ # Copied from original skill
βββ *.py
Requirements
The source skill must have:
SKILL.md with valid frontmatterscripts/Post-Export
1. Copy .env.example to .env and fill in secrets
2. Test locally: docker-compose up
3. Deploy: railway up or fly deploy
π‘ Examples
Export a skill
python3 {baseDir}/scripts/export.py \
--skill ~/.clawdbot/skills/instagram \
--target railway \
--llm anthropic \
--output ~/projects/instagram-service
Options
| Flag | Description | Default |
|------|-------------|---------|
| --skill | Path to skill directory | required |
| --target | Deployment target: railway, fly, docker | docker |
| --llm | LLM provider: anthropic, openai, none | none |
| --output | Output directory | ./ |
| --port | API port | 8000 |
Targets
railway β Generates railway.json, optimized Dockerfile, health checks
fly β Generates fly.toml, multi-region ready
docker β Generic Dockerfile, docker-compose.yml
LLM Integration
When --llm is set, generates llm_client.py with:
βοΈ Configuration
| Flag | Description | Default |
|------|-------------|---------|
| --skill | Path to skill directory | required |
| --target | Deployment target: railway, fly, docker | docker |
| --llm | LLM provider: anthropic, openai, none | none |
| --output | Output directory | ./ |
| --port | API port | 8000 |
Targets
railway β Generates railway.json, optimized Dockerfile, health checks
fly β Generates fly.toml, multi-region ready
docker β Generic Dockerfile, docker-compose.yml
LLM Integration
When --llm is set, generates llm_client.py with: