/ scripts / agents / test_all_agents_llm.sh
test_all_agents_llm.sh
 1  #!/bin/bash
 2  
 3  # Test all ECHO agents' LLM integration
 4  # Tests each agent's ability to communicate with its configured Ollama model
 5  
 6  set -e
 7  
 8  # Colors
 9  GREEN='\033[0;32m'
10  RED='\033[0;31m'
11  BLUE='\033[0;34m'
12  YELLOW='\033[1;33m'
13  NC='\033[0m'
14  
15  # Find script directory
16  SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
17  
18  # All agents
19  AGENTS=(
20      "ceo"
21      "cto"
22      "chro"
23      "operations_head"
24      "product_manager"
25      "senior_architect"
26      "uiux_engineer"
27      "senior_developer"
28      "test_lead"
29  )
30  
31  echo -e "${BLUE}╔═══════════════════════════════════════════════════════╗${NC}"
32  echo -e "${BLUE}║  ECHO Agent LLM Integration Test Suite               ║${NC}"
33  echo -e "${BLUE}╚═══════════════════════════════════════════════════════╝${NC}"
34  echo ""
35  echo "Testing all 9 agents..."
36  echo ""
37  
38  PASSED=0
39  FAILED=0
40  FAILED_AGENTS=()
41  
42  for agent in "${AGENTS[@]}"; do
43      echo -e "${BLUE}────────────────────────────────────────────────────────${NC}"
44      echo -e "Testing: ${YELLOW}$agent${NC}"
45      echo ""
46  
47      if "$SCRIPT_DIR/test_agent_llm.sh" "$agent" > /tmp/llm_test_${agent}.log 2>&1; then
48          echo -e "${GREEN}✓ $agent passed${NC}"
49          PASSED=$((PASSED + 1))
50      else
51          echo -e "${RED}✗ $agent failed${NC}"
52          FAILED=$((FAILED + 1))
53          FAILED_AGENTS+=("$agent")
54          echo "See log: /tmp/llm_test_${agent}.log"
55      fi
56      echo ""
57  done
58  
59  echo -e "${BLUE}════════════════════════════════════════════════════════${NC}"
60  echo -e "${BLUE}Results:${NC}"
61  echo -e "${GREEN}  Passed: $PASSED / ${#AGENTS[@]}${NC}"
62  echo -e "${RED}  Failed: $FAILED / ${#AGENTS[@]}${NC}"
63  
64  if [ $FAILED -gt 0 ]; then
65      echo ""
66      echo -e "${RED}Failed agents:${NC}"
67      for agent in "${FAILED_AGENTS[@]}"; do
68          echo -e "  - $agent"
69      done
70      echo ""
71      echo "Note: Large models (deepseek-coder:33b) may timeout on slower systems."
72      echo "This is normal and doesn't indicate a problem with the integration."
73      exit 1
74  else
75      echo ""
76      echo -e "${GREEN}🎉 All agents passed LLM integration tests!${NC}"
77      exit 0
78  fi