Skip to content

升级与迁移

升级前先在 Tower 的数据管理中创建完整备份,并另外保留 ~/.tower 的离线副本。数据库 schema 向前迁移,不承诺旧版本可以继续写入升级后的数据库;降级时应恢复升级前备份。

启动时发生什么

Tower 启动时解析 TOWER_DATA_DIR,检查 Prisma schema,然后按文件编号执行尚未记录在 AppliedMigration 表中的迁移。每项迁移成功后才记账;失败时停止后续迁移,下次启动从失败项重试。

迁移不会自动删除 API Key、CLI 凭据、Provider 配置或 Assistant 历史。旧配置在能够唯一映射时继续兼容;无法安全映射的连接会保留并显示诊断,而不是猜测目标。

备份包含什么

数据完整备份
SQLite 数据库、项目事实、任务、配置包含
API Key、自定义敏感 header/query包含,按密钥材料保护备份
项目资产与 Assistant 会话包含
CLI Provider registry、安装目录与配置包含
Assistant 临时附件缓存不保证;长期文件应保存为项目资产
CLI 自身登录、token、用户仓库与 Git worktree不包含

安全升级流程

  1. 停止正在运行的 Tower 与无人值守服务。
  2. 创建完整备份,并记录当前版本与数据目录。
  3. 安装目标版本后启动 Tower,等待迁移完成。
  4. 检查工作区、项目、Assistant、AI Tools 连接和正在进行的任务。
  5. 验证无误后再恢复无人值守服务。

如果迁移失败,不要反复用不同版本写同一数据库。保留日志与备份,修复原因后重试;必须降级时,移走升级后的数据目录并恢复旧版本对应的备份。