> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cowagent.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Skills Overview

> CowAgent skills system introduction

Skills provide infinite extensibility for the Agent. Each Skill consists of a description file (`SKILL.md`), execution scripts (optional), and resources (optional), describing how to accomplish specific types of tasks.

The difference between Skills and Tools: Tools are atomic operations implemented in code (e.g., file read/write, command execution), while Skills are high-level workflows based on description files that can combine multiple Tools to complete complex tasks.

## Getting Skills

CowAgent offers multiple ways to acquire skills:

* **Cow Skill Hub** — Browse and install community skills via `/skill list --remote`
* **GitHub** — Install directly from GitHub repositories, with batch install support
* **ClawHub** — Install ClawHub skills via `/skill install clawhub:name`
* **URL** — Install from zip archives or SKILL.md links
* **Conversational creation** — Let the Agent create skills through natural language conversation

See [Install Skills](/skills/install) and [Skill Management Commands](/cli/skill) for details. You can also [create skills](/skills/create) through conversation.

## Skill Loading Priority

1. **Workspace skills** (highest): `~/cow/skills/`
2. **Project built-in skills** (lowest): `skills/`

Skills with the same name are overridden by priority.

## Skill File Structure

```
skills/
├── my-skill/
│   ├── SKILL.md          # Skill description (frontmatter + instructions)
│   ├── scripts/          # Execution scripts (optional)
│   └── resources/        # Additional resources (optional)
```

### SKILL.md Format

```markdown theme={null}
---
name: my-skill
description: Brief description of the skill
metadata:
  emoji: 🔧
  requires:
    bins: ["curl"]
    env: ["MY_API_KEY"]
  primaryEnv: "MY_API_KEY"
---

# My Skill

Detailed instructions...
```

| Field                    | Description                                                      |
| ------------------------ | ---------------------------------------------------------------- |
| `name`                   | Skill name, must match directory name                            |
| `description`            | Skill description, Agent decides whether to invoke based on this |
| `metadata.requires.bins` | Required system commands                                         |
| `metadata.requires.env`  | Required environment variables                                   |
| `metadata.always`        | Always load (default false)                                      |
