taxueseek/dsh-files

DeepSeek Harness dual-face plugin: session-isolated file upload with colorful composer cards + read_document t

A dual-face DSH plugin with three capabilities in one package: (1) Upload — a paperclip button, a folder button, and drag-and-drop anywhere on the page add files to a session-isolated store (sha256-deduped, TTL-swept, max-4 concurrent uploads); typing @ lists both uploaded files and workspace files as dual-source candidates. Uploads are color-coded by byte-sniffed true format. (2) Native images — JPEG/PNG/WebP/GIF attachments are piped through the harness core attachment pipeline (ctx.attachments → base64 image_url) so any vision-capable model sees the actual image. (3) Document reading — the read_document tool reads text/PDF/DOCX/XLSX with content sniffing, GB18030 encoding fallback, per-sheet XLSX access, paged reads, and an LRU parse cache.

Files & Data ★ 16 updated 2026-09-05 ⏳ pending
View on GitHub ↗

Install

dsh plugin --profile web add git+https://github.com/taxueseek/dsh-files.git

dsh plugin --profile web add git+https://github.com/taxueseek/dsh-files.git or one-line: curl -fsSL https://raw.githubusercontent.com/taxueseek/dsh-files/main/install.sh | sh (repo taxueseek/dsh-files, package.json name=dsh-files v0.4.1, verified 2026-08-30). Important: the npm name dsh-files is held by an unrelated placeholder package — install only via the git URL or the install script, never the bare npm name.

Compatibility

DSH web profile; loopback + trustedHosts security; reads text/PDF/DOCX/XLSX with content sniffing, GB18030 fallback, LRU parse cache; MIT.

Details

Recent updates

Composer paperclip + folder + drag-drop upload (sha256-dedup, TTL, concurrency 4); @ dual-source candidates; native JPEG/PNG/WebP/GIF image pipeline; read_document tool (text/PDF/DOCX/XLSX, GB18030, paged, LRU).

FAQ

Why can't I install via dsh plugin add dsh-files?
The npm name dsh-files is squatted by an unrelated placeholder package (dushaobindoudou). Install only via the git URL (git+https://github.com/taxueseek/dsh-files.git) or the provided install.sh script.
Are uploaded files shared between sessions?
No — files are stored in session-isolated directories (<workdir>/.dsh-filess/<sessionId>/) so each session has its own upload space; the TTL sweep cleans them up automatically.
Can it read encrypted PDFs?
No — the PDF parser handles text-layer PDFs only; encrypted or password-protected PDFs and scanned image-only PDFs are not supported (use a vision model for image PDFs).

Alternatives

sunshine-lang/dsh-pdf · taxueseek-dsh-healthcheck · ben7am1n/dsh-lens-lite

More plugins in Files & Data

Browse more in Files & Data

Guides for Files & Data plugins