Preface

DeepSeek Harness (DSH) uses a plugin-based architecture, and extending functionality usually requires modifying code or building it yourself. When debugging agents, tracking every tool invocation in a session—including the tool name, parameters, results, and status—is a common need. dsh-ui-tools is a browser-side plugin that displays tool invocation information in a structured way by registering a dedicated view in the conversation header.

Plugin Introduction

dsh-ui-tools is a DeepSeek Harness (DSH) Web plugin maintained by user liukj98. It mainly addresses the difficulty of directly viewing and debugging tool invocation flows in the Web interface. It does not intercept model requests or modify Chat snapshots; it exists only as an information consumer.

Core Features

  • Conversation header view registration: Registers a tools view in the tab bar of the conversation header.
  • Invocation list display: Lists every tool invocation in the current session in dispatch order.
  • Detailed information display: Displays the tool name, formatted parameters, result text, and ok / error / running status.
  • Non-invasive operation: Runs as a browser-side plugin, does not participate in model requests, does not modify Chat snapshots, and only consumes ConversationSnapshot.

Installation and Activation

Before installing, ensure the environment meets the following conditions:
* DeepSeek Harness is installed, and dsh web starts normally.
* The pnpm command is in the system PATH.

Use the following commands to install:

dsh plugin --profile web add dsh-ui-tools@latest
dsh web

After installation is complete, restart dsh web. A tools tab will appear in the conversation header.

Notes

  • pnpm version restriction: If using pnpm >= 10, this version blocks disallowed build scripts by default. If the first add fails, add the printed key to allowBuilds in pnpm-workspace.yaml under the profile directory as prompted, then retry.
  • Built-in version conflict: If the DSH built-in ui-tools plugin is also installed, two tools tabs will be displayed. To distinguish them, modify the id and label in apply() in src/client.tsx (for example, id: 'tools-ext', label: () => 'tools+'), then run pnpm build again.

Conclusion

For developers who need to debug tool invocation flows in a DSH environment, dsh-ui-tools provides a lightweight viewing entry point that does not interfere with core logic. See the GitHub repository for more details.