Back to home@bao-hp

dsh-check-update

Check for DSH updates with changelog and backup.

Stars
0
Language
JavaScript
Created
Aug 24, 2026
Updated
Aug 24, 2026
GitHub repo

Introduction

DSH Check Update

检查 DSH 更新的插件,提供更新日志、自动备份功能。

✨ 主要特性

🔄 更新管理

  • 自动检查 npm 仓库的最新版本
  • 支持 latestnext dist-tag
  • 灵活的更新模式:自动、手动、提示

📋 更新内容摘要

  • 自动获取新版本的更新日志和描述
  • 在界面中显示详细的更新内容
  • 支持查看 README 和版本信息

💾 自动备份功能

  • 更新前自动备份配置和数据
  • 支持手动创建备份
  • 备份管理和恢复功能
  • 可配置保留的备份数量

🎨 用户界面

  • 标签页设计:状态、日志、备份、设置四个标签页
  • 直观的信息显示:版本信息、更新状态、备份列表
  • 便捷的操作:一键更新、备份、恢复
  • 实时配置:动态调整更新设置

🚀 快速开始

安装

# 从本地目录安装
dsh plugin add ./dsh-check-update

# 或者发布到 npm 后安装
dsh plugin add dsh-check-update

配置

cordis.patch.yml 中配置:

- insert:
    - id: check-update
      name: dsh-check-update
      config:
        # 基础配置
        distTag: latest
        checkOnStart: true
        checkIntervalMinutes: 240
        autoStage: true
        applyOnExit: true
        relaunch: false
        
        # 新增配置
        showChangelog: true
        autoBackup: true
        backupKeepCount: 5
        updateMode: auto

📖 使用说明

界面操作

  1. 检查更新:点击右下角的"检查更新"按钮
  2. 查看日志:切换到"日志"标签页查看更新内容
  3. 管理备份:在"备份"标签页创建和恢复备份
  4. 调整设置:在"设置"标签页修改配置

更新模式

  • 自动模式:检测到更新后自动暂存,退出时应用
  • 手动模式:用户手动触发更新
  • 提示模式:检测到更新后提示用户选择

备份管理

  • 自动备份:更新前自动备份配置和数据
  • 手动备份:随时创建备份
  • 备份恢复:从备份列表中选择恢复
  • 备份清理:自动清理旧备份

⚙️ 配置选项

选项类型默认值说明
distTagstringlatestnpm dist-tag
checkOnStartbooleantrue启动时检查更新
checkIntervalMinutesnumber240检查间隔(分钟)
autoStagebooleantrue自动暂存更新
applyOnExitbooleantrue退出时应用更新
relaunchbooleanfalse更新后自动重启
showChangelogbooleantrue显示更新日志
autoBackupbooleantrue自动备份
backupKeepCountnumber5保留备份数量
updateModestringauto更新模式

🛡️ 安全特性

  • 延迟应用:更新在 harness 退出后应用,避免文件锁问题
  • 暂存机制:先下载再应用,避免更新失败导致系统不可用
  • 自动备份:更新前自动备份,支持回滚
  • 错误处理:完善的错误处理和恢复机制

📁 项目结构

dsh-check-update/
├── lib/
│   ├── index.js          # 主插件逻辑
│   ├── updater.js        # 更新核心逻辑
│   ├── backup.js         # 备份管理模块
│   └── client.js         # 客户端界面
├── bin/
│   └── apply-update.js   # 更新应用脚本
├── cordis.patch.yml      # Cordis 配置文件
├── package.json          # 包配置
└── README.md             # 本文档

🔧 开发说明

依赖

  • @deepseek-ai/cordis: ^4.0.1
  • @deepseek-ai/schemastery: ^3.18.1

测试

npm test

📝 更新日志

v0.0.1 (Initial Release)

  • 🎉 初始版本发布
  • ✨ 自动检查 @deepseek-ai/dsh 新版本
  • ✨ 支持 latest/next dist-tag
  • ✨ 更新暂存与延迟应用(解决 Windows 文件锁问题)
  • ✨ 更新前自动备份配置和数据
  • ✨ 支持手动备份与恢复
  • ✨ 标签页式 UI:状态、日志、备份、设置
  • ✨ 支持自动/手动/提示三种更新模式

🤝 贡献

欢迎提交 Issue 和 Pull Request!

📄 许可证

MIT License