Skip to main content

What Are Skills?

A skill is a SKILL.md file that gives the AI a focused set of instructions, context, and behaviors for a particular task domain. When a skill is active, the AI’s system prompt is extended with that skill’s instructions - making it an expert in that specific area. Examples:
  • The code-review skill makes the AI a thorough code reviewer with a specific feedback format
  • The git-workflow skill teaches branching conventions and safe commit practices
  • The web-research skill instructs structured information gathering with citations
Skills are plain Markdown with a YAML frontmatter header. No code required - anyone can write one.

Skill Architecture

Skills are loaded from multiple sources in priority order. Later sources override earlier ones by skill name:
Loading Priority (lowest to highest):
1. Extra directories    (config.load.extraDirs)
2. Built-in skills      (50 bundled with profClaw)
3. Managed skills       (~/.profclaw/skills/)
4. Workspace skills     (<project>/skills/)
Your workspace skills/ directory always wins, allowing you to override any built-in skill for a specific project.

Skill File Format

---
name: code-review
description: Analyze diffs, suggest improvements, and review PRs
version: 1.0.0
metadata: {"profclaw": {"emoji": "magnifying-glass", "category": "development", "priority": 85}}
---

# Code Review

You are a thorough code reviewer...

## What This Skill Does
...
The YAML frontmatter defines the skill’s identity and behavior flags. The Markdown body is injected as system instructions when the skill is active.

Frontmatter Fields

FieldTypeDescription
namestringUnique skill identifier (kebab-case)
descriptionstringShort description shown in the UI
versionstringSemver version
user-invocablebooleanShow as a slash command users can invoke
disable-model-invocationbooleanPrevent the AI from auto-activating this skill
command-dispatch"tool"Route slash command directly to a specific tool
command-toolstringTool name for command-dispatch mode
command-arg-mode"raw" or "parsed"How arguments are passed to the tool
metadataJSON stringExtended metadata: category, emoji, trigger patterns

How Skills Are Activated

User-invocable skills respond to /skill-name commands. Arguments after the command name are passed through:
/code-review
/git-workflow commit my changes
/web-research latest Hono middleware docs
/summarize src/chat/

Skill Sources

Managing Skills via CLI

# List all available skills
profclaw skills list

# Search for skills on ClawHub
profclaw skills search code-review

# Install a skill from ClawHub
profclaw skills install @profclaw/skill-debug-helper

# Show skill details
profclaw skills show git-workflow

# Disable a built-in skill
profclaw skills disable web-research

Skills vs Tools vs Plugins

Understanding when to use each extension mechanism:
SkillsToolsPlugins
FormatSKILL.md (Markdown)TypeScript codenpm package
PurposeAI instructions and behaviorExecutable functionsSystem extensions
ComplexitySimple - text onlyMedium - typed functionsFull - npm package
Requires codeNoYesYes
Can call toolsYes (by instruction)N/AYes
Can add toolsNoYes (via plugin)Yes
Skills are the easiest and fastest way to extend profClaw behavior. Use Plugins when you need to add executable tools or system-level integrations.