dsh-plugin-appshot:DeepSeek Harness 全局窗口截图插件

前言

DeepSeek Harness (DSH) 依赖插件扩展能力,但在原生功能中缺少全局快捷键截取当前窗口的上下文注入方式。这通常迫使开发者手动截屏、切换窗口、复制粘贴,增加了工作流中的摩擦成本。

dsh-plugin-appshot 是为此目的设计的插件。它为 macOS 和 Windows 提供全局快捷键截图,利用原生能力捕获当前窗口,并自动作为图片上下文挂入 DSH 的 Composer。这实现了从“触发截图”到“Agent 获得上下文”的零摩擦传递。

安装与启用

在终端中执行以下命令安装插件:

dsh plugin --profile web add dsh-plugin-appshot

安装完成后,重启 DSH。启动日志中出现 [dsh-plugin-appshot] plugin applied successfully 和 native agent ready 表示加载成功。

macOS 权限配置: 首次触发截图时,系统会弹出授权引导。必须授予“屏幕录制”和“辅助功能”权限,插件才能正常工作。

核心功能

通用能力

  • 单窗口精准截图: 仅截取当前前台窗口,不包含其他窗口、桌面、菜单栏或 Dock。
  • Composer 草稿挂载: 截图自动进入当前会话的输入框草稿区。支持连续触发以追加多张截图。
  • 无残留: 临时 Staging 文件按“单一 Owner”规则管理,在成功挂载或失败清理后自动删除,无文件残留。

macOS 平台

  • 快捷键: 默认使用左右 Command(⌘+⌘)组合。支持在设置面板切换为双击 Command 等模式。
  • 技术实现: 基于系统 ScreenCaptureKit,支持 Retina 高清分辨率,自动过滤透明层、阴影和 Tooltip。
  • 先截后唤: 严格遵循“先截图,后唤起 DSH”的流程。截图落盘后,Native Agent 才会唤醒并置顶 DSH 窗口,防止误截 DSH 自身。
  • 权限反馈: 缺少权限时弹出系统授权引导,并通过系统通知提示失败原因。

Windows 平台

  • 快捷键: 默认使用左右 Ctrl(Ctrl+Ctrl)。可在 DSH 设置面板中自定义修饰键组合,配置跨重启保留。
  • 静默交付: 截图过程不激活、不聚焦 DSH 窗口。通过 Node 内存与 HTTP 长轮询将图片静默挂入 Composer,不打断当前工作流。
  • 两阶段截图: 采用“置前 + 降级”策略。先备份窗口内容,若置前失败则降级使用备份,确保截取到的即用户看到的内容。
  • 无打扰反馈: 提供快门音、边框闪烁与缩略图飞入动画(可在设置中关闭)。所有失败提示均为不抢焦点的轻量浮层。

使用方法

  1. 触发截图: 在任意应用中按下全局快捷键。
    • macOS:同时按下左 ⌘ 与右 ⌘。
    • Windows:同时按下左 Ctrl 与右 Ctrl。
  2. 查看结果:
    • macOS: 截图完成后,DSH 窗口自动唤起并聚焦。
    • Windows: 截图静默进入当前会话输入框,DSH 保持原样。
  3. 提交: 在 Composer 中输入描述(如“分析这个报错”),点击发送。截图将随文本一起提交。

限制与注意事项

  • 平台要求: 仅支持 macOS 14+ (Apple Silicon / arm64) 和 Windows 10 19041+ (x64)。WebUI 暂不支持(浏览器沙箱无法获取全局快捷键)。
  • 功能缺失: 不包含区域框选、全屏截图、图片标注、OCR 与历史图库管理。
  • 依赖约束: 依赖 @deepseek-ai/cordis (^4.0.1) 与 @deepseek-ai/dsh-tools (exact 0.1.0-rc.6)。在 Windows 下,peer 依赖可能因权限问题安装失败,建议在开发者模式下安装。

总结

dsh-plugin-appshot 通过全局快捷键将截图能力无缝集成到 DSH 工作流中。无论是 macOS 的自动唤起还是 Windows 的静默挂载,都旨在减少上下文准备的步骤,让 Agent 能够更直接地获取当前窗口的视觉信息。

  • 项目主页: https://github.com/TaurusWood/dsh-plugin-appshot
  • 目录页: https://www.skillhub.cn/plugins/TaurusWood/dsh-plugin-appshot
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