前言¶
在 DeepSeek Harness(DSH)里長時間跑會話時,Token 消耗往往只體現在賬單或日誌裏,缺少一種可感知、可持久化的「副產品」。若你希望在對話界面旁做一點輕量的儀式感——敲擊木魚、逐句流轉經文、把會話用量折算成可查詢的「功德」——社區插件 dsh-plugin-muyu 就是面向這一需求的 Bundle。它由 Makesupper 維護,遵循 DSH 插件開發規範與 Cordis 架構,當前版本爲 0.2.0,以 MIT 許可證發佈。
這是什麼¶
dsh-plugin-muyu 是跨平臺的電子木魚誦經與 Token 功德修持插件:工作區右下角常駐懸浮掛件,可與對話並行;服務端維護單一功德簿,會話 Token、工具調用與掛件操作寫入同一份賬本。內置 8 部經文、三種木魚/清磬音色,並支持跨平臺粵語/普通話誦經語音合成(Web Speech API)。
核心功能¶
會話 Token 自動度化功德¶
服務端監聽 DSH 原生 session/event 裏 assistant/message 的 usage,彙總 inputTokens、outputTokens、cacheReadTokens、cacheWriteTokens;忽略 assistant/attempt 重試,避免重複記賬。默認每累計 10,000 Token 自動敲木魚 1 次、功德 +1;未滿閾值的餘數保存在 pendingTokens,跨宿主重啓不丟失。真實用量完整記入 todayTokens/totalTokens;單次敲擊在實現上封頂 108 敲。掛件每 800ms 輪詢 GET /dsh-muyu/state,Token 度化觸發動畫、音效與功德累積,不再依賴瀏覽器 localStorage 獨立賬本。
設置面板提供 Token 頁,可調整「每多少 Token 增加 1 功德」;閾值爲負時進入扣功德模式(每 |N| Token 扣 1 功德),持久化到 .state.json。
傳世經文與掛件交互¶
內置《般若波羅蜜多心經》(玄奘譯本 14 句)、《金剛般若波羅蜜經》、《大悲心陀羅尼神咒》、《六字真言與禪林名偈》、《藥師灌頂真言》、《準提神咒》、《往生咒》、《楞嚴咒心贊偈》。客戶端與服務端共享同一權威經文源。點擊木魚時,當前句誦完才推進下一句。展開面板含 3D 木魚、經文氣泡、功德計數,以及自動修持、誦經開關、禪修設置、功德簿等工具欄。
音色與誦經語音¶
三種物理音色:sandalwood(紫檀沉音)、whitewood(清脆白木)、bell(古剎清磬)。木魚敲擊與誦經語音可分別靜音,互不干擾。語音自動識別系統粵語女聲(zh-HK / yue / Sinji)或普通話女聲,跟隨 voice.lang。
功德簿持久化¶
存儲路徑優先級:顯式 storagePath > $DSH_HOME/muyu-data/merit_history.json > ~/.dsh/muyu-data/merit_history.json。採用臨時文件加 renameSync 原子寫盤;損壞 JSON 會隔離爲 .corrupt-<timestamp>。寫盤前獲取 <merit_history.json>.lock 獨佔鎖,桌面端與 dsh web 同時運行不會互相覆蓋。
六個 DSH Tools¶
| 工具名稱 | 功能 |
|---|---|
muyu_knock |
敲擊木魚積攢功德(count 1~108),推進一句經文 |
muyu_auto_knock |
啓動/停止/查詢自動敲木魚(支持 0/9/21/49/108/1080 週期) |
muyu_get_merit |
查詢今日/累計功德、Token、pendingTokens 及按日明細 |
muyu_select_sutra |
瀏覽 8 部經典或切換當前誦讀 |
muyu_play_sound |
獲取或切換三種音色 |
muyu_feed_tokens |
手動補記 Token(單次最多 108 × abs(tokensPerMerit),默認上限 1,080,000) |
Host 路由(loopback,供掛件調用)包括 /dsh-muyu/state、/dsh-muyu/knock、/dsh-muyu/auto、/dsh-muyu/sutra、/dsh-muyu/tokens-per-merit。修改 Host 端代碼後需重啓 DSH 宿主;只改前端 bundle 時刷新頁面即可。
安裝與啓用¶
推薦從 npm 安裝,由 DSH 插件入口拉取包,cordis.patch.yml 會自動插入掛件行。
桌面端:側邊欄「插件」→「添加插件」→ 輸入 dsh-plugin-muyu(可帶版本,如 dsh-plugin-muyu@0.2.0)→ 安裝。
CLI(web profile):
dsh plugin --profile web add dsh-plugin-muyu
macOS 桌面 profile 需完全退出 Desktop 後,可使用安裝包內 CLI,例如:
"/Applications/DeepSeek Harness.app/Contents/Resources/runtime/cli/bin/dsh" \
plugin --profile desktop add dsh-plugin-muyu
本地開發可用 patch 載入:
pnpm dsh web --patch ./dsh-plugin-muyu/cordis.patch.yml
插件是否出現在 DSH 入口取決於包內 dsh.bundle.patch 指向 cordis.patch.yml,而非 npm 關鍵字 alone。
配置要點¶
在 cordis.patch.yml 中常見項包括:
| 配置項 | 默認值 | 說明 |
|---|---|---|
defaultSutra |
'heart_sutra' |
初始經文 ID |
defaultSound |
'sandalwood' |
默認音色 |
autoKnockIntervalMs |
1200 |
自動修持間隔(200~60000) |
autoKnockMaxDurationMs |
1800000 |
單次自動修持最長 30 分鐘 |
tokenKnockEnabled |
true |
是否按會話 Token 自動敲木魚 |
tokensPerMerit |
10000 |
每多少 Token ±1 功德 |
storagePath |
可選 | 自定義功德簿路徑 |
resetRuntimeState |
false |
啓動時清除 .state.json,讓默認經文/音色重新生效 |
voiceEnabled、voiceRate、voicePitch、volume 等控制服務端返回的誦經參數;掛件另有本地誦經開關偏好。
典型用法¶
- 安裝並重啓或刷新 DSH 後,在工作區右下角打開木魚掛件,與 Agent 對話並行修持。
- 正常對話時,Token 由
session/event自動入賬;需要補記時,讓 Agent 調用muyu_feed_tokens。 - 查詢進度:
muyu_get_merit;切換經文:muyu_select_sutra;批量自動敲:muyu_auto_knock。 - 在掛件「禪修設置」或 ⚡ Token 頁調整閾值;需要恢復配置默認經文/音色時,將
resetRuntimeState設爲true啓動一次。
適用場景與注意¶
適合希望在 DSH 工作區增加可視化修持反饋、並把會話 Token 與可持久化賬本綁定的開發者或個人使用。插件以當前 DSH 進程權限運行,功德數據寫入本機 JSON;安裝前建議閱讀 GitHub 倉庫 源碼與 MIT 許可證。社區目錄 SkillHub 插件頁 與 GitHub 爲獨立信息源,與 DeepSeek / 幻方無官方從屬關係。
Host API 校驗 Host 與 Origin,僅允許本機 Web 源、dsh-app://app 或同端口 loopback;POST 須 content-type: application/json。
結尾¶
dsh-plugin-muyu 把 3D 木魚、8 部經文流轉、三種音色與單一服務端功德簿收進一個 Bundle,並用六個 Tool 與 loopback Host 路由供 Agent 與掛件共用賬本。進一步瞭解可訪問目錄頁與倉庫:
- https://www.skillhub.cn/plugins/Makesupper/dsh-plugin-muyu
- https://github.com/Makesupper/dsh-plugin-muyu