Install
openclaw skills install skill-creator-enhancedEnhanced skill creator with templates, validation, publishing workflow, and quality gates. Guides through skill creation process with best practices, common patterns, and ClawHub integration.
openclaw skills install skill-creator-enhancedEnhanced skill creator with templates, validation, publishing workflow, and quality gates.
| Step | Action | Command |
|---|---|---|
| 1 | Plan skill | Define purpose, audience, triggers |
| 2 | Create structure | Use templates |
| 3 | Write SKILL.md | Follow guidelines |
| 4 | Add resources | Scripts, references, assets |
| 5 | Validate | Run validation |
| 6 | Test | Real-world testing |
| 7 | Publish | ClawHub publish |
skill-name/
├── SKILL.md (required)
├── scripts/ (optional)
│ └── helper.py
├── references/ (optional)
│ └── guide.md
└── assets/ (optional)
└── template.txt
---
name: skill-name
description: "Clear description of what the skill does and when to use it."
metadata:
author: your-name
version: 1.0.0
tags: tag1, tag2
compatibility: opencode
license: MIT
---
# Skill Name
## Overview
Brief overview of the skill.
## Features
- Feature 1
- Feature 2
## Usage
How to use the skill.
## Examples
Concrete examples.
---
name: knowledge-skill
description: "Domain knowledge for [topic]. Use when user asks about [specific topics]."
metadata:
author: your-name
version: 1.0.0
tags: knowledge, domain
compatibility: opencode
license: MIT
---
# [Topic] Knowledge
## Overview
Brief overview of the domain.
## Key Concepts
- Concept 1: Definition
- Concept 2: Definition
## Common Patterns
1. Pattern 1: Description
2. Pattern 2: Description
## References
- [link1](url1)
- [link2](url2)
---
name: workflow-skill
description: "Automated workflow for [task]. Use when user wants to [action]."
metadata:
author: your-name
version: 1.0.0
tags: workflow, automation
compatibility: opencode
license: MIT
---
# [Task] Workflow
## Overview
Brief overview of the workflow.
## Steps
1. Step 1: Description
2. Step 2: Description
3. Step 3: Description
## Commands
```bash
command1
command2
### Tool Integration Skill
```yaml
---
name: tool-skill
description: "Integration with [tool/API]. Use when working with [tool]."
metadata:
author: your-name
version: 1.0.0
tags: tool, integration
compatibility: opencode
license: MIT
---
# [Tool] Integration
## Overview
Brief overview of the tool.
## Setup
1. Install: `command`
2. Configure: `command`
3. Verify: `command`
## Usage
```bash
tool-command
# Example 1
command
# Example 2
command
## Validation Rules
### Required Fields
- [ ] `name`: Skill name (lowercase, hyphens)
- [ ] `description`: Clear, comprehensive description
### Description Quality
- [ ] What the skill does
- [ ] When to use it (triggers)
- [ ] Specific use cases
- [ ] No vague language
### Structure Quality
- [ ] SKILL.md under 500 lines
- [ ] Progressive disclosure
- [ ] No extraneous files
- [ ] Clear organization
### Content Quality
- [ ] Imperative/infinitive form
- [ ] Concise examples
- [ ] No duplication
- [ ] Actionable instructions
## Publishing Workflow
### 1. Prepare
```bash
# Validate skill
clawhub validate skill-name
# Test locally
# Use skill in real scenarios
# Publish to ClawHub
clawhub publish skill-name --version "1.0.0"
# With options
clawhub publish skill-name \
--name "Skill Display Name" \
--slug "skill-slug" \
--version "1.0.0" \
--tags "tag1,tag2"
# Check publication
clawhub search skill-name
# Sync to local
clawhub sync
# Skill Name
## Quick Start
Basic usage example.
## Advanced Features
- Feature 1: See [FEATURE1.md](FEATURE1.md)
- Feature 2: See [FEATURE2.md](FEATURE2.md)
skill-name/
├── SKILL.md
└── references/
├── domain1.md
├── domain2.md
└── domain3.md
# Skill Name
## Basic Usage
Simple example.
## Advanced Usage
For complex scenarios, see [ADVANCED.md](ADVANCED.md).
| Anti-Pattern | Problem | Fix |
|---|---|---|
| Too verbose | Context bloat | Keep under 500 lines |
| No examples | Unclear expectations | Add concrete examples |
| Extraneous files | Clutter | Remove unnecessary files |
| Vague description | Poor triggering | Be specific |
| No progressive disclosure | Loading overhead | Split into references |
#!/bin/bash
# test-skill.sh
SKILL_NAME=$1
echo "Testing skill: $SKILL_NAME"
# Validate structure
clawhub validate $SKILL_NAME
# Test installation
clawhub install $SKILL_NAME
# Verify installation
ls -la ~/.openclaw/workspace/skills/$SKILL_NAME
echo "Test complete"
clawhub search "query"
clawhub install skill-name
clawhub publish skill-name
clawhub sync