Конфигурация навыков
Вся конфигурация, связанная с навыками, находится под skills в ~/.openclaw/openclaw.json.
{
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 все еще Node; bun не рекомендуется)
},
entries: {
"nano-banana-pro": {
enabled: true,
apiKey: "GEMINI_KEY_HERE",
env: {
GEMINI_API_KEY: "GEMINI_KEY_HERE"
}
},
peekaboo: { enabled: true },
sag: { enabled: false }
}
}
}
Поля
- allowBundled: опциональный список разрешений только для встроенных навыков. Когда установлен, только встроенные навыки в списке подходят (управляемые/рабочие навыки не затронуты).
- load.extraDirs: дополнительные каталоги навыков для сканирования (наименьший приоритет).
- load.watch: отслеживать папки навыков и обновлять снимок навыков (по умолчанию: true).
- load.watchDebounceMs: задержка для событий наблюдателя навыков в миллисекундах (по умолчанию: 250).
- install.preferBrew: предпочитать brew установщики, когда доступны (по умолчанию: true).
- install.nodeManager: предпочтение установщика node (npm | pnpm | yarn | bun, по умолчанию: npm). Это влияет только на установки навыков; среда выполнения Gateway должна быть все еще Node (Bun не рекомендуется для WhatsApp/Telegram).
- entries.<skillKey>: переопределения для каждого навыка.
Поля для каждого навыка:
- enabled: установите false, чтобы отключить навык, даже если он встроен/установлен.
- env: переменные окружения, вводимые для запуска агента (только если еще не установлены).
- apiKey: опциональное удобство для навыков, которые объявляют основную переменную env.
Примечания
- Ключи под entries отображаются на имя навыка по умолчанию. Если навык определяет metadata.openclaw.skillKey, используйте этот ключ вместо этого.
- Изменения в навыках подхватываются на следующем ходу агента, когда наблюдатель включен.
Изолированные навыки + переменные env
Когда сеанс изолирован, процессы навыков выполняются внутри Docker. Изолированная среда не наследует process.env хоста.
Используйте один из:
- agents.defaults.sandbox.docker.env (или для каждого агента agents.list[].sandbox.docker.env)
- запеките env в ваш пользовательский образ изолированной среды
Глобальный env и skills.entries.<skill>.env/apiKey применяются только к запускам хоста.