Introduction

The DSH plugin system emphasizes “everything is a plugin,” and the interaction capabilities of the Web GUI can be extended through plugins. If you often need to fill in longer prompts in the DSH Web GUI, typing directly might not be as convenient as dictation; the current practice is usually to first call an external transcription tool and then copy the result back into the input box. The dsh-stt-input plugin introduced below moves this step inside the DSH Web input box: click the microphone button next to the input box to start recording, and after stopping, the recognized text is filled into the input box.

What is this

baisama-cloud/dsh-stt-input is a speech input plugin for the DeepSeek Harness (DSH) Web GUI, licensed under MIT. It solves the problem of converting speech to text and writing it into the input box within the DSH Web GUI.

The plugin registers three UI slots:

The microphone button in the input box toolbar
The status bar below the input box
The "Speech Input" configuration item in the Settings page

Core Features

Two Recognition Engines

Browser local recognition uses the Web Speech API (SpeechRecognition), available in Chrome/Edge, zero configuration required, no API Key needed, and can write intermediate results into the input box while speaking.

API recognition uses MediaRecorder to record audio and transcribes it via an OpenAI-compatible interface, supporting OpenAI, Groq, or custom services. The interface used is:

/v1/audio/transcriptions

Models and Configuration

Optional models include:

whisper-1
whisper-large-v3
whisper-large-v3-turbo
distil-whisper-large-v3-en

Custom model names can also be used.

Configurable items include:

Service preset
API Base URL
API Key
Recognition language
Write mode: Append to input box / Replace input box content

Status and Key Saving

A real-time status bar is displayed below the input box, including recording timer, recognition status, and error messages.

The API Key is only saved in the page memory and is not written to disk or logs; non-sensitive configurations are retained in localStorage after refresh.

Installation and Activation

Before installation, confirm that the Node environment meets:

node >=18.18

The following installs the plugin into the DSH web profile using the tarball method:

pnpm pack
# Copy dsh-stt-input-*.tgz to the web profile and add it as a dependency,
# for example, in ~/.dsh/profiles/web: pnpm add ../path/to/dsh-stt-input-0.1.0.tgz
# Then restart `dsh web`.

First, pack the plugin, then add the generated tarball to the dependencies of the specified web profile, and finally restart dsh web to activate the plugin.

Typical Usage

  1. Open Settings → Speech Input and select an engine.

  2. If using browser local recognition, no other configuration is needed; it only supports Chrome/Edge.

  3. If using API recognition, select a preset (OpenAI or Groq), select a model, and paste the API Key. Groq’s whisper-large-v3 is currently free.

  4. Click the microphone button next to the input box to start recording, speak, and click it again to stop; the recognized text enters the input box, press Enter to send.

For Firefox, please use the API engine.

Suitable Scenarios and Notes

This plugin is suitable for using browser local recognition in Chrome/Edge, or scenarios requiring calling an OpenAI-compatible Whisper service. The write mode can be selected to append to the input box or replace the input box content, suitable for cases where the input box already contains existing draft content.

After the plugin is enabled, it runs with the current dsh process permissions. You should check the source code, dependencies, and MIT license before installing.

Reference Links

Community directory page: https://www.skillhub.cn/plugins/baisama-cloud/dsh-stt-input

GitHub repository: https://github.com/baisama-cloud/dsh-stt-input

The directory page is a community directory, an independent site, with no official affiliation with DeepSeek or Huansuan.