from enum import Enum from sqlalchemy import Column, Integer, Text, BigInteger, String, SmallInteger, Boolean, TIMESTAMP from sqlalchemy.ext.declarative import declarative_base Base = declarative_base() class AgentType(int, Enum): REACTIVE = 0 # 响应式 PLANNING = 1 # 自主规划式 class AgentConfiguration(Base): __tablename__ = "agent_configuration" id = Column(BigInteger, primary_key=True, autoincrement=True, comment="主键id") name = Column(String(64), nullable=False, comment="唯一名称") display_name = Column(String(64), nullable=True, comment="可选,显示名") type = Column(SmallInteger, nullable=False, default=0, comment="Agent类型,0-响应式,1-自主规划式") execution_model = Column(String(64), nullable=True, comment="执行LLM") system_prompt = Column(Text, nullable=True, comment="系统设定prompt模板") task_prompt = Column(Text, nullable=True, comment="执行任务prompt模板") tools = Column(Text, nullable=True, comment="JSON数组,tool name") sub_agents = Column(Text, nullable=True, comment="JSON数组,agent ID") extra_params = Column(Text, nullable=True, comment="JSON KV对象") is_delete = Column(Boolean, nullable=False, default=False, comment="逻辑删除标识") create_user = Column(String(32), nullable=True, comment="创建用户") update_user = Column(String(32), nullable=True, comment="更新用户") create_time = Column(TIMESTAMP, nullable=True, server_default="CURRENT_TIMESTAMP", comment="创建时间") update_time = Column(TIMESTAMP, nullable=True, server_default="CURRENT_TIMESTAMP", onupdate="CURRENT_TIMESTAMP", comment="更新时间")