l541402398/dsh-file-uploads

Upload arbitrary local files from the Web composer, show pending cards, and manage stored files in Settings.

dsh-file-uploads lets the DeepSeek Harness Web composer attach arbitrary local files — not only images. A Files button beside the composer accepts multiple local files of any type; pending files show as cards above the composer without dirtying the draft (no visible path or generated description is inserted); each hidden file reference is serialized into a model-readable absolute path only when the message is submitted, then cleared on success and restored on failure. Uploads are stored in one fixed directory ($DSH_HOME/uploads by default), listed in Settings → Uploaded files with download/delete actions, published as name (1).ext / (2).ext to prevent overwrites, and bounded by per-file and total-directory quotas. The plugin uses the arbitrary-file path the agent environment supports (native attachments still transport as raster images only).

UI Enhancements ★ 0 updated 2026-08-14
View on GitHub ↗

Install

dsh plugin --profile web add github:l541402398/dsh-file-uploads#v1.0.0

GitHub tagged release per README (EN primary with 简体中文 edition): dsh plugin --profile web add "github:l541402398/dsh-file-uploads#v1.0.0" (or #main for the dev branch). Restart the running Web profile after install, then refresh. Compatible with DeepSeek Harness 0.1.0-rc.6 web profile, Node 22+.

Compatibility

DeepSeek Harness 0.1.0-rc.6 Web profile; Node.js 22+; uploads stored under $DSH_HOME/uploads by default; quotas enforced per file and per directory.

Details

Recent updates

v1.0.0 is the tagged release per README.

FAQ

Can I upload non-image files?
Yes — arbitrary local files, not just images; they land in $DSH_HOME/uploads and reach the model as absolute container paths at submit time.
Does it clutter the draft?
No — pending files appear as cards above the composer and no path or description text is inserted into the draft; references serialize only on submit.
How are duplicates handled?
Overwrites are prevented — duplicates are published as name (1).ext, name (2).ext, etc., with per-file and total-directory quotas enforced.

Alternatives

a903067276-rgb/dsh-file-mentions · hkkz9522/dsh-session-manager

More plugins in UI Enhancements

Browse more in UI Enhancements

Guides for UI Enhancements plugins