Skip to content
文档首页

自动升级 ​

Mogick CLI 支持启动检查和手动升级。升级包来自发布服务,下载后会校验 SHA-256;配置、认证和会话数据存放在数据目录中,不会因为替换二进制而被删除。

触发方式 ​

方式命令/场景行为
run 启动检查mogick run ...启动时检查新版本;发现新版本后在后台下载并安排替换,当前命令继续执行
非交互 root 检查mogick --non-interactive 或 stdout/stdin 非 TTY行为同启动检查
TUI 升级提示交互式 mogick启动前检查新版本;若有更新,在 TUI 中显示提示,由用户选择
手动升级mogick upgrade前台检查、下载并安装
只检查mogick upgrade --dry只显示当前版本、最新版本和将下载的包,不安装
跳过自动检查--no-auto-upgrade跳过对应命令的启动检查和 TUI 升级提示

自动检查网络失败时会静默跳过,不影响当前任务。手动 mogick upgrade 会把网络、manifest 或校验错误显示给用户。

TUI 升级提示 ​

交互式 mogick 检测到新版本时,会在 TUI 内显示升级提示。可选操作包括:

选项行为
立即升级记录选择并退出 TUI,随后执行前台升级流程
跳过本次关闭提示,本次继续使用当前版本
跳过此版本记录跳过的版本;直到出现更高版本前不再提示
查看更新说明展开 release notes,再返回选择界面

选择立即升级后,当前 TUI 会话会结束;升级完成后重新启动 mogick 即可使用新版本。

手动升级 ​

bash
mogick upgrade --dry
mogick upgrade

mogick upgrade 会同步执行完整升级流程。Linux 上,升级成功后会替换当前二进制并重新执行新版本;Windows 上会启动独立的 mogick-updater.exe,等待当前进程退出后替换被系统锁定的 mogick.exe。

Windows 文件替换 ​

Windows 会锁定正在运行的 mogick.exe,因此不能由当前进程直接覆盖自身。Mogick 会下载新版二进制和 updater,启动 updater 后由它等待当前进程退出并完成替换。若替换失败,先退出所有正在运行的 Mogick 进程,再重新运行 mogick upgrade。

常用命令 ​

bash
# 禁止本次启动检查
mogick --no-auto-upgrade
mogick run --no-auto-upgrade "run tests"

# 使用自定义升级源
MOGICK_UPGRADE_URL=https://example.com/mogick mogick upgrade --dry