DeepSeek Harness Plugin Hub

发布与管理完整 Harness Profiles,发现适合你的插件。

探索

插件目录环境预设文档中心动态

社区

发布插件联系我们报告问题

相关链接

Plugin Hub GitHubDeepSeek Harness 官方项目系统状态隐私说明
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

独立、非官方社区项目,与 DeepSeek 官方无隶属、授权或背书关系。

Inline Media Viewer — DeepSeek Harness 插件(DSH Plugin)
DeepSeek Harness Plugin Hub
ProfilesPlugins分类动态文档登录管理 Profiles
ProfilesPlugins分类动态文档登录
← Plugins

@wisdoverse/dsh-inline-media-viewer

Inline Media Viewer

为 DeepSeek Harness Web 对话提供持久的内联图像、视频和音频预览,支持限定在工作区内的本地读取,并可选用 ComfyUI 代理。

插件会安装到这里;不确定时保持 web。

npx -y @deepseek-ai/dsh plugin --profile web add @wisdoverse/dsh-inline-media-viewer@1.0.11
README兼容性版本

兼容性与来源证明

Inline Media Viewer 以 @wisdoverse/dsh-inline-media-viewer 发布,当前版本为 1.0.11。Plugin Hub 会校验它的 manifest,并保存精确安装来源,便于复现安装结果。

DSH 兼容范围
*
运行环境
web
发布来源
npm
Registry 更新时间
2026/9/20

版本

1.0.11stable
2026/9/10
1.0.10stable
2026/9/7
1.0.9stable
2026/9/4
查看其余 9 个版本收起版本
1.0.10-alpha.1prerelease
2026/9/5
1.0.8stable
2026/9/4
1.0.7stable
2026/9/4
1.0.6stable
2026/9/4
1.0.5stable
2026/9/1
1.0.4stable
2026/8/31
1.0.3stable
2026/8/28
1.0.2stable
2026/8/28
1.0.1stable
2026/8/28
最新版
1.0.11
DSH
*
HMR
重启进程
Tree shaking
未声明可安全裁剪
解包体积
56.2 kB
文件数
10
Surface
web
许可证
MIT
发布源
npm
GitHub
★ 1
周下载
256
安全扫描
✓ v1.0.11 扫描通过
最近提交
2026/9/10
查看源码 ↗项目主页 ↗
README Badge

点击下方 Badge 复制 Markdown,粘贴到 README 即可。

这是你的 Plugin?认领权益 · 优先安全扫描

验证 package.json 声明的 GitHub 仓库,即可管理这个公开页面。认领后,Hub 会优先安排当前版本的安全扫描,并在通过后公开展示结果。

认领这个 Plugin →
报告问题

README

dsh-inline-media-viewer

Inline image, video, and audio previews for DeepSeek Harness Web

English · 简体中文

Turn media paths and URLs mentioned in a DSH conversation into secure inline previews—without copying them out of the chat log.

https://…/view?filename=frame.png  →  <img>
exports/demo.mp4                   →  <video controls>
audio/sound.mp3                    →  <audio controls>

Contents

  • Features
  • Supported media
  • Installation
  • Configuration
  • Security
  • Development
  • License

Features

FeatureDescription
Inline renderingDisplays images, videos, and audio directly below the chat turn that mentions them.
Workspace-safe readsResolves local paths with realpath and rejects traversal, out-of-workspace paths, and symlink escapes.
Optional ComfyUI proxyFetches recognized ComfyUI media URLs server-side from the configured origin, including for remote users and HTTPS pages.
Bounded transfersLimits each file or response to 48 MiB and remote requests to 20 seconds.
User controlsProvides auto-render, per-turn item limit, media height, and optional ComfyUI origin settings.

[!NOTE] ComfyUI is not required. Workspace files and regular HTTP(S) media URLs work when ComfyUI is not installed or running; its proxy is activated only for recognized ComfyUI URLs.

Supported media

TypeExtensions
Imagespng, jpg, jpeg, webp, gif, avif, bmp, svg
Videomp4, webm, mov, m4v, mkv, avi, ogv
Audiomp3, wav, m4a, aac, ogg, oga, flac, opus

Installation

Targets DSH v0.1.3-alpha.1+ APIs. Host startup and the settings section were verified on v0.1.5-rc.1. End-to-end media playback on v0.1.5-rc.1 has not been verified.

From npm

Install and activate the bundle in your Web profile:

dsh plugin --profile web add @wisdoverse/dsh-inline-media-viewer@1.0.11

Restart the Web profile after installation.

From source

  1. Clone the plugin into a location available to your Web profile:

    git clone https://github.com/Wisdoverse/dsh-inline-media-viewer-plugin.git \
      /path/to/local-plugins/dsh-inline-media-viewer
    
  2. Add the bundle to profiles/web/package.json:

    {
      "dependencies": {
        "@wisdoverse/dsh-inline-media-viewer": "link:/path/to/local-plugins/dsh-inline-media-viewer"
      },
      "dsh": {
        "profile": {
          "bundles": ["…", "@wisdoverse/dsh-inline-media-viewer"]
        }
      }
    }
    
  3. Rebuild or restart the Web profile.

The plugin mounts its host RPC channel, client projection, and settings section through cordis.patch.yml.

Configuration

Open Settings → 媒体预览 / Media preview.

The navigation label and all setting copy follow DSH's active UI language and switch live between English and Chinese.

SettingDefaultAllowed values
Auto-render detected mediaOnOn / off
Maximum items per turn121–30
Maximum media height380 px160–1200 px
ComfyUI origin (optional)Emptyhttp(s)://host[:port]

Settings are stored in the DSH settings document. Writes are available only on loopback connections; remote browsers can read settings but cannot persist changes.

ComfyUI origin

  • Skip this setting entirely if you do not use ComfyUI.
  • Leave the field empty to use http://127.0.0.1:8188.
  • Accepted forms are http://host[:port], https://host[:port], and bare host[:port] (http is assumed).
  • The default port is 8188 for HTTP and 443 for HTTPS.
  • Credentials, paths, query strings, and fragments are rejected.
  • The origin must be reachable from the DSH host process. For a containerized host, use the address visible from inside the container.

Local aliases (127.0.0.1:8188 and localhost:8188) and the configured origin are recognized as ComfyUI sources. A non-empty invalid address fails explicitly instead of silently falling back to another target.

Security

The plugin is designed as a local trust helper, not a general-purpose file or network proxy:

  • Local reads are confined to the active session's workspace and known media extensions.
  • Remote reads can target only the configured ComfyUI origin; redirects are refused.
  • Local files and remote responses are capped at 48 MiB.
  • Settings writes are restricted to loopback connections.
  • The browser receives media as data: URLs rather than filesystem paths.

See SECURITY.md for the complete trust model and known limitations.

Development

Commands

CommandPurpose
node test.mjsRun the dependency-free unit tests directly.
npm testRun the same unit test suite through npm.
npm run lintSyntax-check the host modules and test file.

Project structure

PathResponsibility
index.jsHost RPC channel, ComfyUI proxy, and settings registration.
lib.jsPure, dependency-free helpers.
client/client.jsTurn projection, media renderer, and settings UI.
cordis.patch.ymlBundle mounting and integration points.
test.mjsUnit tests for the pure helpers.

The running Web profile serves a bundled copy. Rebuild or restart it after changing the source files.

License

Released under the MIT License.