SKILL.md con
frontmatter YAML e un corpo markdown. OpenClaw carica le Skills incluse più
eventuali override locali e le filtra al momento del caricamento in base ad
ambiente, configurazione e presenza dei binari.
Creating skills
Crea e testa una skill personalizzata da zero.
Skill Workshop
Rivedi e approva le proposte di skill redatte dall’agente.
Skills config
Schema di configurazione completo
skills.* e allowlist degli agenti.ClawHub
Esplora e installa skill della community.
Ordine di caricamento
OpenClaw carica da queste sorgenti, prima la precedenza più alta. Quando lo stesso nome di skill compare in più punti, vince la sorgente più alta.| Priorità | Sorgente | Percorso |
|---|---|---|
| 1 — massima | Skills dell’area di lavoro | <workspace>/skills |
| 2 | Skills dell’agente di progetto | <workspace>/.agents/skills |
| 3 | Skills personali dell’agente | ~/.agents/skills |
| 4 | Skills gestite / locali | ~/.openclaw/skills |
| 5 | Skills incluse | fornite con l’installazione |
| 6 — minima | Directory aggiuntive | skills.load.extraDirs + skill dei plugin |
SKILL.md compare ovunque sotto una radice configurata:
name (o dal nome della directory quando name manca).
La directory nativa
$CODEX_HOME/skills di Codex CLI non è una radice di
skill OpenClaw. Usa openclaw migrate plan codex per inventariare quelle
Skills, poi openclaw migrate codex per copiarle nella tua area di lavoro
OpenClaw.Skills per agente e condivise
Nelle configurazioni multi-agente, ogni agente ha la propria area di lavoro. Usa il percorso che corrisponde alla visibilità desiderata:| Ambito | Percorso | Visibile a |
|---|---|---|
| Per agente | <workspace>/skills | Solo quell’agente |
| Agente di progetto | <workspace>/.agents/skills | Solo l’agente di quell’area di lavoro |
| Agente personale | ~/.agents/skills | Tutti gli agenti su questa macchina |
| Gestite condivise | ~/.openclaw/skills | Tutti gli agenti su questa macchina |
| Directory extra | skills.load.extraDirs | Tutti gli agenti su questa macchina |
Allowlist degli agenti
La posizione della skill (precedenza) e la visibilità della skill (quale agente può usarla) sono controlli separati. Usa le allowlist per limitare quali skill vede un agente, indipendentemente da dove vengono caricate.Allowlist rules
Allowlist rules
- Ometti
agents.defaults.skillsper lasciare tutte le Skills non limitate per impostazione predefinita. - Ometti
agents.list[].skillsper ereditareagents.defaults.skills. - Imposta
agents.list[].skills: []per non esporre alcuna skill a quell’agente. - Una lista
agents.list[].skillsnon vuota è l’insieme finale: non viene unita ai valori predefiniti. - L’allowlist effettiva si applica alla costruzione dei prompt, al rilevamento dei comandi slash, alla sincronizzazione della sandbox e agli snapshot delle skill.
- Questo non è un limite di autorizzazione della shell host. Se lo stesso
agente può usare
exec, limita quella shell separatamente con sandboxing, isolamento dell’utente OS, denylist/allowlist di exec e credenziali per risorsa.
Plugin e skill
I plugin possono distribuire le proprie skill elencando directoryskills in
openclaw.plugin.json (percorsi relativi alla radice del plugin). Le skill dei
plugin vengono caricate quando il plugin è abilitato; per esempio, il plugin del
browser distribuisce una skill browser-automation per il controllo del browser
in più passaggi.
Le directory delle skill dei plugin vengono unite allo stesso livello di bassa
precedenza di skills.load.extraDirs, quindi una skill inclusa, gestita,
dell’agente o dell’area di lavoro con lo stesso nome le sovrascrive. Proteggile
tramite metadata.openclaw.requires.config nella voce di configurazione del
plugin.
Consulta Plugin e Strumenti per il sistema completo
dei plugin.
Skill Workshop
Skill Workshop è una coda di proposte tra l’agente e i tuoi file skill attivi. Quando l’agente individua lavoro riutilizzabile, redige una proposta invece di scrivere direttamente inSKILL.md. La rivedi e approvi
prima che qualcosa cambi.
Installazione da ClawHub
ClawHub è il registro pubblico delle skill. Usa i comandiopenclaw skills per installazione e aggiornamento, oppure la CLI clawhub per
pubblicazione e sincronizzazione.
| Azione | Comando |
|---|---|
| Installa una skill nell’area di lavoro | openclaw skills install @owner/<slug> |
| Installa da un repository Git | openclaw skills install git:owner/repo@ref |
| Installa una directory skill locale | openclaw skills install ./path/to/skill --as my-tool |
| Installa per tutti gli agenti locali | openclaw skills install @owner/<slug> --global |
| Aggiorna tutte le skill dell’area di lavoro | openclaw skills update --all |
| Aggiorna una skill gestita condivisa | openclaw skills update @owner/<slug> --global |
| Aggiorna tutte le skill gestite condivise | openclaw skills update --all --global |
| Verifica l’involucro di fiducia di una skill | openclaw skills verify @owner/<slug> |
| Stampa la Skill Card generata | openclaw skills verify @owner/<slug> --card |
| Pubblica / sincronizza tramite ClawHub CLI | clawhub sync --all |
Install details
Install details
openclaw skills install installa per impostazione predefinita nella
directory skills/ dell’area di lavoro attiva. Aggiungi --global per
installare nella directory condivisa ~/.openclaw/skills, visibile a tutti
gli agenti locali salvo restringimenti tramite allowlist degli agenti.Le installazioni Git e locali si aspettano SKILL.md nella radice della
sorgente. Lo slug deriva dal frontmatter name di SKILL.md quando valido,
poi ripiega sul nome della directory o del repository. Usa --as <slug> per
sovrascriverlo. openclaw skills update tiene traccia solo delle
installazioni ClawHub: reinstalla le sorgenti Git o locali per aggiornarle.Verification and security scanning
Verification and security scanning
openclaw skills verify @owner/<slug> chiede a ClawHub l’involucro di
fiducia clawhub.skill.verify.v1 della skill. Le skill ClawHub installate
vengono verificate rispetto alla versione e al registro registrati in
.clawhub/origin.json. Gli slug semplici restano accettati per skill
esistenti installate o non ambigue, ma i riferimenti qualificati con il
proprietario evitano ambiguità sull’editore.Le pagine delle skill ClawHub espongono lo stato dell’ultima scansione di
sicurezza prima dell’installazione, con pagine di dettaglio per VirusTotal,
ClawScan e analisi statica. Il comando termina con codice non zero quando
ClawHub contrassegna la verifica come non riuscita. Gli editori recuperano i
falsi positivi tramite la dashboard ClawHub o
clawhub skill rescan @owner/<slug>.Private archive installs
Private archive installs
I client Gateway che richiedono una distribuzione non ClawHub possono
preparare un archivio zip di skill con
skills.upload.begin,
skills.upload.chunk e skills.upload.commit, quindi installare con
skills.install({ source: "upload", ... }). Questo percorso è disattivato
per impostazione predefinita e richiede
skills.install.allowUploadedArchives: true in openclaw.json. Le normali
installazioni ClawHub non hanno mai bisogno di questa impostazione.Sicurezza
Path containment
Path containment
Il rilevamento delle skill dell’area di lavoro, dell’agente di progetto e
delle directory extra accetta solo radici di skill il cui realpath risolto
resta dentro la radice configurata, salvo che
skills.load.allowSymlinkTargets consideri esplicitamente attendibile una
radice di destinazione. Skill Workshop scrive attraverso quelle destinazioni
attendibili solo quando skills.workshop.allowSymlinkTargetWrites è
abilitato. Le directory gestite ~/.openclaw/skills e personali
~/.agents/skills possono contenere cartelle skill con symlink, ma ogni
realpath di SKILL.md deve comunque restare dentro la directory skill
risolta.Operator install policy
Operator install policy
Configura
security.installPolicy per eseguire un comando di policy locale
attendibile prima che le installazioni di skill continuino. La policy riceve
metadati e percorso della sorgente preparata, si applica ai percorsi ClawHub,
caricati, Git, locali, di aggiornamento e di installazione dipendenze, e
fallisce in modo chiuso quando il comando non può restituire una decisione
valida.Secret injection scope
Secret injection scope
skills.entries.*.env e skills.entries.*.apiKey iniettano segreti nel
processo host solo per quel turno dell’agente, non nella sandbox. Tieni i
segreti fuori da prompt e log.Formato SKILL.md
Ogni skill richiede almeno unname e una description nel frontmatter:
OpenClaw segue la specifica AgentSkills. Il parser
del frontmatter supporta solo chiavi su una singola riga:
metadata deve
essere un oggetto JSON su una singola riga. Usa {baseDir} nel corpo per fare
riferimento al percorso della cartella della skill.Chiavi frontmatter facoltative
URL mostrato come “Sito web” nell’interfaccia macOS Skills. Supportato anche
tramite
metadata.openclaw.homepage.Quando
true, la skill viene esposta come comando slash invocabile dall’utente.Quando
true, OpenClaw tiene le istruzioni della skill fuori dal prompt
normale dell’agente. La skill resta comunque disponibile come comando slash
quando anche user-invocable è true.Quando impostato su
tool, il comando slash aggira il modello e inoltra
direttamente a uno strumento registrato.Nome dello strumento da invocare quando è impostato
command-dispatch: tool.Per l’inoltro degli strumenti, passa la stringa di argomenti grezza allo strumento senza
parsing del core. Lo strumento riceve
{ command: "<raw args>", commandName: "<slash command>", skillName: "<skill name>" }.Controlli di idoneità
OpenClaw filtra le skill al momento del caricamento usandometadata.openclaw (JSON
su una sola riga nel frontmatter). Una skill senza blocco metadata.openclaw è sempre
idonea, salvo disabilitazione esplicita.
Quando è
true, include sempre la skill e salta tutti gli altri controlli.Emoji facoltativa mostrata nell’interfaccia Skills di macOS.
URL facoltativo mostrato come “Sito web” nell’interfaccia Skills di macOS.
Filtro di piattaforma. Quando impostato, la skill è idonea solo sui sistemi operativi elencati.
Ogni binario deve esistere in
PATH.Almeno un binario deve esistere in
PATH.Ogni variabile di ambiente deve esistere nel processo o essere fornita tramite configurazione.
Ogni percorso di
openclaw.json deve essere truthy.Nome della variabile di ambiente associata a
skills.entries.<name>.apiKey.Specifiche di installazione facoltative usate dall’interfaccia Skills di macOS (brew / node / go / uv / download).
I blocchi legacy
metadata.clawdbot sono ancora accettati quando
metadata.openclaw è assente, quindi le skill installate più vecchie mantengono
i propri controlli sulle dipendenze e i suggerimenti di installazione. Le nuove skill dovrebbero usare
metadata.openclaw.Specifiche di installazione
Le specifiche di installazione indicano all’interfaccia Skills di macOS come installare una dipendenza:Regole di selezione dell'installer
Regole di selezione dell'installer
- Quando sono elencati più installer, il Gateway sceglie una opzione preferita (brew quando disponibile, altrimenti node).
- Se tutti gli installer sono
download, OpenClaw elenca ogni voce così puoi vedere tutti gli artefatti disponibili. - Le specifiche possono includere
os: ["darwin"|"linux"|"win32"]per filtrare per piattaforma. - Le installazioni Node rispettano
skills.install.nodeManagerinopenclaw.json(predefinito: npm; opzioni: npm / pnpm / yarn / bun). Questo influisce solo sulle installazioni delle skill; il runtime Gateway dovrebbe rimanere Node. - Preferenza degli installer del Gateway: Homebrew → uv → gestore node configurato → go → download.
Dettagli per installer
Dettagli per installer
- Homebrew: OpenClaw non installa automaticamente Homebrew né traduce le
formule brew in comandi dei pacchetti di sistema. Nei container Linux senza
brew, gli installer solo brew sono nascosti; usa un’immagine personalizzata o installa manualmente la dipendenza. - Go: OpenClaw richiede Go 1.21 o versione successiva per le installazioni automatiche delle skill e
conserva le impostazioni esistenti di
GOBIN,GOPATHeGOTOOLCHAIN. Se la toolchain configurata non può soddisfare la versione di Go richiesta da un modulo, l’onboarding raggruppa la skill con i prerequisiti Go manuali dopo il tentativo di installazione. Segomanca e Homebrew è disponibile, OpenClaw installa prima Go tramite Homebrew e impostaGOBINsulbindi Homebrew. Su Linux, OpenClaw può invece usareapt-getcome root o tramitesudosenza password quando il candidatogolang-goaggiornato soddisfa la versione minima. - Download:
url(obbligatorio),archive(tar.gz|tar.bz2|zip),extract(predefinito: automatico quando viene rilevato un archivio),stripComponents,targetDir(predefinito:~/.openclaw/tools/<skillKey>).
Note sul sandboxing
Note sul sandboxing
requires.bins viene controllato sull’host al momento del caricamento della skill. Se un agente
viene eseguito in una sandbox, il binario deve esistere anche dentro il container.
Installalo tramite agents.defaults.sandbox.docker.setupCommand o un’immagine
personalizzata. setupCommand viene eseguito una volta dopo la creazione del container e richiede
uscita di rete, un file system root scrivibile e un utente root nella sandbox.Override di configurazione
Abilita/disabilita e configura skill in bundle o gestite sottoskills.entries in
~/.openclaw/openclaw.json:
false disabilita la skill anche quando è in bundle o installata. La skill in bundle
coding-agent è opt-in: imposta skills.entries.coding-agent.enabled: true
e assicurati che uno tra claude, codex, opencode o un’altra CLI supportata
sia installata e autenticata.Campo di comodo per le skill che dichiarano
metadata.openclaw.primaryEnv.
Supporta una stringa in chiaro o un oggetto SecretRef.Variabili di ambiente iniettate per l’esecuzione dell’agente. Vengono iniettate solo quando la
variabile non è già impostata nel processo.
Contenitore facoltativo per campi di configurazione personalizzati per singola skill.
Allowlist facoltativa solo per le skill in bundle. Quando impostata, solo le skill in bundle
nell’elenco sono idonee. Le skill gestite e dell’area di lavoro non sono interessate.
Le chiavi di configurazione corrispondono al nome della skill per impostazione predefinita. Se una skill definisce
metadata.openclaw.skillKey, usa quella chiave sotto skills.entries. Metti tra virgolette
i nomi con trattini: JSON5 consente chiavi tra virgolette.Iniezione dell’ambiente
Quando parte un’esecuzione dell’agente, OpenClaw:Legge i metadati delle skill
OpenClaw risolve l’elenco effettivo delle skill per l’agente, applicando le regole di
controllo di idoneità, le allowlist e gli override di configurazione.
Inietta env e chiavi API
skills.entries.<key>.env e skills.entries.<key>.apiKey vengono applicati a
process.env per la durata dell’esecuzione.Costruisce il prompt di sistema
Le skill idonee vengono compilate in un blocco XML compatto e iniettate nel
prompt di sistema.
claude-cli in bundle, OpenClaw materializza anche lo stesso
snapshot delle skill idonee come Plugin temporaneo di Claude Code e lo passa tramite
--plugin-dir. Gli altri backend CLI usano solo il catalogo del prompt.
Snapshot e aggiornamento
OpenClaw crea snapshot delle skill idonee quando inizia una sessione e riusa tale elenco per tutti i turni successivi nella sessione. Le modifiche alle skill o alla configurazione hanno effetto alla successiva nuova sessione. Le Skills si aggiornano a metà sessione in due casi:- Il watcher delle skill rileva una modifica a
SKILL.md. - Si connette un nuovo nodo remoto idoneo.
Watcher delle skill
Watcher delle skill
Per impostazione predefinita, OpenClaw osserva le cartelle delle skill e incrementa lo snapshot quando
i file Usa
SKILL.md cambiano. Configura sotto skills.load:allowSymlinkTargets per layout con collegamenti simbolici intenzionali in cui un collegamento simbolico
alla radice di una skill punta fuori dalla radice configurata, per esempio
<workspace>/skills/manager -> ~/Projects/manager/skills.
Abilita skills.workshop.allowSymlinkTargetWrites solo quando Skill Workshop
deve applicare proposte anche tramite quei percorsi con collegamenti simbolici attendibili.Nodi macOS remoti (Gateway Linux)
Nodi macOS remoti (Gateway Linux)
Se il Gateway viene eseguito su Linux ma è connesso un nodo macOS con
system.run consentito, OpenClaw può trattare le skill solo macOS come idonee quando
i binari richiesti sono presenti su quel nodo. L’agente dovrebbe eseguire quelle
skill tramite lo strumento exec con host=node.I nodi offline non rendono visibili le skill solo remote. Se un nodo smette
di rispondere alle sonde dei binari, OpenClaw cancella le corrispondenze binarie memorizzate nella cache.Impatto sui token
Quando le skill sono idonee, OpenClaw inietta un blocco XML compatto nel prompt di sistema. Il costo è deterministico:- Overhead di base (solo quando ≥ 1 skill): ~195 caratteri
- Per skill: ~97 caratteri + le lunghezze dei campi
name,descriptionelocation - L’escaping XML espande
& < > " 'in entità, aggiungendo alcuni caratteri per occorrenza - A ~4 caratteri/token, 97 caratteri ≈ 24 token per skill prima delle lunghezze dei campi
Correlati
Creare skill
Guida passo passo per creare una skill personalizzata.
Skill Workshop
Coda di proposte per skill redatte dall’agente.
Configurazione Skills
Schema di configurazione completo
skills.* e allowlist degli agenti.Comandi slash
Come vengono registrati e instradati i comandi slash delle skill.
ClawHub
Sfoglia e pubblica skill nel registro pubblico.
Plugin
I Plugin possono distribuire skill insieme agli strumenti che documentano.