dsh-screenshot

DSH PLUGIN视觉与多模态

仓库 XEsx630/dsh-screenshot

视觉与多模态 L5 · 运行验证通过 安全审查:低风险 可信度:金 可安装插件
安装这个插件

为 DeepSeek Harness 对话框提供微信式截图:框选或隐藏窗口截屏,服务端裁剪后直接以图片卡发送,模型可调用 vision 工具读取。

一句话选型结论

按资料字段整理

dsh-screenshot 是视觉与多模态类的 DSH 可安装插件,验证等级 L5 · 运行验证通过,安全审查为低风险,列出 4 项功能,有可直接复制的安装命令。验证通过不等于安全:插件会读写文件、执行命令或联网,装前先到仓库确认它做了什么;涉及密钥或系统权限的,建议先在隔离环境试装。

分类视觉与多模态 收录类型可安装插件 验证等级L5 · 运行验证通过 安全审查低风险
验证等级 L5 L5 · 运行验证通过
GitHub 星标 1 复刻 0 · 未关闭 issue 0
最近更新 2026-08-16 创建于 2026-08-16
README 6.9 KB 正文体量,越大说明说明书写得越细

安装

可安装插件
在 DSH 里执行,装完用 dsh plugin list 确认已挂上;标了 L4 / L5 的命令已在沙盒里真实跑通
dsh plugin --profile web add github:XEsx630/dsh-screenshot#v0.1.0
  1. 1
    确认版本与运行环境

    兼容的 DSH 版本为 0.2.0-rc.2 等 11 个;版本不匹配时安装会报错。

  2. 2
    执行安装命令

    在 DSH 里执行上面的命令;多包仓库要注意区分具体子包名,别装错包。

  3. 3
    确认已挂载

    用 dsh plugin list 查看列表里是否出现这个插件,出现即挂载成功。

  4. 4
    试跑并检查权限

    加载后跑一个最小用例,确认它能正常工作;同时看它申请了哪些文件、命令或网络权限。

兼容 DSH 版本0.2.0-rc.2 等 11 个版本版本不匹配时安装会报错
Node.js 要求未标注来自仓库 package.json 的 engines 字段
前置依赖无需要同时安装的同级依赖
npm 包名未发布到 npm可用 npm view 查看包信息

能做什么

4 项功能
字段来自项目仓库与公开索引,中文说明由本站标注

dsh-screenshot:为 DeepSeek Harness 对话框带来微信式截图能力

  • 微信式框选截图
  • 隐藏窗口截屏
  • 服务端裁剪图片
  • 图片卡直接发送

适用场景

文件读写视觉识别

上游标签

deepseek-harnessdshdsh-pluginscreenshot

验证等级与安全审查

L5 · 运行验证通过
自动化流程结论,不是人工审核
验证等级L5 · 运行验证通过在 dsh 沙盒中完成安装与运行冒烟——装得上、跑得起来
安全审查低风险静态分析结论,未标注不代表已通过审查
仓库健康度稳定按仓库活跃度与最近更新时间给出
可信度金综合仓库活跃度与验证结果

上面的结论来自上游最近一次自动化验证(2026-10-08): 同一套检查会在插件发新版后重跑,页面显示的是最新一次的逐项结果。

逐项检查结果

L1 · 已找到 ✓ 通过
  • L1.0_DEFAULTED_FROM_L3 由 L3 推定 默认通过——L3 安装规范已通过(全库 L3 扫描策略)
L2 · 结构化 ✓ 通过
  • L2.0_DEFAULTED_FROM_L3 由 L3 推定 默认通过——L3 安装规范已通过(全库 L3 扫描策略)
L3 · 安装规范 ✓ 通过
  • L3.1_INSTALL_COMMAND_PARSED 安装命令已解析 方式:安装规范解析
  • L3.2_DSH_VERSION_DECLARED DSH 版本已声明 方式:DSH 版本声明
L4 · 安装已测 ✓ 通过
  • L4.1_INSTALL_EXECUTED_CONFINED 受限沙盒内执行安装 方式:沙盒安装执行
  • L4.2_INSTALL_SUCCESS 沙盒安装成功 方式:沙盒安装执行
  • L4.3_ARTIFACT_CONFIRMED 安装产物已确认 方式:沙盒安装执行
