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

会话接力 terryvanke/dsh-session-rollover

DeepSeek Harness
terryvanke41 天前有提交已提供中文文档扫描:未发现敏感能力

上下文将满时自动开新会话并接着干活

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

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

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

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:需留意
是什么
dsh 原生插件 · chat
装得上吗
实装验证未通过(dependency_conflict),装前请到仓库确认最近更新与 issue
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 41 天前
档位由哪些信号合成

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

验证判据与等级说明 →
⚠︎ 实装验证未通过(dependency_conflict · 2026/9/29) ——可能是验证环境差异,装前建议到 GitHub 仓库确认最近更新与 issue。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码
v2.7.0
🟢 扫描:未发现敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。

扫描于 2026/11/4(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

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

依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-agent@deepseek-ai/dsh-session@deepseek-ai/dsh-llm@deepseek-ai/dsh-token-meter@deepseek-ai/schemastery
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 上下文将满自动轮转
  • 持久检查点
  • 新会话交接

DeepSeek Harness 智能体自动会话轮转,带持久检查点、新会话交接和崩溃恢复。

README

由 DeepSeek 最新模型翻译生成
dsh-session-rollover 为长时间运行的 DeepSeek Harness Agent 自动接力到新 Session。 适配 DeepSeek Harness 0.1.7-rc.1 的新 Session 任务接力插件。它在上下文耗尽之前创建全新 Session,保存 Markdown 与 JSON Checkpoint,并让新 Agent 自动继续任务。恢复时以实际文件系统为准。 这是独立的社区插件,并非 DeepSeek 官方组件。它适用于通过 DSH 接入、能提供准确上下文窗口信息的模型。GLM-5.1 的 200K 窗口只是默认配置场景;使用其他模型时,应让 Provider 报告实际窗口,或显式设置回退窗口值。插件不能直接用于 DSH 以外的所有模型运行时。 功能亮点 - 每次 Agent 请求前检查 token 压力,到硬阈值前自动接力。 - 持久保存 Markdown 与 JSON Checkpoint,在不复制旧聊天历史的新 Session 中继续任务。 - 在宿主 API 支持的范围内保留工作区、模型选择与具名权限预设。 - 进程重启后恢复未完成的接力事务,并与官方 compaction 协同。 - LLM 补充 Checkpoint 失败时,使用确定性回退内容。
展开完整文档(README 剩余 1 节)
dsh-session-rollover

为长时间运行的 DeepSeek Harness Agent 自动接力到新 Session。

适配 DeepSeek Harness 0.1.7-rc.1 的新 Session 任务接力插件。它在上下文耗尽之前创建全新 Session,保存 Markdown 与 JSON Checkpoint,并让新 Agent 自动继续任务。恢复时以实际文件系统为准。

这是独立的社区插件,并非 DeepSeek 官方组件。它适用于通过 DSH 接入、能提供准确上下文窗口信息的模型。GLM-5.1 的 200K 窗口只是默认配置场景;使用其他模型时,应让 Provider 报告实际窗口,或显式设置回退窗口值。插件不能直接用于 DSH 以外的所有模型运行时。

功能亮点

- 每次 Agent 请求前检查 token 压力,到硬阈值前自动接力。
- 持久保存 Markdown 与 JSON Checkpoint,在不复制旧聊天历史的新 Session 中继续任务。
- 在宿主 API 支持的范围内保留工作区、模型选择与具名权限预设。
- 进程重启后恢复未完成的接力事务,并与官方 compaction 协同。
- LLM 补充 Checkpoint 失败时,使用确定性回退内容。

原因与架构

官方 compaction 能压缩同一个 Session 的旧历史,但长期编码任务仍可能多次压缩或遇到上下文溢出。本插件增加独立的 Session 接力:ContextMonitor → RolloverPolicy → CheckpointGenerator → CheckpointStore → SessionRolloverManager → FreshSessionCreator → CheckpointInjector → AutoResumeManager。

每次 agent/pre-step 使用官方 ctx.tokenMeter 测量上下文,再计算软阈值与硬阈值。硬阈值公式为 min(floor(contextWindow × hardRatio), contextWindow − outputReserve − safetyReserve)。硬阈值禁止旧 Session 继续发普通请求。插件先写确定性 Checkpoint,再尝试 LLM 补充;Web 路径使用公开的 sessionController.create() 组合预设并调用 ctx.agents.create(),其他 Runtime 直接使用 ctx.agents.create()。新 Session 没有旧历史种子,使用 inject() 和 followup() 继续工作。agent/request-error 负责溢出接力。

状态包括 NORMAL、ARMED、CHECKPOINTING、ROLLOVER_PENDING、CREATING_SESSION、RESUMING、COMPLETED、FAILED、EMERGENCY_ROLLOVER。Session 锁、事务 ID 和预先生成的目标 ID 用于避免重复创建。

安装与启用

需要 Node.js、pnpm 和 DSH 0.1.7-rc.1。克隆仓库后运行:

git clone https://github.com/terryvanke/dsh-session-rollover.git
cd dsh-session-rollover
pnpm install
pnpm run build
dsh plugin --profile web add .

如果 dsh 不在 PATH 中,可通过 Node.js 运行已安装的 @deepseek-ai/dsh/lib/bin.js。包内的 dsh.bundle 会自动把 cordis.patch.yml 加入 Web profile。用 dsh --profile web --dump-config 检查最终配置。已有 Web profile 中无效的旧补丁条目需要先修复。Profile 机制详见官方插件安装文档。

配置与 GLM 200K 推荐值

默认 context.windowTokens=200000、软阈值 0.65、硬阈值 0.72、输出预留 32000、安全预留 24000;实际硬阈值为约 144000 tokens。优先使用模型适配器报告的窗口和输出上限。其他配置位于 src/config.ts:Checkpoint 内容及重试、最大接力次数、最短间隔、工作区和模型保留、溢出回退、存储目录、日志通知。DSH profile 补丁会整体替换 config,自定义时应写全配置对象。

Checkpoint、接力与重启恢复

默认写入 /.dsh/rollover//chain.json,以及 session-001.md/json 等文件。Markdown 面向新模型;JSON 保存 Session 链、任务、文件、错误、决策和唯一下一步。采用临时文件、文件同步、重命名写入。进程重启后检查未完成事务,并复用预定目标 ID;已持久化的 Session 通过 ctx.agents.resume() 恢复。新 Agent 先检查 git status、git diff --stat 和关键文件,再执行下一步。

与官方 Compaction 协同

保留 Agent 预设中的 @deepseek-ai/dsh-compaction-basic。官方实现的默认比例为 80%,但有效阈值还受模型输出预留及默认 65,536 tokens headroom 限制,因此 200K 模型可能在 rollover 之前压缩。它还会对规范化上下文溢出错误有限重试。本插件可按 rolloverAfterCompactions 计数在软阈值接力;硬阈值始终优先。

已知限制与排障

- 当前公开 API 没有稳定的 Web 自动聚焦或 Toast 接口;V1 输出结构化主机日志,不自动切换浏览器 Session。
- Web 路径通过公开 Session Controller 组合 Agent 预设,并恢复模型选择和具名权限预设;任意自定义 Agent setup 回调无法通用复制,custom 权限状态会停止接力。运行中的一次性子 Agent 无法通过公开 Agent API 重新接回父工具结果,插件会跳过这类 Session,由官方 compaction 继续处理;要实现自动接力仍需专用子 Agent 集成。
- 确定性回退使用当前版本已标记 deprecated 的 Session.snapshotEvents();后续迁移到 session-query。
- 重启能避免重复创建目标 Session;极端时序下可能重复排队一次 continuation。新 Agent 必须核对真实文件状态。
- E2E 测试使用模拟 Agent,不调用真实 GLM。
- 如出现 patch: entry ... not found,检查 Web profile 的旧补丁 ID;如插件未激活,检查 dsh.bundle 和 --dump-config。

开发与测试

pnpm run typecheck
pnpm run lint
pnpm run test:unit
pnpm run test:e2e
pnpm run build

V2

增加 Session Chain UI、稳定的自动聚焦、preset setup 集成、公开查询服务读取,以及具备事务保证的 continuation 去重。

参与贡献与许可证

欢迎提交 Issue 和 Pull Request。提交前请运行“开发与测试”中的检查。本项目采用 MIT 许可证。
预览分享卡片长什么样 ↓terryvanke/dsh-session-rollover
分享 · DeepSeek Harness Hub
terryvanke/dsh-session-rollover

上下文将满时自动开新会话并接着干活

这是你的仓库?认领条目

回到顶部