Skip to content
dsh.fish
Bundle

dsh-user-addons

DSH user addons: file drop-upload, archived-session manager, model/token usage dashboard (auto-loads with the web profile)

Source
Yur0918
stars
2 stars
License
MIT
Updated
Updated yesterday

Readme

# dsh-user-addons

Community web add-ons for [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness).

This package provides a small, out-of-tree DSH plugin with both Host and Web client halves. It does not modify DSH core files.

## Features

- File drop/upload support in the Web composer. Images are attached when the selected model supports image input; other files are saved locally and attached by path.
- An archived-session manager for finding, archiving, and restoring sessions through DSH's workspace registry.
- A local model and token usage dashboard, folded from `~/.dsh/sessions`.
- An image-capability endpoint used by the Web client to choose the appropriate attachment behavior.

## Requirements

- A DSH Web profile with the client module loader enabled.
- Node.js 22.19 or newer, matching the current DSH development baseline.

## Install

Install this package using the plugin/package mechanism used by your DSH profile, then restart the Web profile so the package metadata and `lib/client.js` bundle are discovered. The package declares:

```json
{
  "dsh": {
    "client": {
      "platform": "web",
      "inject": [
        "@deepseek-ai/dsh-client-runtime",
        "@deepseek-ai/dsh-client-locale"
      ]
    }
  }
}
```

For a source checkout, make sure the published `lib/client.js` file is present before starting the Web profile. Run the package check with:

```sh
npm run check
```

## Local routes

The Host half registers same-origin `/addons/*` routes:

- `GET /addons/health`
- `GET /addons/archive/list`
- `POST /addons/archive/archive`
- `POST /addons/archive/restore`
- `GET /addons/image-capability`
- `POST /addons/upload`
- `GET /addons/usage/summary`

Uploads are limited to 100 MiB and filenames are sanitized before being written below the DSH home. Usage data is read locally from DSH session logs; this plugin does not make network requests.

## Development

The browser bundle in `lib/client.js` is intentionally committed because DSH's Web host serves built client bundles. Keep the Host and Client halves compatible with the DSH version you are using, and run `npm run check` before publishing.

Please do not commit session logs, uploaded files, credentials, generated task state, or backup files.

## License

MIT

Install

dsh plugin --profile web add github:Yur0918/dsh-user-addons

Profile: web

  • This package builds from source on install. pnpm will ask you to allow its build script — that is permission to run the package’s code on your machine, outside the agent sandbox. Only allow sources you trust.
  • This source has no pinned commit, so a later push upstream changes what installs. Prefer pinning a commit.
Source