All plugins

DSH / BUNDLE / CLIENT-UI

@crosery/dsh-viewer

v0.2.1Crosery / dsh-viewer3beec1a43a

InstallableBundlesUI & client pluginsCommunity · Topic auto-analysisWeb UI

Overview

@crosery/dsh-viewer

Renders images, video, audio, PDF and Office documents inline in the DeepSeek Harness web UI and desktop app through a display_file tool, streaming bytes over a signed HTTP route with range support.

README / EN

Package documentation

Registry summary

Renders images, video, audio, PDF and Office documents inline in the DeepSeek Harness web UI and desktop app through a display_file tool, streaming bytes over a signed HTTP route with range support.

dsh.pub verifies the pinned bundle contract, runtime facts, and distribution semantics. The complete README remains in the source repository.

Read the full README on GitHub

LIMITATIONS

Known limitations

- Local file paths only; URLs are not accepted. - Video and audio duration/resolution are not in the card header — that needs `ffprobe`. The player shows them. - Where the plugin reads an attachment-only image itself (up to 0.1.5), the object URL lives until the plugin unloads, bounding held blobs by the distinct attachments displayed meanwhile. From 0.1.7 the chat's own loader owns them. - On a remote workspace with no `processPath`, non-image media have no channel and the card says so. - No transcoding: a codec the browser refuses (ProRes in a `.mov`) falls back to the `<video>` fallback text. - In the desktop app, "Open in a new tab" becomes **Preview in sidebar** (the harness's own preview, PDF.js for PDFs): the desktop window silently refuses new tabs for app URLs. Everything inside the card — images, players, PDF and document frames — renders the same as on the web. - The turn tail needs the list-shaped tail of 0.1.6+. On 0.1.2–0.1.5 a folded ("compact") completed turn keeps its cards inside the fold; switch the transcript view to `normal` there to keep them open. On 0.1.6 the `normal` view shows a card both in the turn and in its tail. - If the user expands a folded turn, its displayed files appear twice — in their tool rows and in the tail — as the harness's own delivered files do. - The tail recognizes a steered turn from the chat's own process anchor (its `turn-process` turn data). Should a future chat stop publishing that, a steered turn would show its cards twice — in its unfolded rows and in the tail — rather than lose them.