In the DSH (DeepSeek Harness) development environment, frequently switching directories in the terminal to run scripts (such as npm run lint or pytest) can disrupt the workflow. The dsh-quick-commands plugin solves this problem by providing a quick-command entry point in the workspace header.

What Is This

dsh-quick-commands is a DSH Web plugin maintained by fonlan. It allows users to configure named shell commands for each DSH workspace. Users do not need to switch directories in the terminal; they can simply click the icon in the session header to run a command and view its output in real time through a floating popup.

Core Features

  • Per-workspace command management: Configure independent named commands for each workspace.
  • Session header execution: Run commands by clicking the ▶ quick-run icon on the left side of the Session log.
  • Real-time output popup: Streams stdout/stderr at approximately 200 ms intervals in plain text, with auto-follow scrolling and tab support.
  • Settings card management: Lists all workspaces in the plugin settings, with support for adding, renaming, and deleting commands.
  • Remote SSH support: Run commands on remote hosts over SSH. The @dsh-ssh/dsh-ssh host plugin must be loaded.
  • Serial execution: Only one command can run at a time in the same workspace.

Install and Enable

Run the following command in the terminal to install the plugin:

dsh plugin --profile web add @fonlan/dsh-quick-commands

After installation is complete, restart DSH (dsh web) to apply the changes.

Typical Usage

  1. Configure commands: Go to Settings → Plugin Configuration → Quick commands, and add commands for a specific workspace (for example, npm run lint).
  2. Run commands: Click the ▶ icon in the session header and select the corresponding command.
  3. Use placeholders: Command text can include placeholders such as {workspace}, {cwd}, and {title}. The plugin automatically replaces them with the actual path or title.
  4. Adjust the popup: Drag the popup border or corner handles to resize it. The size is saved automatically.

Use Cases and Notes

  • Remote workspaces: When using remote workspaces, the @dsh-ssh/dsh-ssh host plugin must be loaded; otherwise, remote commands cannot be executed.
  • Permissions and security: Commands are configured by the user and executed on click. They do not involve model requests or approval prompts. The plugin runs commands in the workspace directory using its own environment variables and PATH. Local macOS/Linux uses bash -c, and local Windows uses pwsh -c. Remote commands are executed with the remote user’s permissions. Only configure trusted commands.

This plugin provides a standardized script execution layer for DSH workspaces. For more details, refer to the GitHub repository.