VPN07

OpenClaw Skills Commands 2026: ClawHub install, list, build & publish — Complete Q&A

February 20, 2026 14 min read Skills Guide

About This Guide: Skills are OpenClaw's superpower — they extend your agent from a simple chatbot into a full automation engine. This Q&A covers every skills-related CLI command in depth: installing from ClawHub, listing and managing installed skills, disabling/enabling, building your own from scratch, and publishing to the community marketplace. Updated for the latest OpenClaw release in February 2026.

Complete Skills Command Reference

openclaw skills list # List all installed skills

openclaw skills install [skill-id] # Install from ClawHub

openclaw skills install [path] # Install from local directory

openclaw skills install [git-url] # Install from Git repo

openclaw skills uninstall [skill-id] # Remove a skill

openclaw skills enable [skill-id] # Enable a disabled skill

openclaw skills disable [skill-id] # Disable without uninstalling

openclaw skills update [skill-id] # Update specific skill

openclaw skills update --all # Update all skills

openclaw skills info [skill-id] # Show skill details

openclaw skills create [skill-name] # Create new skill scaffold

openclaw skills test [skill-id] # Run skill unit tests

openclaw skills publish [skill-id] # Publish to ClawHub

openclaw skills search [query] # Search ClawHub marketplace

Part 1: Installing Skills (Q1–Q10)

Q1 What is ClawHub and how do I browse available skills?

ClawHub (clawhub.ai) is the official community marketplace for OpenClaw skills — think of it as the App Store for your AI agent. It currently hosts 100+ community-built skills covering Gmail, Spotify, GitHub, smart home, web scraping, and more.

# Search ClawHub directly from terminal

openclaw skills search gmail

openclaw skills search "smart home"

openclaw skills search calendar

# Browse all available skills

openclaw skills search --all

openclaw skills search --category productivity

openclaw skills search --sort popular

Q2 What is the exact command to install a skill from ClawHub?

# Install by skill ID (shown on clawhub.ai)

openclaw skills install gmail

openclaw skills install spotify-player

openclaw skills install telegram

openclaw skills install discord

openclaw skills install obsidian

openclaw skills install github

openclaw skills install homeassistant

openclaw skills install weather

# Install specific version

openclaw skills install [email protected]

# Install and auto-configure

openclaw skills install gmail --configure

After installation, the skill is placed in ~/.openclaw/skills/[skill-id]/ and activated on next restart.

Q3 What are the most useful skills to install first in 2026?

📧 gmail

Read, send, search, filter emails automatically

openclaw skills install gmail

🔔 apple-reminders

Task and reminder management on macOS

openclaw skills install apple-reminders

🐦 bird (Twitter/X)

Post, reply, and monitor Twitter/X

openclaw skills install bird

🎵 spotify-player

Control Spotify playback via chat

openclaw skills install spotify-player

🏠 homeassistant

Control smart home devices

openclaw skills install homeassistant

🌤️ weather

Real-time weather forecasts

openclaw skills install weather

👁️ peekaboo

Screen capture and visual AI actions

openclaw skills install peekaboo

📝 obsidian

Read/write Obsidian notes knowledge base

openclaw skills install obsidian

Q4 How do I install a skill from a local directory?

# Install from a local path

openclaw skills install ./my-custom-skill/

openclaw skills install /Users/alex/skills/my-skill

# Install from a tar.gz archive

openclaw skills install ./my-skill-v1.0.0.tar.gz

The directory must contain a valid skill.json manifest file. See Q17 for the required format.

Q5 How do I install a skill directly from a GitHub repository?

# Install from GitHub repository

openclaw skills install github:username/skill-repo

openclaw skills install https://github.com/user/openclaw-skill-x.git

# Install specific branch or tag

openclaw skills install github:user/skill#v2.0.0

openclaw skills install github:user/skill#develop

Useful for testing skills under development or using private/unreleased skills from trusted developers. Requires internet access to GitHub — use VPN07 if GitHub is restricted in your region.

Q6 Skill installation fails with "could not resolve clawhub.ai" — fix?

❌ Error: ENOTFOUND clawhub.ai

DNS resolution failure — clawhub.ai domain is unreachable from your network.

✅ Fix 1: Connect VPN07

VPN07 routes DNS queries through its secure network. Connect VPN07 before running skills install. The 1000Mbps bandwidth ensures fast skill downloads.

✅ Fix 2: Change DNS resolver

networksetup -setdnsservers Wi-Fi 1.1.1.1 8.8.8.8

✅ Fix 3: Install from GitHub directly

openclaw skills install https://github.com/openclaw/skill-gmail.git

Q7 How do I view detailed information about a specific skill?

openclaw skills info gmail

# Output example:

Name: gmail

Version: 3.2.1

Author: openclaw-team

Description: Gmail integration via Pub/Sub triggers

Status: enabled

Installed: 2026-02-15

Updated: 2026-02-19

