Skip to main content
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.

Built-in Skills

Located in the project skills/ directory, automatically enabled based on dependency conditions:
SkillDescriptionDependencies
skill-creatorCreate custom skills through conversationNone
openai-image-visionRecognize images using OpenAI vision modelsOPENAI_API_KEY
linkai-agentIntegrate LinkAI platform agentsLINKAI_API_KEY
web-fetchFetch web page text contentcurl (enabled by default)

Custom Skills

Created by users through conversation, stored in workspace (~/cow/skills/), can implement any complex business process and third-party system integration.

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

---
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...
FieldDescription
nameSkill name, must match directory name
descriptionSkill description, Agent decides whether to invoke based on this
metadata.requires.binsRequired system commands
metadata.requires.envRequired environment variables
metadata.alwaysAlways load (default false)