前言¶
DSH 的理念是「一切皆插件」。对于需要在聊天输入框中快速提供图片的场景,已有做法可能是先保存本地文件、再外部截图、最后粘贴,缺少统一入口。
dsh-composer-image-tools 是 ai-yucheng 维护的 DSH 插件,用来在聊天输入框工具栏增加图片上传和自定义区域截图两个入口,并把图片注入 DSH 草稿图片轨,随消息发送。
这是什么¶
dsh-composer-image-tools 是一个面向 DSH 的插件,许可证为 MIT,自研实现,零依赖。
它解决的核心问题是:在 DSH 聊天输入框中提供“看图”的入口,包括本地图片上传和自定义区域截图。
核心功能¶
图片上传¶
- 打开系统文件选择器,支持多选图片上传。
- 选中的图片会注入 DSH 草稿图片轨。
- 超过 10MB 的文件会被自动拦截;原因是超大图片会消耗大量 token。
区域截图¶
- 点击工具栏截图按钮后,进入全屏遮罩。
- 按住鼠标左键拖拽框选区域,松开后选区自动裁剪成图片,并进入草稿区。
- 支持使用
Esc取消截图框选。 - 截图基于 Electron 主进程
desktopCapturer截取整屏,不依赖微信或外部截图工具。 - 浏览器
getDisplayMedia在 DSH 的 Electron 环境不可用,因此截图走插件服务端主进程路由。
与剪贴板粘贴并行¶
- 如果已经通过微信
Alt+A完成截图,可以直接在 DSH 输入框中使用Ctrl+V粘贴图片。 - 该路径不需要点击插件按钮,和插件的自定义框选截图互不干扰。
安装与启用¶
在 DSH 的 profile 目录执行安装命令:
pnpm add dsh-composer-image-tools
然后在 profile 的 package.json 中,确认 dsh.profile.bundles 已加入:
"dsh-composer-image-tools"
启用后需要:
1、重启 DSH Desktop,使服务端截屏路由生效。
2、硬刷新浏览器,快捷键为 Ctrl+Shift+R。
3、查看聊天输入框工具栏,确认出现图片上传按钮和区域截图按钮。
注意:已给资料未明确当前包已发布,实际环境可能需要源码 link 安装。插件会以当前 dsh 进程权限运行,安装前应检查源码和许可证。
典型用法¶
上传本地图片¶
1、点击工具栏图片上传按钮。
2、在系统文件选择器中选择一张或多张不超过 10MB 的图片。
3、图片出现在输入框上方草稿区。
4、输入补充文字,可选;然后发送。
自定义区域截图¶
1、点击工具栏区域截图按钮。
2、屏幕显示全屏遮罩,进入框选状态。
3、按住鼠标左键拖拽,框选需要截取的区域。
4、松开鼠标,选区自动裁剪成图片并出现在草稿区。
5、如需取消,按 Esc。
从剪贴板粘贴¶
1、使用微信 Alt+A 等外部方式完成截图。
2、在 DSH 输入框中按 Ctrl+V。
3、图片进入输入框草稿区后可发送。
适用场景与注意¶
适合以下情况:
- 需要给 DSH 聊天输入框增加图片入口。
- 希望本地图片上传和自定义区域截图都能在输入框内完成。
- 不想依赖微信或外部截图工具完成区域截图。
- 需要限制上传体积,避免超大图片消耗大量 token。
使用时注意:
- 上传超过 10MB 的图片会被拦截。
- 使用区域截图前,需重启 DSH Desktop,使服务端截屏路由生效。
- 需确认
dsh.profile.bundles已加入dsh-composer-image-tools。 - 截图基于 Electron 主进程
desktopCapturer截取整屏;浏览器getDisplayMedia在 DSH 的 Electron 环境不可用。 - 插件以当前
dsh进程权限运行;安装前应检查源码和 MIT 许可证。
链接¶
- GitHub:https://github.com/ai-yucheng/dsh-composer-image-tools
- 插件目录页:https://www.skillhub.cn/plugins/ai-yucheng/dsh-composer-image-tools