Färdigheter (OpenClaw)
OpenClaw använder AgentSkills-kompatibel kunskapsmappar för att lära agenten hur man använder verktyg. Varje färdighet är en katalog som innehåller enSKILL.md med YAML frontmatter och instruktioner. OpenClaw laddar buntade färdigheter plus valfria lokala åsidosättningar och filtrerar dem vid laddningstid baserat på miljö, konfigurering och binär närvaro.
Platser och prioritet
Skills laddas från tre platser:- Bundlade skills: levereras med installationen (npm-paket eller OpenClaw.app)
- Hanterade/lokala skills:
~/.openclaw/skills - Workspace-skills:
<workspace>/skills
<workspace>/skills (högst) → ~/.openclaw/skills → bundlade skills (lägst)
Dessutom kan du konfigurera extra skill-mappar (lägsta prioritet) via
skills.load.extraDirs i ~/.openclaw/openclaw.json.
Per-agent vs delade skills
I multi-agent setups, har varje agent sin egen arbetsyta. Det betyder:- Per-agent-skills finns i
<workspace>/skillsendast för den agenten. - Delade skills finns i
~/.openclaw/skills(hanterade/lokala) och är synliga för alla agenter på samma maskin. - Delade mappar kan också läggas till via
skills.load.extraDirs(lägsta prioritet) om du vill ha ett gemensamt skill-paket som används av flera agenter.
Insticksprogram + färdigheter
Plugins kan skicka sina egna färdigheter genom att angeskills-kataloger i
openclaw.plugin.json (sökvägar i förhållande till plugin-root). Plugin färdigheter ladda
när plugin är aktiverad och delta i den normala skicklighet företrädesregler.
Du kan grinda dem via metadata.openclaw.requires.config på plugins config
post. Se Plugins för upptäckt/config och Tools för
verktygets yta dessa färdigheter lär.
ClawHub (installera + synka)
ClawHub är det offentliga kompetensregistret för OpenClaw. Bläddra på https://clawhub.com. Använd den för att upptäcka, installera, uppdatera och säkerhetskopiera färdigheter. Fullständig guide: ClawHub. Vanliga flöden:- Installera en skill i din workspace:
clawhub install <skill-slug>
- Uppdatera alla installerade skills:
clawhub update --all
- Synka (skanna + publicera uppdateringar):
clawhub sync --all
clawhub i ./skills under din nuvarande arbetskatalog
(eller faller tillbaka till den konfigurerade arbetsytan för OpenClaw). OpenClaw plockar
upp det som <workspace>/skills på nästa session.
Säkerhetsnoteringar
- Behandla tredjepartskunskaper som opålitlig kod. Läs dem innan du aktiverar.
- Föredrar sandlåda körs för opålitliga ingångar och riskabla verktyg. Se Sandboxing.
skills.entries.*.envochskills.entries.*.apiKeyinjicera hemligheter i värd processen för den agenten tur (inte sandlådan). Håll hemligheter utanför förfrågningar och loggar.- För en bredare hotmodell och checklistor, se Security.
Format (AgentSkills + Pi-kompatibelt)
SKILL.md måste minst innehålla:
- Vi följer AgentSkills-specifikationen för layout/avsikt.
- Parsern som används av den inbäddade agenten stöder endast enradiga frontmatter-nycklar.
metadataska vara ett enradigt JSON-objekt.- Använd
{baseDir}i instruktioner för att referera till skill-mappens sökväg. - Valfria frontmatter-nycklar:
-
homepage— URL som visas som ”Website” i macOS Skills-UI:t (stöds även viametadata.openclaw.homepage). -
user-invocable—true<unk> false(standard:true). Närtrue, är skickligheten exponeras som ett användarsnedstreck kommando. -
disable-model-invocation—true<unk> false(standard:false). Närtrue, är skickligheten exkluderad från modellprompten (fortfarande tillgänglig via användaranrop). -
command-dispatch-tool(valfritt). När satt tilltool, förbigår slash-kommandot modellen och skickar direkt till ett verktyg. -
command-tool— verktygsnamn att anropa närcommand-dispatch: toolär satt. -
command-arg-mode—raw(standard). För verktygsavsändande vidarebefordrar råvarans sträng till verktyget (ingen kärnskärning). Verktyget anropas med parametrar:{ command: "<raw args>", commandName: "<slash command>", skillName: "<skill name>" }.
-
Spärrning (filter vid laddning)
OpenClaw filtrerar skills vid laddning medmetadata (enradigt JSON):
metadata.openclaw:
always: true— inkludera alltid skillen (hoppa över andra spärrar).emoji— valfri emoji som används av macOS Skills-UI:t.homepage— valfri URL som visas som ”Website” i macOS Skills-UI:t.os- valfri lista över plattformar (darwin,linux,win32). Om angivet, är skickligheten endast berättigad till dessa OS.requires.bins— lista; var och en måste finnas påPATH.requires.anyBins— lista; minst en måste finnas påPATH.requires.env— lista; env-var måste finnas eller tillhandahållas i konfig.requires.config— lista medopenclaw.json-sökvägar som måste vara truthy.primaryEnv— env var name associerat medskills.entries.<name>.apiKey.install— valfri array av installerarspecifikationer som används av macOS Skills-UI:t (brew/node/go/uv/download).
requires.binskontrolleras på värden vid skill-laddning.- Om en agent är sandlåda måste binären också finnas inuti behållaren.
Installera den via
agents.defaults.sandbox.docker.setupCommand(eller en anpassad bild).setupCommandkörs en gång efter att behållaren skapats. Paketinstallationer kräver även nätverksinställningar, en skrivbar root FS, och en root-användare i sandlådan. Exempel:summarize-skicklighet (skills/summarize/SKILL.md) behöversummarizeCLI i sandlådan för att köras där.
- Om flera installerare listas väljer gatewayen ett föredraget alternativ (brew när tillgängligt, annars node).
- Om alla installerare är
downloadlistar OpenClaw varje post så att du kan se tillgängliga artefakter. - Installerarspecifikationer kan inkludera
os: ["darwin"|"linux"|"win32"]för att filtrera alternativ per plattform. - Node installerar honor
skills.install.nodeManageriopenclaw.json(standard: npm; alternativ: npm/pnpm/yarn/bun). Detta påverkar endast färdighetsinstallationer; Gateway runtime bör fortfarande vara Node (Bun rekommenderas inte för WhatsApp/Telegram). - Go-installationer: om
gosaknas ochbrewfinns installerar gatewayen först Go via Homebrew och sätterGOBINtill Homebrewsbinnär möjligt. - Nedladdningsinstallationer:
url(krävs),archive(tar.gz|tar.bz2|zip),extract(standard: auto när arkiv upptäcks),stripComponents,targetDir(standard:~/.openclaw/tools/<skillKey>).
metadata.openclaw finns är skillen alltid giltig (om den inte
inaktiveras i konfig eller blockeras av skills.allowBundled för bundlade skills).
Konfig-åsidosättningar (~/.openclaw/openclaw.json)
Bundlade/hanterade skills kan slås på/av och förses med env-värden:
metadata.openclaw.skillKey, använd den nyckeln under skills.entries.
Regler:
enabled: falseinaktiverar skillen även om den är bundlad/installerad.env: injiceras endast om variabeln inte redan är satt i processen.apiKey: bekvämlighet för skills som deklarerarmetadata.openclaw.primaryEnv.config: valfri påse för anpassade per-skill-fält; anpassade nycklar måste ligga här.allowBundled: valfri tillåten lista för bundna färdigheter endast. Om angivet, är endast medföljande färdigheter i listan berättigade (hanterade / arbetsytor opåverkade).
Miljöinjektion (per agentkörning)
När en agentkörning startar gör OpenClaw:- Läser skill-metadata.
- Tillämpar alla
skills.entries.<key>.envellerskills.entries.<key>.apiKeytillprocess.env. - Bygger systemprompten med giltiga skills.
- Återställer den ursprungliga miljön efter att körningen avslutats.
Sessionssnapshot (prestanda)
OpenClaw ögonblicksbilder den kvalificerade kompetensen när en session startar och återanvänder den listan för efterföljande svängar i samma session. Förändringar i kompetens eller konfiguration träder i kraft på nästa nya session. Färdigheter kan också uppdatera mitt i sessionen när kompetensbevakaren är aktiverad eller när en ny kvalificerad fjärrnod visas (se nedan). Tänk på detta som en het reload: den uppdaterade listan plockas upp på nästa agent turn.Fjärr-macOS-noder (Linux-gateway)
Om Gateway körs på Linux men en macOS node är ansluten medsystem. un tillåtet (Exec godkänner inte säkerhet satt till deny), OpenClaw kan behandla macOS-endast färdigheter som berättigade när de nödvändiga binärerna finns på den noden. Agenten bör utföra dessa färdigheter via nodes-verktyget (typiskt nodes.run).
Detta förlitar sig på noden som rapporterar sitt kommandoradsstöd och på en bin sond via system.run. Om macOS-noden går offline senare förblir färdigheterna synliga; anrop kan misslyckas tills noden återansluts.
Skills watcher (automatisk uppdatering)
Som standard tittar OpenClaw på skicklighetsmappar och stöter på kompetensögonblicksbilden närSKILL.md-filer ändras. Konfigurera detta under skills.load:
Tokenpåverkan (skills-lista)
När kompetens är berättigad injicerar OpenClaw en kompakt XML-lista över tillgängliga färdigheter i systemprompten (viaformatSkillsForPrompt i pi-coding-agent). Kostnaden är deterministisk:
- Basöverhead (endast när ≥1 skill): 195 tecken.
- Per skill: 97 tecken + längden på de XML-escapade
<name>,<description>och<location>-värdena.
- XML-escaping expanderar
& < > " 'till entiteter (&,<, etc.), vilket ökar längden. - Token räknas varierar beroende på modell tokenizer. En grov OpenAI-stil uppskattning är ~4 chars/token, så 97 chars ▸ 24 tokens per skicklighet plus dina faktiska fältlängder.
Livscykel för hanterade skills
OpenClaw levererar en uppsättning färdigheter som buntade färdigheter som en del av installationen (npm package eller OpenClaw.app).~/.openclaw/skills finns för lokala
åsidosättningar (till exempel fast/patchar en färdighet utan att ändra den medföljande
kopian). Arbetsytans färdigheter är användarägda och åsidosätter båda namnkonflikter.