#!/bin/bash # ================= MOMO 系統 - 快速 Code Review 腳本 ================= # 功能:快速觸發 Aider Code Review # 使用方法:./quick_review.sh [檔案名稱...] # 範例:./quick_review.sh app.py routes/sales_routes.py # ======================================================================= # 顏色定義 RED='\033[0;31m' GREEN='\033[0;32m' YELLOW='\033[1;33m' BLUE='\033[0;34m' NC='\033[0m' # No Color # 獲取專案根目錄 PROJECT_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" CODE_REVIEW_SCRIPT="$PROJECT_ROOT/scripts/code_review.py" # 顯示標題 echo -e "${BLUE}========================================${NC}" echo -e "${BLUE}🔍 MOMO 系統 - Aider Code Review${NC}" echo -e "${BLUE}========================================${NC}" # 檢查Code Review腳本是否存在 if [ ! -f "$CODE_REVIEW_SCRIPT" ]; then echo -e "${RED}❌ Code Review腳本不存在: $CODE_REVIEW_SCRIPT${NC}" exit 1 fi # 檢查Python環境 if ! command -v python3 &> /dev/null; then echo -e "${RED}❌ Python3未安裝${NC}" exit 1 fi # 檢查Aider if ! command -v aider &> /dev/null; then echo -e "${RED}❌ Aider未安裝或不在PATH中${NC}" exit 1 fi # 顯示選單 if [ $# -eq 0 ]; then echo -e "${YELLOW}請選擇操作:${NC}" echo "1) 自動Review暫存檔案 (Git staged)" echo "2) Review所有變更檔案" echo "3) 指定檔案Review" echo "4) 安全檢查 (Security Review)" echo "5) 效能檢查 (Performance Review)" echo "" read -p "請輸入選項 (1-5): " choice case $choice in 1) echo -e "${GREEN}🚀 開始自動Review暫存檔案...${NC}" python3 "$CODE_REVIEW_SCRIPT" --auto --type basic ;; 2) echo -e "${GREEN}🚀 開始Review所有變更檔案...${NC}" python3 "$CODE_REVIEW_SCRIPT" --type basic ;; 3) echo -e "${YELLOW}請輸入要Review的檔案路徑 (用空格分隔):${NC}" read -r files_input if [ -n "$files_input" ]; then echo -e "${GREEN}🚀 開始Review指定檔案...${NC}" python3 "$CODE_REVIEW_SCRIPT" --files $files_input --type basic else echo -e "${RED}❌ 未指定檔案${NC}" exit 1 fi ;; 4) echo -e "${GREEN}🛡️ 開始安全檢查...${NC}" python3 "$CODE_REVIEW_SCRIPT" --auto --type security ;; 5) echo -e "${GREEN}⚡ 開始效能檢查...${NC}" python3 "$CODE_REVIEW_SCRIPT" --auto --type performance ;; *) echo -e "${RED}❌ 無效選項${NC}" exit 1 ;; esac else # 有指定檔案,直接Review echo -e "${GREEN}🚀 開始Review指定檔案...${NC}" echo -e "${BLUE}檔案:$@${NC}" python3 "$CODE_REVIEW_SCRIPT" --files "$@" --type basic fi # 檢查執行結果 if [ $? -eq 0 ]; then echo -e "${GREEN}✅ Code Review 完成!${NC}" echo -e "${BLUE}📄 Review報告位置:$PROJECT_ROOT/logs/${NC}" else echo -e "${RED}❌ Code Review 失敗!${NC}" exit 1 fi