DSH Plugins Marketplace

DSH Plugins

Plugins

/

Development & Infrastructure

/

dsh-auto-successor

r

dsh-auto-successor

Manifest valid★ 2

Auto Relay: When the DSH session water level reaches the threshold, automatically open a new session—the AI first summarizes the task status into a handoff draft written as the first message in the new session, then archives the old session. Long tasks never break.

UI (client)hasBundlePatch

自动接力 · dsh-auto-successor

DSH 会话的上下文快满时,自动换一个新会话接着干——AI 先把当前任务摘要成交接稿,写进新会话第一条消息,旧会话归档。长任务永不断档。

旧会话(水位 88%)→ 生成交接稿 → 新会话(首条消息 = 交接稿)→ 旧会话归档

为什么需要它

DSH 的会话上下文有硬上限。跑长任务时你只有两个选择:手动开新会话并把上下文重新讲一遍,或者让模型在半截上下文里瞎猜。

billion-context 这类插件解决的是「原地压缩」,压缩会丢细节、改历史、影响前缀缓存。自动接力走另一条路:保留完整历史,另起一条干净的会话,只把结论带过去。

装

& "$env:LOCALAPPDATA\Programs\DeepSeek Harness\resources\runtime\cli\bin\dsh.cmd" plugin --profile desktop add github:rodrequezsaievade764-rgb/dsh-auto-successor

Linux / Docker:

dsh plugin --profile <profile> add github:rodrequezsaievade764-rgb/dsh-auto-successor

装好后重启 DSH,左侧栏「自动化任务」下面会出现 自动接力。

用

默认就开着,阈值 85%。水位到点、轮数够,就自动接力,不用你管。

面板三页:

  • 状态 — 每个活跃会话的水位条(绿 / 黄 / 红)、轮数、是否被排除;「接力当前会话」按钮可手动触发。
  • 规则 — 总开关、水位阈值、最少轮数、冷静期、兜底上下文窗口、交接后是否归档、排除的会话标题正则。
  • 日志 — 每次接力一条:自动还是手动、水位、成功还是失败、新会话号;降级交接稿会标出来。

两个全局工具(任何 DSH 会话都能调):

  • successor_handoff — 立即接力(sessionId 不填 = 当前会话)
  • successor_status — 看各会话水位和最近接力

规则怎么定

参数默认说明
水位阈值85%占上下文窗口百分比。想更早换就调低
最少轮数6会话跑过这么多轮才允许自动接力,防误伤刚开的新会话
冷静期10 分钟接力后这段时间内不再自动接力,防连环接力打爆
兜底上下文窗口128000拿不到模型窗口元数据时按这个算
交接后归档开关了只建新会话,旧的留着
接力链上限3 代「接力 · 接力 · …」套到这一层就停自动接力,防套娃;手动仍可触发
排除标题空正则,一行一条;命中的会话不自动接力

建议排除的会话:QQ 机器人会话、后台任务会话这类「每句话都是一轮」的,水位涨得快但没有接力价值。填 ^QQ 就行。

接力链为什么要设上限:接力出来的是新会话,新会话水位涨满又会接力,于是标题变成「接力 · 接力 · 接力 · X」。三五层之后基本可以断定接力没解决问题——是任务本身失控,或者阈值调太低。到上限只停自动接力,不挡你手动点。标题也不会滚雪球:每次只保留一层前缀,不会是「接力 · 接力 · 接力」。

交接稿怎么投递:默认走 followup,交接稿作为新会话第一条消息跑一轮,好处是耐重启;seedMode 设成 system-prompt 就挂到系统提示词侧,省掉「已接上」那一轮空转。宿主没有对应接口时自动回落 followup,日志里写明降级原因。

交接稿长什么样

固定五节,让新会话能直接接手:

## 任务背景
## 已完成      ← 关键文件路径 / 命令 / 参数原文照抄
## 进行中
## 下一步      ← 按顺序列 1-5 条
## 注意        ← 坑、约束、用户偏好

模型挂了也不会断:自动降级为「原始记录截取」版交接稿,接力照常完成,日志里标「降级交接稿」。

数据位置

%USERPROFILE%\.dsh\plugins-data\auto-successor\

  • config.json — 规则
  • log.jsonl — 接力史
  • state.json — 冷静期、上次接力
  • workspace/ — 接力会话落在专用工作区,不污染你自己的项目目录

