OctKwong30/dsh-upload-file ↗★ 0
dsh-upload-file
让 dsh Web GUI 支持把任意文件上传进对话:composer 附件按钮(SVG 图标 + 多选)+ 待发送文件条(类图片上传)+ OS 文件拖拽上传 + 宿主端持久化存储 + read_uploaded_file 模型工具(无需构建,纯 JS)。
安装
$
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:OctKwong30/dsh-upload-file说明文档
阅读完整 README ↗使用
按钮上传
- 打开任意会话,在输入框工具行点击回形针按钮(鼠标悬停提示“上传文件到对话”)。
- 选择本地文件(默认上限 20 MiB,可多选)。
- 每个文件以胶囊 chip 出现在 composer 上方的待发送文件条(文件名 + 大小 + × 移除),草稿保持干净;即使不输入文字,发送按钮也可用(“仅发文件”消息)。
- 发送。发送钩子自动把每条链接并入消息文本,会话里渲染成可点击的蓝色链接:
📎 [report.pdf(12.1 KiB)](http://127.0.0.1:3080/dsh-upload/raw/sha256:abc…)
- 模型从链接 URL 提取
sha256:abc…后调用read_uploaded_file读取(参数可传裸 id、链接或 URL)。
拖拽上传
- 从系统文件管理器把一个或多个文件拖到 Web GUI 的 composer 区域。
- 出现“松开以上传文件到对话”提示条后松开鼠标。
- 非图片文件自动上传并进入待发送文件条(同按钮流程);图片文件交给 shell 的图片管线(不冲突,可混用)。
配置
Settings → 插件配置 → dsh-upload-file:
| 字段 | 默认 | 说明 |
|---|---|---|
| maxFileBytes | 20971520 | 单文件字节上限 |
| maxTextReadBytes | 262144 | read_uploaded_file 文本预览上限 |
| uploadsDir | (空) | 上传根目录;空 = ~/.dsh/uploads |