Skills
Skills yapılandırması
Çoğu Skills yükleyici/kurulum yapılandırması skills altında,
~/.openclaw/openclaw.json içinde bulunur. Ajana özgü Skills görünürlüğü
agents.defaults.skills ve agents.list[].skills altında bulunur.
{
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 },
},
},
}
Yerleşik görüntü üretimi/düzenleme için agents.defaults.imageGenerationModel
ile birlikte çekirdek image_generate aracını tercih edin. skills.entries.*
yalnızca özel veya üçüncü taraf Skills iş akışları içindir.
Belirli bir görüntü sağlayıcısı/modeli seçerseniz, o sağlayıcının kimlik
doğrulamasını/API anahtarını da yapılandırın. Tipik örnekler: google/* için
GEMINI_API_KEY veya GOOGLE_API_KEY, openai/* için OPENAI_API_KEY ve
fal/* için FAL_KEY.
Örnekler:
- Yerel Nano Banana Pro tarzı kurulum:
agents.defaults.imageGenerationModel.primary: "google/gemini-3-pro-image-preview" - Yerel fal kurulumu:
agents.defaults.imageGenerationModel.primary: "fal/fal-ai/flux/dev"
Ajan Skills izin listeleri
Aynı makine/çalışma alanı Skills köklerini, ancak her ajan için farklı bir görünür Skills kümesini istediğinizde ajan yapılandırmasını kullanın.
{
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
],
},
}
Kurallar:
agents.defaults.skills:agents.list[].skillsdeğerini atlayan ajanlar için paylaşılan temel izin listesi.- Skills'ın varsayılan olarak kısıtlanmaması için
agents.defaults.skillsdeğerini atlayın. agents.list[].skills: o ajan için açık nihai Skills kümesi; varsayılanlarla birleştirilmez.agents.list[].skills: []: o ajan için hiçbir Skills göstermez.
Alanlar
- Yerleşik Skills kökleri her zaman
~/.openclaw/skills,~/.agents/skills,<workspace>/.agents/skillsve<workspace>/skillsdeğerlerini içerir. allowBundled: yalnızca paketlenmiş Skills için isteğe bağlı izin listesi. Ayarlandığında, yalnızca listedeki paketlenmiş Skills uygun olur (yönetilen, ajan ve çalışma alanı Skills'ları etkilenmez).load.extraDirs: taranacak ek Skills dizinleri (en düşük öncelik).load.watch: Skills klasörlerini izler ve Skills anlık görüntüsünü yeniler (varsayılan: true).load.watchDebounceMs: Skills izleyici olayları için milisaniye cinsinden debounce (varsayılan: 250).install.preferBrew: mevcut olduğunda brew yükleyicilerini tercih eder (varsayılan: true).install.nodeManager: node yükleyici tercihi (npm|pnpm|yarn|bun, varsayılan: npm). Bu yalnızca Skills kurulumlarını etkiler; Gateway çalışma zamanı yine Node olmalıdır (Bun, WhatsApp/Telegram için önerilmez).openclaw setup --node-managerdaha dardır ve şu andanpm,pnpmveyabunkabul eder. Yarn destekli Skills kurulumları istiyorsanızskills.install.nodeManager: "yarn"değerini elle ayarlayın.
entries.<skillKey>: Skills başına geçersiz kılmalar.agents.defaults.skills:agents.list[].skillsdeğerini atlayan ajanlar tarafından devralınan isteğe bağlı varsayılan Skills izin listesi.agents.list[].skills: ajan başına isteğe bağlı nihai Skills izin listesi; açık listeler, devralınan varsayılanları birleştirmek yerine onların yerini alır.
Skills başına alanlar:
enabled: paketlenmiş/yüklü olsa bile bir Skills'ı devre dışı bırakmak içinfalseolarak ayarlayın.env: ajan çalıştırması için enjekte edilen ortam değişkenleri (yalnızca zaten ayarlanmamışsa).apiKey: birincil env var bildiren Skills için isteğe bağlı kolaylık. Düz metin dizesini veya SecretRef nesnesini ({ source, provider, id }) destekler.
Notlar
entriesaltındaki anahtarlar varsayılan olarak Skills adına eşlenir. Bir Skillsmetadata.openclaw.skillKeytanımlıyorsa bunun yerine o anahtarı kullanın.- Yükleme önceliği şöyledir:
<workspace>/skills→<workspace>/.agents/skills→~/.agents/skills→~/.openclaw/skills→ paketlenmiş Skills →skills.load.extraDirs. - İzleyici etkin olduğunda Skills değişiklikleri bir sonraki ajan turunda alınır.
Sandbox içindeki Skills ve env var'lar
Bir oturum sandbox içinde olduğunda, Skills süreçleri yapılandırılmış sandbox arka ucu içinde çalışır. Sandbox, ana makine process.env değerini devralmaz.
Şunlardan birini kullanın:
- Docker arka ucu için
agents.defaults.sandbox.docker.env(veya ajan başınaagents.list[].sandbox.docker.env). - Env'i özel sandbox görüntünüze veya uzak sandbox ortamınıza gömün.