diff --git a/install.sh b/install.sh index 37a3cec..eb302b1 100755 --- a/install.sh +++ b/install.sh @@ -170,19 +170,19 @@ detect_agents() { select_agents() { header "Pour quel(s) agent(s) installer ?" - local agent_input="" + local -a agent_lines=() for agent in "claude-code" "gemini-cli" "codex" "hermes"; do local detected=0 for a in "${DETECTED_AGENTS[@]}"; do [[ "$a" == "$agent" ]] && detected=1; done if [[ $detected -eq 1 ]]; then - agent_input+="${agent}\t${GRV_GREEN}✓ détecté ${RESET}${GRV_FG}${agent}${RESET}\n" + agent_lines+=("${agent}"$'\t'"${GRV_GREEN}✓ détecté ${RESET}${GRV_FG}${agent}${RESET}") else - agent_input+="${agent}\t${GRV_GRAY}○ non installé ${agent}${RESET}\n" + agent_lines+=("${agent}"$'\t'"${GRV_GRAY}○ non installé ${agent}${RESET}") fi done local raw_selected - raw_selected=$(printf "$agent_input" | fzf \ + raw_selected=$(printf '%s\n' "${agent_lines[@]}" | fzf \ --multi \ --ansi \ --delimiter='\t' \