dsh-asmrone:在 DSH 里统一搜索、播放与下载四路音声来源

前言

在 DeepSeek Harness(DSH)里做对话或 agent 时,如果想听 DLsite 同人音声、B 站资源或本机已下载的文件,常见做法是切到浏览器或文件管理器,搜完再复制链接回来。模型侧也没有内置播放器,asmr_play 这类工具若只返回 URL,用户在对话里往往听不到声音。

dsh-asmrone 是维护者 133563825as-ai 发布的 MIT 开源 DSH 插件,分类为联网工具。它把 asmr.one(DLsite 同人音声镜像库)、B 站、DLsite 官方免费试听,以及手机本地已下载的音声四个来源接到同一套 Web 面板与七个 agent 工具里:搜作品、看音轨、在线播放(含后台播放与拖进度)、按权重重排结果、批量下载与删除,多数操作不必离开 DSH。

这是什么

插件定位是「DeepSeek Harness 音声库插件:asmr.one / B站 / DLsite 试听 / 本机曲库四源合一」。运行期零 npm 依赖,只使用 Node 内置模块;不内置题材偏好,性别过滤、排序、落盘目录等均可通过配置修改。

四个来源对网络要求不同:asmr.one 与 DLsite 需要代理;B 站与本机曲库不需要。未挂代理时,在线搜索与播放链路可能失败,但本地曲库与 asmr_local 仍可离线使用。

核心功能

Web 面板

安装并在 web profile 启用后,侧边栏底部有「音声库」入口。面板提供搜索(回车即搜)、排序(销量 / 评分 / 发售日 / 最新上架)、筛选(如「只要中文」「排除女性向」)以及权重排序(销量 / 评分 / 评价数 / 新鲜度四条滑块,0~2)。点作品卡片可在卡片下方内联展开音轨列表;底栏有播放/暂停、可拖动进度条与音量。

音频通过 host 代理 /asmrone/stream 播放,以规避 asmr.one CDN 的 CORS 限制。<audio> 挂在 document.body 上,关面板或切回对话页仍可后台播放,并带悬浮迷你条与 MediaSession(含 ±15s / ±30s)。

另有「本地曲库」标签页:列出 asmr_download 落盘目录及 localDirs 中的文件,播放走 /asmrone/local-stream,不出网。

七个 agent 工具

工具 作用
asmr_search 关键词搜索,支持排序、分页、中文版与性别过滤
asmr_work 列出作品完整音轨树,可并发探测每轨体积
asmr_local 本地音声库:列举、按名或 RJ 号查找、推给面板播放
asmr_play 取播放直链,默认推给面板立即出声(push:false 仅返回地址)
asmr_download 批量下载到本机,默认 MP3、跳过已存在、按作品名建子目录
asmr_trial 抓取 DLsite 官方试听 zip,解压并处理 Shift-JIS 文件名
asmr_config 查看/修改偏好;action=tags 列出 asmr.one 中文标签

asmr_play 会把条目写入单槽待播队列;前端每 3 秒轮询 GET /asmrone/pending 取走播放。配合技能目录 /root/.dsh/skills/asmr-ambience/ 中的 asmr-ambience,用户可用自然语言让 agent 直接推歌出声。

配置要点

配置文件位于 <DSH_HOME>/asmrone/config.json,也可用 asmr_config 修改。常用键包括:

键 默认 说明
outputDir /sdcard/Download/ASMR(无外置存储时退回数据目录) 下载目录,也是本地曲库第 0 个根
localDirs [] 额外本地音声根目录
languageFilter male male 剔除女性向/乙女向/BL;all 不过滤
defaultOrder dl_count 默认排序
downloadConcurrency 4 下载并发 1~8
maxWorkMb 800 单个试听包体积上限
pageSize 20 搜索默认每页条数

接口地址与超时等同名 profile 的 cordis.patch.yml 中覆盖,勿改随包文件,升级会被覆盖。

安装与启用

下面命令来自插件 README,路径 link:/root/dsh-asmrone 表示以该本地目录作为插件源(需事先将仓库放到对应位置):

dsh plugin --profile web add link:/root/dsh-asmrone

装完后需要重启 dsh 才生效;dsh plugin 仅为 pnpm 转发,没有 reload 子命令。插件要求 Node >=18.17,当前 package 版本为 1.0.0。

典型用法

对话或 agent 中可按下述形式调用工具(示例来自 README):

asmr_search  query=简体中文版 order=dl_count chineseOnly=true
asmr_work    id=1006912 resolveSizes=true
asmr_play    id=1006912 index=2
asmr_download id=1006912 title=舔耳按摩店 keyword=通常
asmr_trial   workno=RJ01726233 download=true

面板侧数据面挂在 webServer 的 /asmrone 前缀下,例如 GET /asmrone/search、GET /asmrone/work、POST /asmrone/download 等,与面板和 agent 共用同一套后端逻辑。

适用场景与注意

适合在 DSH web 端长期听音声、用 agent 搜片推歌,或先 asmr_download 再在无代理环境下用本地曲库播放的场景。

插件以当前 dsh 进程权限运行,可访问网络、读写配置的下载目录与本地扫描路径。安装前应在 GitHub 仓库 阅读源码与 MIT 许可证,确认代理、落盘路径与内容过滤策略符合你的环境。社区目录 SkillHub 插件页 与 GitHub 无 DeepSeek / 幻方官方从属关系,属于社区「一切皆插件」生态中的独立条目。

asmr.one 为境外服务;无代理时在线功能可能 fetch failed 或超时,应依赖本地曲库或提前下载。DLsite 试听为 zip 而非直链 mp3,部分作品仅有图片试听,工具会报「无音频试听」。

结尾

dsh-asmrone 把 asmr.one、B 站、DLsite 试听与本机曲库收进同一面板与工具集,并解决 agent 推歌与后台播放的实际问题。进一步了解可访问 SkillHub 目录页 与 GitHub:133563825as-ai/dsh-asmrone。

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

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

Xiaoye