Skill Workshop è sperimentale. È disabilitato per impostazione predefinita, le sue euristiche di acquisizione e i prompt del revisore possono cambiare tra una release e l’altra, e le scritture automatiche dovrebbero essere usate solo in workspace attendibili dopo aver esaminato prima l’output in modalità pending. Skill Workshop è memoria procedurale per le Skills del workspace. Consente a un agente di trasformare workflow riutilizzabili, correzioni dell’utente, fix ottenuti con fatica e insidie ricorrenti in fileDocumentation Index
Fetch the complete documentation index at: https://docs2.openclaw.ai/llms.txt
Use this file to discover all available pages before exploring further.
SKILL.md sotto:
- Memoria archivia fatti, preferenze, entità e contesto passato.
- Skills archivia procedure riutilizzabili che l’agente dovrebbe seguire nelle attività future.
- Skill Workshop è il ponte tra un turno utile e una Skill durevole del workspace, con controlli di sicurezza e approvazione opzionale.
- come validare asset GIF animati provenienti da fonti esterne
- come sostituire asset di screenshot e verificare le dimensioni
- come eseguire uno scenario QA specifico del repository
- come eseguire il debug di un errore ricorrente di un provider
- come riparare una nota di workflow locale obsoleta
- fatti come “all’utente piace il blu”
- memoria autobiografica ampia
- archiviazione grezza delle trascrizioni
- segreti, credenziali o testo di prompt nascosto
- istruzioni una tantum che non si ripeteranno
Stato predefinito
Il plugin incluso è sperimentale e disabilitato per impostazione predefinita a meno che non venga abilitato esplicitamente inplugins.entries.skill-workshop.
Il manifest del plugin non imposta enabledByDefault: true. Il valore predefinito enabled: true all’interno dello schema di configurazione del plugin si applica solo dopo che la voce del plugin è già stata selezionata e caricata.
Sperimentale significa:
- il plugin è supportato a sufficienza per test opt-in e dogfooding
- l’archiviazione delle proposte, le soglie del revisore e le euristiche di acquisizione possono evolvere
- l’approvazione pending è la modalità iniziale consigliata
- l’applicazione automatica è destinata a configurazioni personali/workspace attendibili, non ad ambienti condivisi o ostili con molti input
Abilitare
Configurazione minima sicura:- lo strumento
skill_workshopè disponibile - le correzioni riutilizzabili esplicite vengono accodate come proposte pending
- i passaggi del revisore basati su soglie possono proporre aggiornamenti delle Skills
- nessun file Skill viene scritto finché una proposta pending non viene applicata
approvalPolicy: "auto" usa comunque lo stesso scanner e lo stesso percorso di quarantena. Non applica proposte con rilievi critici.
Configurazione
| Chiave | Predefinito | Intervallo / valori | Significato |
|---|---|---|---|
enabled | true | boolean | Abilita il plugin dopo il caricamento della voce del plugin. |
autoCapture | true | boolean | Abilita acquisizione/revisione post-turno sui turni agente riusciti. |
approvalPolicy | "pending" | "pending", "auto" | Accoda le proposte o scrive automaticamente le proposte sicure. |
reviewMode | "hybrid" | "off", "heuristic", "llm", "hybrid" | Sceglie acquisizione di correzioni esplicite, revisore LLM, entrambi o nessuno. |
reviewInterval | 15 | 1..200 | Esegue il revisore dopo questo numero di turni riusciti. |
reviewMinToolCalls | 8 | 1..500 | Esegue il revisore dopo questo numero di chiamate a strumenti osservate. |
reviewTimeoutMs | 45000 | 5000..180000 | Timeout per l’esecuzione del revisore incorporato. |
maxPending | 50 | 1..200 | Numero massimo di proposte pending/in quarantena conservate per workspace. |
maxSkillBytes | 40000 | 1024..200000 | Dimensione massima dei file Skill/supporto generati. |
Percorsi di acquisizione
Skill Workshop ha tre percorsi di acquisizione.Suggerimenti degli strumenti
Il modello può chiamare direttamenteskill_workshop quando vede una procedura riutilizzabile o quando l’utente gli chiede di salvare/aggiornare una Skill.
Questo è il percorso più esplicito e funziona anche con autoCapture: false.
Acquisizione euristica
QuandoautoCapture è abilitato e reviewMode è heuristic o hybrid, il plugin scansiona i turni riusciti alla ricerca di frasi esplicite di correzione dell’utente:
next timefrom now onremember tomake sure toalways ... use/check/verify/record/save/preferprefer ... when/for/instead/usewhen asked
- attività con GIF animate ->
animated-gif-workflow - attività con screenshot o asset ->
screenshot-asset-workflow - attività QA o di scenario ->
qa-scenario-workflow - attività PR GitHub ->
github-pr-workflow - fallback ->
learned-workflows
Revisore LLM
QuandoautoCapture è abilitato e reviewMode è llm o hybrid, il plugin esegue un revisore incorporato compatto dopo il raggiungimento delle soglie.
Il revisore riceve:
- il testo della trascrizione recente, limitato agli ultimi 12.000 caratteri
- fino a 12 Skills del workspace esistenti
- fino a 2.000 caratteri da ciascuna Skill esistente
- istruzioni solo JSON
disableTools: truetoolsAllow: []disableMessageTool: true
{ "action": "none" } oppure una proposta. Il campo action è create, append o replace - preferisci append/replace quando esiste già una Skill pertinente; usa create solo quando nessuna Skill esistente è adatta.
Esempio create:
append aggiunge section + body. replace sostituisce oldText con newText nella Skill indicata.
Ciclo di vita delle proposte
Ogni aggiornamento generato diventa una proposta con:idcreatedAtupdatedAtworkspaceDiragentIdopzionalesessionIdopzionaleskillNametitlereasonsource:tool,agent_endoreviewerstatuschangescanFindingsopzionalequarantineReasonopzionale
pending- in attesa di approvazioneapplied- scritto in<workspace>/skillsrejected- rifiutato dall’operatore/modelloquarantined- bloccato da rilievi critici dello scanner
maxPending.
Riferimento dello strumento
Il Plugin registra uno strumento agente:status
Conta le proposte per stato per l’area di lavoro attiva.
list_pending
Elenca le proposte in sospeso.
status validi:
pendingappliedrejectedquarantined
list_quarantine
Elenca le proposte in quarantena.
skill-workshop: quarantined <skill>.
inspect
Recupera una proposta per id.
suggest
Crea una proposta. Con approvalPolicy: "pending" (predefinito), questa viene messa in coda invece di essere scritta.
Richiedi scrittura immediata in modalità automatica (apply: true)
Richiedi scrittura immediata in modalità automatica (apply: true)
approvalPolicy: "pending", apply: true mette comunque in coda la proposta. Esaminala, poi usa
l’azione apply dopo l’approvazione.Forza in sospeso con criterio automatico (apply: false)
Forza in sospeso con criterio automatico (apply: false)
Aggiungi a una sezione denominata
Aggiungi a una sezione denominata
Sostituisci testo esatto
Sostituisci testo esatto
apply
Applica una proposta in sospeso.
Con approvalPolicy: "pending", questa azione chiede l’approvazione dell’operatore prima di scrivere la
skill dell’area di lavoro.
apply rifiuta le proposte in quarantena:
reject
Contrassegna una proposta come rifiutata.
write_support_file
Scrive un file di supporto all’interno di una directory di skill esistente o proposta.
Directory di supporto di primo livello consentite:
references/templates/scripts/assets/
maxSkillBytes, scansionati e scritti atomicamente.
Scritture Skill
Skill Workshop scrive solo sotto:- convertiti in minuscolo
- le sequenze non
[a-z0-9_-]diventano- - i caratteri non alfanumerici iniziali/finali vengono rimossi
- la lunghezza massima è 80 caratteri
- il nome finale deve corrispondere a
[a-z0-9][a-z0-9_-]{1,79}
create:
- se la skill non esiste, Skill Workshop scrive un nuovo
SKILL.md - se esiste già, Skill Workshop aggiunge il corpo a
## Workflow
append:
- se la skill esiste, Skill Workshop aggiunge alla sezione richiesta
- se non esiste, Skill Workshop crea una skill minima e poi aggiunge
replace:
- la skill deve esistere già
oldTextdeve essere presente esattamente- viene sostituita solo la prima corrispondenza esatta
Modello di sicurezza
Skill Workshop ha uno scanner di sicurezza sul contenuto generato diSKILL.md e sui file di supporto.
I risultati critici mettono le proposte in quarantena:
| ID regola | Blocca contenuto che… |
|---|---|
prompt-injection-ignore-instructions | dice all’agente di ignorare istruzioni precedenti/superiori |
prompt-injection-system | fa riferimento a prompt di sistema, messaggi developer o istruzioni nascoste |
prompt-injection-tool | incoraggia ad aggirare permessi/approvazioni degli strumenti |
shell-pipe-to-shell | include curl/wget convogliati in sh, bash o zsh |
secret-exfiltration | sembra inviare dati env/process env sulla rete |
| ID regola | Avvisa su… |
|---|---|
destructive-delete | comandi ampi in stile rm -rf |
unsafe-permissions | uso di permessi in stile chmod 777 |
- conservano
scanFindings - conservano
quarantineReason - compaiono in
list_quarantine - non possono essere applicate tramite
apply
Guida ai prompt
Quando abilitato, Skill Workshop inserisce una breve sezione di prompt che dice all’agente di usareskill_workshop per la memoria procedurale durevole.
La guida enfatizza:
- procedure, non fatti/preferenze
- correzioni dell’utente
- procedure riuscite non ovvie
- insidie ricorrenti
- riparazione di skill obsolete/sottili/errate tramite append/replace
- salvataggio di procedure riutilizzabili dopo lunghi cicli di strumenti o correzioni difficili
- testo skill breve e imperativo
- nessun dump di trascrizioni
approvalPolicy:
- modalità pending: accoda suggerimenti; usa
applydopo approvazione esplicita - modalità auto: applica aggiornamenti sicuri delle skill del workspace, a meno che
apply: falsenon li accodi invece
Costi e comportamento runtime
L’acquisizione euristica non chiama un modello. La revisione LLM usa un’esecuzione incorporata sul modello dell’agente attivo/predefinito. È basata su soglie, quindi per impostazione predefinita non viene eseguita a ogni turno. Il revisore:- usa lo stesso contesto provider/modello configurato quando disponibile
- ripiega sui valori predefiniti dell’agente runtime
- ha
reviewTimeoutMs - usa un contesto bootstrap leggero
- non ha strumenti
- non scrive nulla direttamente
- può solo emettere una proposta che passa attraverso il normale scanner e il percorso di approvazione/quarantena
Schemi operativi
Usa Skill Workshop quando l’utente dice:- “next time, do X”
- “from now on, prefer Y”
- “make sure to verify Z”
- “save this as a workflow”
- “this took a while; remember the process”
- “update the local skill for this”
- ha forma di trascrizione
- non è imperativa
- include dettagli rumorosi e una tantum
- non dice al prossimo agente cosa fare
Debug
Controlla se il plugin è caricato:| Sintomo | Causa probabile | Controllo |
|---|---|---|
| Lo strumento non è disponibile | La voce Plugin non è abilitata | plugins.entries.skill-workshop.enabled e openclaw plugins list |
| Non compare alcuna proposta automatica | autoCapture: false, reviewMode: "off" o soglie non soddisfatte | Configurazione, stato proposte, log del Gateway |
| L’euristica non ha acquisito | La formulazione dell’utente non corrispondeva ai pattern di correzione | Usa esplicitamente skill_workshop.suggest o abilita il revisore LLM |
| Il revisore non ha creato una proposta | Il revisore ha restituito none, JSON non valido o è andato in timeout | Log del Gateway, reviewTimeoutMs, soglie |
| La proposta non viene applicata | approvalPolicy: "pending" | list_pending, poi apply |
| La proposta è sparita dai pending | Proposta duplicata riutilizzata, potatura max pending, oppure applicata/rifiutata/messa in quarantena | status, list_pending con filtri di stato, list_quarantine |
| Il file skill esiste ma il modello lo manca | Lo snapshot della skill non è aggiornato o il gating della skill la esclude | stato openclaw skills e idoneità delle skill del workspace |
skill-workshop: queued <skill>skill-workshop: applied <skill>skill-workshop: quarantined <skill>skill-workshop: heuristic capture skipped: ...skill-workshop: reviewer skipped: ...skill-workshop: reviewer found no update
Scenari QA
Scenari QA basati sul repo:qa/scenarios/plugins/skill-workshop-animated-gif-autocreate.mdqa/scenarios/plugins/skill-workshop-pending-approval.mdqa/scenarios/plugins/skill-workshop-reviewer-autonomous.md
reviewMode: "llm" ed esercita il passaggio del revisore incorporato.
Quando non abilitare l’applicazione automatica
EvitaapprovalPolicy: "auto" quando:
- il workspace contiene procedure sensibili
- l’agente sta lavorando su input non attendibile
- le skills sono condivise in un team ampio
- stai ancora regolando prompt o regole dello scanner
- il modello gestisce spesso contenuti web/email ostili