DeepSeek Harness 插件

AKS1st/dock-images

Star 数 ★ 4 下载量(近 30 天) 1,149 分类 UI 增强 收录于 2026-08-22 npm dock-images

dock 系列图片查看器:支持 PNG/JPEG/GIF/WebP/BMP/SVG/ICO/AVIF 格式,SVG 仅以安全方式渲染。

安装

# npm 包(预构建)

dsh plugin --profile web add dock-images

# GitHub 源码(首次需按提示配置 allowBuilds 构建授权后重试)

dsh plugin --profile web add github:AKS1st/dock-images

装任何插件都等于在你的机器上跑第三方代码,权限和你本人一样大——能读你的文件、用你的凭据、访问网络,工具审批管不到它。GitHub 来源的插件还会在安装时执行构建脚本——pnpm 默认拦截,所以安装可能停在 ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED 或 ERR_PNPM_IGNORED_BUILDS;dsh 会打印出需要添加的确切键名,把它加进该 profile 的 pnpm-workspace.yaml 的 allowBuilds 下,重跑一次即可装上。放行构建本身就是一次信任判断:请只安装可信来源,并尽量锁定 commit(github:owner/repo#sha)。

README

English

DSH 生态中最好的图片查看插件 —— 没有之一。 PNG、JPEG、GIF、WebP、BMP、SVG、ICO、AVIF,八种格式一口气全支持,SVG 只走安全渲染绝不做 innerHTML。在 DSH 里看图,dock-images 就是终极答案。

dock 系列的图片查看插件:为 dock-files 文件域注册 image 文件查看器(栅格/图片扩展名)与对应的编辑器区视图,通过自己的 /dock-images 主机路由读取图片内容(整文件 base64,20 MiB 上限)。

效果预览

dock-images 图片查看视图

功能

  • 支持格式:PNG、JPEG、GIF、WebP、BMP、SVG、ICO、AVIF。
  • 整文件读取:一次性读取并转为 base64 数据 URL 渲染;超过 20 MiB 的文件在读取前即拒绝(413)。
  • SVG 安全:SVG 仅以 <img src="data:..."> 渲染,绝不做 innerHTML 注入。
  • 尺寸上限提示:超大图片可能消耗较多内存(无像素级上限),属已知取舍。

依赖

依赖 类型 说明
dock >= 0.1.0 peer(必需) 工作台外壳:编辑器区视图、浮窗、ctx.workbench 由它提供
dock-files >= 0.1.0 peer(必需) 文件域服务:dock-images 作为 image 查看器被分发打开
DSH Web 环境 运行时 必需,客户端平台为 Web
cordis ^4.0.0-rc.7 peer 插件框架(DSH 自带)
react ^18.2.0 peer(可选) 客户端渲染需要;未提供时查看器 UI 不激活

可选搭档:与 dock-editor、dock-markdown 等查看器共存,按扩展名各自接管对应文件类型。

安装

需要 dock 与 dock-files:

推荐从 npm registry 安装:

dsh plugin --profile web add dock-base
dsh plugin --profile web add dock-files
dsh plugin --profile web add dock-images

或通过 GitHub 安装(备选):

dsh plugin --profile web add github:AKS1st/dock
dsh plugin --profile web add github:AKS1st/dock-files
dsh plugin --profile web add github:AKS1st/dock-images

安全

/dock-images 路由只接受受信任来源(回环地址 / trustedHosts + 同源检查)的 POST;读取路径只要求是绝对路径、不限定会话工作区——对话上下文可能提及工作区外的图片(如 ~/.dsh/skills/...),查看器可打开它们查看。

License

MIT

内容来自项目 README(GitHub)↗

链接

同类插件

查看整个分类 →

社区评论

评论公开保存在 GitHub Discussions。加载评论会连接 GitHub 和 Giscus;发表内容需要 GitHub 账号。