JarszmLovesAI
dsh_upload_file
DeepSeek Harness(DSH) web plugin: paste files into the composer, inbox storage, thumbnails. Text via read_inbox; image understanding needs your vision skill (bundled image-reader + ARK_API_KEY).
- Stars
- 0
- Language
- JavaScript
- Created
- Aug 16, 2026
- Updated
- Aug 16, 2026
Introduction
dsh-inbox-paste
DSH web bundle: paste or pick files in the composer, store under {session.cwd}/inbox/, show thumbnails before/after send. Agents use list_inbox / read_inbox for text; image understanding requires your own vision skill or model (see below).

Requirements
- DeepSeek Harness with the web profile
- Node.js ≥ 22,
dshCLI
Install
dsh plugin --profile web add github:JarszmLovesAI/dsh_upload_file
dsh web
Remove: dsh plugin --profile web remove dsh-inbox-paste
Usage
- Paste (Ctrl+V / Cmd+V) or use the paperclip in the composer.
- Pending thumbnails appear above the input; remove with × before send (no disk write yet).
- On send, files land in
inbox/; the bubble can show thumbnails (see config). - Agent:
list_inbox→read_inboxfor text; for images, use the bundled image-reader skill or your own vision tooling.
Upload ≠ multimodal understanding
This plugin does not use Harness native image attachments. The main model only gets path markers unless you add vision:
- Install the optional image-reader skill and set
ARK_API_KEYin~/.dsh/.env, or - Bring your own vision MCP / skill / multimodal model.
Configuration
~/.dsh/profiles/web/cordis.patch.yml (adjust profile name):
- id: inbox-paste
config:
uploadMaxBytes: 26214400
inboxDirName: inbox
allowedExtensions: []
customizeUserBubble: true # false = built-in user bubble (may show raw paths)
Restart dsh web after changes.
vs dsh-file-upload
| dsh-inbox-paste | dsh-file-upload | |
|---|---|---|
| Paste | ✅ | ❌ |
| Storage | {cwd}/inbox/ | {cwd}/.dsh-uploads/ |
| Built-in PDF | ❌ | ✅ |
Tests
npm test
License
MIT