paste-to-workspace:把粘贴或拖入的图片与任意文件保存为会话工作区文件

前言

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 MB JSON 体。
  • 发送过的文件在 .dsh-paste/ 保留 30 天后自动清理,历史卡片点击下载可能 404。
  • 待发文件是全局列表:未发送前切换会话,文件会跟着下一次发送走。
  • 宿主侧提供 POST /saveGET /fileDELETE /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
羽毛球分组比赛记分
小程序二维码

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

Xiaoye