dsh-files
DeepSeek Harness plugin: read_document (text/PDF/DOCX/PPTX/XLSX/.doc the built-in read rejects as binary), attachment_list/export_attachment model tools, and a zero-token attachment dock (pill + library card, + menu folder upload, download/export/@ source) closing the host attachment library visibility gap.
What it is
DeepSeek Harness plugin: read_document (text/PDF/DOCX/PPTX/XLSX/.doc the built-in read rejects as binary), attachment_list/export_attachment model tools, and a zero-token attachment dock (pill + library card, + menu folder upload, download/export/@ source) clo…
How to install
Run this in the DSH web profile, then refresh the page.
$ dsh plugin --profile web add dsh-files@0.0.1
DSH versions accepted
^0.2.0-rc.1 || ^0.2.1-alpha.1 || ^0.2.2-0
Author and traction
taxueseek · ★ 43 · Updated 2026-11-07
About this plugin
English | 简体中文
dsh-files In one line
Let the AI actually read the documents you upload — and let your files come back out. The two annoyances it removes
You have probably hit both: You hand the AI a contract PDF or a spreadsheet, and it says "I can't read this file." The file is fine — the built-in read tool only accepts plain text and refuses binary content outright. You want the AI to look at that attachment you uploaded days ago, but the attachment store is write-only: you cannot browse it, and you cannot pull the file back onto your machine.
dsh-files fills exactly those two holes. Read: the AI gets the text out of PDF / Word / Excel. Fetch back: you and the AI both see what is in the store, and you can pull a file back out. What changed in this release SDK aligned with the host at 0.2.0-rc.2: fixes "the plugin button is missing and native upload is dead in the desktop App" — the plugin used to be built against the old SDK, colliding with the host's newer bundled components in the client module graph Errors now speak plainly: a failure used to hand you a cold error code; now it tells you what to change next. Reach the server over your LAN and the attachment routes answer 403 — the response prints the exact trustedHosts line to add, ready to copy LAN / domain deployments are documented now: that section used to be blank, leaving you to guess The division of work with the host is written down: what the host already does (upload, images, document preview) versus what remains unique to this plugin — so the wheel is not reinvented Here is a file's four-stage session lifecycle, one official gap filled per stage: Ingest: the folder button next to the native paperclip (plus a same-named entry in the officia
Native upload in harness 0.1.3 stores files as byte objects and hands the model one handle line (name, size, digest, read-only path) to read with file tools — but the built-in read tool rejects binary content with FS_NOT_TEXT. Structured text extraction for PDF / DOC / DOCX / XLSX, plus attachment-store listing and export (the official GC is on the roadmap and the store is invisible to the model today), are the gaps the official stack leaves open; this plugin fills them.
Capabilities Content sniffing: PDF header / OLE Compound File (Word 97-2003) / ZIP central-directory members / UTF-8 (fatal) / UTF-16 BOM / GB18030 — decided from bytes, never from extensions; disguised files (an exe renamed .pdf) are rejected. The format hint is only a last resort when bytes are fully unknown PPTX presentations (0.7.0): pure JS / zero native dependency parser for PresentationML, extracting slides in sequence with
Similar plugins
Mole
🐹 Open-source Mac and PC cleaner. Keep your machine clean, light, and running like new…
DeepSeek-Reasonix
A reliable coding agent for complex software engineering tasks.
dsh-desktop
DSH Desktop product workspace