DeepSeek Harness Plugin Hub

Publish and manage complete Harness Profiles. Discover Plugins for your next setup.

Explore

PluginsPresetsDocsNews

Community

Publish a pluginContactReport an issue

Resources

Plugin Hub on GitHubDeepSeek HarnessSystem statusPrivacy notice
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

Independent and unofficial. Not affiliated with, authorized by, or endorsed by DeepSeek.

Diff View — DSH Plugin for DeepSeek Harness
DeepSeek Harness Plugin Hub
ProfilesPluginsCategoriesNewsDocsSign inManage Profiles
ProfilesPluginsCategoriesNewsDocsSign in
← Plugins
D

dsh-diff-view

Diff View

Diff view: a reusable two-text diff viewer for DSH client plugins. The diffView client service exposes the line-LCS + word-span engine and a self-contained split/unified diff component with line numbers, context collapse, and its own stylesheet. No persistence; no approval coupling.

The plugin will be installed here. Keep web if you are unsure.

npx -y @deepseek-ai/dsh plugin --profile web add github:joao-paulo-santos/dsh-diff-view#5944cf7e885b4e4b38d21def7b5cf68e2b1785c1
READMECompatibilityVersions

Compatibility and provenance

Diff View is published as dsh-diff-view and currently resolves to version 0.1.1. The Hub verifies its manifest and preserves the exact installation source for reproducible installs.

DSH compatibility
*
Runtime surfaces
web
Release source
github
Registry updated
8/30/2026

Versions

0.1.1stable
8/30/2026
0.1.0stable
8/29/2026

Related plugins

Loading related plugins…

Latest
0.1.1
DSH
*
HMR
Process restart
Tree shaking
Safe tree shaking not declared
Unpacked size
Unavailable
Files
Unavailable
Surface
web
License
MIT
Source
github
GitHub
★ 0
Weekly downloads
0
Last push
8/30/2026
View source ↗
README badge

Click the badge to copy Markdown for your README.

Do you maintain this Plugin?Claim benefit · Priority security scan

Verify the GitHub repository declared in package.json to manage this listing. After you claim it, Hub will prioritize a security scan of the current version and publish the result when it passes.

Claim this Plugin →
Report an issue

Related plugins

More verified plugins in developer-tools.

Web App@deepseek-ai/dsh-web-appThe dsh browser-surface bundle: the web patch layer over dsh-base plus the runtime glue plugin (frontend dist serving, web-surface prompt, bash runtime variables, URL line)Sdk Minimal@deepseek-ai/dsh-sdk-minimalThe standalone minimal SDK profile bundle: JSON-RPC, one DeepSeek adapter, persistent shell, and JSONL sessionsSdk App@deepseek-ai/dsh-sdk-appThe dsh SDK profile bundle: stdio JSON-RPC serving and process lifecycle over dsh-baseSubagent Codex@deepseek-ai/dsh-subagent-codexOne-shot Codex subagent provider over the official app-server protocol

README

dsh-diff-view

A DeepSeek Harness (DSH) plugin: a reusable two-text diff viewer for client plugins. One engine, one stylesheet, no coupling to any consumer: line-level LCS with intra-line word highlights, true line numbers across context collapse, and a split/unified toggle.

There is no UI of its own to visit. Plugins inject the client service diffView:

// consumer client half, inject: ['diffView', …]

// 1. A self-contained component (scrolls its own body, own grid):
const Diff = ctx.diffView.diffRowsComponent({
  title: 'File.txt',        // optional, for interface symmetry
  before: oldText,          // required string
  after: newText,           // required string
  initialMode: 'split',     // 'split' (default) | 'unified'
  showToggle: true,         // false hides the Split/Unified pill
})
return React.createElement(Diff, {})

// 2. The raw engine, for custom layouts (inline diffs, lists of hunks):
const rows = ctx.diffView.engine.alignedEditRowsOf(beforeLines, afterLines)
//   rows: [{ kind: 'same'|'replace'|'delete'|'insert', removedLine?, addedLine? }]
const spans = ctx.diffView.engine.wordSpansOfLinePair(beforeLine, afterLine)
//   spans: { removedSpans, addedSpans }: arrays of { text, changed }
ctx.diffView.engine.wordSpanElements(spans.removedSpans, 'adf-w-del')

Contract

  • diffRowsComponent validates at the door: an options object and before/after strings are required; anything else throws.
  • Line numbers are computed for every row BEFORE context collapse runs, so numbers stay true across ellipsis bands. (The view this plugin extracts numbered after collapse and drifted; that defect is why it exists.)
  • View mode is per component instance: two diffs on screen toggle independently.
  • The adf-* diff stylesheet is installed once by this plugin; consumers render no CSS of their own for diff rows.
  • No persistence; no approval coupling; the host half is a stub.

How to install

Requires a DeepSeek Harness checkout and a profile, here web. The plugin has no dependencies:

mkdir -p ~/dsh-plugins && cd ~/dsh-plugins
git clone https://github.com/joao-paulo-santos/dsh-diff-view.git

# from the harness checkout
pnpm dsh plugin --profile web add ~/dsh-plugins/dsh-diff-view

# verify the profile still composes
pnpm dsh --profile web --dump-config

Restart the harness. Plugins that inject the diffView service can now render diffs.

Dependencies

(none)

Plugins dependent on this

  • dsh-approval-diff renders its review cards' hunks with the engine and shares the diff stylesheet
  • dsh-scratchpad powers its mode: 'diff' pads with diffRowsComponent (optional; degrades to plain text when absent)
  • dsh-wo-github renders commit patches with word highlights and the diff grid stylesheet (optional; patches render without it)