Skip to content

omdsh-dev/dsh-genui

11313Last commit Aug 15, 2026

dsh-genui DSH plugin

dsh-genui is a DSH plugin that lets the model output interactive UI components inside its answers. It renders 30+ components (cards, charts, tables, forms, quizzes) directly in the chat, streaming as they appear. The plugin supports two rendering channels (registry and DOM) to work with any DSH build, and includes local-first interactions like grading, state persistence, and self-healing against malformed specs.

How to install the dsh-genui DSH plugin

dsh plugin --profile web add git+https://github.com/omdsh-dev/dsh-genui.git

Copying does not run this command. Review the repository and version before installing the dsh-genui DSH plugin.

dsh-genui DSH plugin data source

dsh-genui DSH plugin snapshot date: Aug 16, 2026

discovered

What the dsh-genui DSH plugin can do

  • Answer-as-UI with streaming rendering – components appear as the model writes them.
  • 30+ interactive components: cards, tables, charts, forms, tabs, accordions, file trees, timelines, diffs, and more.
  • Function plotting with real-time parameter sliders and auto-animation.
  • Quiz with local grading – scores, per-question results, and explanations appear instantly without model round-trips.
  • State persistence across sessions – answers, locks, and inputs survive refresh and reopen.
  • Self-healing – malformed specs are silently dropped, charts auto-repair, and pathological specs never crash the UI.

Where the dsh-genui DSH plugin fits

  • Displaying real-time data dashboards (e.g., monthly revenue stats with trend charts).
  • Interactive chart analysis – drag sliders to adjust parameters and see live updates.
  • Online quizzes with instant grading and retake options.
  • Form interactions – fill in fields and submit to the model without blur.
  • Creating persistent session panels for ongoing tool outputs.

Who the dsh-genui DSH plugin is for

  • DSH users who want richer, interactive answers from the model.
  • Developers prototyping data-driven UIs directly from model responses.

dsh-genui DSH plugin limitations

  • Requires a DSH environment (any build) and pnpm installed on the system.
  • The model must output dsh-ui formatted JSON fences; new sessions may need a prompt or restart to trigger it.
  • Some older DSH builds may lack the registry extension point, falling back to the DOM channel (which works but may have console warnings).
  • On-demand assets (mermaid, three.js) require network access the first time they are used; offline or slow connections may delay rendering.

dsh-genui DSH plugin: from the repository README

Quoted from the omdsh-dev/dsh-genui README, the upstream source of the dsh-genui DSH plugin. Copyright remains with the original authors.

**English** · [简体中文](./README.zh-CN.md) </div> > Give the model's answers a face — the text is still there, and an interactive UI is already live. > > 🔌 Ecosystem: the repo carries the `#dsh` · `#dsh-plugin` topics — welcome to be listed by @dsh-plugin. The model no longer just answers in text. Install this plugin, ask "how are this month's orders doing", and it renders a **clickable data panel** right inside the answer as it analyzes: watch trends, drag sliders, hit refresh — and the model actually responds. <div align="center"> https://github.com/user-attachments/assets/f5db33ec-7471-4d4a-a85b-79c9962ab4ef </div> <p align="center"> <img src="./assets/showcase-panel.png" width="92%" alt="Real rendering: an interactive monitoring panel"> <br><em>Real output: an interactive monitoring panel rendered by the model (click "refresh" and it regenerates the data)</em> </p> > Player won't load? [Download the mp4](./assets/demo.mp4). Four-act demo script: [demo-prompts.md](./demo-prompts.md). --- ## ⚠️ Read this first: dual-channel rendering (works with any dsh build) The plugin ships **two rendering channels** and picks one automatically at startup — no dependency on a spec

Read the full READMERepository license: MIT

dsh-genui DSH plugin questions

The plugin is installed but the dsh-ui fence still shows as a code block. What should I do?

First, check that your DSH build has the fence-registry extension point (newer builds). If it doesn't, the plugin falls back to the DOM channel, which should still work. Make sure you ran `dsh plugin --profile web list` and see the plugin listed. Then restart DSH web and hard refresh the browser (Cmd+Shift+R). If it still shows as code, ensure the model actually outputs a dsh-ui fence (try prompting 'output with dsh-ui').

After installing dsh-genui, my chat UI goes blank when rendering a dsh-ui fence. How to fix?

This usually happens with an older DSH build. Update DSH to the latest version, then reinstall the plugin. The plugin requires a certain level of host support for the rendering pipeline.

How do I make the model output dsh-ui fences automatically?

After installing the plugin and restarting DSH, the model will learn to use the dsh-ui format. If it doesn't, you can explicitly say 'output it with dsh-ui' in your prompt. For advanced users, you can copy the skill file from SKILL.md to ~/.dsh/skills/genui/ to boost the model's capability.

Do I need to install pnpm? I see a message 'pnpm not found on PATH'.

Yes, pnpm is required for the `dsh plugin` command. Install it with `corepack enable` (if you have Node.js) or `npm i -g pnpm`. Then open a new terminal and verify `pnpm -v` prints a version. The plugin installation will then work.

Can I use dsh-genui with local development (link mode)?

Yes, you can clone the repo, run `pnpm install`, then use `dsh plugin --profile web add link:$PWD` to install the plugin from your local directory. However, for production use, it's recommended to use the git URL form to ensure all dependencies are installed correctly.