# dsh-file-upload-local DeepSeek Harness (dsh) 的本地文件上传插件。通过回形针按钮或拖拽把文件传进对话;文件按会话隔离存储在会话工作区的 `.dsh-uploads//` 下,agent 用 `read_document` 工具读取。 [English](README.md) ## 功能 - **上传入口**:输入框左侧回形针按钮 + 全窗口拖拽遮罩。 - **附件栏**:上传的图片显示 64px 缩略图(点击看原图),其它文件显示类型图标 + 文件名,每块都可悬停移除。引用在回车或点击发送时**不可见地**追加到已发送文本里。 - **`read_document` 工具**:带行号分页读取文本(`offset`/`limit`),并用 tesseract.js(`chi_sim+eng`)对图片 OCR,纯文本模型也能读截图和照片。 - **会话隔离**:文件落在会话工作区的 `.dsh-uploads//`,TTL 定时清扫防膨胀。 ## 安装 ```sh dsh plugin --profile web add dsh-file-upload-local # 重启 dsh web ``` ## 使用 1. 点回形针按钮,或把文件拖到窗口任意位置。 2. 文件以缩略图形式出现在输入框上方,点 ✕ 可移除。 3. 发送消息后,agent 用 `read_document <路径>` 读取(文本分页、图片 OCR)。 ## 配置 ```yaml - id: dsh-file-upload-local config: uploadMaxBytes: 26214400 # 单次上传体上限 uploadTtlMs: 604800000 # 7 天 sweepIntervalMs: 3600000 # TTL 清扫间隔 maxConcurrentUploads: 4 maxFileBytes: 26214400 # read_document 读取上限 readLimit: 2000 # 每页最大行数 ocrLangs: 'chi_sim+eng' # tesseract 语言包 ``` ## 说明 - OCR 语言包(`chi_sim+eng`)由 tesseract.js 首次使用时下载,请保持网络或预先缓存。 - 图片走 OCR 路径(`read_document`),纯文本模型开箱即用;若当前模型支持图片输入,也可直接用官方 `read_image`。 ## License MIT