""" AI Agent 前端主入口 采用模块化架构,仅负责组装各组件 """ import sys import os # 添加当前目录到路径,确保智能导入能工作 src_dir = os.path.dirname(os.path.abspath(__file__)) sys.path.insert(0, src_dir) import streamlit as st # 智能导入:作为 __main__ 被 Streamlit 运行时用绝对导入,否则用相对导入 if __name__ == '__main__': from config import config from state import AppState from components.sidebar import render_sidebar from components.chat_area import render_chat_area from components.info_panel import render_info_panel else: from .config import config from .state import AppState from .components.sidebar import render_sidebar from .components.chat_area import render_chat_area from .components.info_panel import render_info_panel # ============================================================================= # 页面配置 # ============================================================================= st.set_page_config( page_title=config.page_title, page_icon=config.page_icon, layout=config.layout ) # ============================================================================= # 初始化状态 # ============================================================================= AppState.init() def apply_custom_css(): """应用自定义CSS样式,实现极简风格""" st.markdown(""" """, unsafe_allow_html=True) # ============================================================================= # 主界面 # ============================================================================= def main(): """主界面渲染 - 极简宽屏布局""" # 应用 CSS apply_custom_css() # 顶部标题(可选,也可以不放,让界面更像对话框) st.markdown("