DSH Marketplace
EN

dsh-genui

omdsh-dev/dsh-genui

助手回复内渲染交互式 UI 组件:布局、图表、表单、测验、mermaid、3D 场景与回传事件循环。

安装

把 dsh-genui 装进 DeepSeek Harness

npm 方式

直接拉已发布的 tarball,不用克隆整个仓库,也不需要额外配置。如果你用的是别的 profile,把 `web` 换成对应的名字。

GitHub 方式 · npm 包

从 GitHub 装会执行项目自己的构建脚本,而 pnpm 默认拦着不让跑——先跑一次这条命令,pnpm 会打印出要加到 ~/.dsh/profiles/web/pnpm-workspace.yaml 里 `allowBuilds` 下面的那个 key。

安装前须知

装 dsh-genui 之前,先看这几条

  • 源码在这里: omdsh-dev/dsh-genui——已进入社区精选库,DSH 自带的插件市场就是从这儿装的。
  • 开源协议:MIT。
  • 自动识别到:需要密钥。授权之前请先读一遍源码。
  • 被收录在这里不代表通过了安全审计。插件是带着你 agent 的权限在跑。

dsh-genui 是做什么的

Data streams split between two rendering paths and converge into interactive panels.

dsh-genui 是一个 DeepSeek Harness 插件,把模型回复中的交互内容直接渲染成可操作的组件,包括卡片、表格、图表、表单、测验、Mermaid、函数绘图和 3D 场景。用户点击按钮、修改输入或完成测验后,事件可以回传给模型,由模型生成下一步内容;评分、重置、展开折叠等本地可完成的操作则立即在页面处理。

插件启动时会根据宿主能力选择渲染通道:检测到 fence-registry 时接入宿主的流式渲染管线,否则观察会话 DOM,识别 dsh-ui 代码块并挂载自己的渲染树。组件可以在回复尚未结束时出现。render_ui tool 使用同一套 UI 规格,panel: true 可把内容放进会话面板。交互状态按会话和内容指纹保存,最多保留 200 个 block。

它适合需要把答案做成可视化、可填写或可选择内容的 DSH 用户。不需要交互 UI 时,纯文本回复更合适;如果不希望维护 pnpm 依赖,也不应安装。目录将 dsh-genui 标记为需要 credentials,但 README 没有说明具体凭据;插件会接触宿主会话 DOM、本地 UI 状态和模型事件循环。

dsh-genui 的文档

环境要求

README 要求已安装 DSH,并且 pnpm 位于 PATH。插件支持任意开源 DSH build。安装或更新后,需要重启 DSH web 并执行 hard refresh;可在新会话中输入 “use dsh-ui to draw a stats dashboard” 验证。源码开发需先执行 pnpm install;README 特别说明,link: 不会安装 mermaidthreereact,因此不能直接用于全新源码目录。

渲染通道

插件启动时检查 fence-registry extension point。宿主提供它时,fence 进入宿主的 streaming render pipeline;否则使用 DOM channel,观察会话 DOM 并自行挂载 render tree。DOM channel 支持 md-code-block.code-block.code-block-small,也支持带有 dsh-ui 标识和 <pre> 内容的结构性 fallback。组件可在模型输出过程中逐步出现。

命令与交互

render_ui tool 会把相同的 UI spec 渲染到 tool row 中;回复内的 UI 通过 fence 传递,工具式 UI 通过 render_ui 传递。panel: true 会将内容放入 composer 上方的持久会话面板。

按钮、switch、input、dropdown、checkbox、radio、textarea 和 quiz 可以携带 action。事件回传模型;同名 action 使用 300 ms trailing debounce,快速操作会合并。input 按 Enter 提交,textareaCtrl+Enter 提交,前提是设置 submit:true。带 id 的字段会收集到 submit action 的 fields 中。

状态与限制

答案、提交锁和输入值按会话及 content fingerprint 保存,LRU 上限为 200 个 block;相同内容重新渲染时保留状态,新内容重新开始。quiz 的评分、重置、展开折叠和选择等本地操作不需要模型往返。不得请求密码、API key、access token、recovery code 或其他 secrets;密码输入会保持遮罩、不持久化,也不会进入表单收集。README 未说明其他配置 key 或环境变量。

根据项目自己的文档整理,会跟着上游更新。两边对不上时以源码仓库为准—— 去 GitHub 看原始 README

同一分类

dsh-genui 的同类插件

dsh-web-ui-all

zhu1090093659

3.7k

DSH Web UI 插件与皮肤合集:任务看板、git 图、右侧面板、远程移动端 UI、桌宠、实时 token 统计与皮肤中心。

没有一行式安装命令——这个插件在一个大仓库的子目录里,也没发 npm 包。

GitHub 源码TypeScript今天
1.6k

侧边栏完整工作台:内置文件渲染编辑、终端、Git 与子代理,支持三方插件注册新 Tab。

npm 包TypeScript今天

dsh-TUI

ccch1mneyyy

1.5k

Claude Code 风格全屏终端 UI:像素鲸鱼顶栏、实时工作状态行、思考流式展开。

npm 包TypeScript今天

dsh-at-file

omdsh-dev

261

Codex 风格的 `@file` 文件引用,输入框里直接搜索并引用工作区文件。

npm 包JavaScript今天
190

DeepSeek Harness 的终端 UI(TUI)。

npm 包TypeScript今天
158

对话内生成式 UI:模型把交互式 HTML 卡片直接画进会话流,带流式预览与沙箱渲染。

GitHub 源码TypeScript昨天