Полное руководство по разработке навыков мирового уровня
Основано на лучших практиках 2026
Навык (Skill) — это модуль, который добавляет OpenClaw новые возможности: интеграцию с сервисами, обработку данных, автоматизацию задач.
my-skill/
├── SKILL.md # Обязательный файл описания
├── README.md # Документация для пользователей
├── src/
│ └── index.js # Основной код навыка
├── scripts/
│ └── setup.sh # Скрипт установки (опционально)
├── references/
│ └── api-docs.md # Справочные материалы (опционально)
└── tests/
└── index.test.js # Тесты (рекомендуется)
---
name: my-skill-name
description: Краткое описание (1-2 предложения)
metadata:
{
"openclaw": {
"emoji": "🎯",
"requires": { "bins": ["node", "npm"] },
"install": [
{
"id": "npm",
"kind": "npm",
"package": "package-name",
"label": "Установка зависимости"
}
]
}
}
---
# My Skill Name
Подробное описание навыка...
## Использование
Примеры использования...
## Требования
Что нужно для работы...
openclaw skills checkПлохо: навык "email" делает всё (отправка, чтение, сортировка, шаблоны)
Хорошо: отдельные навыки "gmail-read", "gmail-send", "gmail-sort"
// ❌ Плохо
if (!config.apiKey) { throw new Error("Error"); }
// ✅ Хорошо
if (!config.apiKey) {
throw new Error("API ключ не найден. Добавьте в конфиг: { apiKey: '...' }");
}
// ❌ Плохо
const API_URL = "https://api.example.com";
// ✅ Хорошо
const config = loadConfig();
const API_URL = config.apiUrl || "https://api.example.com";
Если сервис недоступен — навык должен работать в ограниченном режиме, а не падать полностью.
describe('MySkill', () => {
test('должен возвращать результат при валидных данных', async () => {
const result = await mySkill.process({ input: 'test' });
expect(result).toBeDefined();
expect(result.success).toBe(true);
});
test('должен выбрасывать ошибку при невалидных данных', async () => {
await expect(mySkill.process({}))
.rejects
.toThrow('Входные данные обязательны');
});
});
# Проверка навыка
openclaw skills check my-skill
# Установка локально
openclaw skills install ./my-skill
# Публикация в ClawHub
openclaw skills publish my-skill
| Навык | Что изучает | Уровень |
|---|---|---|
| weather | Простая интеграция API | 🟢 Начинающий |
| gog | Работа с Google API | 🟡 Средний |
| clawflow | Оркестрация задач | 🔴 Продвинутый |
| skill-creator | Создание навыков | 🟡 Средний |