# ====================================================================
# AutoAI - AI Role, Context & Task Management Requirements
# ====================================================================
# Hệ thống cốt lõi sử dụng hầu hết các thư viện chuẩn tích hợp sẵn của Python
# (Standard Libraries: os, sys, re, tkinter, json, pathlib, datetime, v.v...)
# Cần cài đặt thêm thư viện mở rộng dưới đây để hỗ trợ xử lý đa phương tiện.
# ====================================================================

# --- Thư viện mở rộng (External Libraries) ---
# Hỗ trợ chụp màn hình từ Clipboard, xử lý ảnh thu nhỏ (Thumbnail) và kết xuất lên ô chat
Pillow>=10.0.0
# HTTP client used by LIB/api_client/base_client.py
httpx>=0.27.0
# Vector database client used by LIB/AIPlanManager.py (plan storage & semantic search)
qdrant-client>=1.12.0
# Headless browser (Playwright/Chromium) for AITools/Browser.py — cài 1 lần: python -m playwright install chromium
playwright>=1.40.0
# Desktop automation for AITools/GUITool.py (chụp màn hình, liệt kê/click/điều khiển cửa sổ)
pyautogui>=0.9.54
# Liệt kê & kích hoạt cửa sổ desktop cho AITools/GUITool.py
pygetwindow>=0.0.9
# System tray icon (Windows) cho TrayApp.py — launcher độc lập, auto-start Service API ẩn (icon sinh bằng Pillow, đã có ở trên)
pystray>=0.19.5

# --- Service API backend (P2 — design doc 02 §2.1) ---
# Web framework async-native: REST + WebSocket chung 1 event loop; Pydantic = schema contract
fastapi>=0.110.0
# ASGI server chứa sẵn thư viện `websockets` (WebSocket /ws)
uvicorn[standard]>=0.29.0
# Upload file (chat đính kèm) — multipart/form-data cho POST /files/upload
python-multipart>=0.0.9
# WS client sync (phía Tkinter P4 — chạy trong thread nền của Tk)
websocket-client>=1.7.0

# --- Cấu hình phiên bản Python khuyến nghị ---
# Khuyến nghị sử dụng Python 3.10 trở lên để đảm bảo tính ổn định của tkinter, ImageGrab và pathlib.
# python_version >= "3.10"

# --- Hướng dẫn thiết lập môi trường (Dành cho nhà phát triển) ---
# Bước 1: Tạo môi trường ảo sạch (Tùy chọn)
#         python -m venv venv
# Bước 2: Kích hoạt môi trường ảo
#         - Windows: .\venv\Scripts\activate
#         - Linux/macOS: source venv/bin/activate
# Bước 3: Kiểm tra và cài đặt thư viện hỗ trợ xử lý hình ảnh preview
#         python -m pip install -r requirements.txt
# Bước 4: Khởi chạy trực tiếp các công cụ quản lý GUI từ thư mục gốc
#         - Chạy bảng điều khiển Chat với AI Agent & Tự động điều phối Task (MỚI NHẤT):
#           python AutoAI.py
#         - Chạy giao diện quản lý cấu hình danh sách và hạn mức nhóm API AI Agents (MỚI):
#           python AIAgentManageGUI.py
#         - Chạy giao diện quản lý Vai trò hệ thống:
#           python AIToolManageGUI.py
#         - Chạy giao diện quản lý Tác vụ cũ:
#           python TaskManageGUI.py
#         - Chạy giao diện kiểm thử ngữ cảnh đầu vào (Context):
#           python ContextManageGUI.py
# Bước 5: (P2) Chạy backend Service API (REST + WebSocket):
#         python -m service.main     # dev key tự sinh, in 1 lần + ghi service/dev_key.txt
