# =====================================================
# OpenAkita - 完整依赖列表
# Python 版本要求: >= 3.11
# 生成时间: 2026-01-31
# =====================================================

# === 核心 LLM 依赖 ===
anthropic>=0.40.0          # Claude API 官方客户端
openai>=1.0.0              # OpenAI 兼容 API (备用端点支持)

# === MCP (Model Context Protocol) ===
mcp>=1.0.0                 # MCP 协议支持

# === CLI 和用户界面 ===
rich>=13.7.0               # 终端富文本输出
prompt-toolkit>=3.0.43     # 交互式命令行
typer>=0.12.0              # CLI 框架

# === 异步和 HTTP ===
httpx>=0.27.0              # 异步 HTTP 客户端
aiofiles>=24.1.0           # 异步文件操作

# === 数据库 ===
aiosqlite>=0.20.0          # 异步 SQLite

# === 数据验证 ===
pydantic>=2.5.0            # 数据模型验证
pydantic-settings>=2.1.0   # 配置管理

# === Git 操作 ===
gitpython>=3.1.40          # Git 操作库

# === 浏览器自动化 ===
playwright>=1.40.0         # 浏览器自动化

# === 配置文件 ===
pyyaml>=6.0.1              # YAML 解析
python-dotenv>=1.0.0       # 环境变量加载

# === 工具库 ===
tenacity>=8.2.3            # 重试机制

# === 记忆系统 - 向量搜索 ===
sentence-transformers>=2.2.0  # 本地 embedding 模型
chromadb>=0.4.0               # 向量数据库

# === 多 Agent 协同 ===
pyzmq>=25.0.0                 # ZeroMQ 进程间通信

# =====================================================
# 可选依赖 - IM 通道
# 根据需要取消注释
# =====================================================

# Telegram 机器人
python-telegram-bot>=21.0  # Telegram Bot API

# 飞书 (使用 httpx，无需额外依赖)
# 企业微信 (使用 httpx，无需额外依赖)
# 钉钉 (使用 httpx，无需额外依赖)

# QQ (OneBot)
# websockets>=12.0         # OneBot WebSocket 支持 (如果使用 QQ)

# =====================================================
# 开发依赖 (可选)
# =====================================================

# 测试
# pytest>=8.0.0
# pytest-asyncio>=0.23.0
# pytest-cov>=4.1.0

# 代码质量
# ruff>=0.1.9
# mypy>=1.8.0
