Bundle
dsh-inbox-paste
DeepSeek Harness web plugin: paste files into the composer, store under session workspace/inbox/, read via read_inbox / list_inbox tools.
- Source
- JarszmLovesAI
- stars
- 2 stars
- License
- MIT
- Updated
- Updated 11 days ago
Readme
# dsh-inbox-paste
[中文文档](README.zh.md)
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](https://github.com/deepseek-ai/DeepSeek-Harness) with the **web** profile
- Node.js ≥ 22, `dsh` CLI
## Install
```sh
dsh plugin --profile web add github:JarszmLovesAI/dsh_upload_file
dsh web
```
Remove: `dsh plugin --profile web remove dsh-inbox-paste`
## Usage
1. **Paste** (Ctrl+V / Cmd+V) or use the **paperclip** in the composer.
2. Pending thumbnails appear above the input; remove with × before send (no disk write yet).
3. On send, files land in `inbox/`; the bubble can show thumbnails (see config).
4. Agent: `list_inbox` → `read_inbox` for text; for **images**, use the bundled [image-reader](skills/image-reader/README.md) 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_KEY` in `~/.dsh/.env`, or
- Bring your own vision MCP / skill / multimodal model.
## Configuration
`~/.dsh/profiles/web/cordis.patch.yml` (adjust profile name):
```yaml
- 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
```sh
npm test
```
## License
MIT
Install
dsh plugin --profile web add github:JarszmLovesAI/dsh_upload_file#c81fd3b715e8746ad4ba27ec744bab7aa90e5963
Profile: web
With the hub plugin installed, ask your agent to install it by name — it resolves the same plan shown here.
dsh plugin --profile web add github:stvlynn/dsh.fish#path:packages/dsh-plugin-hub
install dsh-inbox-paste from the hub