DSH Hub
dsh-plugin-genui cover

pengyue-polaron/deepseek-harness-genui

dsh-plugin-genui

UIWeb UI120 GitHub stars· updated 2026-10-23

Task-specific React apps for DeepSeek Harness with state carried into the next Agent turn

Install

npx @deepseek-ai/dsh plugin --profile web add dsh-plugin-genui

Restart `dsh web` after install. Bundle APIs can change during the developer preview.

README badge

dsh-plugin-genui DSH Hub badge
[![DSH Hub](https://dshhub.dev/badge/deepseek-harness-genui.svg)](https://dshhub.dev/plugins/deepseek-harness-genui)

Paste this into your README. The star count updates with every catalog sync.

From the README

Excerpt from pengyue-polaron/deepseek-harness-genui, cleaned of badges and images.

DeepSeek Harness GenUI

English | 简体中文

DeepSeek Harness GenUI lets an Agent build a focused interface when a task is awkward in text. The Coding Agent writes ordinary React + TypeScript—not a component-tree DSL—and the interface can save user selections for the next Agent turn.

The result is a task-specific app that can explain a difficult relationship, collect connected choices, or continue a tool-backed workflow without asking the user to repeat their input.

Related research: EvoGenUI-Bench: Evaluating LLMs as Multi-Turn Generative UI Assistants.

Install

Requires Node.js ^22.19.0 || ^24.0.0 and a supported DeepSeek Harness Web profile.

dsh plugin --profile web add dsh-plugin-genui
dsh --profile web

v0.15.2 supports Harness 0.2.1-rc.2 (npm latest checked on 2026-10-23) and 0.2.1-rc.3 (next), alongside the previously tested hosts. See the compatibility report for validation and source-install instructions. Inline, Canvas, fullscreen, and localhost are supported. TUI/headless profiles are not supported. The local compiler uses WebAssembly and needs no install-script approval. Plugin users do not need Chrome or Chromium.

Where It Helps

Use an interface when the user needs to see a complex relationship or make several connected choices. Plain questions, rewriting, summaries, and simple lists should stay in prose.

<td><strong>Pick calendar slots</strong><br><br>Select useful writing blocks and save them to the task. A later calendar action remains separate and permission-gated.</td>
<td><img src="https://raw.githubusercontent.com/pengyue-polaron/deepseek-harness-genui/main/screenshots/en/calendar-planner.jpg" width="280" alt="English interface for choosing three writing slots"></td>
<td><strong>Explore photosynthesis</strong><br><br>Move four causal controls and see the limiting step change immediately.</td>
<td><img src="https://raw.githubusercontent.com/pengyue-polaron/deepseek-harness-genui/main/screenshots/en/photosynthesis-explorer.jpg" width="280" alt="English interactive photosynthesis model with four causal controls"></td>
<td><strong>Trace a code path</strong><br><br>Turn a source-grounded CLI explanation into a local explorer of files, functions, and branches.</td>
<td><img src="https://raw.githubusercontent.com/pengyue-polaron/deepseek-harness-genui/main/screenshots/en/code-path-explorer.jpg" width="280" alt="English source-grounded code path explorer returned from a CLI request"></td>

The Core Loop

  1. The Agent writes and builds a React + TypeScript app for the current task.
  2. The user saves meaningful values such as selections, form answers, drafts, or progress.
  3. A later Agent turn reads those values and continues the task.
  4. Connected tools and public HTTPS routes must be declared. Harness asks for task-scoped access, and undeclared calls are blocked.

Later edits update the same app. A candidate that fails the build or source checks does not replace the last working version; a crashing version is quarantined and rolled back when possible.

Inline & Canvas

…

Related plugins