dsh-plugin-muyu: Electronic Wooden Fish, Sutra Chanting, and Token Merit Ledger for DSH Workspaces

前言

在 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 等控制服务端返回的诵经参数;挂件另有本地诵经开关偏好。

典型用法

  1. 安装并重启或刷新 DSH 后,在工作区右下角打开木鱼挂件,与 Agent 对话并行修持。
  2. 正常对话时,Token 由 session/event 自动入账;需要补记时,让 Agent 调用 muyu_feed_tokens。
  3. 查询进度:muyu_get_merit;切换经文:muyu_select_sutra;批量自动敲:muyu_auto_knock。
  4. 在挂件「禅修设置」或 ⚡ 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
羽毛球分组比赛记分
小程序二维码

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

Xiaoye