In the DSH Web interface, how the bash and pwsh tool rows are displayed directly affects the user experience. The original tool row can be inconvenient when handling long commands or when only the command needs to be copied. dsh-shell-card-plus aims to solve these specific pain points by providing a clearer display and interaction model.

What It Is

This is an enhanced plugin maintained by antnesswcm. Its core purpose is to fully replace the official bash/pwsh tool rows in the Web interface without changing the command execution logic.

Features

  • Fully replaces the official tool row: The collapsed row style remains consistent with the official one, and the expanded view uses a custom card.
    • Header: Displays a status dot, the current working directory (cwd), and Copy Command / Copy Output buttons.
    • Command area: Shows the full command, with automatic line wrapping and line numbers.
    • Output area: Uses horizontal scrolling, preserving the original reading habit.
  • Independent copy buttons: Provides separate “Copy Command” and “Copy Output” buttons, solving the issue where the original version could only copy output.
  • Limited scope: Only takes over bash and pwsh; it does not affect other tools such as read/write/search.

Installation and Enabling

Use the following command to install:

dsh plugin --profile web add dsh-shell-card-plus

After installation, restart dsh web or refresh the browser page (Ctrl+F5) for the changes to take effect.

How It Works

The plugin registers the two keys bash and pwsh through the official tool.call.toolview slot and takes over rendering. The command, cwd, output, and exit code all come from the existing official ToolCallBlock data. It is a pure presentation-layer plugin that does not introduce new events or modify the host.

Notes

Using this plugin requires a DSH version no lower than 0.1.0-rc.5. The plugin follows the MIT license, and its source code is hosted on GitHub.