Files
X-Agents/core/agents/config.py
DESKTOP-72TV0V4\caoxiaozhu 249e7e577a feat: 新增 core/agents 模块和 nanobot
- 新增 agents 模块,包含 agent、api、skills 等子模块
- 新增 nanobot 项目,支持多渠道集成
- 添加启动脚本 start-all.bat 和 start-all.sh

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 21:29:12 +08:00

57 lines
1.9 KiB
Python

"""Configuration for X-Agents."""
import os
from pathlib import Path
from typing import Any
# 尝试加载 .env 文件
try:
from dotenv import load_dotenv
# 查找 .env 文件:从当前目录向上查找
env_paths = [
Path(__file__).parent.parent.parent / ".env", # X-Agents/.env
Path(__file__).parent.parent / ".env", # core/.env
Path(__file__).parent / ".env", # agents/.env
]
for env_path in env_paths:
if env_path.exists():
load_dotenv(env_path)
break
except ImportError:
pass # python-dotenv 未安装时跳过
class Config:
"""X-Agents configuration."""
# API settings
API_HOST: str = os.getenv("PYTHON_HOST", os.getenv("API_HOST", "0.0.0.0"))
API_PORT: int = int(os.getenv("PYTHON_PORT", os.getenv("API_PORT", "8001")))
# LLM settings
LLM_PROVIDER: str = os.getenv("PYTHON_LLM_PROVIDER", os.getenv("LLM_PROVIDER", "openai"))
LLM_MODEL: str = os.getenv("PYTHON_LLM_MODEL", os.getenv("LLM_MODEL", "gpt-4o"))
LLM_API_KEY: str = os.getenv("PYTHON_LLM_API_KEY", os.getenv("LLM_API_KEY", ""))
LLM_BASE_URL: str | None = os.getenv("PYTHON_LLM_BASE_URL", os.getenv("LLM_BASE_URL", None))
# Workspace
WORKSPACE: Path = Path(os.getenv("PYTHON_WORKSPACE", os.getenv("WORKSPACE", "./workspace")))
# Agent settings
MAX_ITERATIONS: int = int(os.getenv("PYTHON_MAX_ITERATIONS", os.getenv("MAX_ITERATIONS", "10")))
TEMPERATURE: float = float(os.getenv("PYTHON_TEMPERATURE", os.getenv("TEMPERATURE", "0.7")))
def __init__(self, **kwargs: Any):
"""Initialize config with overrides.
Args:
**kwargs: Configuration overrides
"""
for key, value in kwargs.items():
if hasattr(self, key):
setattr(self, key, value)
# Default config instance
config = Config()