Introduction

The standard DeepSeek Harness (DSH) workflow typically requires selecting a Workspace before starting a session. This can be cumbersome for temporary or one-off tasks. The dsh-quick-session plugin addresses this issue, allowing users to start a session in the Web GUI without specifying a workspace and automatically assigning an independent temporary directory as the execution boundary.

Core Positioning

This is a client-side plugin maintained by GRmaid. It provides session-startup capability through a sidebar quick entry. It does not register a formal Workspace, but instead uses an independent temporary directory as the sandbox boundary.

Core Features

  • Workspace-free startup: Start a session in the DSH Web GUI without specifying a workspace.
  • Independent temporary directory: Each quick session has its own directory, located at %DSH_HOME%\scratch.
  • Session boundary: This directory serves as both the workspace write boundary and the Shell working directory (CWD).
  • Sidebar grouping: No Workspace is registered; the sidebar categorizes it as “Ungrouped”.
  • Quick entry: A quick-session icon is provided at the bottom of the sidebar. Clicking it opens an input box.
  • Permission control: Agent permissions follow the existing four tiers, with “workspace write + confirmation before changes” enabled by default.
  • Architecture split:
    • Host side: Registers the route POST /plugins/dsh-quick-session/prepare and is responsible for directory creation.
    • Browser side: Responsible for the UI and session-creation flow.
  • Technical dependency: Requires React ^18.2.0.

Installation and Enabling

Install via command line:

dsh plugin add github:GRmaid/dsh-quick-session

Note: Desktop-side installation only accepts plugins published to npm. If you need to install it on the desktop side, use the link: installation method or wait for the plugin to be published to npm.

Typical Usage

  1. Click the quick-session icon at the bottom of the sidebar, next to Settings, to open the input box.
  2. Enter content and submit it.
  3. The host creates a new directory under %DSH_HOME%\scratch (formatted as quick-<date>-<random>).
  4. This directory is set as the Shell working directory, and the Agent can only read and write files within this scope.

Development and Debugging

To modify the host-side code:

  1. Copy lib/entry.js to a new filename and modify its contents.
  2. Update the name field in cordis.patch.yml to point to the new filename.
  3. In the plugin management page (or via plugin_manager’s set_bundle), close and then reopen the bundle to trigger a reload.

If you only modify the browser-side code, you do not need to restart the host; just refresh the page.

Notes

  • Temporary file cleanup: Files in the temporary directory are not automatically cleaned up and must be managed manually.
  • Icon fallback: The quick-session icon has a fallback ladder: whale-tail GIF -> official tail-fin crop -> 🐋 glyph, ensuring the button content remains visible.
  • Permission enforcement: The plugin runs with the permissions of the current DSH process.

Conclusion

This plugin provides a convenient entry point for handling scattered, temporary tasks and avoids the overhead of frequently switching workspaces. For more details and source code, see the project homepage.

Project homepage
Plugin catalog