重装、升级都不丢。

设计要点

方面做法
触发时机监听 session/event 的 turn/end,只在 reason.kind === 'completed' 的正常结束时判断,半途而废的轮次不算
水位测量宿主 tokenMeter.measure(session) 取 token,除以上下文窗口;窗口优先取测量值自带,其次会话当前模型元数据,最后兜底配置值;全拿不到就标「测不到」不瞎猜
交接稿生成宿主 llm.stream 直连,不进会话(不污染任何上下文);只取最近 40 条、每条截 1500 字
新会话走 sessionController.create(同工作区、同 preset),rename 成「接力 · 原标题」(只保留一层前缀)
交接稿投递默认 agent.followup 带 source: { kind: 'plugin' };seedMode=system-prompt 时挂系统提示词侧,宿主不支持则回落
轮数来源优先用进程内实际观察到的轮数;进程重启后拿不到就按对话条数估算,不会往交接稿里写「约 0 轮」
归档workspaceRegistry.archiveSession,失败只记日志不影响接力结果
热生效改规则原地覆盖 cfg 字段,watcher 与工具闭包共享同一引用,不用重启

已知边界

  • 需要 DSH 有 tokenMeter、sessionController、workspaceRegistry 三个服务(桌面版 / Web 组合都有)。缺哪个就在日志里说清楚,不静默失败。
  • 冷静期是全局的,不是按会话:接力一次后,所有会话都等冷静期过去。这是故意的——连环接力比不接力更糟。
  • 接力链上限按标题前缀算。手动改过标题的会话,层数会被重置为 0。
  • 交接稿质量取决于摘要模型。用小模型(如 Flash)也够,但换大模型细节更多。

测试

npm test

33 个用例:纯函数单测(水位判断 / 文本提取 / 轮数估算 / 接力链 / 提示词结构 / 配置校验)+ 端到端 mock 全链路(自动触发、降级、手动、冷静期、排除、接力链上限、两种 seedMode、轮数估算、快照)。全程离线。

License

MIT

Comments

Loading…

From the same category

awesome-dsh-plugin

by awesome-dsh-plugin

A curated list of plugins for DeepSeek Harness (dsh) · DeepSeek Harness 插件精选列表

Development & Infrastructure

★ 24.1k

CC0-1.0

Python

Nov 10, 2026

Index only — not installable

by 0xsline

DeepSeek Harness (DSH) ecosystem: curated plugins, tools, and infrastructure from dsh-external/hub and the public dsh-plugin topic.

Development & Infrastructure

★ 1.3k

CC0-1.0

Python

Nov 6, 2026

Index only — not installable

by woniuniuniu

DeepSeek Harness 自媒体工作台插件:一句话记灵感,一键生成脚本、封面、配图和分镜

Development & InfrastructureManifest valid

★ 771

↓ 3.7k/wk

MIT

JavaScript

Nov 8, 2026

dsh plugin --profile web add dsh-media-desk

by uumit-ai

Open dsh web from your phone or another computer through a UUMit account, without running your own server or installing another program: a built-in tunnel client connects to UUMit's hosted tunnel, and

Tools & CapabilitiesDevelopment & InfrastructureTerminal & ClientsManifest valid

★ 521

↓ 268/wk

MIT

JavaScript

Oct 21, 2026

dsh plugin --profile web add @uumit-ai/dsh-uumit-remote

by Yuuyuko-uu

DSH 鱼的记忆:给会话一份会淡忘的长期记忆,每条都带时间

Development & InfrastructureMemory & ContextSessions & MessagesManifest valid

★ 508

MIT

JavaScript

Nov 9, 2026

dsh plugin --profile web add dsh-fish-memory

by SAOS-3624

Scene-aware storyboard for DeepSeek Harness: 9-16 numbered cells with timestamps + transcript + an audio envelope, packed into ONE image (384 tokens). Two tools: video_storyboard and video_zoom.

Tools & CapabilitiesVision & MultimodalDevelopment & InfrastructureManifest valid

★ 499

↓ 17k/wk

MIT

JavaScript

Nov 10, 2026

dsh plugin --profile web add dsh-video-storyboard