When developing and debugging on the Web, terminal functionality is often limited by the browser environment. DeepSeek Harness (DSH) provides a plugin-based extension mechanism. The dsh-cool-terminal plugin aims to address this limitation by providing a real Shell execution environment and supporting persistent state.

Plugin Introduction

dsh-cool-terminal is a terminal plugin for DeepSeek Harness, maintained by developer CoolTea. It solves the problem of being unable to run real Shell commands on the Web, allowing users to execute local commands in the browser and preserve states such as the working directory and command history.

Core Features

The plugin includes the following features:

  • Grouping by Workspace: Consoles are automatically grouped according to DSH workspaces, keeping the interface tidy.
  • Persistent State: Shell sessions, scroll buffers, and the current path are retained after switching conversations or refreshing the page, eliminating the need to re-enter the directory.
  • Independent Command History: Each console maintains its own command history, and pressing ↑ does not mix in history records from other consoles.
  • Frequently Used Command Management: Supports adding, editing, deleting, and using custom frequently used commands.
  • Inline Command Completion: Completion suggestions appear while typing commands. Hover over a suggestion or select it with the arrow keys and press Enter to fill the command line without executing it immediately.
  • Theme Awareness: Rendering is based on DSH theme variables and is compatible with most theme plugins.

Installation and Enabling

Use DSH’s built-in plugin management feature to install it.

dsh add-plugin dsh-cool-terminal

Local Development and Debugging

If you need to build or debug the plugin yourself, follow these steps:

# 克隆项目
git clone https://github.com/CoolTea001/dsh-cool-terminal.git
cd dsh-cool-terminal

# 安装依赖
pnpm install

# 启动本地开发构建
pnpm run dev

# 启动 DSH 服务
dsh web

Limitations and Notes

Be aware of the following limitations before use:

  • Permission Environment: The console runs Shell as the real identity of the DSH process user, not in a restricted sandbox environment, and should be treated as a local trusted environment.
  • Process Lifecycle: Consoles are valid only while the DSH process is running; console state is lost after DSH restarts.
  • Fixed Size: Console size is fixed at creation time and window resizing is not currently supported.

Summary

This plugin is suitable for developers who need to maintain a real Shell context, use persistent history, and manage frequently used commands within the DSH interface. Source code: GitHub.