dsh-speak: 在 DeepSeek Harness 中使用 macOS 朗讀文本

前言

DeepSeek Harness (DSH) 是一個插件化的開發框架。在調試或使用智能體時,開發者有時需要直接讓系統朗讀 Agent 的回覆,或者驗證長文本的輸出。瀏覽器自帶的語音合成往往功能有限,且無法通過 Agent 工具直接調用。dsh-speak 插件通過調用 macOS 的 say 命令,在運行 DSH 的主機機器上播放音頻,並提供了一套完整的朗讀工具鏈。

介紹

dsh-speak 是一個運行在 macOS 上的 DeepSeek Harness 插件。它允許模型調用 speak 工具朗讀文本,並在 Web UI 中提供消息操作按鈕和選區朗讀功能。所有音頻播放均來自本地主機,不經過網絡傳輸,不依賴模型下載。該插件支持中文、英文、日文和韓文的自動腳本檢測。

核心功能

  • Agent 工具 (speak):模型可以通過調用 speak 工具來朗讀文本或停止朗讀。
  • 消息操作:每條已確定的助手回覆下方有一個 🔊 按鈕,點擊可朗讀該回復,再次點擊停止。
  • 選區朗讀:選中頁面上的任意非輸入文本,會出現一個朗讀氣泡,點擊即可朗讀。
  • 個性化設置:支持按語言配置語音、語速和 Han 字偏置。
  • 多語言支持:基於 macOS say 命令,支持中文、英文、日文、韓文,自動檢測腳本。

安裝與啓用

方式一:插件管理器(推薦)

  1. 打開 DSH,進入 Plugins(設置中的 Plugins 或側邊欄的 Plugins 面板)。
  2. 點擊 Install bundle,粘貼以下倉庫地址:
   https://github.com/RinChanNOWWW/dsh-speak
  1. 插件會自動插入 speak 工具並加載瀏覽器端代碼,無需額外構建。如果按鈕未顯示,刷新頁面即可。

方式二:命令行安裝(僅限 Web Profile)

對於 dsh web 配置文件,可以使用 CLI 安裝:

dsh plugin --profile web add https://github.com/RinChanNOWWW/dsh-speak

方式三:手動安裝

如果需要將插件安裝到配置文件目錄之外:
1. 將包文件複製到配置文件目錄:

   $DSH_HOME/profiles/<profile>/plugins/dsh-speak/{package.json, index.js, client.js}
  1. 在 $DSH_HOME/profiles/<profile>/cordis.patch.yml 中添加一行:
   - insert:
       - id: speak
         name: ./plugins/dsh-speak/index.js
  1. 重啓 DSH 或重新加載配置文件以生效。

典型用法

讓 Agent 朗讀

你可以直接在對話中讓助手朗讀文本。支持的指令包括:
- “read this aloud”
- “讀一下這段”
- “stop reading” / “別讀了”

speak 工具參數

參數 說明
text 要朗讀的文本,markdown 會被剝離,除非 stop 爲 true 否則爲必填
stop 設爲 true 時停止當前朗讀而非開始新的朗讀
language 偏置語言(zh/en/ja/ko),用於 Han 字判斷和語音回退
voice 指定 macOS 的具體語音名稱(如 Tingting、Kyoko 等)
rate 語速,單位爲每分鐘字數,範圍 80-500
wait 是否等待朗讀完整結束再返回

界面操作

  • 消息操作:點擊助手回覆下方的 🔊 圖標開始朗讀,再次點擊停止。若正在朗讀其他內容,點擊該圖標會切換到當前內容。
  • 選區朗讀:選中頁面文本,點擊彈出的氣泡朗讀。氣泡會保持並變爲“停止朗讀”狀態。
  • 設置:點擊編輯器工具欄的齒輪圖標,或選中文字氣泡內的齒輪圖標,可配置各語言的語音和語速。

注意事項

  • 系統要求:僅支持 macOS,依賴 say 命令。Linux 支持未實現。
  • 版本要求:需要 DSH 0.2.x(桌面應用或瀏覽器配置文件)。
  • 併發限制:同一時間只能播放一個朗讀任務,新請求會覆蓋舊任務。
  • 手動安裝:手動修改 cordis.patch.yml 後必須重啓或重新加載配置文件。
  • CLI 限制:CLI dsh plugin 命令拒絕桌面應用配置文件,僅支持 Web Profile。

總結

dsh-speak 插件通過複用 macOS 的系統能力,爲 DSH 提供了原生的文本朗讀功能。它既能讓 Agent 作爲工具調用,也能通過 UI 交互爲開發者提供便捷的文本驗證手段。所有操作均在本地完成,無需額外的網絡請求或 API 密鑰。

目錄頁 | GitHub 倉庫

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