mirror of
https://github.com/hansjone/dsh-ops-cron.git
synced 2026-10-09 01:53:19 +08:00
Default mirrorToSession to false so cron summaries stay in run history unless the sidebar checkbox or mirror_to_session is enabled. Co-authored-by: Cursor <cursoragent@cursor.com>
2.5 KiB
2.5 KiB
dsh-ops-cron(运维 fork)
本仓库是 Whale-Zhang/dsh-cron-tasks 的 运维 fork,用于:
- Agent 自建定时任务(
cron_create/cron_list/ …) - 按创建来源默认投递:WhatsApp 会话 → IM;Web/DSH 会话 → 侧栏新会话
- 与 dsh-im-ops 的
ctx.dshIm.send(botId, targetId, text)打通 - 可选会话镜像(默认关闭):
mirrorToSession/mirror_to_session=true时才把摘要写入创建时的有效会话(Web / WhatsApp 绑定会话)
不要与上游 @dsh-external/dsh-cron-tasks 装进同一 profile(工具名冲突)。
安装
# 建议顺序:先 im,再 cron
dsh plugin --profile web add -w "github:hansjone/dsh-im-ops"
dsh plugin --profile web add -w "github:hansjone/dsh-ops-cron"
# 重启 dsh web
本地开发:
dsh plugin --profile web add -w "D:\project\chatgpt\dsh-ops-cron"
相对上游的改动
- 包名 / cordis id / HTTP 前缀仍为
dsh-ops-cron;侧栏产品文案为「定时任务」 - Job 增加
delivery: { kind: 'dsh'|'im', botId?, targetId? } - Job 增加
origin: { kind: 'web'|'im', sessionId?, peer? }(创建时钉死;IM 开火时优先按conversationKey解析当前绑定会话) - Job 增加
mirrorToSession: boolean(默认false;侧栏勾选 /cron_create的mirror_to_session) cron_create支持delivery/im_bot_id/im_target_id;未显式指定时,若当前会话能resolveSessionPeer且已有匹配投递目标 → 默认 IM- 开火后若
delivery.kind === 'im',把 assistant 摘要经ctx.dshIm.send投回 - 开火终态且
mirrorToSession === true时,把同构摘要镜像进有效会话(agents.get或agents.resume后session.append,不另开一轮模型;不用agents.create,避免覆盖已有会话)
执行会话 vs 有效会话
| 角色 | 是什么 | 用途 |
|---|---|---|
| 执行会话 | 每次开火新建的 root Session(侧栏历史可打开) | 跑 Agent、保留工具轨迹 |
| 有效会话 | 创建时的 Web 会话,或 WhatsApp/IM conversationKey 当前绑定的 Session |
用户日常追问所在处;仅当 mirrorToSession 开启时才写入摘要 |
dshIm.send 只保证平台侧可见,不会自动写 Harness 会话日志;镜像是 cron 层可选的额外一步。
关键告警推送仍在 netxops,不经过本插件。