🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

定时发送 Zhiyi-Zhao/dsh-schedule-send

DeepSeek Harness
Zhiyi-Zhao16 天前有提交已提供中文文档扫描:含敏感能力

写好消息设定时间,到点自动作为用户消息发出

30.8/100
综合分
1
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/10/19 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add Zhiyi-Zhao/dsh-schedule-send
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:已验证
是什么[目录]—
dsh 原生插件 · ui
暂无时间戳·判据 →
装得上吗[实装验证]✓
本站已在 dsh 0.2.1-rc.2 下真实安装成功
非静态推断
L4 · 真实安装等级说明 →
数据截至 2026/10/19·判据 →
安全吗[自动扫描]—
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
数据截至 2026/11/03·判据 →
还在维护吗[仓库]✓
活跃:最近一次提交在 16 天前
暂无时间戳·判据 →
图例:✓ 通过! 需注意— 未判定 / 无数据· 「未判定」= 本站尚无数据,不代表插件有问题
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →

可信度证据

安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

读写/删除本地文件
查看扫描证据(共 5 处,展示前 5 条)
  • 写入本地文件
    index.js:151
    await writeFile(temporary, content, 'utf8')
  • 写入本地文件
    index.js:152
    await rename(temporary, file)
  • 写入本地文件
    index.js:180
    await mkdir(dirname(this.file), { recursive: true })
  • 读取本地文件
    index.js:183
    text = await readFile(this.file, 'utf8')
  • 写入本地文件
    index.js:207
    await rename(this.file, target)