Dependencies: googleapis, google-auth-library

Required Config: GMAIL_CLIENT_ID, GMAIL_CLIENT_SECRET

Triggers: on_email_received, on_email_sent

Commands: send_email, read_email, search_emails

Q8 How many skills can I install and run simultaneously?

3–5
Beginner setup
8–15
Power user setup
15–30
Advanced (needs VPS)
No limit
Installed (not active)

Use openclaw skills disable [skill-id] to keep skills installed but inactive to save memory.

Q9 How do I configure a skill after installing it?

# Interactive configuration wizard

openclaw skills configure gmail

# Set a specific config value

openclaw skills configure gmail GMAIL_CLIENT_ID your-client-id

# Or edit the skill config file directly

nano ~/.openclaw/skills/gmail/config.json

# Validate skill configuration

openclaw skills configure gmail --validate

Q10 How do I uninstall a skill?

# Uninstall and remove all files

openclaw skills uninstall gmail

# Keep config but remove skill code

openclaw skills uninstall gmail --keep-config

# Disable without uninstalling (reversible)

openclaw skills disable gmail

# Re-enable later

openclaw skills enable gmail

Part 2: Listing & Managing Skills (Q11–Q16)

Q11 What does "openclaw skills list" output and what do all the columns mean?

openclaw skills list

NAME VERSION STATUS UPDATED

gmail 3.2.1 enabled 2026-02-19

spotify-player 1.4.0 enabled 2026-02-10

obsidian 2.0.3 enabled 2026-01-28

homeassistant 1.9.0 disabled 2026-01-15

bird 1.2.0 enabled 2026-02-05

# Filter by status

openclaw skills list --status enabled

openclaw skills list --status disabled

# Output as JSON

openclaw skills list --json

Q12 How do I update all installed skills at once?

# Update all installed skills

openclaw skills update --all

# Update a single skill

openclaw skills update gmail

# Check which skills have updates available

openclaw skills list --outdated

# Update to specific version

openclaw skills update [email protected]

# Restart after updating

openclaw restart

Q13 How do I temporarily disable a skill without losing its configuration?

# Disable skill (keeps config, stops execution)

openclaw skills disable spotify-player

# Verify it's disabled

openclaw skills list --status disabled

# Re-enable when needed

openclaw skills enable spotify-player

# No restart needed for enable/disable

Use disable/enable to manage resource usage without losing skill settings.

Q14 How do I roll back a skill to a previous version?

# Check version history for a skill

openclaw skills info gmail --versions

# Install a specific older version

openclaw skills install [email protected]

# Or use the rollback command

openclaw skills rollback gmail

# Rolls back to the previous version

Q15 How do I export and import my skill configuration for migration?

# Export skill list and configs

openclaw skills export > skills-backup.json

# Export specific skill

openclaw skills export gmail > gmail-config.json

# Import on new machine (auto-installs + configures)

openclaw skills import skills-backup.json

# Manual: copy the entire skills directory

rsync -av ~/.openclaw/skills/ new-server:~/.openclaw/skills/

Q16 How do I run a skill's built-in test suite?

# Run unit tests for a skill

openclaw skills test gmail

# Run with verbose output

openclaw skills test gmail --verbose

# Run all skills tests

openclaw skills test --all

# Expected output:

✅ gmail: connection test PASSED

✅ gmail: auth test PASSED

✅ gmail: send_email command PASSED

✅ gmail: read_email command PASSED

All 4 tests passed in 2.3s

Part 3: Building Custom Skills (Q17–Q25)

Q17 How do I create a new custom skill scaffold?

# Create a new skill scaffold

openclaw skills create my-tesco-shopper

# Generated structure:

~/.openclaw/skills/my-tesco-shopper/

├── skill.json # Skill manifest (name, version, etc.)

├── handler.js # Main skill logic

├── config.schema.json # Config options schema

├── README.md # Documentation

└── tests/

└── skill.test.js # Unit tests

# Open in editor

code ~/.openclaw/skills/my-tesco-shopper/

Q18 What does a skill.json manifest file look like?

{

"name": "my-tesco-shopper",

"version": "1.0.0",

"description": "Automated Tesco grocery ordering",

"author": "your-github-username",

"license": "MIT",

"entry": "handler.js",

"openclaw": ">=1.0.0",

"commands": [

{"name": "order_groceries", "description": "Order items from Tesco"},

{"name": "check_basket", "description": "View current basket"}

],

"triggers": [

{"type": "cron", "schedule": "0 8 * * 0", "action": "weekly_order"}

],

"dependencies": {

"puppeteer": "^21.0.0"

}

}

Q19 What does a basic handler.js skill file look like?

// handler.js — Main skill entry point

