dsh-genui: Rendering Inline Interactive UI for DeepSeek Harness Replies

omdsh-dev/dsh-genui

UI & ExperienceVerified
Listed on 2026-10-08
Page last updated 2026-10-27

dsh-genui renders interactive UI inline in DeepSeek Harness replies via the dsh-ui fence — charts, plots, forms, quizzes, Mermaid and 3D scenes — and loops user actions back to the model.

dsh-genui is a rendering capability for DeepSeek Harness that turns dsh-ui code fences in model replies into genuinely operable components. It removes the hassle of text-only answers and separate pages for charts and forms, letting data panels, plots, forms, quizzes, Mermaid diagrams, and 3D scenes live inside the reply while the surrounding text stays intact. Maintained by omdsh-dev under the MIT license, the repository ships the fence-teaching host plugin, the browser renderer client half, and the genui skill, with dual registry and DOM rendering channels.

How to Install

install
npmdsh plugin --profile web add @changfenhuang/dsh-genui
Category
UI & Experience
Platform
DSH Plugin
Author
omdsh-dev
Distribution
Plugin

dsh-genui Key Features

Interactive UI components inline in repliesCharts, forms, quizzes and 3D scenesMermaid plus composable layout primitivesComponent actions loop back to the modelStreaming render as the model writes
Listed on dsh-plugin.org

dsh-genui Repo Summary

What Does It Do?

GenUI is a DSH plugin for DeepSeek Harness that turns dsh-ui code fences in model replies into interactive UI components. It removes the need to open a separate dashboard for charts, forms, or quizzes: sortable data panels, native video, draggable plots, local quizzes, Mermaid diagrams, and 3D scenes render inline in the assistant reply while the surrounding text stays intact. Maintained by omdsh-dev under the MIT license, the repository ships the fence-teaching host plugin, the browser renderer client half, and the genui skill.

Core Features

  • Inline interactive components: layout, charts, plots, forms, quizzes, Mermaid, and 3D scenes render directly inside assistant replies without replacing the text.
  • Dual-channel rendering: it uses the registry channel when the host exposes the fence-registry extension point, and otherwise falls back to a DOM channel with no host source patch required.
  • Streaming rendering: components appear as the model writes them, so the first finished component shows up immediately instead of waiting for the whole reply.
  • Multi-surface fence discovery: it matches the stock code-block surface plus the alternative code-block surfaces some host builds render, with a structural backstop for elements labeled dsh-ui.
  • Action event loop: interactions on a component are sent back to the model as events, keeping the conversation going.
  • Guarded validation: only fences that pass the canonical GenUI validation are taken over and rendered.

How to Use This Plugin?

After enabling it in DSH, just ask the model a question — for example how this month's orders are doing — and the reply can include a sortable data panel or a chart. The model describes the interface with a dsh-ui fence and the plugin renders it as a live component; controls such as refresh, reset, time-range selection, and sliders feed events back to the model. If your host build renders fences with a different class name they still render, with a one-time console warning about the DOM drift. To preview the visual language first, follow the demo prompt sequence and the real output examples in the repository.

How to Troubleshoot This Plugin?

If a fence does not render, first check whether the host exposes the fence-registry extension point: with it the registry channel handles rendering, without it the DOM channel should take over, and if neither works the host DOM has drifted, which triggers a one-time console warning. When the host's final DOM omits fenced-code language metadata, the plugin reads the current assistant's original Markdown from the public ChatSnapshot and only takes over dsh-ui fences; if that source is temporarily unavailable, it falls back to strict canonical validation. Fix the host version or wait for it to recover as described in the official documentation.

This page is an independent rewrite of the plugin's official README — for authoritative documentation and the latest changes, refer to the source: omdsh-dev/dsh-genui. The plugin is third-party code that runs on your machine once installed; inclusion does not imply endorsement — please review the source before installing.

Install, update, and uninstall this plugin in the Plugin Market of DeepSeek Harness's DSH Plugin Hub

DSH Plugin FAQ