扫描于 2026/11/3(1 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

社区实装还没有人打卡 · 装过的第一个就是你
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

DeepSeek Harness 的定时发送:在输入框写好消息,到点后作为普通用户消息投递到同一会话里。

README

由 DeepSeek 最新模型翻译生成
dsh-schedule-send 给 DeepSeek Harness 的输入框加一个「定时发送」:现在写好内容、选一个时间,到点后这段文字会以普通用户消息的身份发进同一个会话——等同于你在那个时刻按下了发送,agent 会正常回复并继续对话。 功能 - 输入框工具栏(发送按钮左侧)出现一个时钟按钮。 - 快捷时间(30 分钟后、1 小时后、3 小时后、明天 09:00),也可选精确的本地日期时间。 - 确认后草稿立即清空;会话里出现一张持久卡片,显示发送时间、内容摘要,并带 取消 按钮。 - 队列落在工作区之外,支持补发:应用关闭期间到点的消息会在下次启动后送达。 - 送达的是真实用户消息(source.kind = 'user'),不是提醒、也不是系统通知。 - 失败按退避重试;发送 id 同时是 prompt 的 requestId,崩溃后重试不会重复投递。 - 无需构建,浏览器端只依赖页面共享的 react / react-dom。 为什么不直接用内置提醒? DSH 内置的 Schedule 子系统语义是"提醒":它注入 [SCHEDULE REMINDER] 框架,要求模型把内容展示给用户,而不是把它当作指令执行。定时发送需要相反的语义——内容必须变成用户的消息并开启一轮回复。
展开完整文档(README 剩余 1 节)
dsh-schedule-send

给 DeepSeek Harness 的输入框加一个「定时发送」:现在写好内容、选一个时间,到点后这段文字会以普通用户消息的身份发进同一个会话——等同于你在那个时刻按下了发送,agent 会正常回复并继续对话。

功能

- 输入框工具栏(发送按钮左侧)出现一个时钟按钮。
- 快捷时间(30 分钟后、1 小时后、3 小时后、明天 09:00),也可选精确的本地日期时间。
- 确认后草稿立即清空;会话里出现一张持久卡片,显示发送时间、内容摘要,并带 取消 按钮。
- 队列落在工作区之外,支持补发:应用关闭期间到点的消息会在下次启动后送达。
- 送达的是真实用户消息(source.kind = 'user'),不是提醒、也不是系统通知。
- 失败按退避重试;发送 id 同时是 prompt 的 requestId,崩溃后重试不会重复投递。
- 无需构建,浏览器端只依赖页面共享的 react / react-dom。

为什么不直接用内置提醒?

DSH 内置的 Schedule 子系统语义是"提醒":它注入 [SCHEDULE REMINDER] 框架,要求模型把内容展示给用户,而不是把它当作指令执行。定时发送需要相反的语义——内容必须变成用户的消息并开启一轮回复。因此本插件维护自己的持久队列,通过公开的 ctx.sessionController.prompt(...) 投递:目标会话未打开时会自动 resume,并生成一条普通用户消息。

安装

这个包同时声明了宿主半(index.js,负责队列、命令与投递)和浏览器半(client.js)。没有构建脚本,所有安装方式拿到的都是可直接运行的成品文件。

方式 1:发布页的 tarball(推荐)

从 Releases 下载 dsh-schedule-send-0.1.0.tgz,然后:

dsh plugin --profile desktop add ./dsh-schedule-send-0.1.0.tgz

方式 2:直接从 GitHub 安装

dsh plugin --profile desktop add github:Zhiyi-Zhao/dsh-schedule-send

dsh web profile 用同样的 spec,把 profile 换成 web:

dsh plugin --profile web add github:Zhiyi-Zhao/dsh-schedule-send

方式 3:从本地目录安装

git clone https://github.com/Zhiyi-Zhao/dsh-schedule-send.git
dsh plugin --profile desktop add /absolute/path/to/dsh-schedule-send

方式 4:在 Web 界面里安装

打开侧边栏 Plugins 页面,选择安装 bundle,粘贴上面的 spec(github:Zhiyi-Zhao/dsh-schedule-send、tarball 地址或绝对路径)。从运行中的应用里安装需要 danger-full-access 权限或当次审批。

--profile desktop 是桌面应用的 profile 名;dsh web 部署使用 --profile web。只要 profile 组合了 Web 客户端,这个 bundle 就能用。把下文命令里的 desktop 换成你的 profile 名即可。

安装到 desktop profile 后,新 bundle 可能通过 HMR 立刻生效;若没有出现,重启 DeepSeek Harness。卸载:

dsh plugin --profile desktop remove dsh-schedule-send

使用

1. 在任意会话里输入消息(纯文本)。
2. 点发送按钮左边的时钟按钮。
3. 选一个快捷时间,或设置精确的本地日期时间。
4. 点「定时发送」确认:草稿清空,会话里出现「定时发送」卡片。
5. 到点后消息以普通用户消息进入该会话,agent 正常回复。到点前可以点卡片上的 取消。

卡片会作为历史留在对话里;投递后再点取消,会提示消息已经离开队列。

插件还注册了两个内部会话命令(schedule-send、schedule-send-cancel),因为浏览器插件只能通过会话命令通道调用自己的宿主半。它们会出现在斜杠菜单里,但不需要手动输入——真正的入口是时钟按钮。

工作原理

| 步骤 | 位置 | 发生了什么 |
| 创建 | 浏览器 | 输入框控件调用 ctx.remote.commands.execute('/schedule-send <json>'),携带正文、目标时间戳、发送 id 和浏览器 IANA 时区。 |
| 持久化 | 宿主 | 命令处理函数校验参数,把记录原子写入 $DSH_HOME/schedule-send/queue.json(临时文件 + rename)。 |
| 扫描 | 宿主 | 每 5 秒扫描到期记录,调用 ctx.sessionController.prompt({ requestId: id, sessionId, mode: 'queue', content, clientTimeZone })。 |
| 投递 | 宿主 | 该公开方法按需 resume 会话并提交普通用户消息;发送 id 就是去重键,重试幂等。 |
| 反馈 | 浏览器 | 命令生命周期通过按命令名分发的 conversation.chat.commandview 渲染成持久卡片。 |

实测记录

一次真实的定时发送,从宿主队列读回(本地时间,Europe/Copenhagen):

| 字段 | 值 |
| 状态 | delivered |
| 创建 | 2026-10-19 12:22:16 |
| 目标 | 2026-10-19 12:24:00 |
| 投递 | 2026-10-19 12:24:03 |
| 延迟 | 3.2 秒(在 5 秒扫描周期内) |

送达的文字以普通用户消息出现在会话里,agent 正常回复。

限制

- 到点时应用必须在运行:DSH 没有后台调度器。应用关闭时会等到下次启动后补发;完全关闭的应用无法发送。
- 仅支持纯文本:草稿带附件时按钮禁用。
- 投递会 resume 目标会话并跑一轮回复,即使那个对话没有打开;会消耗 token、可能调用工具,审批仍按该会话的策略等待你确认。
- 精度约 ±5 秒(扫描间隔)。
- 只做一次性发送:不支持周期任务,也不支持原地改时间;取消后重新安排即可。
- 投递失败(会话已不存在、会话没有可路由的模型等)会退避重试,最多 60 次,然后以 failed 和 lastError 记录在队列里,并在宿主日志里留一条警告。
- 队列文件损坏时会被改名为 queue.json.corrupt-<时间戳>,插件以空队列启动。

兼容性

已在桌面版 DeepSeek Harness 0.2.1-rc.2 上验证。

- 宿主半:ctx.commands.register、ctx.sessionController.prompt、ctx.sessions.flush、ctx.agents,全部是公开服务。
- 浏览器半:slot API(conversation.input.right、conversation.chat.commandview)、locale 服务和 ctx.remote.commands.execute;只 import react 与 react-dom,不依赖 DSH 的 UI primitives,因此 UI 包的小改动不会破坏它。
- 如果 ctx.sessionController 不存在,定时消息会留在队列里并记一条警告,而不是让整个 profile 失败。

开发

index.js 宿主半:命令、持久队列、扫描、投递 client.js 浏览器半:输入框控件、卡片、本地化字典 cordis.patch.yml 安装时插入的 Loader 行
locale/{en,zh}.json 插件清单读取的显示元数据
icon.svg bundle 图标 scripts/verify.mjs npm run verify 与 CI 使用的静态检查

- 无构建、无安装步骤:浏览器产物是一个纯闭包工厂。
- npm run verify 校验 manifest、导出、locale 元数据、两个入口文件和工厂 id。
- 本地试用:dsh plugin --profile <profile> add /absolute/path/to/dsh-schedule-send。

许可

MIT © 2026 Zhiyi Zhao
预览分享卡片长什么样 ↓Zhiyi-Zhao/dsh-schedule-send
分享 · DeepSeek Harness Hub
Zhiyi-Zhao/dsh-schedule-send

写好消息设定时间,到点自动作为用户消息发出

这个插件是你维护的吗?
作者本人可认领并核对本条目;认领通过后,详情页会显示「作者已认领」标记。
认领条目 →
回到顶部