DeepSeek Harness Plugin Hub

发布与管理完整 Harness Profiles,发现适合你的插件。

探索

插件目录环境预设文档中心动态

社区

发布插件联系我们报告问题

相关链接

Plugin Hub GitHubDeepSeek Harness 官方项目系统状态隐私说明
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

独立、非官方社区项目,与 DeepSeek 官方无隶属、授权或背书关系。

Unread Mark — DeepSeek Harness 插件(DSH Plugin)
← Plugins
U

@dsh-external/dsh-unread-mark

Unread Mark

会话行「标记未读 / 取消标记」:小红点主动未读标记(用户钉住待处理),与系统绿点区分;绿点存在时两项禁用,红点仅手动取消才消失,服务端持久化

插件会安装到这里;不确定时保持 web。

npx -y @deepseek-ai/dsh plugin --profile web add github:yangyizhu8/dsh-unread-mark#69a6e33a08b73bce93088fbcdf6d8f4a5bfa24ca
README兼容性版本

兼容性与来源证明

Unread Mark 以 @dsh-external/dsh-unread-mark 发布,当前版本为 0.1.0。Plugin Hub 会校验它的 manifest,并保存精确安装来源,便于复现安装结果。

DSH 兼容范围
*
运行环境
web
发布来源
github
Registry 更新时间
2026/9/12

版本

0.1.0stable
2026/9/12

相关插件

正在加载相关插件…

最新版
0.1.0
DSH
*
HMR
重启进程
Tree shaking
未声明可安全裁剪
解包体积
未提供
文件数
未提供
Surface
web
许可证
BSD-3-Clause
发布源
github
GitHub
★ 0
周下载
0
最近提交
2026/9/12
查看源码 ↗
README Badge

点击下方 Badge 复制 Markdown,粘贴到 README 即可。

这是你的 Plugin?认领权益 · 优先安全扫描

验证 package.json 声明的 GitHub 仓库,即可管理这个公开页面。认领后,Hub 会优先安排当前版本的安全扫描,并在通过后公开展示结果。

认领这个 Plugin →
报告问题
DeepSeek Harness Plugin Hub
ProfilesPlugins分类动态文档登录管理 Profiles
ProfilesPlugins分类动态文档登录

相关插件

继续浏览 productivity-workflow 分类下经过校验的插件。

Acp App@deepseek-ai/dsh-acp-appdsh ACP 配置文件包:基于 dsh-base 的仅限自动化的 JSON-RPC stdio 和进程生命周期管理Client Ui Task Board@linxin666/dsh-client-ui-task-board面向 DSH Web GUI 的主机权威任务面板,支持实际会话执行、主机 cron 调度以及可选的跨平台空闲睡眠保护;以挂载方式提供,无需修改 DSH 源代码。Web All@linxin666/dsh-web-allDSH Web UI 全家桶聚合插件:一键安装全部功能插件(task-board / git-graph / pet / remote-web-ui / web-ui-settings / skin-center / community-plugins / compat shim)。compat 桥接层已并入本包(src/client),无需独立 compat npm 包。Agent Teams@nanmicoder/dsh-agent-teamsAgentTeams for DeepSeek Harness:通过自然语言驱动多智能体团队协作(队长、成员、具有依赖关系的任务、消息传递),并在 Web GUI 中提供树状监视器

README

dsh-unread-mark — 会话行「标记未读 / 取消标记」

在 dsh Web 会话行的 "..." 菜单追加两项,用用户主动的红点钉住「还没处理完」的会话, 与系统绿点(跑完未点开)区分。需求对齐定稿:2026-09-12。

功能

会话状态圆点标记未读取消标记
绿点(系统「跑完未点开」)绿点置灰置灰
无标记—可点置灰
红点(用户主动标记)红点置灰可点
  • 红点语义:会话标题前 8px 红色圆点(#D64545),与系统绿点 slot 同位异色。
  • 红点不随刷新/点开消失——这是它与绿点的本质区别:只有手动「取消标记」才消失。
  • 绿点存在时两项都禁用(用户明确要求);置灰为菜单项半透明 + aria-disabled + 原生 disabled。

原理(合同依据,dsh 0.1.1-rc.2 实证)

  • 绿点判定:SessionSummary.completed === true 且非运行中、无待交互 (ui-workspace/tree.ts:30 注释原文:"Finished running while not selected and not yet opened (the green 'done' reminder dot)")。从 ctx.sessions.list.getSnapshot().byId[id] 读取,无需 DOM 探测。
  • 菜单注入:轮询 [role=menu] + 语义锚(归档会话/分叉会话)→ 克隆末项 wrapper 追加两项 (沿用 dsh-session-handoff 的 MenuInjector 模式;锚点不匹配即 fail-soft 缺席)。
  • 会话身份:React fiber 精确路径(fiberSessionIdOf)→ aria 标题匹配兜底。
  • 持久化:host 半 loopback RPC(channel /dsh-unread-mark)+ ~/.dsh/dsh-unread-mark-state.json (原子写:临时文件 + rename)。端点 list / set / clear。
  • 红点渲染:每 1.2s 巡检会话行(div[role=treeitem])→ 按 host 集合增删红点(幂等)。 拉取失败时本轮不动红点,避免「读失败 = 清空红点」的误删。

安装 / 卸载

# 安装(开发期热注入;正式转正走 bundles 需停机窗口,同 dsh-session-handoff 工艺)
dsh plugin --profile web add "D:\deepseek-harness\plugins\dsh-unread-mark"

# 卸载
dsh plugin --profile web remove @dsh-external/dsh-unread-mark
# 状态文件(如需清空标记):删除 ~/.dsh/dsh-unread-mark-state.json

准入自检:node scripts/check-plugin-ready.mjs plugins/dsh-unread-mark 全 PASS。

验收证据(2026-09-12,无头 CDP 实测)

  • 红点:dotCount=1,位于被标记会话行,background=rgb(214,69,69)、width=8px。
  • 菜单注入:六项 = 重命名 / 分叉会话 / 归档会话 / 标记未读 / 取消标记 / 移交会话。
  • 状态机(未标记会话):标记未读可点、取消标记置灰 → 点「标记未读」→ host 集合新增该 id、 页面红点 1→2 → 再开菜单:标记未读置灰、取消标记可点 → 点「取消标记」→ 集合移除、红点 2→1。
  • 状态机(已标记会话):标记未读置灰、取消标记可点。
  • 持久化:~/.dsh/dsh-unread-mark-state.json 内容随 set/clear 实时更新;list 端点回读一致。
  • 回归:页面 Console 零报错(client 轮询 RPC 全程无 transport 失败)。

已知边界

  • 绿点分支未在本机实测(验收时无 completed=true 的会话):逻辑为 isGreen() 读 SessionSummary.completed(剔除运行中/待交互),与官方 tree.ts 的绿点条件一致; 遇到绿点会话时应表现「两项都置灰」。
  • 注入锚点依赖宿主菜单语义(归档会话/分叉会话)与行结构(div[role=treeitem] + fiber node.id);宿主升级改结构时 fail-soft 降级为「菜单项缺席 / 红点不渲染」,不抛错、不拖死宿主。
  • 红点是浏览器可见态,不写入会话日志;多浏览器/多设备共享同一 host 状态文件(同 ~/.dsh)。