跳到主要内容

dsh-dingo

已验证

dsh-dingo · v2.3.0 · MIT · Web 界面

DSH 声音提醒 + 对话直达插件:多对话并行时,哪个对话有回复就出声提醒,点右上角卡片直达对应对话;切到别的应用时还有系统级通知(macOS 通知中心 / Windows toast),点击直达。当前对话当/当当(crisp 档),其他对话叮/叮叮(soft 档)。

安装

dsh plugin add dsh-dingo

用 dsh --profile default --dump-config 确认 layer 已生效 —— 参见安装指南。

源码

标签

作者

说明文档

dsh-dingo 2.0

English | 中文

Ding + Go —— DSH(DeepSeek Harness)声音提醒 + 会话卡片 + 自动命名插件。

2.0 把原来的“事件驱动小卡片”升级为会话 1:1 常驻卡片:每个活跃对话一张卡片,实时反映状态,并支持自动命名。


功能一览

  • 会话 1:1 卡片(常驻,状态实时更新)
  • 多状态颜色/图标区分
  • 紧凑统计胶囊 + 悬浮详细面板
  • 跨会话草稿检测
  • 等待后台/子任务/蜂群状态识别
  • 当前工作区名称标签
  • 后台任务数量显示
  • 自动命名(按钮 / 对话内自然语言 / 命令)
  • 声音提醒 + 系统通知 + 深链直达(1.x 能力保留)

状态与优先级

状态优先级

优先级 状态 含义 颜色
1 异常 任务失败 / 异常结束 红
2 疑问 需要你回答 橙
3 草稿 非当前对话有未发送输入 紫
4 待阅读 已完成且需要阅读 绿
5 等待后台/子任务/蜂群 主对话完成,但后台/子任务/蜂群仍在跑 青
6 中间输出 执行中且已有部分内容 浅蓝
7 执行中 正在执行 蓝 spinner
8 正常 已完成且已看过 灰

当前对话正在输入内容属于正常状态,不触发顶部草稿提醒;切到其它对话后原对话草稿会恢复紫色提醒。


卡片怎么用

位置说明:DSH 是三栏布局——左侧边栏(工作区/会话列表、设置)|中间会话列|右侧详情列。 统计胶囊(全宽条)位于左侧边栏的底部,是 footer 区最上面的一行独立横条:在底部功能按钮(如 Cordis 面板图标)的上方、设置按钮(齿轮)的上方。

  • 左侧边栏底部会看到一条独立全宽横条(统计胶囊):独占一行,位于底部功能按钮(Cordis 面板等,换行排在它下面)与设置按钮之上;显示当前活跃会话的状态统计——
    • 异常红点+数量 / 疑问橙点+数量 / 执行中 spinner+数量 / 中间输出 / 等待后台 / 正常计数(图标紧贴数字,单元间留空隙);
    • 有需要处理的状态时整条呼吸/辉光闪烁(异常最快最猛);
    • 右侧显示「N 个活跃会话」。
    • 空态补位:没有任何活跃会话(如刚重启、事件还没产生)时横条常显,显示灰点 + 0,点开面板显示「暂无活跃会话」——不会凭空消失。
    • 加载即显示:无需等新事件——执行中 / 待你回答 / 已完成未读 / 草稿 / 后台任务等状态由客户端从会话快照直接判定,host 事件到达后自动合并去重。
    • 会话头部操作行保留:工作区名称标签、Rename 按钮(自动命名)。
  • 鼠标悬停/点击统计胶囊,会向上展开详细卡片面板(面板从横条向上弹出):
    • 第一行:工作区名(如有未完成后台任务,会显示小 spinner + 数量);
    • 第二行:对话名;
    • 不同状态不同颜色;
    • 点击卡片直达对应对话;
    • × 关闭仅移除本次卡片。
  • 面板 5 秒无操作自动关闭,也可以点击统计胶囊手动开关;
  • 横条常驻侧边栏底部,新开 DSH / 空白首页(hero)时同样可见;侧边栏收起为 56px rail 时压成紧凑小图标;
  • 子代理 / Worker 会话不会出现在卡片清单里。

统计胶囊

详细卡片面板


自动命名

入口 方式
Rename 按钮 独立调用 DeepSeek V4 Flash 生成标题
对话内自然语言 主 LLM 在当前上下文生成标题后调用 rename_current_session 工具改名
/dingo rename 兜底命令,走独立 Flash 逻辑

生成规则:

  • 只取最近 5 条用户消息;
  • 中文 620 字 / 英文 312 词;
  • 标题要有区分度,避免“帮我/优化/请问”等雷同前缀;
  • 只输出标题本身。

与 TaskSwarm(蜂群)配合

dsh-dingo 可以和 dsh-taskswarm 配合:

  • TaskSwarm 通过标准 Cordis 服务暴露 ctx.get('taskswarm');
  • dsh-dingo 会读取其中的活跃批次;
  • 如果某个主对话发起的蜂群还在跑,即使主对话已经完成,卡片也会显示等待后台/子任务/蜂群状态;
  • 这样你在卡片面板里就能看到“主对话已完成,但蜂群还在跑”的未完成状态。

两个插件可以独立使用,也可以组合使用。


命令

/dingo on|off        # 开/关提醒
/dingo status        # 查看开关、DND、队列状态
/dingo dnd [on|off]  # 免打扰
/dingo rename        # 自动命名当前对话(兜底)

安装

# 本地源码安装(开发)
dsh plugin --profile web add /path/to/dsh-dingo

# 或 npm 安装(发布后)
dsh plugin --profile web add dsh-dingo

DSH profile 通过 link:/path/to/dsh-dingo 指向本仓库时,重启 DSH 后生效。


配置

- id: dsh-dingo
  config:
    enabled: true
    feedback:
      toneStyle: soft
      dnd: false
      dedupeWindowMs: 10000
      quietHours: { start: '', end: '' }
    # systemNotify: true
    # systemNotifyBaseUrl: ''

开发

npm install
npm run typecheck
npm test
npm run verify

更多实现细节见 docs/v2-features.md 和 docs/dsh-plugin-dev-tips.md。

License

MIT