Skip to main content

AutoGLM-GUI 发布说明: v1.4.1 → v1.5.5

发布时间:2026年1月4日 - 2026年1月21日 总提交数:65个 版本数量:5个增量版本

📊 版本概览

从 v1.4.1 到 v1.5.5,AutoGLM-GUI 经历了一次重大的架构现代化升级,包含:

  • 19个新功能
  • 🐛 15个Bug修复
  • ♻️ 9次重构
  • 📚 5次文档改进
  • 🔧 8次基础设施优化

🎯 核心亮点

🏗️ 架构现代化(最重要的变更)

移除第三方依赖

完全移除了 phone_agentdevice_adaptermai_agent 等第三方依赖,实现核心代码完全自主化:

  • PR #133: 移除第三方代码依赖,实现模块化架构升级
  • PR #171: 移除 phone_agentdevice_adapter 依赖
  • MAI Agent 内化: 迁移到 AutoGLM_GUI/agents/mai/ 目录

收益:

  • ✅ 完全的代码所有权和控制权
  • ✅ 简化维护,减少外部依赖导致的兼容性问题
  • ✅ 更清晰的模块边界和领域划分

协议标准化与架构清理

  • PR #128: 标准化 Agent 协议,消除跨层依赖
  • PR #150: 清理协议注入与跨领域依赖,完善测试基础设施
  • PR #143: 移除双模型(Dual Model)交互模式,简化代码库

📦 版本详细说明

v1.5.5 (2026-01-21) - 最新稳定版

