Creating Skill Packs
Skill packs bundle related services and skills into reusable configurations. They allow users to quickly set up complete workflows like “Video Creator,” “Research Agent,” or “DevOps Stack.”What is a Skill Pack?
A skill pack is a curated collection of:- Required Services: Docker containers or native services needed for the workflow
- Skills: AI agent instructions (SKILL.md files) that teach OpenClaw how to use those services
- Metadata: Name, description, icon, and tags for discovery
Skill Pack Structure
Skill packs are defined inpackages/core/src/skills/registry.ts:
Creating a Skill Pack
Identify the Workflow
Define the use case your skill pack will solve. Examples:
- Video processing pipeline
- Research and web scraping
- Social media content management
- DevOps monitoring stack
Select Required Services
Choose the services needed for your workflow. For example, a “Video Creator” pack might need:
ffmpegfor video processingremotionfor programmatic renderingminiofor object storage
Create or Reference Skills
Each service should have an associated skill file (
skills/<skill-id>/SKILL.md) that teaches the AI agent how to use it. If skills don’t exist yet, create them (see Creating Skills below).Add to Registry
Edit
packages/core/src/skills/registry.ts and add your skill pack to the skillPacks array:Real-World Examples
Example 1: Research Agent
A skill pack for web research, scraping, and knowledge storage:qdrant: Vector database for semantic searchsearxng: Privacy-respecting metasearch enginebrowserless: Headless browser for web scraping
qdrant-memory: Store and retrieve embeddingssearxng-search: Search the webbrowserless-browse: Scrape and interact with web pages
Example 2: DevOps Stack
A complete monitoring and automation stack:Example 3: Knowledge Base
Document indexing with vector and full-text search:Creating Skills
Skills are markdown files that teach AI agents how to use services. They live inskills/<skill-id>/SKILL.md.
Skill File Format
A skill file has:- YAML frontmatter with metadata
- Markdown content with instructions and examples
- Environment variable placeholders (e.g.,
{{REDIS_HOST}})
Example: Redis Cache Skill
Pub/Sub
Publish messages to channels:Tips for AI Agents
- Always set a TTL on cache keys to avoid memory leaks
- Use
SETNXfor distributed locking - Check connectivity with
PINGbefore complex operations
Advanced: Multi-Service Dependencies
Some skill packs require services that depend on each other. For example, n8n requires PostgreSQL:requires: ["postgresql"] in its service definition.
Submitting Your Skill Pack
Once complete:
See CONTRIBUTING.md for detailed guidelines.
Skill Pack Ideas
Looking for inspiration? Here are some skill pack ideas:- AI Coding Team: Multiple AI agents (Claude Code, Codex, Gemini) with Git hosting
- Smart Home: Home Assistant automation with event-driven workflows
- Content Platform: CMS, newsletter management, and analytics
- Security Ops: SSO, secrets management, VPN, and intrusion detection
- Observability Stack: Logs, APM, error tracking, and health checks
- Backend Platform: BaaS with database, API gateway, and message queue
Getting Help
If you need help creating a skill pack:- Check existing skill packs in
packages/core/src/skills/registry.ts - Review SKILL.md examples in the
skills/directory - Ask questions in the GitHub Discussions
- Open an issue for bugs or feature requests