前言¶
在 DeepSeek Harness(DSH)里并行跑多个 agent 会话时,失败往往很安静:某轮因 429 或致命 API 错误结束,会话在侧栏里仍像「开着」一样,只有点进去或隔很久才会发现。日志查看器能还原细节,但不适合一眼判断「现在谁还在跑、谁挂了、谁在等你拍板」。
下面介绍社区插件 @almazom/dsh-needs-attention-sidebar(仓库 almazom/dsh-needs-attention-sidebar)。它在 DSH Web 侧栏 Workspaces 区块上方注入一块紧凑的 Focus 区域,按 Working、Attention、Finished 三个页签做实时分诊;致命错误标红,限流/配额压力标琥珀色。实现上不改动 DSH 核心,仅通过插件侧扫描路由与客户端 DOM 挂载完成。
这是什么¶
| 项 | 说明 |
|---|---|
| 名称 | @almazom/dsh-needs-attention-sidebar |
| 维护者 | almazom |
| 分类 | 客户端(Web 侧栏 UI + 插件自有只读扫描路由) |
| 依赖 | DSH >=0.2.0-rc.1(安装时按 engines.dsh 校验) |
| 当前包版本 | 0.3.4(以 package.json 为准) |
| 许可证 | MIT |
插件在侧栏提供 Focus 块,内含三个页签:Working(当前有未结束轮的会话,时长每秒跳动)、Attention(需人工查看的异常与等待态)、Finished(已正常结束或你手动停止的会话,带未读标记与 · N new 计数)。设计思路接近急诊分诊板,而不是完整日志浏览器。
核心功能¶
三个页签分别表示什么¶
- Working:正在进行中的会话,展示当前 open turn 的累计时长。
- Attention:按组展示需关注项:
- FAILED(红色 ⊗):上一轮以致命 turn 错误/中止结束(如 5xx、鉴权失败、模型失败、413 等)。
- LOOK(琥珀 ◉):可疑或降级输出(如
blocked、max-tokens截断、hook 中止,以及 429 / 配额 / 计费等限流类压力——归类为琥珀「limit」,而非红色 fatal)。 - WAITING(琥珀 ⛨):工具或审批请求长时间未应答。
- Finished(绿色 ✓ 或你停止的 ⏸):自你上次查看以来完成的会话可带绿色
!徽章;列表有「自上次访问以来」的分隔。
顶栏还有彩色芯片摘要(工作中 / 你停止的 / 需关注数量),chevron 可把整个块收成一行(状态会持久化)。
扫描与性能¶
客户端轮询插件自有路由;服务端仅在收到请求时扫描会话日志,无后台常驻守护进程。扫描结果按文件 mtime 缓存,响应节流为每 20 秒最多一次完整扫描,超过 10 秒返回 504 scan-timeout。空闲侧栏不产生额外请求。
默认只扫描 freshness 窗口内「最近被触碰」的会话(默认 12 小时,文档写明可配置)。列表单组最多展示 20 行,超出以 +N more 截断,避免一次异常拖垮侧栏。
交互与安全¶
- 行上的
×可 dismiss(刷新后仍保留,并支持 Undo toast)。 - 页签、分组与行支持键盘焦点与 ARIA,可不依赖鼠标操作。
- 发往浏览器前,行标题经脱敏(如
sk-…、Bearer …、token=…等形态会被剥离)。 - 扫描仅在本地读会话日志;路由对 DSH Web 连接做准入校验,非
GET返回405,Cache-Control: no-store;文档说明无遥测、无对外网络请求。
卸载插件后,侧栏恢复为安装前样式。
安装与启用¶
需要已安装 DSH Web 能力,且版本满足 >=0.2.0-rc.1。
在 DSH Web UI 中打开 Plugins → Add plugin,粘贴仓库地址;或在终端执行(README 原文命令):
dsh plugin --profile web add github:almazom/dsh-needs-attention-sidebar
包声明了 dsh.bundle.patch,安装后 DSH 会自动注册 cordis patch。重启 Web 通道或刷新页面后,Workspaces 上方应出现 Focus 块。
若该包已发布到 npm,也可使用包名安装(README 提供的替代方式):
dsh plugin --profile web add @almazom/dsh-needs-attention-sidebar
无需构建步骤,无 install 生命周期脚本,纯 JavaScript。升级可在同一 GitHub 地址上重复安装,dismiss、折叠状态等本地保存状态会保留。
典型用法¶
- 安装并启用后,侧栏展开 Focus,先看顶栏芯片:琥珀数字表示 Attention 条数,优先点 Attention 页签。
- 在 FAILED 组处理红色项(致命错误);在 LOOK / WAITING 组处理限流、截断或未答审批。
- 长时间并行任务时切到 Working,根据跳动时长判断是否卡死。
- 任务收尾后看 Finished 的
!与· N new,点开会话核对输出;误 dismiss 的行用 toast Undo 恢复。 - 侧栏拥挤时用 chevron 折叠 Focus,需要时再展开。
阅读块面时记住颜色语义:红 = fatal turn;琥珀 = 限流/配额/需看一眼/待审批;绿 = 正常完成(Finished 上的 ! 表示「新来的完成项」,不是告警)。
适用场景与注意¶
适合谁:经常在 DSH Web 里同时开多条 agent 会话的开发者,希望侧栏承担「会话健康看板」,减少逐个打开会话排查 429 与静默失败的成本。
权限与信任:插件以当前 DSH 进程权限读取本地会话日志并提供只读路由。安装前应阅读 GitHub 仓库 源码与 MIT 许可证,确认符合你的环境策略。
生态说明:DSH 奉行「一切皆插件」;SkillHub 插件目录 为社区站点,与 DeepSeek / 幻方无官方从属关系,本文介绍的是社区维护的客户端插件,非 DSH 核心内置功能。
结尾¶
dsh-needs-attention-sidebar 把多会话下的「谁在跑、谁挂了、谁在等你」收拢到侧栏一块 Focus 区域,红/琥珀分诊与零核心改动的设计,适合作为 DSH Web 日常并行开发的辅助面板。