Passer au contenu principal
I

dsh-modern-ui

iroha1145/dsh-modern-ui

Modern UI browser extension for the unmodified official DSH release

Installer

dsh plugin --profile web add github:iroha1145/dsh-modern-ui

README

DSH Modern UI

中文 · English

给官方 DeepSeek Harness(DSH) 用的现代化 Web 界面插件,npm 包名 @iroha1145/dsh-modern-ui。不修改官方后端,随时可以切回官方界面。

Modern UI 亮色主题:推理分组、官方工具卡与回答 Modern UI 暗色主题:代码块、表格与追问建议

安装

前提:

  • 已装好官方 DSH,版本在 0.2.1-rc.2 及以后的 0.2 系列(已验证 rc.2、rc.3、rc.4,见兼容矩阵)。
  • pnpm 在 PATH 上(dsh plugin 会调用它)。
  • web profile 至少启动过一次,没有的话先运行 dsh web。
dsh plugin --profile web add @iroha1145/dsh-modern-ui

装好后刷新浏览器。

  • 官方聊天界面的偏好(工作过程视图、折叠时机、用量展示等)不会搬过来,在「设置 → 通用」里重新选即可。官方原有设置不会被删,切回官方界面后照旧生效。
  • 离线安装:从 Releases 下载 modern-ui.tgz,执行 dsh plugin --profile web add ./modern-ui.tgz。
  • 不支持从 Git 地址安装。

切回官方界面

dsh plugin --profile web remove @iroha1145/dsh-modern-ui

也可以在「插件管理」里停用整个 @iroha1145/dsh-modern-ui 再刷新。只停用里面的 modern-ui 条目不够。

官方 Desktop(部分支持)

  1. 先打开一次 Desktop,再完全退出。
  2. 用 Desktop 自带的 dsh 安装(菜单「应用 → 管理 dsh 命令…」把它加入终端):
    dsh plugin --profile desktop add @iroha1145/dsh-modern-ui
    
  3. 重新打开 Desktop。卸载把 add 换成 remove,同样要重启 Desktop。

启用后 Desktop 的首次引导会记为已跳过。原生文件拖出、多窗口、「Open In…」等原生能力还没验证,见 Desktop 验收记录。

主要功能

  • 对话:思考过程分组折叠、消息时间轴导航、代码块与 Markdown 预览折叠。
  • 输入:选中文字快速引用、图片原图粘贴和拖拽、命令与文件引用胶囊。
  • 卡片:基于 OpenUI 的交互组件(openui-lang 代码块:卡片、流程图、图表、表格、能计算的小工具)、followups 追问建议、子代理编队视图、工具调用卡片。
  • 模型选择卡片,可设置推理强度。
  • 8 种界面语言,多套明暗主题。

「回答可视化组件」默认不改模型提示词;在「设置 → 通用」开启后,会向模型追加约 30 KB(约 7,000 个词元)提示词,让回答使用卡片、流程图等组件。同一页的「分段交付成果」是另一个独立开关,默认也关闭,开启后追加约 3 KB 提示词:需要几轮工具调用的回答,查完一部分就先交出这部分的结果,再继续下一部分。组件需要 Chrome/Edge 111、Safari 16.2、Firefox 121 或更新的浏览器。

可选:如果你有 TypeSafe 的 Jev 访问权限,打开「回答可视化组件」,再在「设置 → 通用 → Jev 呈现建议」里填入密钥并保存(也可以放进环境变量或 DSH 的 .env,变量名 TYPESAFE_API_KEY)。之后主会话的模型会多一个可选工具:拿不准怎么展示时,可以先请 Jev 参谋一下用纯文字、表格、卡片、步骤、图表、流程图、绘图、计算器,还是几种可视化组合。问不问由模型自己决定,不问是正常情况,最终回答也可以全是 Markdown。Jev 只看到这一轮用户的请求和模型写的一段内容结构概述(最多 600 字),看不到资料原文,所以它的回答只当参考:判断为纯文字表示「没有额外建议」,判断为某种组件也只是「可以考虑」,模型可以不采纳、换别的形式或几种组合着用。每一轮最多问 Jev 一次。没有密钥、关掉开关或关掉「回答可视化组件」时这个工具不会出现,子代理始终看不到它;Jev 超时或出错时工具只回答「这次没有建议」,回合照常进行。

可选:一键隔离安装

适合本机没有 DSH,或想让 Modern UI 用独立的程序目录和数据目录。从 Releases 下载 installer.zip,解压后进入 plugin-preview:

sh ./install.sh '/path/to/program' '/path/to/data'

Windows 用 powershell.exe -NoProfile -ExecutionPolicy Bypass -File ./install.ps1 -Root 'D:/DSH-Modern/program' -DataHome 'D:/DSH-Modern/data'。

安装器会准备私有的 Node、pnpm 和官方后端,安装前备份数据目录,并迁移官方聊天偏好。基于已有 DSH 安装、附带社区插件、回滚和卸载等做法见安装详情。

常见问题

  • 装好后界面没变:先刷新浏览器(Desktop 要重启)。再确认装进了正在运行的 profile(dsh web 用 web,Desktop 用 desktop),并且「插件管理」里整个 bundle 已启用。
  • 能和社区插件一起用吗:已验证 dsh-context@0.75.1 和 dsh-better-sidebar@0.28.0。通过官方公开槽位扩展的插件一般能共存;依赖官方内部结构、或自带一套聊天或布局界面的插件不保证。
  • 官方 DSH 升级后失效:先看兼容矩阵。每天的自动测试发现新版本不兼容时,会开一个 upstream: <版本> 兼容失败 的 issue。

本地构建

需要 Node.js 24:

npm ci --ignore-scripts
npm run build      # 编译到 packages/modern-ui/lib
npm run preview    # 生成 .artifacts/plugin-preview(tgz 与安装器)

参与开发见 CONTRIBUTING.md,版本变化见 CHANGELOG.md。

文档

安装详情 · 兼容矩阵 · 架构 · 旧数据迁移 · 宿主兼容层

License

MIT。从 DeepSeek Harness 派生的部分保留上游版权,见 THIRD_PARTY_NOTICES.md。

Plugins associés