# @huangzhaoyu/zhaoyu-restart

一键重启 DeepSeek Harness 的插件。在输入框左下角加一个"重启"按钮，点击后静默重启 DSH，无窗口弹出，旧标签页自动断线重连。

One-click silent restart button for DeepSeek Harness. Adds a "重启" button to the composer input bar. Click it to restart DSH silently — no window popup, the old tab auto-reconnects via WebSocket.

## 安装 / Installation

```sh
# 从 npm 安装
dsh plugin --profile web add @huangzhaoyu/zhaoyu-restart
```

## 配置 / Configuration

默认重启脚本路径是 `restart-dsh.bat`（位于 DSH 部署目录）。你可以通过 DSH 设置来修改：

```yaml
# settings.yaml
zhaoyu-restart:
  scriptPath: "C:\\你的路径\\restart-dsh.bat"
```

或者在 DSH 设置界面中修改（如果设置了 UI 入口）。

## 使用 / Usage

安装后，在聊天输入框左下角会出现一个 🔄 重启按钮。点击后：
1. 按钮显示"重启中…"
2. Host 用 `powershell.exe -WindowStyle Hidden` 静默启动重启脚本
3. DSH 进程被重启，浏览器自动断线重连
4. 全程无窗口弹出，无感重启

## 工作原理 / How it works

- **Host 端**：`lib/index.js` — 用 `ctx.inject(['webServer'])` 注册 `POST /zhaoyu-restart` 路由
- **Client 端**：`lib/client.js` — 在 `conversation.input.left` 槽位注册重启按钮
- **重启**：通过 `subprocess.spawn` 启动 `powershell.exe -WindowStyle Hidden` 执行重启脚本
- **配置**：`settings` 命名空间 `zhaoyu-restart.scriptPath` 可自定义重启脚本路径

## 发布 / Release

- GitHub: [SUJIElearning/zhaoyu-restart](https://github.com/SUJIElearning/zhaoyu-restart)
- npm: `@huangzhaoyu/zhaoyu-restart`

## 许可证 / License

MIT