Back to home@zhangbo1201

dsh-file-upload

Upload local files into the current DeepSeek Harness workspace from the Web composer

Stars
0
Language
TypeScript
Created
Aug 18, 2026
Updated
Aug 18, 2026
GitHub repo

Introduction

dsh-local-file-upload

中文

Adds a local-file upload button to the DeepSeek Harness Web composer.

  • Select multiple files in one pass, or paste ordinary files into the composer with Cmd+V / Ctrl+V.
  • PNG/JPG/WebP/GIF continue through DSH's native image attachment path; other clipboard files use this plugin.
  • 10 MiB limit per file.
  • Writes into .dsh-uploads/ under the current Session workspace.
  • Allocates collision-safe names without overwriting existing files.
  • Appends @.dsh-uploads/<name> to the composer after upload, ready for dsh-at-file and agent filesystem tools.
  • Sanitizes path separators, whitespace, and @ from stored names.
  • Rejects symlinked upload directories and verifies the decoded byte count on Host.

Install

dsh plugin --profile web add dsh-local-file-upload

To update later:

dsh plugin --profile web update dsh-local-file-upload

The transfer stays on the local DSH loopback connection; no file is uploaded to a cloud service.

Restart the active dsh web process after installation. The upload button appears in the composer toolbar.

Cleanup

Uploads remain in the workspace's .dsh-uploads/ directory until removed. Add .dsh-uploads/ to the project's .gitignore to avoid committing uploaded files accidentally.

Development

pnpm install
pnpm run check