框选屏幕截图并自动复制到剪贴板,供模型读取分析
30/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/10/25 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add hezhaochao/dsh-snip该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:仅索引
是什么
dsh 原生插件 · vision
装得上吗
本站尚未做安装检查
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 7 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
可执行外部命令读写/删除本地文件发起外部网络请求
查看扫描证据(共 31 处,展示前 25 条)
- 读取本地文件lib/index.js:41
const cs = readFileSync(snipFile("snip-overlay.cs")); - 读取本地文件lib/index.js:53
if (existsSync(p)) return p; - 读取本地文件lib/index.js:63
if (!exe || existsSync(exe)) { - 读取本地文件lib/index.js:64
diag.overlay = existsSync(exe) ? "ready" : "cs-missing"; - 执行外部命令来自配置/变量lib/index.js:74
const child = spawn( - 写入本地文件lib/index.js:86
try { renameSync(tmp, exe); } catch { } - 删除本地文件lib/index.js:90
try { unlinkSync(tmp); } catch { } - 读取本地文件lib/index.js:111
if (!existsSync(file)) return null; - 读取本地文件lib/index.js:112
return JSON.parse(readFileSync(file, "utf8")); - 写入本地文件lib/index.js:121
appendFileSync(path.join(snipDir(), "route.log"), `${new Date().toISOString()} ${line} - 写入本地文件lib/index.js:173
mkdirSync(dir, { recursive: true }); - 写入本地文件lib/index.js:176
writeFileSync(path.join(dir, "run.json"), JSON.stringify({ status: "running", t: Date.now() })); - 执行外部命令来自配置/变量lib/index.js:186
const child = spawn(exe, exeArgs, { - 执行外部命令固定命令lib/index.js:199
const child = spawn("powershell.exe", args, { - 写入本地文件lib/index.js:255
mkdirSync(dir, { recursive: true }); - 写入本地文件lib/index.js:256
writeFileSync(path.join(dir, "mount.json"), JSON.stringify({ ...diag, t: Date.now() }, null, 2)); - 执行外部命令固定命令lib/index.js:314
spawn("powershell.exe", - 删除本地文件lib/index.js:381
rmSync(path.join(snipDir(), "last.json"), { force: true }); - 发起网络请求lib/client.js:143
fetch(ROUTE + "/start?hide=" + (hideOn ? "1" : "0"), { - 发起网络请求lib/client.js:172
fetch(ROUTE + "/status", { headers: { Accept: "application/json" } }) - 发起网络请求lib/client.js:201
fetch(ROUTE + "/paste-hint", { - 执行外部命令固定命令mcp/server.mjs:34
const child = spawn("powershell.exe", args, { windowsHide: true }); - 读取本地文件mcp/server.mjs:105
if (!existsSync(file)) return err("还没有截图记录(用户还没按过 📸 截图)"); - 读取本地文件mcp/server.mjs:107
const last = JSON.parse(readFileSync(file, "utf8")); - 读取本地文件mcp/server.mjs:109
if (!existsSync(last.path)) return err("截图文件已被清理:" + last.path);
扫描于 2026/10/31(1 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
依赖的 DSH / Cordis 模块
@deepseek-ai/dsh-mcp-client给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
快速截图:DeepSeek Harness 插件,输入框旁一键框选截图(自动隐藏 DSH 窗口),图片进剪贴板 Ctrl+V 即贴,模型可读最近截图分析。
README
由 DeepSeek 最新模型翻译生成dsh-snip 📸 快速截图
DeepSeek Harness(DSH) 插件:输入框旁多一个「📸 截图」按钮——像豆包一样一键框选截图,不用再开本地截图工具。
截完图片自动进剪贴板,Ctrl+V 直接贴进对话;模型还能用 MCP 工具读最近的截图帮你分析。
用法
1. 点输入框旁的「📸 截图」按钮
2. DSH 窗口自动暂时隐藏(不会截到自己),屏幕变暗
3. 拖框选区(ESC 取消)→ 松手完成
4. DSH 窗口自动恢复,提示「✅ 已进剪贴板——Ctrl+V 粘贴到输入框」
5. 粘贴后模型就能看到图(配合视觉模型/视觉插件)
组成
客户端 lib/client.js 「📸 截图」按钮(conversation.input.right 插槽)→ POST /dsh-snip/start 宿主 lib/index.js 本地路由 POST /dsh-snip/start(等待拖选完成/取消/超时)+ GET /last
展开完整文档(README 剩余 1 节)
dsh-snip 📸 快速截图 DeepSeek Harness(DSH) 插件:输入框旁多一个「📸 截图」按钮——像豆包一样一键框选截图,不用再开本地截图工具。 截完图片自动进剪贴板,Ctrl+V 直接贴进对话;模型还能用 MCP 工具读最近的截图帮你分析。 用法 1. 点输入框旁的「📸 截图」按钮 2. DSH 窗口自动暂时隐藏(不会截到自己),屏幕变暗 3. 拖框选区(ESC 取消)→ 松手完成 4. DSH 窗口自动恢复,提示「✅ 已进剪贴板——Ctrl+V 粘贴到输入框」 5. 粘贴后模型就能看到图(配合视觉模型/视觉插件) 组成 客户端 lib/client.js 「📸 截图」按钮(conversation.input.right 插槽)→ POST /dsh-snip/start 宿主 lib/index.js 本地路由 POST /dsh-snip/start(等待拖选完成/取消/超时)+ GET /last + 挂载 MCP 桥接(模型工具) PowerShell scripts/snip.ps1(-STA)全屏半透明遮罩 + 橡皮筋选框 + ESC 取消 → CopyFromScreen 抓屏 → PNG 落盘 ~/.dsh/dsh-snip/ + 图片写剪贴板 → 记录 last.json(路径/尺寸/时间) MCP mcp/server.mjs last_screenshot 最近一次截图的 PNG 路径与尺寸(配视觉工具"看图") take_screenshot 静默截指定区域(x,y,w,h,无遮罩,模型自助观察屏幕用) 安装 dsh plugin --profile <你的 profile> add github:hezhaochao/dsh-snip 安装后完全退出 DSH(含托盘)再重启。要求 Windows 10/11。 为什么完成后还要按一次 Ctrl+V DSH 的对话输入是网页环境,浏览器安全沙箱不允许插件替用户模拟粘贴。 这是与豆包(原生应用可自动插入)唯一的差别——截图本身已经进了剪贴板, Ctrl+V 是你的最后一个动作。 给模型的两个 MCP 工具(mcp__snip__<名>) | 工具 | 作用 | | last_screenshot | 最近一次截图的 PNG 路径 + 尺寸——配视觉工具即可"看"你刚截的图并分析 | | take_screenshot | 模型自助静默截屏(指定 x,y,w,h 区域),用于观察屏幕状态;无遮罩、不抢焦点 | 隐私与行为 - 截图 PNG 只存在本机 ~/.dsh/dsh-snip/;last.json 只记最近一次的路径与尺寸 - 不上传、不联网;截图后想删就手动删目录,或不管它(PNG 不进任何历史) - 框选期间 DSH 窗口被暂时隐藏(截完自动恢复并抢回前台);找不到窗口时静默跳过 - 截图有 120 秒超时兜底(拖选太久不选会自动结束) 兼容性 - 声明 engines.dsh: ">=0.2.0-rc.1 <0.3.0-0",已在 v0.2.1-rc.3(当前最新版)上完成安装 / 配置树组合 / 卸载验证 - 多显示器支持(遮罩覆盖整个虚拟屏);高 DPI 下坐标为物理像素 - 非 Windows:按钮安装后仍会出现,点击返回明确的平台错误 开发与测试 git clone https://github.com/hezhaochao/dsh-snip.git cd dsh-snip npm test # MCP 协议层(隔离 USERPROFILE) npm run test:snip # 截图脚本真实 E2E:-Rect 抓屏/PNG 尺寸/last.json/剪贴板图片(仅 Windows) .ps1 必须保持 UTF-8 with BOM(PowerShell 5.1 编码坑,真机踩过)。 本地真机验证插件挂载: dsh plugin --profile zz-test add link:"<本仓库绝对路径>" dsh --profile zz-test --dump-config # 应能看到 id: snip-button 条目 已知限制 - 框选遮罩期间其他显示器同属一个虚拟屏,跨屏拖选没问题,但遮罩是纯色层(不含屏幕底图) - 个别全屏独占游戏上遮罩可能被压到下面——这类场景本就不适合网页式截图 - take_screenshot 抓屏包含遮罩以外的一切内容,请勿用于窥探他人屏幕 许可 MIT © hezhaochao
预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
hezhaochao/dsh-snip
框选屏幕截图并自动复制到剪贴板,供模型读取分析
相关插件 · 视觉能力
智能体工作台Devin-AXIS/iPolloWork
企业级、本地优先的智能体工作台,面向个人和智能体团队——一个工作区,容纳多个智能体引擎;一套统一体系,管理插件和技能;支…
★ 7,332已汉化DSH
72
开源设计工作台nexu-io/open-design
OpenDesign:首个协作式 AI 设计智能体工作区
★ 105,153已汉化DSH
71.8
多智能体编码工作区spacering-net/codeg
多智能体协作的 AI 编程工作区:汇总 Claude Code、Codex、OpenCode、Pi、Grok Build 等来源的会话。支持桌面应用、自托管服务器或 Docker。
★ 4,244已汉化DSH
71.6
GPT 图像提示词库freestylefly/awesome-gpt-image-2
Prompt as Code | GPT Image 2 / 2.5 提示词与案例库,530+ 个案例、20+…
★ 34,534已汉化DSH
71.5
架构图生成器tt-a1i/archify
把你想理解、规划或分享的事,变成可以互动的可视化作品。
★ 92,046已汉化DSH
71.1
AI 用量桌面小部件Javis603/token-monitor
EN | 简 | 繁 | KO | JA | PT
★ 3,480已汉化DSH
71