moazzamak/dsh-voice-input ↗★ 0
dsh-voice-input
Offline local speech-to-text for the DeepSeek Harness composer: a microphone button that records, transcribes with faster-whisper on your own machine, and inserts the text into the chat draft. 适合需要高隐私、免联网本地语音转文字输入草稿的用户。
Other repositories with this package name
Install
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:moazzamak/dsh-voice-inputREADME
Read the full README ↗Configuration
Every option has a working default, so configuration is optional. To change one, override
the row in $DSH_HOME/profiles/web/cordis.patch.yml — a patch replaces a row's entire
config, so restate every key you still want:
- id: voice-input
name: dsh-voice-input
config:
model: small.en
language: en
computeType: int8
timeoutMs: 300000
| Key | Default | Meaning |
|---|---|---|
model | base.en | Whisper model size or name |
language | en | Spoken language, or auto to detect |
computeType | int8 | CTranslate2 compute type |
timeoutMs | 300000 | Deadline for one transcription |
polish | conservative | Clean the transcript with a model; off returns the raw text |
polishTimeoutMs | 15000 | Deadline for the cleanup call alone |
polishProvider / polishModel | current selection | Pin cleanup to a specific route |
pythonPath | package .venv | Interpreter with faster-whisper |
scriptPath | bundled CLI | The transcription script |
cacheDir | $DSH_HOME/cache/voice-models | Model weights cache |
The cleanup uses the model the deployment already selects, so it needs no second credential and
no extra configuration. It is a normal ctx.llm.stream call — the same route the agent uses —
and it runs with temperature: 0 under its own deadline.
Choosing a model
| Model | Size | Notes |
|---|---|---|
tiny.en | ~75 MB | Fastest, least accurate |
base.en | ~150 MB | Default; roughly 1 s of CPU per 5 s of speech |
small.en | ~500 MB | Noticeably better, about 3× the compute |
Drop the .en suffix for multilingual models (base, small) and pair them with
language: auto. A model that is not cached downloads on first use and needs network
access once.
If huggingface.co is blocked, set DSH_VOICE_HF_ENDPOINT to a mirror such as
https://hf-mirror.com before starting DSH.