Skills
Конфігурація Skills
Більшість конфігурації завантаження/встановлення Skills розташована в skills у
~/.openclaw/openclaw.json. Видимість Skills для конкретного агента розташована в
agents.defaults.skills і agents.list[].skills.
{
skills: {
allowBundled: ["gemini", "peekaboo"],
load: {
extraDirs: ["~/Projects/agent-scripts/skills", "~/Projects/oss/some-skill-pack/skills"],
watch: true,
watchDebounceMs: 250,
},
install: {
preferBrew: true,
nodeManager: "npm", // npm | pnpm | yarn | bun (Gateway runtime still Node; bun not recommended)
},
entries: {
"image-lab": {
enabled: true,
apiKey: { source: "env", provider: "default", id: "GEMINI_API_KEY" }, // or plaintext string
env: {
GEMINI_API_KEY: "GEMINI_KEY_HERE",
},
},
peekaboo: { enabled: true },
sag: { enabled: false },
},
},
}
Для вбудованої генерації/редагування зображень надавайте перевагу agents.defaults.imageGenerationModel
разом із основним інструментом image_generate. skills.entries.* призначено лише для користувацьких або
сторонніх робочих процесів Skills.
Якщо ви вибираєте конкретного провайдера/модель зображень, також налаштуйте
автентифікацію/API-ключ цього провайдера. Типові приклади: GEMINI_API_KEY або GOOGLE_API_KEY для
google/*, OPENAI_API_KEY для openai/* і FAL_KEY для fal/*.
Приклади:
- Нативне налаштування в стилі Nano Banana Pro:
agents.defaults.imageGenerationModel.primary: "google/gemini-3-pro-image-preview" - Нативне налаштування fal:
agents.defaults.imageGenerationModel.primary: "fal/fal-ai/flux/dev"
Дозволені списки Skills для агентів
Використовуйте конфігурацію агента, коли потрібні ті самі корені Skills для машини/робочого простору, але інший видимий набір Skills для кожного агента.
{
agents: {
defaults: {
skills: ["github", "weather"],
},
list: [
{ id: "writer" }, // inherits defaults -> github, weather
{ id: "docs", skills: ["docs-search"] }, // replaces defaults
{ id: "locked-down", skills: [] }, // no skills
],
},
}
Правила:
agents.defaults.skills: спільний базовий дозволений список для агентів, які не вказуютьagents.list[].skills.- Не вказуйте
agents.defaults.skills, щоб за замовчуванням не обмежувати Skills. agents.list[].skills: явний остаточний набір Skills для цього агента; він не об'єднується зі значеннями за замовчуванням.agents.list[].skills: []: не відкривати жодних Skills для цього агента.
Поля
- Вбудовані корені Skills завжди включають
~/.openclaw/skills,~/.agents/skills,<workspace>/.agents/skillsі<workspace>/skills. allowBundled: необов'язковий дозволений список лише для пакетних Skills. Якщо задано, придатними є лише пакетні Skills зі списку (керовані, агентські та робочого простору Skills не зачіпаються).load.extraDirs: додаткові каталоги Skills для сканування (найнижчий пріоритет).load.watch: спостерігати за папками Skills і оновлювати знімок Skills (за замовчуванням: true).load.watchDebounceMs: затримка debounce для подій спостерігача Skills у мілісекундах (за замовчуванням: 250).install.preferBrew: надавати перевагу інсталяторам brew, коли вони доступні (за замовчуванням: true).install.nodeManager: пріоритетний інсталятор node (npm|pnpm|yarn|bun, за замовчуванням: npm). Це впливає лише на встановлення Skills; середовище виконання Gateway усе одно має бути Node (Bun не рекомендовано для WhatsApp/Telegram).openclaw setup --node-managerмає вужчу сферу й наразі приймаєnpm,pnpmабоbun. Установітьskills.install.nodeManager: "yarn"вручну, якщо потрібні встановлення Skills на базі Yarn.
entries.<skillKey>: перевизначення для окремих Skills.agents.defaults.skills: необов'язковий дозволений список Skills за замовчуванням, який успадковують агенти, що не вказуютьagents.list[].skills.agents.list[].skills: необов'язковий остаточний дозволений список Skills для окремого агента; явні списки замінюють успадковані значення за замовчуванням замість об'єднання.
Поля для окремих Skills:
enabled: установітьfalse, щоб вимкнути Skills, навіть якщо вона пакетна/встановлена.env: змінні середовища, що інжектуються для запуску агента (лише якщо ще не задані).apiKey: необов'язкова зручність для Skills, які оголошують основну змінну середовища. Підтримує відкритий текстовий рядок або об'єкт SecretRef ({ source, provider, id }).
Примітки
- Ключі в
entriesза замовчуванням відповідають назві Skills. Якщо Skills визначаєmetadata.openclaw.skillKey, використовуйте цей ключ натомість. - Пріоритет завантаження:
<workspace>/skills→<workspace>/.agents/skills→~/.agents/skills→~/.openclaw/skills→ пакетні Skills →skills.load.extraDirs. - Зміни в Skills підхоплюються на наступному ході агента, коли спостерігач увімкнений.
Пісочничні Skills і змінні env
Коли сесія пісочнична, процеси Skills запускаються всередині налаштованого бекенда пісочниці. Пісочниця не успадковує process.env хоста.
Використайте один із варіантів:
agents.defaults.sandbox.docker.envдля бекенда Docker (абоagents.list[].sandbox.docker.envдля окремого агента).- Вбудуйте env у власний образ пісочниці або віддалене середовище пісочниці.