Skip to content

omdsh-dev/dsh-fun-typewriter

30Last commit Aug 13, 2026

dsh-fun-typewriter DSH plugin

This plugin generates real-time typing sounds, send feedback, completion chimes, error tones, and input key clicks using WebAudio synthesis. It includes a mute button and a full settings page, all without external resources or audio files.

How to install the dsh-fun-typewriter DSH plugin

dsh plugin --profile web add @deepseek-ai/dsh-fun-typewriter@0.0.1-rc.3

Copying does not run this command. Review the repository and version before installing the dsh-fun-typewriter DSH plugin.

dsh-fun-typewriter DSH plugin data source

dsh-fun-typewriter DSH plugin snapshot date: Aug 16, 2026

discovered

What the dsh-fun-typewriter DSH plugin can do

  • Sound effects for assistant streaming output (key clicks), send, completion, error, and input actions
  • Settings page with master toggle, volume slider, and per-sound switches
  • WebAudio real-time synthesis, no audio files or third-party requests
  • Zero external dependencies, keys, or network calls
  • Automatic AudioContext creation on first user gesture to comply with autoplay policy

Where the dsh-fun-typewriter DSH plugin fits

  • Enhance the typing experience for users who enjoy mechanical keyboard sounds
  • Provide auditory feedback for assistant streaming output in a DSH Web interface
  • Indicate message send, completion, or error with distinct sound cues
  • Customize sound profiles for different interaction scenarios
  • Add a playful atmosphere to DSH Web sessions

Who the dsh-fun-typewriter DSH plugin is for

  • DSH Web users who want immersive audio feedback
  • Users who prefer typewriter or mechanical keyboard aesthetics

dsh-fun-typewriter DSH plugin limitations

  • Only compatible with DSH versions >=0.1.0-rc.3 and <0.2.0
  • Only supports the 'web' profile
  • Requires a browser with WebAudio support and user gesture to start
  • Settings endpoint only accepts loopback same-origin requests
  • Depends on specific DSH client slots: settings.section, conversation.input.dock, conversation.session.header.actions

dsh-fun-typewriter DSH plugin: from the repository README

Quoted from the omdsh-dev/dsh-fun-typewriter README, the upstream source of the dsh-fun-typewriter DSH plugin. Copyright remains with the original authors.

为 DSH Web 增加打字机/机械键盘氛围音:助手流式输出敲击、发送回弹、完成提示、 错误低鸣、输入按键音,以及会话头部静音按钮和完整设置页。音效全部由 WebAudio 实时合成,不包含音频文件,也不访问任何外部服务。 ## 安装 ```bash # 已登录私有 npm registry dsh plugin --profile web add @deepseek-ai/dsh-fun-typewriter@0.0.1-rc.3 # 本地开发 checkout dsh plugin --profile web add link:/path/to/dsh-fun-typewriter ``` 包内已经声明 `dsh.bundle.patch`;`dsh plugin add` 会自动维护 Profile Bundle。 不要手工修改 profile manifest,也不要重复插入 `fun-typewriter` loader row,否则会 得到 `duplicate loader entry id`。 ## 行为与权限 - 浏览器第一次用户手势后才创建 `AudioContext`,遵守自动播放策略; - 设置包含总开关/音量、流式音色与节奏、发送/完成/错误/输入音开关; - 设置通过插件自有的 `/plugins/dsh-fun-typewriter/api/settings` 读写,不依赖 DSH rc.3 配置面的 namespace allowlist;该端点仅接受 loopback 同源请求; - 零音频资源、零第三方请求、零密钥。 ## 兼容性 | 组件 | 支持范围 | | --- | --- | | DSH | `>=0.1.0-rc.3 <0.2.0` | | Node.js | `>=22.19.0` | | Profile | `web` | 宿主 API 使用 rc.3 的 `webServer` 服务名。客户端依赖 rc.3 的 `settings.section`、`conversation.input.dock` 和 `conversation.session.header.actions` slots。 ## 开发 ```bash npm install --legacy-peer-deps DSH_NODE_MODULES=/path/to/dsh-runtime/node_modules npm run setup:dsh-workspace npm run typecheck npm test npm run build npm pack ``` 构建产出 `lib/index.js`(宿主)和 `lib/client.js`(浏览器 ModuleLoader 包)。 ## Lic

Read the full READMERepository license: BSD-3-Clause

dsh-fun-typewriter DSH plugin questions

How do I install the DSH Fun Typewriter plugin?

Run the following command in your DSH environment: 'dsh plugin --profile web add @deepseek-ai/dsh-fun-typewriter@0.0.1-rc.3'. Make sure you are logged into the private npm registry and your DSH version is >=0.1.0-rc.3 and <0.2.0.

Why don't I hear any sound after installing?

The plugin requires a user gesture (click, tap, or keypress) to create the AudioContext due to browser autoplay policies. Try clicking anywhere on the page or pressing a key before using the assistant. Also check that the master toggle in the settings page is enabled.

Can I customize the sound effects?

Yes, the plugin provides a settings page accessible via the mute button in the conversation header. You can adjust the master volume, and toggle individual sounds for streaming, send, completion, error, and input actions.

Does the plugin use any external audio files or services?

No. All sounds are generated in real-time using the WebAudio API. There are no audio files, no third-party requests, and no external dependencies. The plugin is completely self-contained and respects your privacy.

Is the plugin compatible with other DSH profiles like 'desktop' or 'cli'?

No, the plugin currently only supports the 'web' profile. It relies on specific DSH client slots (settings.section, conversation.input.dock, conversation.session.header.actions) that are only available in the web profile.