"""
Reson Agent - 模块化、可扩展的 Agent 框架

核心导出：
- AgentRunner: Agent 执行引擎
- RunConfig: 运行配置
- Trace, Message, Goal: 执行追踪
- Skill: 技能模型
- tool: 工具装饰器
- TraceStore: 存储接口
"""

# 核心引擎
from agent.core.runner import AgentRunner, CallResult, RunConfig
from agent.core.presets import AgentPreset, AGENT_PRESETS, get_preset

# 执行追踪
from agent.trace.models import Trace, Message, Step, StepType, StepStatus, ChatMessage, Messages, MessageContent
from agent.trace.goal_models import Goal, GoalTree, GoalStatus
from agent.trace.protocols import TraceStore
from agent.trace.store import FileSystemTraceStore

# 技能系统
from agent.skill.models import Skill

# 工具系统
from agent.tools import tool, ToolRegistry, get_tool_registry
from agent.tools.models import ToolResult, ToolContext

__version__ = "0.3.0"

__all__ = [
    # Core
    "AgentRunner",
    "CallResult",
    "RunConfig",
    "AgentPreset",
    "AGENT_PRESETS",
    "get_preset",
    # Trace
    "Trace",
    "Message",
    "ChatMessage",
    "Messages",
    "MessageContent",
    "Step",
    "StepType",
    "StepStatus",
    "Goal",
    "GoalTree",
    "GoalStatus",
    "TraceStore",
    "FileSystemTraceStore",
    # Skill
    "Skill",
    # Tools
    "tool",
    "ToolRegistry",
    "get_tool_registry",
    "ToolResult",
    "ToolContext",
]
