# ============================================
# HZAgentBase 配置文件
# 复制此文件为 .env 并填入实际值
# ============================================

# --- 模型配置 ---
# 默认模型，根据名称自动匹配提供商：
#   deepseek-*         → DeepSeek
#   gpt-* / o1-* / o3-* → OpenAI
#   claude-*           → Anthropic（需 pip install langchain-anthropic）
#   gemini-*           → Google Gemini（需 pip install langchain-google-genai）
#   其他               → OpenAI 兼容（Ollama、vLLM 等本地服务）
DEFAULT_MODEL=deepseek-v4-flash

# API Key（统一配置，所有提供商共用）
MODEL_API_KEY=sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

# API Base URL（可选，通常不需要设置，各提供商有默认值）
# 仅对 OpenAI 兼容 API 生效（DeepSeek、OpenAI、Ollama 等）
# Anthropic 和 Gemini 使用各自的 SDK，不受此配置影响
# 常用值：
#   DeepSeek:  https://api.deepseek.com/v1（默认）
#   OpenAI:    https://api.openai.com/v1（默认）
#   Ollama:    http://localhost:11434/v1
#   vLLM:      http://localhost:8000/v1
# MODEL_BASE_URL=https://api.deepseek.com/v1

# --- 容错配置 ---
# LLM API 调用超时（秒，可选，默认: 600）
# MODEL_REQUEST_TIMEOUT=600
# LLM 调用失败重试次数（可选，默认: 2）
# MODEL_MAX_RETRIES=2
# Agent 最大执行步数，防止死循环（可选，默认: 25）
# RECURSION_LIMIT=25

# --- 权限配置 ---
# 权限模式: default | plan | full_auto (可选, 默认: default)
#   default   — 写操作需用户确认
#   plan      — 阻止所有写操作（只读模式）
#   full_auto — 允许所有操作（需谨慎使用）
# PERMISSION_MODE=default

# --- 记忆系统 ---
# 记忆存储路径 (可选, 默认: .memory)
# MEMORY_PATH=.memory
# 记忆缓存条目数 (可选, 默认: 100, 建议: 并发用户数)
# 缓存的是记忆目录数量，每个目录下所有记忆作为一个整体缓存
# MEMORY_CACHE_SIZE=100
# 记忆缓存过期时间 (秒, 可选, 默认: 300)
# MEMORY_CACHE_TTL=300

# --- 文件锁 ---
# 文件锁分片数 (可选, 默认: 64, 建议: 并发用户数的 0.5-1 倍)
# 分片越多锁冲突越少，但占用文件句柄也越多
# FILE_LOCK_SHARDS=64

# --- 文件审计 ---
# 审计日志路径 (可选, 默认: .audit/audit.jsonl)
# 开启方式: create_agent(filesystem=True)
# AUDIT_LOG_PATH=.audit/audit.jsonl

# --- 知识库 ---
# 知识库每次检索条数 (可选, 默认: 5)
# 需配合 retriever 参数使用: create_agent(retriever=your_retriever)
# KNOWLEDGE_TOP_K=5

# --- 日志 ---
# 日志级别: DEBUG | INFO | WARNING | ERROR (可选, 默认: INFO)
# LOG_LEVEL=INFO
