dsh-file-menu: Adding a Codex-Style Context Menu to the DeepSeek Harness Web UI

Introduction

The Web client of DeepSeek Harness (DSH) does not include a native contextmenu handler. Right-clicking inside the application interface usually does not trigger any useful action, such as copying text, pasting content, or opening the file location. The dsh-file-menu plugin solves this problem by providing a Codex-style context menu on the element under the cursor.

Plugin Overview

Name: dreammaker2016/dsh-file-menu
Maintainer: dreammaker2016
License: MIT
Purpose: Adds right-click menu context to the DSH Web UI.

Core Features

The menu is built dynamically based on the element under the cursor. Supported actions include:

Right-click target Menu items
Selected text Copy
Paragraph (no selection) Copy paragraph
Input field / editable area Cut · Copy · Paste · Select All
File reference (file card, file chip, inline file mention) Copy path · Show in File Manager · Open with default app
Link Copy link address · Open in browser
Alt + right click Diagnostics: Copy element information

Installation and Enablement

Install it with npm using the following command:

dsh plugin --profile web add @z1995418/dsh-file-menu

Install from source:

dsh plugin --profile web add github:dreammaker2016/dsh-file-menu

After installation, restart DSH to load the plugin.

Uninstall

To remove it, run:

dsh plugin --profile web remove dsh-file-menu

Typical Usage

  1. Text operations: Right-click selected text to copy it. Right-click a paragraph with no selection to copy the entire paragraph.
  2. Input operations: Right-click an input field to perform Cut, Copy, Paste, or Select All.
  3. File operations: Right-click a file reference to copy its path, show it in the file manager, or open it with the default application.
  4. Link operations: Right-click a link to copy its address or open it in the browser.
  5. Diagnostics: Hold Alt and right-click to copy element information.

Technical Details and Limitations

  • Copy mechanism: Copy operations prefer the Electron main process route /file-menu/clipboard; if unavailable, they fall back to PowerShell Set-Clipboard or document.execCommand('copy').
  • Show in file manager: Uses OS commands (Windows Explorer /select, macOS Finder open -R, Linux xdg-open). If the host route is unavailable, it falls back to DSH’s /open-in-app/open.
  • Path resolution: Paths are read from title, data-path, data-file-path, dataset.*path, or element text. Relative paths are resolved relative to the session workspace root. ~/... is expanded on the host side.
  • Relative path limitations: A relative path is recognized only if it is a single token (no spaces), contains a path separator, and the final segment has a file extension.
  • Version control: The client and host sides are versioned independently.

Ecosystem Note

This plugin follows the DSH plugin ecosystem practice. Before installing, review the source code and license.

Directory page: dreammaker2016/dsh-file-menu
GitHub repository: dreammaker2016/dsh-file-menu

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye