前言¶
在 dsh web 会话里,若要把截图或本地文件交给模型处理,手动保存、手动补路径、再回头下载历史文件会比较零散。paste-to-workspace 用于处理这类操作:把粘贴或拖入聊天框的图片与任意文件保存为会话工作区文件,并在发送后让模型侧收到路径文本。
这是什么¶
paste-to-workspace 是一个 dsh web 插件,包名为 @dsh-user/paste-to-workspace,仓库安装来源为 github:LQ-1123/paste-to-workspace。已核实资料未单独给出维护者字段,因此这里不把仓库路径直接表述为官方维护者信息。
它解决的问题是:在 dsh web 中支持图片粘贴和任意文件拖放,并把内容保存到会话工作区 .dsh-paste/。
核心功能¶
- 任意文件拖放:从 Finder / 微信 / QQ / 网页把任意类型文件拖到窗口任意位置,即保存到工作区
.dsh-paste/,并进入待发预览条。 - 图片粘贴:使用
Cmd/ctrl+V粘贴截图或图片进入待发列表。 - 类型图标渲染:图片显示缩略图;其他文件显示 RemixIcon line 图标、原始文件名和大小;未知格式用代码图标兜底。
- 点击即下载:点击文件卡片唤起浏览器另存为,并保留原始文件名。
- 纯文件发送:不输入文字也可发送;一次调用等于一个回合。
- 一回合双气泡:文字留在原气泡,图片/文件卡片移到独立用户行;模型侧始终是一条消息。
- 主题适配:卡片底色、边框、文字、图标跟随宿主设计 token,深浅主题自动切换。
- 提示文案改写:拖放时把宿主的图片拖动提示改写为文件拖动提示;该改写仅作用于拖放进行时。
- 30 天自动清理:超期的插件粘贴文件自动清扫。
安装与启用¶
安装前需要:已装好 DSH,且 dsh web 可正常运行;dsh plugin 可用并依赖 pnpm。
执行安装命令:
dsh plugin --profile web add "github:LQ-1123/paste-to-workspace"
安装后重启 dsh web 生效。
如需禁用,可在 Profile patch 或 overlay 中设置:
- id: paste-to-workspace
disabled: true
典型用法¶
1、拖入 .txt / .md / .pdf / .doc / .zip 等任意文件,或粘贴图片;输入框上方出现预览条。
2、用 Enter 或发送按钮发送,可以完全不输入文字。
3、模型侧收到 [Image: source: <绝对路径>] 或 [File: source: <绝对路径>] 文本。
4、文件保存在会话工作区 .dsh-paste/;历史消息中的文件卡片可点击重新下载。
适用场景与注意¶
适合需要在 dsh web 里把截图、文档、压缩包等文件交给模型处理的场景。使用前建议注意:
- 粘贴(
Cmd+V)只拦截聊天输入框内的图片;文件请使用拖放。 - 不支持拖入文件夹,需要打包成
zip后拖入。 - 单文件上限约
24 MB,base64 后为32 MBJSON 体。 - 发送过的文件在
.dsh-paste/保留 30 天后自动清理,历史卡片点击下载可能 404。 - 待发文件是全局列表:未发送前切换会话,文件会跟着下一次发送走。
- 宿主侧提供
POST /save、GET /file、DELETE /file路由;路径校验严格,跨站请求 403。 - 插件以当前
dsh进程权限运行;安装前应检查源码与许可证。 - 许可证为
MIT;文件图标来自RemixIcon,许可证为Apache-2.0。
参考链接¶
资料中给出的链接如下:
- 目录页:https://www.skillhub.cn/plugins/LQ-1123/paste-to-workspace
- GitHub:https://github.com/LQ-1123/paste-to-workspace