架构说明
DriFox v0.4.1 采用四层架构设计,从上到下依次为 UI 层、渲染层、引擎层和存储层。
┌─────────────────────────────────────────────────────────────────┐
│ DriFox v0.4.1 架构 │
├─────────────────────────────────────────────────────────────────┤
│ UI 层 │
│ ├── ToolPopupDialog – 浮动窗口容器(穿透/透明) │
│ ├── OpenAIChatToolWindow – 主聊天窗口 │
│ ├── MessageCard – 消息卡片渲染 │
│ ├── DiffViewer – 代码差异对比视图(单栏/双栏) │
│ ├── SubAgentSessionDialog – 子智能体会话对话框 │
│ ├── Floating Cards – UI 插件浮动卡片 │
│ ├── PixelPetWidget – 桌面宠物 │
│ ├── TrayManager – 系统托盘 │
│ ├── CardContainer – 卡片容器(命令卡片/设置卡片等) │
│ ├── ContextUsageRing – 上下文用量环形图 │
│ └── BottomInputArea – 底部输入区 │
├─────────────────────────────────────────────────────────────────┤
│ 渲染层 │
│ ├── render_helpers – 工具块 HTML 渲染 │
│ ├── message_content – 消息内容格式化 │
│ ├── diff_viewer – Git 风格差异 HTML 生成器(单栏/双栏) │
│ ├── _resolve_image_src – 图片路径自动解析 │
│ └── ECharts 5 (CDN) – 交互式图表 │
├─────────────────────────────────────────────────────────────────┤
│ 引擎层 │
│ ├── ChatEngine – 对话上下文组装与 LLM 调用 │
│ ├── ContextBuilder – 消息规范化与系统提示注入 │
│ ├── ToolExecutor – 工具执行(共享线程池) │
│ ├── AgentManager – Agent 定义加载与切换 │
│ ├── PluginManager(单例)– 插件发现/热插拔/资源查询 │
│ ├── UIPluginRegistry(单例)– UI 插件注册表 │
│ ├── HistoryCompactor – 上下文压缩 │
│ ├── SubAgentManager – 子智能体 DAG 编排与执行引擎 │
│ ├── HookManager – Hook 生命周期管理与事件触发 │
│ ├── TeamManager – 团队协作管理 │
│ ├── CodeGraph – 代码智能引擎 │
│ ├── Gateway – 多平台消息网关 │
│ ├── UIEngine – UI 引擎(主题/样式/挂件管理) │
│ ├── CronEngine – 定时任务引擎 │
│ └── AutoLoopEngine – 自动循环执行引擎 │
├─────────────────────────────────────────────────────────────────┤
│ 存储层 │
│ ├── SessionManager – 会话管理 │
│ ├── MemoryManager – 长期记忆(SQLite) │
│ ├── HistoryManager – 归档与检索 │
│ ├── SubAgentLogRepository – 子智能体日志持久化 │
│ └── SessionStore – SQLite 持久化 │
└─────────────────────────────────────────────────────────────────┘
UI 层
负责用户交互界面,包括主聊天窗口、消息卡片、浮动窗口、设置面板、桌面宠物、系统托盘等组件。 基于 PyQt5 + PyQt-Fluent-Widgets 构建,支持穿透模式、透明度调节、多窗口管理、动态主题切换等特性。
v0.3.x 新增 UI 组件:
SubAgentSessionDialog — 子智能体会话对话框,实时展示任务日志
Floating Cards — UI 插件浮动卡片(4 个内置插件)
PixelPetWidget — 桌面像素宠物
TrayManager — 系统托盘常驻
CardContainer — 卡片容器(命令/设置/挂件统一管理)
Floating Tooltip — 命令卡片浮动 tooltip 独立窗口
渲染层
负责将 AI 回复内容渲染为可视化界面。支持 Markdown→HTML 转换、代码语法高亮、 ECharts 交互式图表渲染、图片路径自动解析、Diff 差异对比(单栏/双栏/单词级高亮)等能力。
引擎层
核心业务逻辑层:
ChatEngine — 组装对话上下文,调用 LLM API
ToolExecutor — 执行 40+ 内置工具(共享线程池优化)
PluginManager — 插件发现、热插拔、配置合并(单例)
UIPluginRegistry — UI 组件注册表(单例,v0.3.0 新增)
SubAgentManager — 子智能体 DAG 编排与并行执行
TeamManager — 团队协作管理(v0.3.3 新增)
CodeGraph — 代码智能引擎(v0.3.4 新增)
HookManager — 事件钩子生命周期管理
Gateway — 多平台消息网关(钉钉/Telegram/Discord/飞书/企业微信)
UIEngine — 主题管理、样式刷新、跨组件通信
CronEngine — 定时任务调度(v0.3.x 新增)
AutoLoopEngine — 自动循环执行引擎
存储层
基于 SQLite 的持久化存储:
SessionManager — 会话历史管理
MemoryManager — 长期记忆存储与检索
HistoryManager — 归档与检索
SubAgentLogRepository — 子智能体日志持久化
TeamTemplateManager — 团队模板持久化(v0.3.3 新增)