Skip to content
dsh.fish
Bundle

dsh-vox-input

Voice (speech-to-text) input for the DSH Web composer via the browser Web Speech API — tap the mic, speak, the transcript fills the input box. Zero server, zero API keys, nothing leaves the machine. · DSH Web 语音输入:点麦克风说话,识别文字回填输入框(Chrome/Edge,无需 API key)。

Source
promisez322-prog
stars
1 stars
License
MIT
Updated
Updated 5 days ago

Readme

# dsh-vox-input

Voice (speech-to-text) input for the DSH Web composer via the browser **Web Speech API**
(Chrome/Edge). Tap the mic, speak, and the transcript fills the input box — editable before send.
Zero server, zero API keys, zero model downloads; nothing leaves the machine.

## Install

```sh
# symlink the package into the web profile (local dev), then add the row:
ln -s <this-dir> "$DSH_HOME/profiles/web/node_modules/dsh-vox-input"
# append to $DSH_HOME/profiles/web/cordis.patch.yml:
#   - insert:
#       - id: dsh-voice-input
#         name: dsh-vox-input
#
# IMPORTANT: the short `id: dsh-voice-input` above is only the host patch-row
# identifier. In client.js, the module registration MUST use the exact package
# name:
#   window.__ModuleLoader__.load({ id: "dsh-vox-input", factory })
# Never replace that client registration with the short row id.
# restart: node <dsh>/lib/bin.js web
```

## Use

A waveform 🎙️ control appears in the composer tool row. Tap to listen (Chinese by default; the
tiny chip cycles zh-CN / en-US / auto). Interim text streams in a live caption above the
composer; final text is appended into the draft sentence by sentence (pause ~1s between
sentences — the session stays open, and auto-ends after ~4s of silence). Non-Chromium
browsers show a muted badge.

## Notes

- Client UI (dual-face) plugin: the host half is an empty shell; all logic lives in
  `client.js` via `window.__ModuleLoader__.load`. The registration ID must equal
  `package.json.name` exactly (`dsh-vox-input`). See `AGENTS.md`.
- MIT licensed. Conventions follow the ecosystem references (dsh-mic-input, dsh-voice-input-web);
  implementation is original.

Install

dsh plugin --profile web add github:promisez322-prog/dsh-vox-input

Profile: web

  • This source has no pinned commit, so a later push upstream changes what installs. Prefer pinning a commit.
Source