export default {

name: 'my-tesco-shopper',

// Called when skill loads

async onLoad(context) {

context.log('Tesco Shopper skill loaded!');

},

// Handles "order_groceries" command

async order_groceries(ctx, params) {

const items = params.items || [];

// ... browser automation logic ...

await ctx.reply(`Ordered ${items.length} items from Tesco!`);

},

// Handles "check_basket" command

async check_basket(ctx) {

const basket = await this.getBasket();

await ctx.reply(`Basket: ${JSON.stringify(basket)}`);

}

};

Q20 How do I test my custom skill during development?

# Install local skill in development mode (auto-reloads on changes)

openclaw skills install ./my-tesco-shopper/ --dev

# Start agent with hot-reload for skills

openclaw start --dev

# Run skill unit tests

openclaw skills test my-tesco-shopper

# Test a specific command

openclaw skills test my-tesco-shopper --command order_groceries

Q21 Can OpenClaw write its own skills automatically?

Yes — this is one of OpenClaw's most remarkable features. Simply tell your agent in natural language what you want, and it can design, code, and install a new skill entirely on its own. Example conversation:

You (via Telegram):

"Can you build a skill that checks my Oura Ring sleep score every morning and sends me a summary?"

OpenClaw:

"I'll create the skill now. Give me a few minutes..."

[5 minutes later]

"Done! I've created the oura-sleep-monitor skill. It will send you daily sleep summaries at 8 AM. Your sleep score last night was 87/100."

The agent uses openclaw skills create internally and writes the full handler.js for you.

Q22 How do I add npm dependencies to my custom skill?

# Method 1: Add to skill.json dependencies

# Edit skill.json:

"dependencies": {

"axios": "^1.6.0",

"cheerio": "^1.0.0"

}

# Then reinstall skill dependencies

openclaw skills install ./my-skill/ --reinstall-deps

# Method 2: Install directly in skill directory

cd ~/.openclaw/skills/my-tesco-shopper

npm install puppeteer

Q23 How do I debug a skill that isn't working correctly?

# Enable debug mode for specific skill

openclaw skills debug gmail

# View skill-specific logs

openclaw logs --skill gmail

# Check skill health

openclaw skills test gmail --verbose

# Check skill error log

cat ~/.openclaw/logs/skills/gmail-error.log

# Force skill reload

openclaw skills reload gmail

Part 4: Publishing Skills to ClawHub (Q24–Q28)

Q24 How do I publish my custom skill to ClawHub?

# Step 1: Login to ClawHub

openclaw skills login

# Opens browser for GitHub/Google OAuth

# Step 2: Validate skill before publish

openclaw skills validate my-tesco-shopper

# Step 3: Publish to ClawHub

openclaw skills publish my-tesco-shopper

# Step 4: Verify it's live

openclaw skills search tesco

# Should show your skill in results

Q25 What are the requirements to publish a skill to ClawHub?

✅ Required

  • • Valid skill.json manifest
  • • README.md documentation
  • • All tests passing
  • • Open source license
  • • ClawHub account

✅ Recommended

  • • Usage examples in README
  • • Config schema documentation
  • • Semantic versioning
  • • Screenshot/demo

Q26 How do I update a published skill version on ClawHub?

# Bump version in skill.json

openclaw skills version my-tesco-shopper --bump minor

# Changes 1.0.0 → 1.1.0

# Or manually edit skill.json "version" field

# Re-run tests

openclaw skills test my-tesco-shopper

# Publish new version

openclaw skills publish my-tesco-shopper

Q27 Can I publish a private skill not visible to the public?

# Publish as private (visible only to you)

openclaw skills publish my-private-skill --private

# Share with specific users

openclaw skills publish my-skill --access user:alice,user:bob

# Or share as an unlisted URL (anyone with link)

openclaw skills publish my-skill --unlisted

Q28 How does VirusTotal skill security scanning work?

OpenClaw recently partnered with VirusTotal to automatically scan all skills published to ClawHub. When you publish:

1

Your skill code is submitted to VirusTotal for malware scanning

2

70+ security engines analyze the code for threats

3

A security badge is displayed on the skill's ClawHub page

4

Users can see the scan report before installing

# Check security scan status of an installed skill

openclaw skills info gmail --security

Best VPN for OpenClaw Skills Downloads

🥇

VPN07 — 10 Years of Proven Network Stability

9.8/10

Skills download from ClawHub, GitHub, and npm — all require stable international network access. VPN07's 1000Mbps bandwidth across 70+ countries ensures every openclaw skills install command succeeds without ECONNRESET errors.

$1.5
Per Month
1000Mbps
Bandwidth
70+
Countries
30-day
Money Back
Try VPN07 Free — $1.5/month →

Related Articles

Install Skills Without Limits — Use VPN07

Every openclaw skills install command reaches out to ClawHub, GitHub, and npm. With VPN07's 1000Mbps network across 70+ countries, skill installations complete instantly with zero ENOTFOUND errors. Just $1.5/month.

$1.5
Per Month
1000Mbps
Bandwidth
99.9%
Uptime
24/7
Support
$1.5/mo · 10 Years Stable
Try VPN07 Free