把文件与文件夹直接传进对话——图片以真实图片块加入消息,文本内容写入输入框草稿,文件夹按目录结构落盘。
安装
# GitHub 源码(首次需按提示配置 allowBuilds 构建授权后重试)
dsh plugin --profile web add github:zhousun55-byte/dsh-postman
装任何插件都等于在你的机器上跑第三方代码,权限和你本人一样大——能读你的文件、用你的凭据、访问网络,工具审批管不到它。GitHub 来源的插件还会在安装时执行构建脚本。请只安装可信来源,并尽量锁定 commit(github:owner/repo#sha)。
README
把文件与文件夹直接「邮」进对话——不需要再复制进工作区文件夹、不需要报路径。
入口在输入框工具行左侧的 + 命令菜单里:/upload(两个选项:上传文件 / 上传文件夹),
工具行本身不额外占按钮。
核心亮点
- 图片以图片形式加入消息:PNG/JPG/WebP/GIF(≤5 MiB)走 DSH 原生附件管线, 输入框缩略图 + 消息图片块,模型侧由视觉桥接(如 modlens)转写——不是只给一个路径; HEIC 等不支持或超限的图片自动退回路径上传。
- 文件夹上传:
webkitdirectory整目录上传,按目录结构落盘~/.dsh/uploads/<时间戳>-<文件夹名>/…,文本文件内容直接写进输入框草稿,模型立即可见。 - 零依赖、无构建步骤:纯 Node 内置模块 + DSH 原生管线,克隆即用。
功能
- 上传文件(多选):
- 图片(PNG/JPG/WebP/GIF,≤5 MiB)→ 以图片形式加入消息:走 DSH 原生附件管线 (输入框缩略图 + 消息图片块),模型侧由视觉桥接(如 modlens)自动转写,与粘贴 图片完全一致;HEIC 等不支持的图片与超限图片自动退回路径上传。
- 文本文件 → 内容以内联代码块直接写入输入框,模型立即可见;
- 其他二进制 → 注入路径与大小,模型可用
read工具读取。
- 上传文件夹(Chrome 的
webkitdirectory):按目录结构整体落盘到~/.dsh/uploads/<时间戳>-<文件夹名>/…,草稿注入文件清单 + 文本文件内容预览 (合计约 2.4 万字符封顶)+ 二进制路径;文件夹里的图片(上限 12 张)同样以图片 形式加入消息。 - 图片也可以继续用「粘贴 / 拖入输入框」的原生通道,两者并存。
宿主半区
POST /dsh-postman/upload?name=<文件名>[&dir=<上传根名>][&rel=<相对路径>]
- 单文件模式(无 dir):落盘
~/.dsh/uploads/<时间戳>-<文件名>; - 文件夹模式(同批共用 dir):落盘
~/.dsh/uploads/<dir>/<rel>,自动建目录, 文件名冲突加-2/-3,永不覆盖; - 上限 25 MiB / 文件;
dir禁路径分隔符,rel逐段净化并丢弃..; 目录0700、文件0600;跨站 Origin 拒绝; - 响应信封:
{ ok: true, value: { name, path, root, size, kind, preview } },kind === 'text'时preview为 UTF-8 前 2 万字符。
安装
把本仓库放进 Web profile 的依赖并声明插件行(dsh 会按包名在
/plugins/dsh-postman/client.js 提供浏览器半区):
~/.dsh/profiles/web/package.json增加"dsh-postman": "link:/path/to/dsh-postman"(或发布后改用版本号依赖);~/.dsh/profiles/web/cordis.patch.yml增加:- insert: - id: ui-upload name: 'dsh-postman'pnpm --dir ~/.dsh/profiles/web install,重启dsh web(客户端改动仅需刷新页面)。
自检
node client.test.cjs # 客户端逻辑无头验证(18 项断言,模拟 react/fetch/commandUi)
许可证
MIT
链接
同类插件
zhu1090093659/dsh-web-ui#packages/dsh-web-ui-all★ 3362
DSH Web UI 插件与皮肤合集:任务看板、git 图、右侧面板、远程移动端 UI、桌宠、实时 token 统计与皮肤中心。
omdsh-dev/DSH-better-sidebar★ 1600
侧边栏完整工作台:内置文件渲染编辑、终端、Git 与子代理,支持三方插件注册新 Tab。
ccch1mneyyy/dsh-TUI★ 1519
Claude Code 风格全屏终端 UI:像素鲸鱼顶栏、实时工作状态行、思考流式展开。
omdsh-dev/dsh-at-file★ 262
Codex 风格的 `@file` 文件引用,输入框里直接搜索并引用工作区文件。
huiliyi37/dsh-tianshu-tui★ 190
DeepSeek Harness 的终端 UI(TUI)。
Nagi-ovo/dsh-visualize★ 159
对话内生成式 UI:模型把交互式 HTML 卡片直接画进会话流,带流式预览与沙箱渲染。