sharkymew/dsh-utility-tools

sharkymew★ 3JavaScriptLast synced: 2026-08-14

Open on GitHub

DSH(DeepSeek Harness)对话工具插件:拖拽任意文件进入对话 + 选中文本引用。

README excerpt

dsh-utility-tools DSH(DeepSeek Harness)对话工具插件: 拖拽任意文件进入对话 + 选中文本引用 。 支持 两种加载方式 :静态挂载( dsh plugin add 一行命令安装,推荐)与动态加载( cordis define ,零依赖)。 功能 1. 拖拽文件附件(不限于图片) - 拖入任意文件到对话区域即进入 附件列表 :输入框上方显示「📎 附件(N)」胶囊; - 点击胶囊展开 管理菜单 :查看文件名/大小、逐个移除; - 发送(Enter 或发送按钮)时随消息一并提交: - Electron 环境 :直接引用 File.path 原路径,不复制; - 普通浏览器 :字节 无损 暂存到系统临时目录(macOS/Linux 用 /tmp ,Windows 用每用户 %TEMP% )下的 dsh-drops/ / ,消息引用绝对路径,模型可直接读取; - 文件 内容不会 出现在输入框或消息气泡里(只引用路径与大小), 不污染工作目录 ; - 图片拖拽仍走系统原生流程;图片与文件混拖时图片自动转交原输入栏。 2. 选中文本引用 - 在对话中鼠标选中文字 → 选区上方弹出「引用」菜单; - 点击后选中文字显示在输入框上方(引用条),带「✕」取消; - 发送时引用以 引用: 块置于消息开头一并提交。 目录结构 如何导入(给使用者) 方式 B:静态挂载(一行命令,推荐 ✅) - 包通过 dsh.bundle 声明( cordis.patch.yml 内的 - insert: 行)自动向插件树插入 entry, 无需手动编辑任何 patch 文件 ; - 安装命令等价于在 profile 目录执行 pnpm add ; - 行内 name 是模块说明符:loader 经 import(name) 加载包入口 main (Host ESM),client 模块表扫描 entry 的 dsh.client 声明并 serve ./client 导出( ModuleLoader 格式); - Host 半区注册 HTTP 路由 /dsh-utility-tools/save ,Client 半区经同源 fetch 上传附件。 方式 A:动态加载(零依赖,已验证) 把 dynamic/host.body.js 与 dynamic/client.body.js 的全文交给你的 AI: 用 cordis define 创建插件: code.host = dynamic/host.body.js 全文, code.client = dynamic/client.body.js 全文,然后 cordis run 运行。 在 UI 中批准运行请求即可。动态插件是 DSH 一等公民特性,进程内加载、卸载即清理。 架构说明 层面 位置 职责 Clien…

View full README on GitHub →
Tools / Devdshdsh-plugindsh-plugins

Category