L5 · 运行已测 ✓ 通过
  • L5.1_INSTALL_PASSED_SANDBOXED 沙盒安装通过 方式:沙盒安装执行
  • L5.2_WEB_BOOT_READY Web 启动就绪 方式:Web 启动
  • L5.3_HTTP_SERVED HTTP 服务响应 方式:HTTP 请求
  • L5.4_PLUGIN_INVENTORY_ACTIVE 插件清单中已激活 方式:插件清单查询

风险详情

  • 审查结论 通过
  • 结论说明 vet 静态分析未发现可疑行为,判定为干净(clean)。
  • 风险计数 严重 0 / 高 0 / 中 0
  • 风险详情 未发现严重或警告级问题。

选择建议

装之前先看这几条
按条目字段给出的判断,不替你决定用不用

值得选的地方

  • 验证等级 L5:安装和运行都在沙盒里跑通过,装完能直接用的概率高。
  • 静态安全审查为低风险,没有发现明显可疑行为。
  • 有可直接复制的安装命令,不用自己翻文档找入口。
  • 标注了兼容的 DSH 版本(0.2.0-rc.2 等 11 个),按版本装不容易报错。
  • 列出了 4 项功能,能直接看出它解决什么问题。

先想清楚的地方

  • 没有声明 Node.js 版本要求,版本不匹配可能装不上。
  • 验证通过不等于安全:插件会读写文件、执行命令或联网,装前先到仓库确认它做了什么。

更适合

  • 需要在视觉与多模态场景里给 DSH 补能力的人。
  • 想装完就能用、不想自己排依赖的人。
  • 能接受在本地装依赖、愿意自己确认权限的人。

不太适合

  • 只使用 DSH 官方内置能力、不接受第三方插件的人。

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
插件验证等级安全审查星标兼容版本安装命令
dsh-screenshot当前 L5 · 运行验证通过 低风险 1 0.2.0-rc.2 等 11 个 有
open-design L4 · 沙盒安装通过 低风险 10.0 万 未标注 有
awesome-gpt-image-2 L3 · 安装规范通过 低风险 3.4 万 未标注 无
PicGo L3 · 安装规范通过 低风险 2.7 万 未标注 无
iPolloWork L4 · 沙盒安装通过 低风险 6,775 未标注 有
modlens L5 · 运行验证通过 低风险 4,207 0.2.0-rc.2 等 13 个 有

仓库档案

视觉与多模态
字段来自项目仓库与公开索引,中文说明由本站标注
作者 / 维护方XEsx630仓库 dsh-screenshot · 默认分支 main
分类视觉与多模态vision
收录类型可安装插件声明了 dsh.bundle、可用 dsh plugin add 安装的条目
开发语言JavaScript仓库主语言
许可证MIT商用或二次分发前请确认条款原文
星标 / 复刻 / issue1 / 0 / 0收录时的数值,非实时
创建 / 更新2026-08-16 · 2026-08-16最后推送 2026-08-16
本站收录2026-08-27首次进入本站目录的时间

README 全文

6.9 KB
作者原文,中文版优先;只做安全转义,不改内容

dsh-screenshot — 对话框截图插件(微信 PC 式)

给 DeepSeek Harness(DSH)的 Web 输入框加一个「截图」按钮:点一下 → 遮罩框选(或先隐藏 DSH 窗口再截)→ 确认后裁剪好的截图直接出现在输入框的附件栏里,回车就能发。

从 0.2 起,截图走 DSH 自己的草稿附件通道:图片会作为真正的图片附件随消息发送,模型直接看到图;不再往草稿里塞 截图:<路径>,也不再需要 vision MCP。对不支持图片的模型,可以在菜单里切到「以文件路径发送」。

> 界面示意(演示数据):遮罩框选后点「确定」,截图会进入输入框的附件栏。

功能

  • 三种截法:截取屏幕区域 / 隐藏 DSH 窗口后截图 / 截取全部屏幕(多显示器)
  • 微信式框选:全屏遮罩、拖拽选区、实时显示物理像素尺寸,支持「全选 / 取消 / 确定」、Enter 确认、Esc 取消
  • 服务端裁剪:Host 用 PowerShell 裁图,浏览器只上报显示坐标和画布尺寸;用 PNG 真实宽高换算物理像素,不受浏览器缩放、系统 DPI、CSS 影响
  • 原生附件:裁剪结果交给 ctx.conversation.createDrafts + inputActions.addAttachments,由 DSH 渲染附件卡、发送图片字节
  • 失败可见:截图失败、输入框正忙、附件过大都会 toast 提示,不再静默吞掉
  • 崩溃自恢复:隐藏窗口模式在被强杀后会由 Host 依据 .hwnd 标记把窗口恢复回来
  • 取消/发送后自动清理临时文件,超过 30 分钟的残留由后台清扫

