Back to plugins
dsh-genui Cover

dsh-genui

Give the model's answers a face — interactive UI components rendered inline in assistant replies

github.com/omdsh-dev/dsh-genui
325 MIT Author omdsh-dev Updated

Install

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

Screenshots 3

dsh-genui

Give the model’s answers a face — the text is still there, and an interactive UI is already live.

What problem it solves

Models answer in text, so data dashboards and interactive panels are out of reach. Install this plugin, ask “how are this month’s orders doing,” and a clickable data panel renders right inside the answer as it analyzes — watch trends, drag sliders, hit refresh, and the model actually responds. The plugin ships two rendering channels and picks one automatically: the registry channel when the host exposes the fence-registry extension point, and a DOM channel (observing the session DOM) for stock DSH and older builds.

Since 0.7.2 it supports streaming rendering — components appear as the model writes them, the first finished component shows up immediately, no waiting for the whole reply. Since 0.8.3 fence discovery is multi-surface (md-code-block, deepsuite-style .code-block, and more), so any host build can render. The render core is ~110KB (28KB gzip); mermaid and three.js load on demand and never block startup.

Key features

  • 30+ components: cards, tables, charts, forms, tabs, accordions, file trees, timelines, diffs…
  • Function plots & quizzes: plot draws curves with live slider redraw; quiz grades on click with local, instant grading
  • Native media: audio and video play inline with posters and visible failure states
  • State persistence: answers, submission locks, and input values saved per “session + content fingerprint,” LRU-capped at 200 blocks
  • Local-first & honest interactions: UI-only state changes happen instantly; buttons without an action render disabled
  • Event loop: buttons/switches/inputs carry action; same-name events debounced at 300ms
  • Tool channel & session panel: the render_ui tool plus a persistent, resizable panel
  • Self-healing & zero intrusion: spec guards and mermaid auto-repair; without the plugin, fences are just code blocks

Quick start

Prereqs: dsh installed (any open-source build works) and pnpm on PATH (corepack enable or npm i -g pnpm, then a new terminal). Install:

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

Restart dsh web and hard-refresh, then say “use dsh-ui to draw a stats dashboard” in a new session to verify. The model emits a dsh-ui fence; the browser renderer claims it and renders. Components are whitelisted, and function expressions go through a standalone parser — never eval.

Who it is for

  • Users who want the agent to output live dashboards, panels, and interactive cards
  • Developers doing data analysis, ops reports, or prototype demos inside DSH
  • Teams that need quizzes, forms, and other interactive rich replies
Tags UI & Theme

Compiled from the project README · All rights belong to the original author

Report issue / Request removal

Related plugins