Skip to content
dsh.fish
Bundle

@deepseek-ai/dsh-timer

定时计划任务:左侧栏开关 + 计划时间框 + 错高峰,到点自动在原会话继续任务(full access)

Source
life1996cou
stars
1 stars
License
MIT
Updated
Updated 5 days ago

Readme

# @deepseek-ai/dsh-timer

DSH(DeepSeek Harness)的「计划任务」插件。在消息输入框下方工具行(模型选择按钮的左方)提供计划任务模块,开启后即可对当前消息设置一个将来的执行时间,到点自动在原对话里以 **full access** 权限继续任务,并实时展示每个任务的状态。

> 使用说明(无代码/API 说明)。仓库仅包含 `dsh-timer` 插件,不含其他插件。

---

## 功能

> ⚠️ **重点:按回车(Enter)无法触发定时计划任务。** 必须同时满足:① 打开「计划任务」开关(变绿);② 用**鼠标点击**「发送消息」按钮。只有这样才能弹出计划确认框。

- **输入框下方、模型按钮左方的开关**:在消息输入框下方的工具行、紧挨模型按钮左侧的原生模块,开关开启时显示绿色。开关只控制开/关,不自动弹窗。
- **计划发送**:开关开启后,在消息输入框输入内容,点击「发送消息」按钮,弹出执行时间 + 执行模式(`full access`)确认框(弹窗位于发送按钮上方),确认后加入计划,而不是立即发送。
- **错高峰**:一键就近选择北京时间的空闲时段(跳过 9:00–12:00、14:00–18:00 高峰段),再次点击恢复原时间与状态。
- **任务列表**:模块内「任务」按钮展示所有任务及其状态。
  - 待执行:灰色「待执行」
  - 运行中:文字「运行中…」
  - 已完成:显示完成时刻(`HH:MM`,绿色)
  - 失败:「失败」(红色)
  - 支持对未完成任务「取消」,以及「清空」全部任务。
- **并发不设上限**:可同时排多个任务,或按不同时间顺序依次触发。到点后默认以 `full access` 权限、在生成该任务的原始会话里继续执行。

---

## 环境要求

- 已安装并能在本地运行的 DSH(DeepSeek Harness),且 `dsh` 命令在 PATH 中。
- 使用 `pnpm` 安装依赖(本插件通过 pnpm 安装到 profile)。

---

## 安装

```bash
dsh plugin --profile web add github:life1996cou/dsh-timer
```

安装后重启 `dsh web` 以加载:

```bash
cd /path/to/deepseek-harness && pnpm dsh web
```

确认已安装:

```bash
dsh plugin --profile web list
```

---

## 更新到 v0.2.0

> 如果你之前装的是 v0.1.0,按下面两步升级即可;**已装的旧版任务列表会保留**。

```bash
# 1. 重新拉取 / 安装最新版(仍指向同一仓库,会自动更新到 v0.2.0)
dsh plugin --profile web add github:life1996cou/dsh-timer

# 2. 重启 dsh web 使新版本生效
cd /path/to/deepseek-harness && pnpm dsh web
```

**v0.2.0 相比 v0.1.0 的变化(交互有所不同,请留意):**

- 计划任务模块由「左侧底部栏」移到了**消息输入框下方工具行、模型按钮的左方**。
- 开关**只控制开/关**,不再单独显示「计划发送」按钮。
- **触发方式改为:开关开启 + 鼠标点击「发送消息」按钮**,弹出计划确认框(弹窗在发送按钮上方),确认后加入计划——**按回车无效**。
- 任务文本取自当前输入框内容,确认后清空草稿。

---

## 使用

1. 在消息输入框下方的工具行找到「计划任务」开关,点击开启(变绿)。
2. 在消息输入框输入需要稍后执行的文本。
3. **用鼠标点击「发送消息」按钮**(⚠️ 按回车无效,必须用鼠标点击)。
4. 在弹出的计划确认框中设置执行时间(默认下一分钟),可选「错高峰」就近填充空闲时段。
5. 确认模式为 `full access` 后,点「确定计划」。
6. 任务进入「任务」列表,按状态实时更新;到点自动在原会话继续执行。

> ⚠️ **关键触发条件**:必须同时满足「计划任务」开关已打开 AND **鼠标点击「发送消息」按钮**,才能触发计划确认框。**按回车(Enter)不会触发**——回车只会正常发送,不会弹出计划确认。

> 开关仅控制开/关:关闭时点「发送消息」= 正常发送;开启时点「发送消息」= 弹出计划确认框(弹窗在发送按钮上方),确认后加入计划而不是立即发送。

---

## 更新记录

### v0.2.0

- **位置重构**:由最初左侧底部栏开关,移入**消息输入框下方工具行、模型选择按钮的左方**(`conversation.input.right`),与原生工具行融为一体。
- **交互改变**:开关**只控制开/关**,不再自动弹任务列、也不再单独显示「计划发送」按钮。
  - 开关**关闭**时点「发送消息」= 正常发送。
  - 开关**开启**时点「发送消息」= 弹出计划确认框(**弹窗位于发送按钮上方**),确认后加入计划任务,而不是立即发送。
  - 确认时无需再点独立按钮,直接沿用原生「发送消息」按钮触发。
- **任务文本来源**:取自当前消息输入框的草稿,确认后清空草稿。
- **保持能力**:错高峰、任务列表(待执行 / 运行中 / 完成时刻 / 失败)、按状态实时展示、取消与清空、并发不设上限、到点以 `full access` 在原会话继续任务。

### v0.1.0

- 首个可打包版本:计划任务开关 + 计划时间框 + 错高峰,到点自动在原会话以 `full access` 继续任务。

---

## License

[MIT](./LICENSE)

Install

dsh plugin --profile web add github:life1996cou/dsh-timer

Profile: web

  • This source has no pinned commit, so a later push upstream changes what installs. Prefer pinning a commit.
Source