OctKwong30/dsh-upload-file
OctKwong30★ 0JavaScriptLast synced: 2026-08-17
DSH 插件:可将任意文件上传至 Web GUI 对话框(支持附件按钮、拖放以及 read_uploaded_file 工具)
README excerpt
dsh-upload-file 让 DeepSeek Harness Web GUI 支持把 任意文件上传进对话 ,两种入口:composer 输入框的附件按钮(SVG 回形针图标,多选),以及 直接把 OS 文件拖进 composer 区域 。选中的文件先由浏览器上传到宿主进程持久化存储,并以胶囊 chip 显示在 composer 上方的 「待发送文件」条 (与 shell 图片上传的「待发送图片」条同一体验):文件名 + 大小 + 移除按钮,发送时自动把干净的 markdown 链接( 📎 名称(大小) ,绝对 URL 内含 sha256 id)并入消息文本; 发送后会话里的用户消息渲染成文件卡片 (方案 B:图标 + 文件名 + 大小 + 打开,含文件链接的消息为卡片行 + 剩余文本气泡,纯文本消息保持官方气泡原样);模型通过 read uploaded file 工具读取文件内容(文本直接返回,二进制返回元数据与下载地址)。 文件字节 不会 进入对话日志——进入对话的只有引用文本,与官方 describe-image 插件的图片上传采用同一套思路。 功能 - composer 工具行新增附件按钮( conversation.input.left 槽位,SVG 回形针图标,与 shell 工具按钮同款胶囊样式),支持一次多选文件上传;上传中图标切换为旋转进度弧。 - 待发送文件条 :已上传待发送的文件以胶囊 chip 显示在 composer 上方( conversation.input.dock 槽位的 FileDock , role="group" aria-label="待发送文件" ),每个 chip 含回形针图标 + 文件名 + 大小 + 移除按钮;草稿保持干净(仅一个不可见占位符用于让“仅发文件”时发送按钮可用,发送钩子会在提交时剥离)。 - 发送钩子 :结构性包装 conversation.sendSession (与 describe-image 同款、幂等、可卸载、发送失败自动恢复待发条),发送时把待发送文件的链接并入消息文本;无待发文件时原样穿透,不拦截任何其他发送。 - 会话内文件卡片(方案 B) :以 conversation.chat.node (key=user / steering,priority -1)接管用户消息渲染——消息含本插件文件链接时渲染成卡片行( role="group" aria-label="待发送文件" ,图标 + 文件名 + 大小 + 打开链接,纯链接消息不渲染气泡,类图片附件);否则 完整复刻官方用户气泡 (图片画廊 + MessageText + 时钟 + 复制按钮,官方 CSS 令牌逐条对齐)。渲染崩溃时 slots 会退役本 entry 并自动回退到官方渲染器。 - 拖拽上传 :把 OS…
View full README on GitHub →Category
Enhancement suite for Gemini, AI Studio, Claude & ChatGPT — plus a prompt manager for any web UI, DeepSeek Harness included. / 面向 Gemini、AI Studio、Claude 与 ChatGPT 的增强套件;提示词管理器可用于任意 Web UI,含 DeepSeek Harness。
★ 19,575
PicGo/PicGo-Core:zap:The ultimate image uploading engine. Both CLI & API supports.
★ 976
Nagi-ovo/dsh-ads把 DSH 变成 2005 年门户网站|Parody ads, fake games, and popups for the DSH Web UI
★ 479