GreaterClarity:DSH Web 会话增强插件

DeepSeek Harness(DSH)遵循“一切皆插件”的理念,旨在通过可插拔的方式扩展功能。dsh-greater-clarity 是一个 Web 客户端插件,主要解决会话信息杂乱、历史记录难以快速定位、以及导出内容不规整的问题。它通过在会话头部提供四个核心入口,帮助开发者更高效地管理对话上下文。

核心功能

1. 全局折叠与展开

在会话头部提供开关,用于控制 AI 的“思考链路”与“工具调用”的显示。
* 折叠状态:仅保留每轮对话的最终回答文本。
* 展开状态:显示完整的推理过程与工具调用记录。
* 该开关状态会持久化保存。

2. 历史快速定位面板

点击会话头部的“历史”按钮,会在按钮正下方弹出快速定位面板。
* 功能:支持搜索与点击跳转,跳转后定位到该输入的第一行。
* 显示:每条记录带有“第 N 轮”的序号徽章。
* 提示:若会话存在未加载完全的更早历史,面板顶部会显示“历史未加载完全”提示。

3. 对话导出

提供一键导出当前会话为 Markdown 的功能。
* 生成方式:采用“客户端直出”策略,直接使用浏览器内存中的会话快照生成,响应极快。若快照异常,会自动回退到服务端路径。
* 内容过滤:
* 仅导出用户的输入文本与 AI 的最终回答文本。
* 附件文件以文件名指代。
* 保留代码块、表格、列表等结构。
* 文本转义:
* 用户输入:经过严格转义(反斜杠、实体化、行首标记),防止 Markdown 结构注入与裸 HTML 注入。
* AI 回复:保持原样不转义。
* 文件名规则:
* 格式:时间戳_会话标题.md(或 未加载完全历史对话_时间戳_会话标题.md)。
* 时间戳格式为点分日期(如 2026.9.15)。

4. 设置与头像管理

通过设置弹窗配置插件行为。
* 头像展示:AI 回复左侧显示头像,下方附带轮次标签。
* 头像自定义:支持上传自定义头像,调整大小(16–128px),或控制显隐。
* 路径白名单:上传的头像文件路径必须位于 $DSH_HOME/greater-clarity/ 目录下,外部路径会静默回退。

安装

通过 DSH CLI 安装到 Web Profile:

dsh plugin --profile web add github:Baisbt/dsh-GreaterClarity-plugin

使用方法

  1. 导出对话:点击会话头部的“导出”按钮,浏览器会自动下载排版清晰的 Markdown 文件。
  2. 快速定位:点击“历史”按钮,在弹出的面板中输入关键词搜索,或点击列表项跳转到对应的历史输入。
  3. 调整设置:点击“设置”按钮,上传本地图片作为 AI 头像,或调整导出按钮的显示状态。

设置与数据持久化

插件的数据存储在宿主目录下:
* 设置文件:$DSH_HOME/greater-clarity/settings.json
* 头像文件:$DSH_HOME/greater-clarity/avatar.<ext>

插件提供了三种卸载/停用粒度:
* 临时停用:在设置弹窗中关闭“启用 GreaterClarity”开关,刷新后保持停用状态。
* 软卸载:在设置弹窗底部点击“卸载插件…”,会清空 $DSH_HOME/greater-clarity/ 目录并写入标记文件,跨重启生效。
* 彻底移除:运行 dsh plugin --profile web remove @dsh-external/dsh-greater-clarity,从 Profile 组合中移除插件。

已知限制

  • 导出路径限制:受浏览器安全限制,导出文件仅支持默认下载目录,无法自定义路径。
  • 依赖契约:插件依赖 DSH 当前的稳定契约,包括 webServer、slots、sessionQuery、DOM 属性(如 data-chat-flow-kind、data-variant="think")以及 Buttons 注入的 props。DSH 升级后需回归验证。
  • 转义副作用:用户输入经过严格转义后,导出文档源码中会出现 \-、\* 等序列与 &lt; 等实体,但不影响渲染显示。
  • 快照依赖:客户端直出依赖 chat.order/chat.nodes 结构,若 DSH 升级导致快照结构变更,需回归修复。
  • 头像路径:设置中的 avatarPath 仅接受 $DSH_HOME/greater-clarity/ 目录内的图片。
  • 文件名语义:仅在客户端直出路径下,若历史未加载完全,文件名才会带有“未加载完全历史对话”前缀;服务端兜底路径则无此前缀。
  • 并发模型:单页面内 load/save 请求采用序号守卫,仅采纳最新响应;多开标签页时采用“最后写赢”策略。

构建与目录结构

插件采用 ESM 架构,分为 Host(服务端逻辑)与 Client(浏览器 UI)。

目录结构

dsh-GreaterClarity-plugin/
├── src/
│   ├── index.ts          # HOST:webServer 路由 + 设置持久化
│   ├── pure/             # 双端共享纯函数(转义、导出构建、文件名净化)
│   └── client/           # CLIENT:样式、DOM 层装卸、面板组件
├── cordis.patch.yml      # 插件挂载声明
└── scripts/build.sh      # 构建脚本

构建命令

# 构建 Host
bash scripts/build.sh
# 打包 Client
npm run build:client

生态背景

该插件由社区开发者 Baisbt 维护。DSH 的官方插件目录位于 skillhub.cn,与 DeepSeek 或幻方无官方从属关系。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