diff --git a/scripts/post-bmad-install.sh b/scripts/post-bmad-install.sh index f96528d..2307a09 100755 --- a/scripts/post-bmad-install.sh +++ b/scripts/post-bmad-install.sh @@ -67,12 +67,11 @@ patch_agent() { memory="$(build_memory "$agent")" # Remplacer memories: [] par le bloc injecté - # Compatible macOS (sed -i '') et Linux (sed -i) - if [[ "$(uname)" == "Darwin" ]]; then - sed -i '' "s|^memories: \[\]|memories:\n - \"${memory}\"|" "$file" - else - sed -i "s|^memories: \[\]|memories:\n - \"${memory}\"|" "$file" - fi + # Utilise awk pour éviter les conflits avec les caractères spéciaux (|, <, >) dans sed + awk -v mem="$memory" ' + /^memories: \[\]/ { print "memories:"; print " - \"" mem "\""; next } + { print } + ' "$file" > "${file}.tmp" && mv "${file}.tmp" "$file" echo " [ok] $agent — memory injectée" else