文档与配置

  • 📚 新增分层代理架构分析文档(中英双语)(#194)
  • 🔧 修复 Docusaurus v3.9.2 的 Mermaid 图表支持 (#197)

v1.5.4 (2026-01-17) - 接口优化版

重构改进

  • ♻️ 移除 AsyncAgent 接口的 step() 方法 (#189)
    • 简化 Agent 生命周期管理
    • 更清晰的接口设计

Bug 修复

  • 🐛 修复 --reload 模式下 --log-level 设置丢失问题 (#190)
    • 开发模式日志级别现在能正确保持

基础设施

  • 🔧 提取可复用的 Composite Actions,减少 CI 工作流重复 (#188)
  • 💅 代码格式化改进和 pyright 类型错误修复

v1.5.3 (2026-01-16) - 稳定性增强版

Bug 修复

  • 🐛 为 chat 和 chat stream 端点启用设备自动初始化
    • 简化设备使用流程
    • 减少手动初始化步骤

基础设施

  • 🔧 增强预发布清理流程
  • 🔧 为 Docker E2E 测试添加重试逻辑,处理 Docker Hub 瞬时超时
  • 📦 升级 urllib3 从 2.6.2 到 2.6.3 (#185)

v1.5.2 (2026-01-15) - Electron 增强版

🌟 重点新功能

1. Electron 桌面版自动更新系统 (#180)

为桌面应用添加了完整的自动更新功能:

  • ✅ 启动时自动检查 GitHub Releases
  • ✅ 后台静默下载更新包(带进度日志)
  • ✅ 友好的更新对话框(立即重启/稍后安装)
  • ✅ 支持多平台:Windows NSIS、macOS DMG、Linux AppImage
  • ✅ DevTools 控制台进度日志(可配置)
  • ✅ 使用 electron-updaterelectron-log

技术细节:

  • 更新元数据:latest.yml / latest-mac.yml / latest-linux.yml
  • 配置文件:electron-builder.yml 指向 GitHub Releases
  • 日志控制:可通过 DEBUG_UPDATER=0 禁用 DevTools 日志

2. AsyncAgent 立即取消功能 (#179)

实现了支持立即取消的异步 Agent:

  • ⚡ 取消响应时间 <1秒
  • 🎯 改善长时间任务的用户体验
  • 🔧 原生 async/await 实现
  • 🛑 中断正在进行的 LLM API 请求

3. 全面的类型注解 (#177)

代码质量大幅提升:

  • 📝 添加全面的类型注解
  • 🚫 移除不必要的 Any 类型
  • 🔍 改进 IDE 智能提示
  • ✅ 更好的静态类型检查(pyright)

🐛 重要 Bug 修复

Electron 打包运行时依赖问题 (#182)

  • 修复打包后 "Cannot find module 'electron-updater'" 错误
  • 正确使用 npm(而非 pnpm)管理 Electron 依赖
  • 修复预构建脚本引用
  • 改进运行时依赖验证系统

🧪 测试改进

集成测试基础设施优化 (#181)

  • Docker 跳过策略(无 Docker 环境支持)
  • 本地 E2E 测试替代方案
  • 修正坐标系统处理逻辑
  • 改进 Mock 设备基础设施

v1.5.1 (2026-01-09) - 功能与重构版

🌟 重点新功能

1. 自定义设备名称 (#173)

  • 🏷️ 持久化保存自定义设备显示名称
  • 🖊️ 前端设备重命名 UI
  • 💾 数据库存储设备名称
  • 🔌 完整的 API 端点支持

2. 对话历史详情查看 (#169)

  • 💬 保存完整对话历史记录
  • 📋 对话详情查看界面
  • 🗄️ 后端数据库集成
  • 🔍 支持历史对话检索

3. 可配置的分层 Agent 最大轮数 (#166)

  • ⚙️ 可配置分层代理的最大执行轮数
  • 🎛️ 更灵活的任务执行控制

♻️ 重大重构

移除第三方依赖

  • 🗑️ 移除 mai_agent 第三方依赖
  • 🗑️ 移除 phone_agentdevice_adapter 依赖
  • 📦 MAI Agent 迁移到内部 AutoGLM_GUI/agents/mai/ 目录
  • ✅ 实现完全的代码独立性

🐛 Bug 修复

多轮对话消息传递修复 (#164)

  • 修复多轮对话中消息传递错误
  • 改进对话上下文管理

📚 文档改进

  • 📖 添加全面的贡献指南(Contributing Guide)
  • 📜 修正许可证从 MIT 到 Apache 2.0
  • 🔧 添加 Mock 服务器启动脚本
  • 🔗 回退下载链接到 v1.4.1(准备 v1.5.0 内容)

v1.5.0 (2026-01-08) - 里程碑大版本

🌟 主要新功能

1. 对话历史与定时任务系统 (#161)

  • 💾 持久化存储完整对话历史
  • 📅 定时任务调度系统
  • 🗄️ SQLite 数据库支持
  • 📊 对话统计和分析

2. Agent 自动初始化 (#147)

  • 🚀 首次使用时自动初始化设备
  • 🔄 简化生命周期管理
  • ⚠️ 弃用手动 init API 调用
  • ✅ 零配置设备接入

3. Docker 多架构支持 (#148)

  • 🐳 支持多架构构建(x86_64, ARM64)
  • 📦 GHCR (GitHub Container Registry) 镜像托管
  • 🚀 简化 Docker 部署工作流
  • 🌍 docker run ghcr.io/suyiiyii/autoglm-gui:latest 直接运行

4. 模拟器直接连接支持 (#157)

  • 📱 Android 模拟器无需配对直接连接
  • 🔌 自动检测本地模拟器
  • ⚡ 简化开发环境配置
  • 🚫 无需 QR 码或 WiFi 配对

5. 设备监视器宽度控制 (#155)

  • 📏 可调整设备监视器面板宽度
  • 🎚️ 宽度预设快速切换
  • 🖥️ 改进多设备管理 UI
  • 💾 保存用户偏好设置

6. HTTPS 支持 (#145)

  • 🔒 添加 --ssl-keyfile--ssl-certfile CLI 参数
  • 🔐 支持 HTTPS 安全连接
  • 🏢 生产环境安全增强
  • 📜 自签名证书支持

7. Electron 日志查看器 (#124)

  • 📋 桌面应用内集成日志查看器
  • 📡 实时日志流监控
  • 🐛 改进调试体验
  • 🔍 日志过滤和搜索

8. "在浏览器中打开" 菜单选项 (#135)

  • 🌐 Electron 应用菜单添加浏览器打开选项
  • 🔗 快速切换到 Web 界面
  • 🔄 桌面版和 Web 版无缝切换

♻️ 重大重构

架构清理 (#128, #133, #150)

  • 📐 标准化 Agent 协议接口
  • 🧹 消除跨层依赖
  • 🗑️ 移除协议注入模式
  • 🏛️ 改进领域边界强制执行
  • 📦 模块化架构升级

移除双模型模式 (#143)

  • 🗑️ 移除双模型(DEEP/FAST/TURBO)交互模式
  • ♻️ 简化代码库
  • 📉 降低维护成本
  • 🎯 聚焦核心功能

实现原生 GLM Agent (#130)

  • 🆕 实现原生 GLM Agent 并解耦配置层
  • 🔓 尝试摆脱 phone_agent 依赖
  • 🏗️ 为后续架构升级铺路

🐛 Bug 修复

Scrcpy 视频流稳定性

  • 🔧 改进 scrcpy 连接可靠性和简化重试逻辑 (#159)
  • 🔄 改进视频流重连和错误处理 (#126)

Docker 部署问题

  • 📦 确保 Docker 部署时包含静态文件 (#154)
  • ⚙️ 移除覆盖配置文件的硬编码环境变量 (#160)
  • 🔍 修复 Docker 部署中的静态文件检测 (#152)

设备管理

  • 🖼️ 设备不存在时截图接口返回明确错误(而非全黑图片)(#146)

CI/CD 稳定性

  • 🍎 稳定化 macOS x64 DMG 构建 (#127)
  • 🔄 简化 docker-e2e 工作流,移除重复逻辑 (#149)

🧪 测试基础设施

Python 版本矩阵测试 (#151)

  • ✅ 添加 Python 3.11+ 版本矩阵测试
  • 🔍 多版本兼容性验证
  • 🤖 自动化跨版本测试

集成测试改进 (#150)

  • 🧹 清理协议注入
  • 🧪 完善测试基础设施
  • 🐳 Docker E2E 测试优化

📚 文档改进

  • 📖 重组 README 快速开始和部署章节
  • 🔧 改进 CI 配置与自定义指令
  • 📝 各类文档更新和改进

🎯 重点推荐(Blog 核心内容)

1️⃣ 架构现代化 - 最大的成就

移除所有第三方 Agent 依赖

从依赖第三方 phone_agent 库到完全自主实现,AutoGLM-GUI 实现了:

  • 完全的代码所有权:所有核心功能都在自己掌控之中
  • 独立发展能力:不再受制于外部库的更新节奏
  • 更好的可维护性:统一的代码风格和架构标准
  • 模块化架构:清晰的领域边界和协议接口

技术细节:

  • MAI Agent 内化到 AutoGLM_GUI/agents/mai/
  • 标准化 BaseAgentAsyncAgent 协议
  • 移除跨层依赖,强化领域边界
  • 代码库从依赖外部到完全自给自足

2️⃣ 桌面应用增强 - 用户体验提升

Electron 自动更新功能

桌面应用现在支持一键更新:

  • 🔄 启动时自动检查更新
  • 📥 后台静默下载
  • 🔔 友好的更新提示
  • 🚀 一键重启安装

内置日志查看器

  • 📋 应用内实时查看日志
  • 🐛 更方便的问题诊断
  • 🔍 日志过滤和搜索

其他改进

  • 🌐 支持在浏览器中打开
  • 🔧 修复打包后依赖问题
  • 📦 更专业的桌面应用体验

3️⃣ 对话能力升级 - AI 交互改进

多轮对话支持 (v1.5.4)

AsyncGLMAgent 现在支持有状态的多轮对话:

  • 💬 保持对话上下文
  • 🧠 更智能的任务理解
  • 🔄 改进对话连贯性

对话历史系统 (v1.5.0/v1.5.1)

  • 💾 持久化保存所有对话
  • 📊 对话详情查看
  • 🗄️ SQLite 数据库存储
  • 🔍 历史对话检索

立即取消功能 (v1.5.2)

  • ⚡ <1秒取消响应时间
  • 🛑 中断正在进行的 LLM 请求
  • 🎯 更好的用户控制体验

4️⃣ 开发者体验 - 工程质量提升

全面的类型注解 (v1.5.2)

  • 📝 移除所有 Any 类型
  • 🔍 改进 IDE 智能提示
  • ✅ 静态类型检查(pyright)
  • 💡 更好的代码可读性

测试基础设施改进

  • 🐳 Docker E2E 测试
  • 🔄 Python 版本矩阵(3.11+)
  • 🧪 集成测试优化
  • 📊 测试覆盖率提升

CI/CD 流程优化

  • ♻️ 可复用 Composite Actions
  • 🤖 自动化工作流
  • 🔧 更快的反馈周期

5️⃣ 部署便利性 - 生产就绪

Docker 多架构支持 (v1.5.0)

# 一键运行,自动拉取对应架构镜像
docker run -p 8000:8000 ghcr.io/suyiiyii/autoglm-gui:latest
  • 🐳 支持 x86_64 和 ARM64
  • 📦 GHCR 镜像托管
  • 🚀 开箱即用

HTTPS 支持 (v1.5.0)

# 生产环境安全部署
autoglm-gui --ssl-keyfile key.pem --ssl-certfile cert.pem

模拟器直接连接 (v1.5.0)

  • 📱 开发环境零配置
  • 🔌 自动检测本地模拟器
  • ⚡ 无需手动配对

三种部署方式

  1. 🌐 Web 应用: pip install autoglm-gui
  2. 🐳 Docker: docker run ghcr.io/suyiiyii/autoglm-gui
  3. 🖥️ Electron: 下载 DMG/EXE/AppImage

📈 数据统计

提交分布

  • 功能开发:19个 (29%)
  • Bug 修复:15个 (23%)
  • 代码重构:9个 (14%)
  • 文档更新:5个 (8%)
  • CI/Chore:8个 (12%)
  • 其他:9个 (14%)

代码质量指标

  • ✅ 全面类型注解覆盖
  • ✅ 移除所有 Any 类型
  • ✅ 移除 3 个第三方依赖
  • ✅ 标准化协议接口
  • ✅ Python 3.11+ 兼容性测试

功能覆盖

  • ✅ Web 应用部署
  • ✅ Docker 容器部署(多架构)
  • ✅ Electron 桌面应用(自动更新)
  • ✅ HTTPS 安全支持
  • ✅ 对话历史系统
  • ✅ 定时任务调度
  • ✅ 多轮对话支持
  • ✅ 立即取消功能

平台支持

  • ✅ Windows (x64)
  • ✅ macOS (ARM64, x64)
  • ✅ Linux (x64, ARM64)
  • ✅ Docker (multi-arch)

🔄 升级建议

从 v1.4.1 升级到 v1.5.5

Web 应用用户:

# 更新到最新版本
pip install --upgrade autoglm-gui

# 或使用 uv
uv pip install --upgrade autoglm-gui

Docker 用户:

# 拉取最新镜像
docker pull ghcr.io/suyiiyii/autoglm-gui:latest

# 重启容器
docker run -p 8000:8000 ghcr.io/suyiiyii/autoglm-gui:latest

Electron 用户:

  • 应用会自动检查更新并提示
  • 或手动下载最新版本安装包

配置迁移

  • ✅ 配置文件 ~/.config/autoglm/config.json 完全兼容
  • ✅ 数据库自动迁移(对话历史)
  • ✅ 无需手动操作

已弃用功能

  • 双模型模式:已在 v1.5.0 移除
  • ⚠️ 手动 init API:建议使用自动初始化(v1.5.0+)
  • ⚠️ AsyncAgent.step():已在 v1.5.4 移除

🙏 致谢

感谢所有贡献者和社区成员的支持!

特别感谢:

  • 所有提交 Issue 和 PR 的贡献者
  • 使用 AutoGLM-GUI 并提供反馈的用户
  • GLM 团队提供的 AI 模型支持

📚 相关链接


📝 总结

v1.4.1 → v1.5.5 版本系列代表了 AutoGLM-GUI 的重大进步:

  1. 架构现代化:完全自主的代码库,移除所有第三方 Agent 依赖
  2. 功能完善:对话历史、自动更新、多轮对话等核心功能
  3. 质量提升:全面类型注解、完善测试、优化 CI/CD
  4. 部署灵活:Web、Docker、Electron 三种方式,支持多架构
  5. 生产就绪:HTTPS 支持、自动初始化、错误处理完善

AutoGLM-GUI 现在更加成熟、稳定、易用,适合从个人开发到企业部署的各种场景。


发布日期: 2026-01-21 文档版本: 1.0 维护者: @suyiiyii