Skip to main content
HowOpenClawv2026.4.10

Module 3: Skills & Tools

Add calendar, email, web search, and file tools to your AI assistant. Install OpenClaw skills from ClawHub in minutes — no coding needed.

0 of 10 modules complete0%
6 min read
What you will learn
  • Understand the difference between built-in tools and skills
  • Browse and install skills from ClawHub
  • Configure skill credentials and permissions
  • Write a basic custom skill

Why this matters

Out of the box, your agent can think and respond — but it cannot check your calendar, send emails, or search the web. Skills give it those abilities.

Built-in tools vs. skills

OpenClaw has two types of capabilities:

Built-in tools are general-purpose and come pre-installed:

  • web_fetch — retrieve a webpage
  • web_search — search the internet
  • read / write — access files in your workspace
  • exec — run shell commands (with restrictions)
  • image_generate — create images using configured providers
  • video_generate — create videos (as of v2026.4.10)
  • music_generate — create music (as of v2026.4.10)

Skills are purpose-built integrations with specific APIs:

  • Google Calendar — read and create events
  • Gmail — read and send emails
  • GitHub — manage issues and pull requests
  • Weather — get forecasts
  • And many more on ClawHub

Media generation (new in v2026.4.10)

Your agent can now generate images, videos, and music if you configure the right providers.

Image generation

This has been available for a while — your agent can create images using providers like OpenAI DALL-E, Midjourney, or ComfyUI:

openclaw agent --message "Create an image of a cozy home office with plants"

Video generation

As of v2026.4.10, your agent can generate videos. Configure a provider like Runway or xAI:

{
  "providers": {
    "videoGeneration": "runway"
  }
}

Then ask:

openclaw agent --message "Create a short video of a rocket launching"

Your agent will use the video_generate tool to create the video and return it directly in the reply.

Music generation

As of v2026.4.10, your agent can generate music using Google Lyria, MiniMax, or ComfyUI workflows:

{
  "providers": {
    "musicGeneration": "google"
  }
}

Then ask:

openclaw agent --message "Create upbeat background music for a product demo"

The agent will use the music_generate tool. Music generation is asynchronous — the agent starts a task and will notify you when the music is ready.

Browsing ClawHub

ClawHub is the skill directory. Browse it at clawhub.ai or through the dashboard.

Each skill listing shows:

  • What it does
  • What credentials it needs
  • Example prompts that use it
  • Configuration format
CategorySkills
ProductivityGmail, Google Calendar, Notion, Linear, GitHub, Jira
Data & FinanceAlpha Vantage, Polygon, Weather
CommunicationGmail Send, Slack Read
UtilitiesWikipedia, WolframAlpha, PDF

Installing a skill

Every skill requires two steps — installing it and enabling it. Installing downloads the skill code. Enabling tells OpenClaw to actually use it. A skill that is installed but not enabled does nothing.

Think of it like installing an app on your phone — you still need to open it and configure it before it works.

Example: Install the weather skill

In your Terminal, install the skill:

openclaw skills install weather

Then open your config file to enable it:

openclaw config edit

This opens ~/.openclaw/openclaw.json. Add the skills block (or add to an existing skills block if you already have one):

{
  "skills": {
    "weather": {
      "enabled": true
    }
  }
}

Save the file and close your editor. Some skills need API keys or tokens — check openclaw skills info [name] to see what each skill requires:

{
  "skills": {
    "github": {
      "enabled": true,
      "token": "YOUR_GITHUB_PERSONAL_ACCESS_TOKEN"
    }
  }
}

Where to get skill credentials

Run openclaw skills info [skill-name] — it shows exactly where to get the required API key, token, or OAuth credentials for that skill, with a direct link.

After saving, restart the gateway in your Terminal to load the new skill:

openclaw gateway restart

Check skill status

See what is installed and working:

openclaw skills info weather

The dashboard also shows skill status with tabs for All, Ready, Needs Setup, and Disabled.

Testing a skill

After installation, ask your agent to use it:

openclaw agent --message "What is the weather forecast for tomorrow?"

If the weather skill is installed and configured, the agent will use it automatically. You do not need to tell it which skill to use — the agent figures that out from your question.

Skill permissions

Each skill runs in its own sandbox:

  • A skill only gets its own credentials
  • No cross-skill access
  • No access to your SOUL.md or personal files
  • Credentials stored separately at ~/.openclaw/tokens/

This means a buggy or malicious skill cannot access your other skills or data.

Not a developer? Stop here.

Everything above is all you need to install and use skills. The section below is for developers who want to build custom skills from scratch. If that's not you, skip ahead to Module 4.

Writing a custom skill

For developers only

This section requires JavaScript knowledge. If you are not a developer, skip to the hands-on section below — you do not need to write custom skills to get full value from OpenClaw.

If you need a skill that does not exist on ClawHub, you can write your own. A skill is a Node.js module that exports tool definitions:

module.exports = {
  name: "my_service",
  description: "Access My Service API",
  tools: [
    {
      name: "get_items",
      description: "Get a list of items from My Service",
      parameters: {
        type: "object",
        properties: {
          filter: {
            type: "string",
            description: "Filter items by this string",
          },
        },
      },
      async execute({ filter }, config) {
        const response = await fetch(
          `https://api.myservice.com/items?q=${filter}`,
          {
            headers: { Authorization: `Bearer ${config.apiKey}` },
          },
        )
        return await response.json()
      },
    },
  ],
}

Save it in your skills directory and add the config:

{
  "skills": {
    "my_service": {
      "enabled": true,
      "path": "./skills/my-skill",
      "apiKey": "YOUR_KEY"
    }
  }
}

Hands-on: Install and test a skill

Pick a skill

Browse ClawHub and pick a skill that sounds useful — weather, calendar, or web-search are good starting points.

Install it

openclaw skills install [name]

Add the configuration

Open your config (openclaw config edit) and add the skill block with any required credentials. Run openclaw skills info [name] to see exactly what it needs.

Restart the gateway

openclaw gateway restart

Test with a natural language message

openclaw agent --message "What's the weather today?"

If it does not work, check openclaw skills info [name] for setup requirements. The CLI Cheatsheet lists every openclaw skills command with flags.

Finished this module?

Tracks your progress across all 10 modules

FAQ

What is the difference between a built-in tool and a skill?
Built-in tools (read, write, shell) are compiled into OpenClaw and enabled via config flags. Skills are external extensions — Markdown SKILL.md files that describe tools the agent can call. Skills are installed from ClawHub and can be added or removed without touching the core config.
Are OpenClaw skills free to use?
The skills themselves are free and open source. However, some skills connect to external services that have their own costs — for example, a Google Calendar skill requires a Google account, and a web search skill may use a paid API. Check each skill's readme for dependencies. See ClawHub for the full skill directory.
Can I use multiple skills at the same time?
Yes. You can have any number of skills installed and active at once. The agent selects which skills to invoke based on the task — it won't call your calendar skill when you ask a general knowledge question. Skills don't conflict with each other unless they share the same tool name.
Do skills have access to my files or personal data?
Only the skills you explicitly enable and configure. File access is limited to ~/.openclaw/workspace/ by default. Skills can only access your accounts if you provide credentials during setup. You can audit all enabled skills at any time by running `openclaw config audit`.