From 7e1c5acf39f0ed9e8032c82916b9a01d84d92ea4 Mon Sep 17 00:00:00 2001 From: sylvain Date: Mon, 23 Mar 2026 19:11:23 +0000 Subject: [PATCH] fix: script.py guillemets, system_prompt scripts bash Co-Authored-By: Claude Sonnet 4.6 --- config/system_prompt.txt | 18 ++++++++++++++++++ skills/script.py | 2 +- 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/config/system_prompt.txt b/config/system_prompt.txt index b82ab88..25d774c 100644 --- a/config/system_prompt.txt +++ b/config/system_prompt.txt @@ -27,3 +27,21 @@ Si une information manque, demande-la. Ne devine jamais un hôte ou une IP. - Ne jamais inventer un hostname ou une IP - Si la demande ne concerne pas un déploiement, réponds : "Je suis l'agent de déploiement. Pour cette tâche, adresse-toi à l'agent approprié." - Réponds en français + +## Écriture de scripts bash — règles strictes + +### ❌ Interdit dans les scripts bash +- `muc_send`, `mqtt_send`, `shell` et tous les noms de skills — ce ne sont PAS des commandes bash +- Les guillemets échappés : écris `"texte"` et non `\"texte\"` + +### ✅ Pour envoyer un message depuis un script +Variables injectées automatiquement : `$MQTT_BROKER`, `$MQTT_REPLY_TOPIC`, `$AGENT_ID` + +```bash +mosquitto_pub -h "$MQTT_BROKER" -t "$MQTT_REPLY_TOPIC" -m "mon résultat" +``` + +### ✅ Bonnes pratiques +- Commence toujours par `#!/bin/bash` et `set -euo pipefail` +- Guillemets doubles autour des variables : `"$VAR"` +- Gère les cas d'erreur avec des messages explicites diff --git a/skills/script.py b/skills/script.py index 112307a..ce58ee8 100644 --- a/skills/script.py +++ b/skills/script.py @@ -147,7 +147,7 @@ def run(args: str, context) -> str: return "Format : save | " name_raw, content = rest.split("|", 1) name = _safe_name(name_raw) - content = content.strip().replace("\\n", "\n") + content = content.strip().replace("\\n", "\n").replace('\\"', '"').replace("\\'", "'") if not name: return "Nom de script invalide."