安装

从 GitHub 安装

先确认你用的是哪个 profile:桌面端是 desktop,dsh web 命令行一般是 web。

# 桌面端
dsh plugin --profile desktop add github:XEsx630/dsh-screenshot

# 或 dsh web
dsh plugin --profile web add github:XEsx630/dsh-screenshot

# 指定版本
dsh plugin --profile desktop add "github:XEsx630/dsh-screenshot#v0.2.0"

dsh.bundle 清单会自动把插件挂进 profile。重启 DSH 并刷新页面。

本地开发安装

dsh plugin --profile desktop add link:E:/path/to/dsh-screenshot
# 然后在 ~/.dsh/profiles/desktop 里 pnpm install,重启

使用

  1. 点输入框左侧的「📷 截图」,选一种截法
  2. 等遮罩里的画面加载完,按住左键拖出一个区域
  3. 点「确定」(或按 Enter)→ 截图进入输入框上方的附件栏
  4. 继续打字或直接发送;不想发了就在附件卡上点 ×

菜单底部可以切换发送方式:

方式 模型拿到什么 适用
以图片附件发送(默认) 图片内容(DSH 图片附件) 支持视觉的模型;无需额外工具
以文件路径发送 一段指向只读保存路径的文本 纯文本模型 + 本地 vision/OCR 工具;或截图超过 6 MB 时自动降级

架构

┌─ 浏览器 ─────────────────────────────────────────────┐
│ 截图按钮 ──POST /capture──▶ 截图预览(GET /preview)   │
│    │                            │                    │
│    └── 遮罩拖拽(只算坐标)      │                    │
│         └──POST /crop {rect, stage}──▶ 裁剪好的 PNG    │
│                                        │             │
│ 取回 Blob ──▶ new File ──▶ createDrafts + addAttachments
└────────────────────────────────────────┼─────────────┘
▼
输入框附件栏(DSH 原生)

Host 侧:

  1. screenshot.ps1 抓屏(可选先隐藏前台窗口,DPI 感知),写临时 PNG
  2. 浏览器显示预览、拖拽选区
  3. crop.ps1 按 PNG 真实尺寸换算后的物理像素裁剪
  4. 裁剪结果通过 GET /file 交给浏览器,随后删除

设计取舍:

  • 裁剪放服务端:浏览器只做显示和坐标换算,避免 canvas 解码时序、naturalWidth=0、CSS 缩放带来的 1×1 空图
  • 坐标换算以 PNG 真实尺寸为准:物理 = 显示坐标 × (PNG 宽 / 画布宽),浏览器缩放和 DPI 缩放都被吸收
  • 图片字节走附件通道:不再依赖 $DSH_HOME/uploads 路径,也不需要把路径塞进 prompt
  • 隐藏窗口有崩溃兜底:screenshot.ps1 隐藏前写 .hwnd 标记,正常路径删除;进程被强杀时 Host 读标记调 restore.ps1 恢复

HTTP API(Host)

所有接口仅限本机回环地址,且要求同源。

方法 路径 说明
POST /api/screenshot/capture body {hideWindow?, allScreens?} → 抓屏到临时 PNG,返回 {id, width, height, url}
POST /api/screenshot/crop body {id, rect:{x,y,w,h}, stage:{w,h}} → 裁剪,返回 {id, name, bytes, width, height, url}
GET /api/screenshot/preview?id= 抓屏预览
GET /api/screenshot/file?id= 裁剪结果
DELETE /api/screenshot/preview?id= / file?id= 删除临时文件

安全

  • 路由只接受回环 Host(127.0.0.0/8、localhost、::1),拒绝 sec-fetch-site: cross-site 和跨源 Origin
  • id 必须是 UUID,文件名由 Host 生成,不接受外部路径
  • 请求体上限 16 KB;响应 no-store、nosniff
  • 截图和裁剪全部在本机 PowerShell 中完成,不上传任何数据
  • 临时文件目录:$DSH_HOME/cache/dsh-screenshot(可用 DSH_SCREENSHOT_DIR 重定向),30 分钟 TTL

