Skill Workshop est expérimental. Il est désactivé par défaut, ses heuristiques de capture et ses prompts de révision peuvent changer entre les versions, et les écritures automatiques ne doivent être utilisées que dans des espaces de travail de confiance après avoir d’abord examiné la sortie du mode en attente. Skill Workshop est une mémoire procédurale pour les Skills d’espace de travail. Il permet à un agent de transformer des workflows réutilisables, des corrections utilisateur, des correctifs durement acquis et des pièges récurrents en fichiersDocumentation 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 sous :
- Mémoire stocke des faits, des préférences, des entités et du contexte passé.
- Skills stockent des procédures réutilisables que l’agent doit suivre lors de tâches futures.
- Skill Workshop est le pont entre un échange utile et un Skill d’espace de travail durable, avec des contrôles de sécurité et une approbation facultative.
- comment valider des ressources GIF animées provenant de sources externes
- comment remplacer des ressources de capture d’écran et vérifier les dimensions
- comment exécuter un scénario QA propre au dépôt
- comment déboguer une défaillance récurrente de fournisseur
- comment réparer une note de workflow local obsolète
- des faits comme « l’utilisateur aime le bleu »
- une mémoire autobiographique générale
- l’archivage brut de transcriptions
- des secrets, des identifiants ou du texte de prompt masqué
- des instructions ponctuelles qui ne se répéteront pas
État par défaut
Le Plugin intégré est expérimental et désactivé par défaut, sauf s’il est explicitement activé dansplugins.entries.skill-workshop.
Le manifeste du Plugin ne définit pas enabledByDefault: true. La valeur par défaut enabled: true dans le schéma de configuration du Plugin ne s’applique qu’après que l’entrée du Plugin a déjà été sélectionnée et chargée.
Expérimental signifie :
- le Plugin est suffisamment pris en charge pour les tests opt-in et le dogfooding
- le stockage des propositions, les seuils de révision et les heuristiques de capture peuvent évoluer
- l’approbation en attente est le mode de départ recommandé
- l’application automatique est destinée aux configurations personnelles ou d’espace de travail de confiance, pas aux environnements partagés ou hostiles recevant beaucoup d’entrées
Activer
Configuration minimale sûre :- l’outil
skill_workshopest disponible - les corrections réutilisables explicites sont mises en file comme propositions en attente
- les passes de révision basées sur des seuils peuvent proposer des mises à jour de Skills
- aucun fichier de Skill n’est écrit tant qu’une proposition en attente n’est pas appliquée
approvalPolicy: "auto" utilise toujours le même scanner et le même chemin de quarantaine. Il n’applique pas les propositions avec des résultats critiques.
Configuration
| Clé | Valeur par défaut | Plage / valeurs | Signification |
|---|---|---|---|
enabled | true | boolean | Active le Plugin après le chargement de l’entrée du Plugin. |
autoCapture | true | boolean | Active la capture/révision après échange sur les tours d’agent réussis. |
approvalPolicy | "pending" | "pending", "auto" | Mettre les propositions en file ou écrire automatiquement les propositions sûres. |
reviewMode | "hybrid" | "off", "heuristic", "llm", "hybrid" | Choisit la capture de corrections explicites, le réviseur LLM, les deux ou aucun. |
reviewInterval | 15 | 1..200 | Exécute le réviseur après ce nombre de tours réussis. |
reviewMinToolCalls | 8 | 1..500 | Exécute le réviseur après ce nombre d’appels d’outils observés. |
reviewTimeoutMs | 45000 | 5000..180000 | Délai d’expiration pour l’exécution du réviseur intégré. |
maxPending | 50 | 1..200 | Nombre maximal de propositions en attente/en quarantaine conservées par espace de travail. |
maxSkillBytes | 40000 | 1024..200000 | Taille maximale du Skill/fichier de support généré. |
Chemins de capture
Skill Workshop dispose de trois chemins de capture.Suggestions d’outils
Le modèle peut appeler directementskill_workshop lorsqu’il voit une procédure réutilisable ou lorsque l’utilisateur lui demande d’enregistrer/mettre à jour un Skill.
C’est le chemin le plus explicite et il fonctionne même avec autoCapture: false.
Capture heuristique
LorsqueautoCapture est activé et que reviewMode vaut heuristic ou hybrid, le Plugin analyse les tours réussis à la recherche de formulations explicites de correction par l’utilisateur :
next timefrom now onremember tomake sure toalways ... use/check/verify/record/save/preferprefer ... when/for/instead/usewhen asked
- tâches de GIF animés ->
animated-gif-workflow - tâches de capture d’écran ou de ressources ->
screenshot-asset-workflow - tâches QA ou de scénario ->
qa-scenario-workflow - tâches de PR GitHub ->
github-pr-workflow - repli ->
learned-workflows
Réviseur LLM
LorsqueautoCapture est activé et que reviewMode vaut llm ou hybrid, le Plugin exécute un réviseur intégré compact une fois les seuils atteints.
Le réviseur reçoit :
- le texte récent de la transcription, limité aux 12 000 derniers caractères
- jusqu’à 12 Skills d’espace de travail existants
- jusqu’à 2 000 caractères de chaque Skill existant
- des instructions JSON uniquement
disableTools: truetoolsAllow: []disableMessageTool: true
{ "action": "none" }, soit une proposition. Le champ action est create, append ou replace - privilégiez append/replace lorsqu’un Skill pertinent existe déjà ; utilisez create uniquement lorsqu’aucun Skill existant ne convient.
Exemple create :
append ajoute section + body. replace remplace oldText par newText dans le Skill nommé.
Cycle de vie des propositions
Chaque mise à jour générée devient une proposition avec :idcreatedAtupdatedAtworkspaceDiragentIdfacultatifsessionIdfacultatifskillNametitlereasonsource:tool,agent_endoureviewerstatuschangescanFindingsfacultatifquarantineReasonfacultatif
pending- en attente d’approbationapplied- écrit dans<workspace>/skillsrejected- rejeté par l’opérateur/le modèlequarantined- bloqué par des résultats critiques du scanner
maxPending.
Référence de l’outil
Le Plugin enregistre un outil d’agent :status
Compter les propositions par état pour l’espace de travail actif.
list_pending
Lister les propositions en attente.
status valides :
pendingappliedrejectedquarantined
list_quarantine
Lister les propositions mises en quarantaine.
skill-workshop: quarantined <skill>.
inspect
Récupérer une proposition par identifiant.
suggest
Créer une proposition. Avec approvalPolicy: "pending" (par défaut), cela la met en file d’attente au lieu d’écrire.
Demander une écriture immédiate en mode automatique (apply: true)
Demander une écriture immédiate en mode automatique (apply: true)
approvalPolicy: "pending", apply: true met toujours la proposition en file d’attente. Examinez-la, puis utilisez l’action apply après approbation.Forcer l’attente avec une politique automatique (apply: false)
Forcer l’attente avec une politique automatique (apply: false)
Ajouter à une section nommée
Ajouter à une section nommée
Remplacer le texte exact
Remplacer le texte exact
apply
Appliquer une proposition en attente.
Avec approvalPolicy: "pending", cette action demande l’approbation de l’opérateur avant d’écrire le skill de l’espace de travail.
apply refuse les propositions mises en quarantaine :
reject
Marquer une proposition comme rejetée.
write_support_file
Écrire un fichier de support dans un répertoire de skill existant ou proposé.
Répertoires de support de premier niveau autorisés :
references/templates/scripts/assets/
maxSkillBytes, analysés et écrits de manière atomique.
Écritures de Skills
Skill Workshop écrit uniquement sous :- convertis en minuscules
- les séquences non
[a-z0-9_-]deviennent- - les caractères non alphanumériques de début/fin sont supprimés
- la longueur maximale est de 80 caractères
- le nom final doit correspondre à
[a-z0-9][a-z0-9_-]{1,79}
create :
- si la skill n’existe pas, Skill Workshop écrit un nouveau
SKILL.md - si elle existe déjà, Skill Workshop ajoute le corps à
## Workflow
append :
- si la skill existe, Skill Workshop ajoute à la section demandée
- si elle n’existe pas, Skill Workshop crée une skill minimale puis ajoute le contenu
replace :
- la skill doit déjà exister
oldTextdoit être présent exactement- seule la première correspondance exacte est remplacée
Modèle de sécurité
Skill Workshop dispose d’un analyseur de sécurité sur le contenuSKILL.md généré et les fichiers de support.
Les constats critiques mettent les propositions en quarantaine :
| ID de règle | Bloque le contenu qui… |
|---|---|
prompt-injection-ignore-instructions | demande à l’agent d’ignorer les instructions précédentes/supérieures |
prompt-injection-system | référence les prompts système, les messages développeur ou les instructions cachées |
prompt-injection-tool | encourage à contourner les permissions/approbations d’outils |
shell-pipe-to-shell | inclut curl/wget redirigé vers sh, bash ou zsh |
secret-exfiltration | semble envoyer des données env/process env sur le réseau |
| ID de règle | Avertit sur… |
|---|---|
destructive-delete | commandes larges de type rm -rf |
unsafe-permissions | utilisation de permissions de type chmod 777 |
- conservent
scanFindings - conservent
quarantineReason - apparaissent dans
list_quarantine - ne peuvent pas être appliquées via
apply
Conseils de prompt
Lorsqu’il est activé, Skill Workshop injecte une courte section de prompt qui indique à l’agent d’utiliserskill_workshop pour une mémoire procédurale durable.
Les conseils mettent l’accent sur :
- les procédures, pas les faits/préférences
- les corrections de l’utilisateur
- les procédures réussies non évidentes
- les pièges récurrents
- la réparation des skills obsolètes/minces/erronées via append/replace
- l’enregistrement d’une procédure réutilisable après de longues boucles d’outils ou des corrections difficiles
- un texte de skill court et impératif
- aucun vidage de transcription
approvalPolicy :
- mode pending : mettre les suggestions en file d’attente ; utiliser
applyaprès approbation explicite - mode auto : appliquer les mises à jour de skills d’espace de travail sûres, sauf si
apply: falseles met plutôt en file d’attente
Coûts et comportement d’exécution
La capture heuristique n’appelle pas de modèle. La revue LLM utilise une exécution intégrée sur le modèle d’agent actif/par défaut. Elle est basée sur des seuils, elle ne s’exécute donc pas à chaque tour par défaut. Le réviseur :- utilise le même contexte fournisseur/modèle configuré lorsqu’il est disponible
- se rabat sur les valeurs par défaut de l’agent d’exécution
- possède
reviewTimeoutMs - utilise un contexte d’amorçage léger
- n’a aucun outil
- n’écrit rien directement
- ne peut qu’émettre une proposition qui passe par le chemin normal d’analyse et d’approbation/quarantaine
Schémas d’utilisation
Utilisez Skill Workshop lorsque l’utilisateur dit :- « la prochaine fois, fais X »
- « à partir de maintenant, préfère Y »
- « assure-toi de vérifier Z »
- « enregistre ceci comme workflow »
- « cela a pris du temps ; mémorise le processus »
- « mets à jour la skill locale pour ceci »
- en forme de transcription
- non impérative
- inclut des détails ponctuels bruyants
- n’indique pas au prochain agent quoi faire
Débogage
Vérifiez si le Plugin est chargé :| Symptôme | Cause probable | Vérification |
|---|---|---|
| L’outil est indisponible | L’entrée du Plugin n’est pas activée | plugins.entries.skill-workshop.enabled et openclaw plugins list |
| Aucune proposition automatique n’apparaît | autoCapture: false, reviewMode: "off" ou seuils non atteints | Configuration, statut des propositions, journaux du Gateway |
| L’heuristique n’a pas capturé | La formulation de l’utilisateur ne correspondait pas aux schémas de correction | Utiliser explicitement skill_workshop.suggest ou activer le réviseur LLM |
| Le réviseur n’a pas créé de proposition | Le réviseur a renvoyé none, du JSON invalide ou a expiré | Journaux du Gateway, reviewTimeoutMs, seuils |
| La proposition n’est pas appliquée | approvalPolicy: "pending" | list_pending, puis apply |
| La proposition a disparu de pending | Proposition dupliquée réutilisée, élagage max pending, ou appliquée/rejetée/mise en quarantaine | status, list_pending avec filtres de statut, list_quarantine |
| Le fichier de skill existe mais le modèle l’ignore | Instantané de skill non actualisé ou gating de skill qui l’exclut | statut openclaw skills et éligibilité de la skill d’espace de travail |
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
Scénarios QA
Scénarios QA adossés au dépôt :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" et exerce la passe du réviseur intégré.
Quand ne pas activer l’application automatique
ÉvitezapprovalPolicy: "auto" lorsque :
- l’espace de travail contient des procédures sensibles
- l’agent travaille sur une entrée non fiable
- les skills sont partagées au sein d’une grande équipe
- vous ajustez encore les prompts ou les règles de l’analyseur
- le modèle traite fréquemment du contenu web/e-mail hostile