dsh-visualize: Generate Interactive Visualization Cards in DeepSeek Harness Conversations
nagi-ovo/dsh-visualize
Render interactive visualization cards inside DeepSeek Harness conversations, going beyond plain text.
Make DeepSeek Harness conversations more than text—after the model calls visualize, the Web UI renders interactive charts, simulators, or UI mockups.
dsh plugin --profile web add github:nagi-ovo/dsh-visualize- Category
- UI & Experience
- Platform
- DSH-Plugin
- Author
- nagi-ovo
- Distribution
- Plugin
dsh-visualize Key Features
dsh-visualize Repository

dsh-visualize Repo Summary
dsh-visualize is an interactive visualization plugin (DSH plugin) for DeepSeek Harness, maintained by Nagi-ovo under the BSD-3-Clause license, last updated in 2026-08. It solves the problem of DSH conversations being limited to plain text—when the model calls the visualize tool, the Web UI renders an interactive card directly in the conversation flow, suitable for simulators, charts, comparison panels, or UI mockups. Built with TypeScript and relying on official DSH SDKs (such as dsh-session, dsh-tools, dsh-client-ui-slots, etc.), it is packaged as an official dsh.bundle composite manifest, ready to use in the web profile after installation.
What core features does the dsh-visualize DSH plugin support?
The plugin allows the model to generate an HTML fragment and call visualize(path, title?, mode?) to embed it in the conversation; mode: "wide" is suitable for side-by-side comparisons. Cards automatically follow DSH's light/dark theme and whale-blue color scheme. During session replay, cards are restored from persisted tool results, not depending on the original fragment file. For security, cards run in a sandboxed iframe with CSP blocking network requests, nested pages, and form submissions, only allowing static assets from a fixed CDN. The default fragment size limit is 1,000,000 bytes, adjustable via maxFragmentBytes.
How to install dsh-visualize?
It is recommended to install directly from GitHub into the web profile of DSH using the following command:
dsh plugin --profile web add github:nagi-ovo/dsh-visualize
After installation, if dsh web is running, restart and refresh the page. You can run dsh --profile web --dump-config to confirm the plugin is in the final config. To modify the source, clone the repository and run dsh plugin --profile web add . in the repo directory; build artifacts are already committed, so no extra build is needed. Users of the community plugin-registry can also install via Settings → Plugins.
How to use dsh-visualize?
Simply tell the model what you want to see, e.g., "create a sorting algorithm visualization with adjustable parameters," and the model will write an HTML fragment and call visualize to place it in the conversation. For side-by-side comparisons, use mode: "wide".
What are the limitations of dsh-visualize?
Currently, interactive cards are only rendered in the Web UI; TUI and headless clients show plain tool results. Buttons inside cards cannot yet send follow-up messages to the main conversation. The idea is inspired by Codex desktop's /visualize; the skill's layered reference and Chart.js-first approach draw from himself65/finance-skills.