dsh-table-attach:在 DSH Web Composer 中直接拖拽或粘贴非图片文件

DSH web composer 默认仅支持图片(PNG/JPG/WebP/GIF)的粘贴和拖拽。在需要处理表格或文档(如 .xlsx, .csv, .pdf)时,通常需要先上传到外部存储,再复制链接。dsh-table-attach 插件填补了这一空白,允许开发者直接在编辑器中操作非图片文件。

这是一个客户端插件,由维护者 yybukn 开发。它拦截浏览器的粘贴和拖拽事件,将文件保存到当前会话的工作区,并自动生成引用链接。

核心功能

  • 输入方式:支持拖拽和粘贴。
  • 文件类型:支持任意非图片文件(xlsx, csv, pdf, zip 等)。
  • 工作区存储:文件保存到 <workspace>/attachments/ 目录,同名文件会自动添加 -1、-2 等后缀。
  • 引用生成:成功后自动插入 @reference 引用(例如 @"attachments/report.xlsx"),代理可以直接读取。
  • 安全机制:默认限制文件大小为 50 MiB,阻止可执行文件扩展名(如 .exe, .dll, .sh, .js 等),并防止路径遍历攻击。
  • 兼容性:保留图片处理逻辑不变,支持中英文国际化。

安装与启用

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

dsh plugin add github:yybukn/dsh-table-attach

典型用法

  1. 打开任意会话(提供工作区)。
  2. 将 .xlsx / .csv / .pdf / .zip 等文件拖拽到编辑器,或复制文件后使用快捷键粘贴。
  3. 保存成功后,编辑器中会出现 @reference 引用。
  4. 发送消息,代理即可读取引用的文件内容。

适用场景与注意

  • 适用场景:需要向智能体传递数据文件、表格或文档的场景。
  • 注意事项:
    • 文件大小限制为 50 MiB。
    • 可执行文件扩展名会被拦截。
    • 文件名经过净化处理(防路径遍历)。
    • 复制 Excel 单元格文本会被视为普通文本,不会转换为文件。

通过这个插件,可以在不离开编辑器的情况下将文件传递给智能体,简化了工作流。相关链接:GitHub | 插件目录

羽毛球分组比赛记分
小程序二维码

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

小夜