兼容性

  • DSH ≥ 0.2(依赖 ctx.conversation.createDrafts / inputActions.addAttachments 与 fileUpload 服务)
  • Windows:PowerShell 5.1 + .NET Framework 的 System.Drawing / System.Windows.Forms
  • 客户端注入 @deepseek-ai/dsh-client-runtime、dsh-client-ui-conversation、dsh-client-file-upload

开发

node --test            # 单元测试 + PowerShell 裁剪测试
npm run check          # 语法检查

# 真实抓屏测试(会截当前屏幕)
$env:DSH_SCREENSHOT_LIVE=1; node --test test/powershell.test.js

测试覆盖:坐标换算/边界钳制、PNG 头解析、信任栅栏、路由校验与错误码、crop.ps1 的真实裁剪与越界拒绝。CI 在 windows-latest 上跑 Node 22/24。

故障排查

现象 处理
按钮是灰的 当前会话未就绪,或输入框处于命令提交/发送阶段
「截图失败:无法启动 PowerShell」 检查 powershell.exe 是否在 PATH;企业策略可能禁用 Add-Type
图片发送失败 模型不支持图片输入,或图片超出部署限制 → 菜单里关掉「以图片附件发送」
窗口没恢复 重新打开 DSH;残留标记会在下次启动时被清扫并恢复窗口

License

MIT

常见问题

8 问
答案由本站依据条目字段整理,不引用上游原文
dsh-screenshot 怎么安装?

在 DSH 里执行 `dsh plugin --profile web add github:XEsx630/dsh-screenshot#v0.1.0` 即可。

dsh-screenshot 的验证等级是什么意思?

L5 · 运行验证通过。在 dsh 沙盒中完成安装与运行冒烟——装得上、跑得起来

dsh-screenshot 安全吗?

低风险。vet 静态分析未发现可疑行为,判定为干净(clean)。

dsh-screenshot 装之前要先确认什么?

先看它会读写哪些文件、执行哪些命令、连接哪些网络地址;验证等级只说明装得上、跑得起来,不等于安全。涉及密钥或系统权限的,建议先在隔离环境试装。

dsh-screenshot 支持哪些 DSH 版本?

上游记录的兼容版本包括 0.2.0-rc.2、0.1.7-rc.2、0.1.7-alpha.2、0.1.6-alpha.2、0.1.6-alpha.1、0.1.5-rc.2、0.1.3-alpha.2、0.1.3-alpha.1。版本较多,只列出前 8 个。

dsh-screenshot 用的是什么许可证?

上游标注为 MIT。商用或二次分发前请到仓库确认许可证原文。

dsh-screenshot 有哪些功能?

微信式框选截图、隐藏窗口截屏、服务端裁剪图片、图片卡直接发送。

这条记录的数据可靠吗?

本站按仓库名去重后合并整理,字段以作者仓库与 npm 元数据为准;安装命令、仓库地址与 README 保持原文,带 L4 / L5 标记的安装命令已在隔离沙盒里真实跑通。

同名或近似条目

8 条
不同作者的仓库分开列,请确认你要装的是哪一个
视觉与多模态
按星标排序,可作替代方案

open-design

open-design

L4 · 沙盒安装通过 10.0 万 星

awesome-gpt-image-2

awesome-gpt-image-2

GPT Image 2 / 2.5 提示词与案例库,530+ 个案例、20+ 套工业级模板与可复用 Skills,新增 2.5 同提示词对比

L3 · 安装规范通过 3.4 万 星

PicGo

PicGo

L3 · 安装规范通过 2.7 万 星

iPolloWork

iPolloWork

L4 · 沙盒安装通过 6,775 星

modlens

modlens

ModLens 是 DeepSeek Harness 的视觉插件,为纯文本模型外挂视觉能力,粘贴图片即得结构化 JSON 证据(OCR、版面

L5 · 运行验证通过 4,207 星

OpenBiliClaw

OpenBiliClaw

本地私有、开源的自进化跨平台 AI 内容发现 Agent:先理解你,再主动从 B站、小红书、抖音、YouTube、X、知乎、Reddit、微

L4 · 沙盒安装通过 3,398 星

XEsx630 的其它插件

3 个

插件的元信息来自作者仓库;分类、验证等级与安全结论的中文说明为中文整理,最近核验 2026-10-08。