dsh-restart-anywhere:DeepSeek Harness 的通用重启按钮

在 DSH 的使用过程中,修改插件或配置后需要重启服务。大多数方案依赖特定的守护进程或手动操作。下面介绍一个插件,它通过一个按钮在 Web 界面中处理所有场景的重启逻辑。

这是什么

dsh-restart-anywhere 是由 JoblessJoe 开发的 DSH Web 界面插件。它为侧边栏“设置”上方添加了一个“重启 dsh”按钮,支持 systemd、Docker/Podman/Kubernetes、pm2、supervisord、launchd、终端/tmux 和 Windows。它原地重启(相同 PID),无需检测或配置守护进程,并且零运行时依赖。

安装与启用

  1. 安装到你的 DSH Web 配置文件(web 下方是配置文件名;使用支持你的 Web GUI 的配置文件)。从源代码检出,使用 pnpm dsh 代替 npx @deepseek-ai/dsh:
npx @deepseek-ai/dsh plugin --profile web add dsh-restart-anywhere
  1. 需要满足环境要求:dsh >= 0.2.0 和 Node >= 20。

核心功能

  • 界面集成:在侧边栏“设置”上方添加“重启 dsh”按钮。
  • 多环境支持:兼容 systemd、Docker/Podman/Kubernetes、pm2、supervisord、launchd、终端/tmux 和 Windows。
  • 原地重启:在 systemd、容器、pm2 等场景下保持相同的 PID,无需检测守护进程或配置。
  • Agent 工具:Agent 可以调用 dsh_restart 工具,配合 continue_prompt 在重启后恢复会话。

典型用法

  • 手动重启:点击“重启 dsh”按钮并确认。页面会在服务恢复后自动刷新。
  • Agent 重启:Agent 在安装或编辑插件后调用 dsh_restart({ continue_prompt })。重启完成后,Agent 会用提供的文本唤醒会话继续执行。

注意事项与安全

  • 登录要求:重启路由受 ctx.connection.fetch 保护,仅限已登录用户。在公开暴露的实例上,未认证请求将返回 401。
  • 无 Shell 命令:不使用 shell 命令执行,仅依赖 Node.js API 和 systemd-run(当 dsh 作为 systemd 服务时)。

该插件通过提供跨平台、无依赖的原地重启能力,简化了 DSH 的运维流程。更多细节请参考 GitHub 仓库 或 插件目录。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye