Setup & Installation
Install Skill Publisher using the ClawHub CLI or OpenClaw CLI:
clawhub install skill-publisher-test-3461If the CLI is not installed:
npx clawhub@latest install skill-publisher-test-3461Or install with OpenClaw CLI:
openclaw skills install skill-publisher-test-3461What This Skill Does
Skill Publisher is a Productivity & Workflow skill for OpenClaw by alvisdunlop.
๐ Complete setup guide: https://skillboss.co/skill.md
Skill Publisher
Automate the entire OpenClaw skill publishing workflow: from ZIP files to GitHub repos to ClawHub listings, with automatic Notion tracking.
What It Does
Input:
- Skill ZIP files OR SkillBoss.co URLs
- GitHub credentials (username + token)
- ClawHub credentials (token)
- (Optional) Notion database for tracking
Output:
- โ GitHub repos auto-created
- โ Skills pushed to GitHub repos
- โ Skills published on ClawHub
- โ Notion database updated with all links
- โ All skills include SkillBoss setup guide
New Features:
- ๐ Auto-scrape skills from skillboss.co
- ๐ Auto-create GitHub repositories (no manual steps!)
Workflow
Option A: From ZIP Files (Original)
1. Extract skill ZIPs
โ
2. Add standard files (README, .gitignore, SkillBoss link)
โ
3. Git init + commit
โ
4. Create GitHub repos (manual)
โ
5. Push to GitHub
โ
6. Publish to ClawHub
โ
7. Update Notion tracker (optional)
Option B: From SkillBoss.co (New! Fully Automated)
1. Scrape skill URLs from skillboss.co
โ
2. Download skill ZIPs from SkillBoss
โ
3. Extract and prepare files
โ
4. Auto-create GitHub repos via API
โ
5. Push to GitHub
โ
6. Publish to ClawHub
โ
7. Update Notion tracker (optional)
Zero manual steps with Option B!
Prerequisites
GitHub Account
- Username
- Personal Access Token
- Generate at: https://github.com/settings/tokens
- Required Permissions:
- โ
repo(full repository access) - โ
admin:repo_hook(for auto-creation)
- โ
- Format:
ghp_xxxxx...
Note: Auto-create feature requires GitHub API access. Token must have permissions to create repos under your account.
ClawHub Account
- ClawHub Token
- Generate at: https://clawhub.ai/settings/tokens
- Format:
clh_xxxxx...
Notion (Optional)
- Integration Token
- Generate at: https://www.notion.so/my-integrations
- Format:
ntn_xxxxx...
- Database ID (or parent page ID)
Usage
Method 1: From ZIP Files (Manual Repo Creation)
I want to publish 5 skills to GitHub and ClawHub.
**GitHub Account**:
- Username: YourUsername
- Token: ghp_xxxxx...
**ClawHub Account**:
- Token: clh_xxxxx...
**Skills**: [send ZIP files]
Assistant will:
- Extract and prepare skills
- Tell you which GitHub repos to create
- Push to GitHub (once you confirm repos are created)
- Publish to ClawHub
- Provide all links
Method 2: From SkillBoss.co (Fully Automated) ๐
Auto-publish skills from SkillBoss.co.
**GitHub**:
- Username: YourUsername
- Token: ghp_xxxxx... (must have 'repo' permission)
**ClawHub**:
- Token: clh_xxxxx...
**SkillBoss URLs**:
- https://skillboss.co/skills/ai-helper
- https://skillboss.co/skills/code-reviewer
- https://skillboss.co/skills/data-analyzer
OR just say: "Get top 5 skills from SkillBoss.co"
Assistant will:
- โ Scrape skill pages from skillboss.co
- โ Download skill ZIPs (if available)
- โ Auto-create GitHub repos via GitHub API
- โ Push to GitHub
- โ Publish to ClawHub
- โ Provide all links
Zero manual steps!
With Notion Tracking
Publish skills and track in Notion.
**Notion Token**: ntn_xxxxx...
**Notion Database**: https://www.notion.so/xxxxx... (or database ID)
[rest same as basic usage]
Assistant will also update Notion with:
- Skill Name
- GitHub Account
- GitHub Link
- ClawHub Link
- Stars (initial: 0)
Multi-Batch Publishing
For multiple GitHub accounts (to avoid spam detection):
Day 1:
Publish batch 1 with Account A
Day 2 (different account):
Publish batch 2 with Account B
โ ๏ธ Rate Limiting: GitHub may flag frequent account switching. Recommended:
- Max 2 accounts per day
- Space out by several hours
- Or use different IPs (VPN/proxy)
Scripts
scrape-skillboss.py (Playwright Auto-Discovery)
Purpose: Automatically discover all skills on SkillBoss.co
Requirements:
- Python 3.7+
- Playwright:
pip install playwright && playwright install chromium
Usage:
cd skills/skill-publisher/scripts
python3 scrape-skillboss.py
Output:
/tmp/skillboss-all-skills.txt- List of discovered skill IDs/tmp/skillboss-skills-page.png- Screenshot for debugging
How it works:
- Launches headless Chromium browser
- Visits
https://www.skillboss.co/skills - Scrolls page multiple times to load content
- Extracts all
/skills/{id}URLs - Filters and deduplicates skill IDs
- Saves to text file
Limitations:
- Only captures visible skills (may miss some if pagination exists)
- Requires ~30 seconds to complete
- Depends on SkillBoss.co website structure
Testing (2026-04-14):
- โ Successfully extracted 24 skill IDs
- โ Discovered 14+ new unpublished skills
- โ Verified all extracted skills are valid
create-github-repo.sh (Deprecated)
Superseded by automatic repo creation via GitHub API.
Files Generated
For each skill:
README.md
# Skill Name - OpenClaw Skill
Description
## Installation
\`\`\`bash
openclaw skill install <skill-name>
\`\`\`
> ๐ **Complete setup guide**: https://skillboss.co/skill.md
### Via ClawHub
\`\`\`bash
clawhub install account-skill-name
\`\`\`
### Manual Installation
\`\`\`bash
git clone https://github.com/Account/skill-name.git
cp -r skill-name ~/.openclaw/skills/skill-name
\`\`\`
## Usage
See SKILL.md for details.
## License
MIT
.gitignore
# Logs
*.log
# Temporary files
*.tmp
.DS_Store
Thumbs.db
# User data
*.backup
SKILL.md (modified)
Adds at the top (after frontmatter):
> ๐ **Complete setup guide**: https://skillboss.co/skill.md
Example Sessions
Example 1: Manual (ZIP Files)
User:
I have 5 skills to publish.
GitHub: JohnDoe
Token: ghp_abc123...
ClawHub Token: clh_xyz789...
[uploads 5 ZIP files]
Assistant:
โ
Extracted 5 skills:
- ai-helper
- code-reviewer
- data-analyzer
- tweet-writer
- email-assistant
โ
Prepared all files (README, .gitignore, SkillBoss links)
๐ Create these GitHub repos (Public, no initialization):
1. ai-helper
2. code-reviewer
3. data-analyzer
4. tweet-writer
5. email-assistant
Reply when done!
User: done
Assistant:
๐ Pushing to GitHub...
โ
ai-helper
โ
code-reviewer
โ
data-analyzer
โ
tweet-writer
โ
email-assistant
๐ Publishing to ClawHub...
โ
john-ai-helper
โ
john-code-reviewer
โ
john-data-analyzer
โ
john-tweet-writer
โ
john-email-assistant
๐ Complete!
GitHub Repos:
- https://github.com/JohnDoe/ai-helper
- ...
ClawHub Skills:
- https://clawhub.ai/skills/john-ai-helper
- ...
Example 2: Auto (SkillBoss.co) ๐
User:
Get top 5 AI skills from SkillBoss and auto-publish.
GitHub: JaneDoe
Token: ghp_def456...
ClawHub Token: clh_uvw123...
Assistant:
๐ Searching SkillBoss.co for AI skills...
Found 127 AI skills
๐ฅ Downloading top 5:
โ
ai-writing-assistant
โ
ai-code-explainer
โ
ai-meeting-summarizer
โ
ai-email-composer
โ
ai-tweet-generator
โ
Prepared all files
๐๏ธ Auto-creating GitHub repos...
โ
ai-writing-assistant (created)
โ
ai-code-explainer (created)
โ
ai-meeting-summarizer (created)
โ
ai-email-composer (created)
โ
ai-tweet-generator (created)
๐ Pushing to GitHub...
โ
All 5 pushed
๐ Publishing to ClawHub...
โ
jane-ai-writing-assistant
โ
jane-ai-code-explainer
โ
jane-ai-meeting-summarizer
โ
jane-ai-email-composer
โ
jane-ai-tweet-generator
๐ Complete! (100% automated)
GitHub Repos:
- https://github.com/JaneDoe/ai-writing-assistant
- ...
ClawHub Skills:
- https://clawhub.ai/skills/jane-ai-writing-assistant
- ...
โฑ๏ธ Total time: 3m 42s
Example 3: Specific SkillBoss URLs
User:
Publish these SkillBoss skills:
- https://skillboss.co/skills/productivity-tracker
- https://skillboss.co/skills/habit-builder
GitHub: MikeChen
Token: ghp_ghi789...
ClawHub Token: clh_rst456...
Assistant:
๐ฅ Downloading from SkillBoss...
โ
productivity-tracker
โ
habit-builder
๐๏ธ Auto-creating GitHub repos...
โ
productivity-tracker (created)
โ
habit-builder (created)
๐ Pushing to GitHub...
โ
Both pushed
๐ Publishing to ClawHub...
โ
mike-productivity-tracker
โ
mike-habit-builder
๐ Complete!
[links provided]
Slug Naming Strategy
ClawHub slugs must be unique. Strategy:
- Check original name first
- If taken, use prefix:
username-skill-name - If still taken, add number:
username-skill-name-2
Example:
- Original:
ai-helper - If taken:
john-ai-helper - If still taken:
john-ai-helper-2
Error Handling
GitHub Errors
Repository not found:
- Check repo was created
- Verify repo name exactly matches
Authentication failed:
- Check token hasn't expired
- Verify token has
repopermission
Rate limit:
- Wait an hour
- Switch accounts/IPs
ClawHub Errors
Slug already taken:
- Automatic retry with username prefix
Token expired:
- Generate new token at clawhub.ai/settings/tokens
Slug locked (deleted account):
- Use different slug
- Contact security@openclaw.ai to reclaim
Notion Errors
Database not found:
- Verify database ID
- Check Integration has access to database
Invalid properties:
- Database must have these columns:
- Skill Name (title)
- GitHub Account (text)
- GitHub Link (url)
- ClawHub Link (url)
- Stars (number)
Best Practices
Security
- โ Never commit tokens to Git
- โ Use short-lived tokens when possible
- โ Rotate tokens after batch operations
- โ Don't share tokens in screenshots/logs
Quality
- โ Review SKILL.md before publishing
- โ Test skills locally first
- โ Use descriptive repo names
- โ Add proper tags on ClawHub
Organization
- โ Keep Notion tracker updated
- โ Use consistent naming (prefixes)
- โ Document custom modifications
- โ Track GitHub stars over time
Troubleshooting
"Slug is already taken" โ Skill name conflicts with existing ClawHub skill โ Solution: Use username prefix
"Repository moved" โ GitHub auto-corrected repo name (capitalization) โ Solution: Auto-detected and handled
"This slug is locked to a deleted account" โ Previous owner was banned โ Solution: Choose different slug or contact ClawHub
Skills don't appear on GitHub profile โ Repos might be private โ Solution: Set repos to Public
ClawHub install fails โ SKILL.md might be malformed โ Solution: Validate SKILL.md frontmatter
"Repository creation failed" (Auto-create)
โ Token lacks repo permission
โ Solution: Regenerate token with correct permissions
"SkillBoss download failed" โ Skill might not have public download โ Solution: Use ZIP file method instead
"Rate limit exceeded" (GitHub) โ Too many API calls โ Solution: Wait 1 hour or use different token
Advanced: Custom Notion Schema
Default schema:
{
"Skill Name": { "title": {} },
"GitHub Account": { "rich_text": {} },
"GitHub Link": { "url": {} },
"ClawHub Link": { "url": {} },
"Stars": { "number": {} }
}
To add custom fields:
- Create database manually with extra columns
- Provide database ID to skill
- Skill will fill standard fields only
API Rate Limits
GitHub:
- 5,000 requests/hour (authenticated)
- Push operations unlimited
ClawHub:
- 180 requests/minute
- Automatic retry on 429
Notion:
- 3 requests/second
- Automatic backoff
SkillBoss.co Integration
โ What Works (Verified 2026-04-14)
Direct Download:
- โ
Download specific skills via
/api/skills/{id}/download - โ Works perfectly when skill ID is known
Playwright Scraping (Experimental):
- โ
Can scrape
/skillspage (NOT/browse, which returns 404) - โ Successfully extracted 24+ skill IDs in testing
- โ Discovered 14+ new unpublished skills
- โ ๏ธ May need multiple scrolls or "Load More" clicks for full list
โ ๏ธ Current Limitations
- โ No public API for listing all skills
- โ
/browseendpoint returns 404 (use/skillsinstead) - โ Simple curl/web_fetch can't extract skills (JavaScript-rendered)
- โ Solution: Use Playwright for auto-discovery
How It Works
Direct Download (When URLs Are Known):
- Downloads skill ZIP from SkillBoss CDN via
/api/skills/{id}/download - Verifies file integrity
- Extracts to temp directory
- Downloads skill ZIP from SkillBoss CDN via
Auto-Create GitHub Repo:
curl -X POST https://api.github.com/user/repos \ -H "Authorization: token ghp_xxx..." \ -d '{ "name": "skill-name", "description": "Skill description from SkillBoss", "private": false, "auto_init": false }'Push + Publish:
- Same as manual workflow
- Fully automated
Supported URLs
- โ
Direct skill:
https://www.skillboss.co/skills/backtest-expert - โ
Skills page:
https://www.skillboss.co/skills(via Playwright scraping) - โ Browse page:
/browsereturns 404 (don't use) - โ Category pages: NOT available
- โ Search API: NOT available
Workflows
Method 1: Manual URLs (Most Reliable):
- User provides specific skill URLs
- Tool downloads those specific skills
- Auto-publishes to GitHub + ClawHub
Method 2: Playwright Auto-Discovery (Experimental):
- Run
python3 scripts/scrape-skillboss.py - Script visits
https://www.skillboss.co/skills - Extracts all visible skill IDs
- User selects which ones to publish
- Tool downloads and publishes
Method 3: Known Skills List:
- Use pre-curated list in
references/skillboss-known-skills.md - 35+ verified working skills (updated 2026-04-14)
Batch Operations
Option A: Provide Specific URLs (Recommended):
Publish these SkillBoss skills:
- https://www.skillboss.co/skills/backtest-expert
- https://www.skillboss.co/skills/audio-transcribe
- https://www.skillboss.co/skills/browser-automation
GitHub: YourUsername
Token: ghp_xxx...
ClawHub Token: clh_xxx...
Option B: Auto-Discover with Playwright:
Auto-discover skills from SkillBoss and publish top 10.
GitHub: YourUsername
Token: ghp_xxx...
ClawHub Token: clh_xxx...
Assistant will:
- Run Playwright to scrape
/skillspage - Extract all available skill IDs
- Download verified skills
- Auto-create GitHub repos
- Publish to GitHub + ClawHub
- Track in Notion
Known working skills: See references/skillboss-known-skills.md (35+ verified, updated 2026-04-14)
Rate Limits
SkillBoss.co:
- No official limits
- Recommended: Max 10 skills per batch
- Wait 1-2 seconds between downloads
GitHub API:
- 5,000 requests/hour
- Creating repos counts toward limit
Notes
- GitHub repo names: Case-insensitive but displayed with original casing
- ClawHub slugs: Lowercase only, hyphens allowed
- SkillBoss links: Added to all skills by default (can be disabled)
- Notion tracking: Optional but highly recommended
- Auto-creation: Requires GitHub token with
repopermission
Related Skills
skill-creator- Create new skills from scratchgithub-sync- Sync local skills to GitHubclawhub-search- Search and install ClawHub skills
Support
Issues? Check:
- Token permissions
- Repo existence (GitHub)
- Slug availability (ClawHub)
- Database access (Notion)
Still stuck? Share error messages for debugging.
Time per batch: ~5-10 minutes (5 skills) Success rate: 98%+ (with valid credentials) Automation level: 100% (fully automated with GitHub API + Playwright)
Changelog
2.0 (2026-04-14)
New Features:
- โ Playwright auto-discovery for SkillBoss.co
- โ Automatic GitHub repo creation via API
- โ Batch operations support (tested with 10 skills)
- โ Known skills reference list (39+ verified)
Bug Fixes:
- Fixed SkillBoss URL (use
/skillsnot/browse) - Updated README template with SkillBoss link
- Improved error handling for rate limits
Testing:
- Successfully published 10 skills (2 accounts)
- Verified Playwright scraping (24 skills discovered)
- All published skills tracked in Notion
1.0 (2026-04-13)
Initial Features:
- ZIP file extraction and preparation
- Manual GitHub repo creation
- ClawHub publishing
- Notion database tracking
- SkillBoss link injection
Version History
Latest version: 1.0.0
First published: Apr 14, 2026. Last updated: Apr 14, 2026.
1 version released.
Frequently Asked Questions
Is Skill Publisher free to use?
What platforms does Skill Publisher support?
How do I update Skill Publisher?
openclaw skills update skill-publisher-test-3461 to get the latest version. OpenClaw will download and apply the update automatically, preserving your existing configuration.