🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

乔木电台 joeseesun/qiaomu-radio-dsh

DeepSeek 客户端
joeseesun34 天前有提交已提供中文文档扫描:含敏感能力兼容 / 相关生态

收听全球直播电台,用五种播放器陪伴工作阅读

30/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/10/1 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

相关生态插件(非 dsh 原生,按其对应运行时安装)
git clone https://github.com/joeseesun/qiaomu-radio-dsh.git

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:需留意
是什么
生态插件
可安装,未声明 dsh 能力
装得上吗
实装验证未通过(unknown),装前请到仓库确认最近更新与 issue
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 34 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
⚠︎ 实装验证未通过(unknown · 2026/10/1) ——可能是验证环境差异,装前建议到 GitHub 仓库确认最近更新与 issue。
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查⚠ 装前注意

未发布到 npm registry,仅可从源码安装

展开查看检查明细 ↓

以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。

✗npm 包@qiaomu/dsh-radio(未发布到 npm,仅可源码安装)
✓Node 引擎要求 >=20 · 基线 Node 22.19 满足
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明

验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/8 09:42:38

安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

读写/删除本地文件
查看扫描证据(共 10 处,展示前 10 条)
  • 读取本地文件
    preview/server.mjs:72
    const stat = statSync(path);
  • 读取本地文件
    preview/server.mjs:77
    response.end(readFileSync(path));
  • 读取本地文件
    preview/server.mjs:147
    sendFile(response, existsSync(source) ? source : fallback);
  • 读取本地文件
    preview/server.mjs:152
    if (asset.startsWith(dist) && existsSync(asset) && statSync(asset).isFile()) {
  • 读取本地文件
    preview/server.mjs:152
    if (asset.startsWith(dist) && existsSync(asset) && statSync(asset).isFile()) {
  • 读取本地文件
    src/dsh/index.ts:49
    return candidates.find((candidate) => existsSync(candidate)) ?? join(here, "player");
  • 读取本地文件
    src/dsh/routes.ts:44
    const info = statSync(join(assetDir, name));
  • 读取本地文件
    src/dsh/routes.ts:120
    const body = readFileSync(path);
  • 读取本地文件
    src/dsh/routes.ts:142
    if (!existsSync(path) || !statSync(path).isFile()) {
  • 读取本地文件
    src/dsh/routes.ts:142
    if (!existsSync(path) || !statSync(path).isFile()) {
扫描于 2026/11/2(1 天前) · 范围 全包扫描(包内未声明入口) · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

依赖的 DSH / Cordis 模块
@deepseek-ai/cordis
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 收听全球直播电台
  • 五种主题播放器
  • 本地收听历史

乔木电台 DeepSeek Harness 插件 | 带主题播放器、心情频道和本地收听记录的实时电台

README

由 DeepSeek 最新模型翻译生成
乔木电台 · DSH 插件 把 乔木电台 的五种播放器环境搬进 DeepSeek Harness:发现并收听全球直播电台,让音乐陪着你工作与阅读。 安装正式包 从 GitHub Releases 下载 qiaomu-dsh-radio-0.1.1.tgz。使用已配置的 Web 或 Desktop profile 安装(下面以 web 为例): dsh plugin --profile web add ./qiaomu-dsh-radio-0.1.1.tgz 重启对应 Harness,打开侧栏「乔木电台」。包内含编译产物、HLS 运行时和 3D 模型,安装时不需要构建。直播电台仍需联网。当前尚未发布 npm 包,请勿把包名安装当成已验证渠道。源码克隆供开发,不能代替正式包安装。 博朗屏内菜单 这是什么 一个 DSH 宿主侧插件。宿主半边用 ctx.webServer 注册自己的路由,并在这些路由上提供一个完整的独立播放器页面;页面里是同一套 React 界面与同一份电台目录服务,所以「预览里看到的」和「装进 harness 后打开的」是同一个东西。
展开完整文档(README 剩余 1 节)
乔木电台 · DSH 插件

把 乔木电台 的五种播放器环境搬进 DeepSeek Harness:发现并收听全球直播电台,让音乐陪着你工作与阅读。

安装正式包

从 GitHub Releases 下载 qiaomu-dsh-radio-0.1.1.tgz。使用已配置的 Web 或 Desktop profile 安装(下面以 web 为例):

dsh plugin --profile web add ./qiaomu-dsh-radio-0.1.1.tgz

重启对应 Harness,打开侧栏「乔木电台」。包内含编译产物、HLS 运行时和 3D 模型,安装时不需要构建。直播电台仍需联网。当前尚未发布 npm 包,请勿把包名安装当成已验证渠道。源码克隆供开发,不能代替正式包安装。

博朗屏内菜单

这是什么

一个 DSH 宿主侧插件。宿主半边用 ctx.webServer 注册自己的路由,并在这些路由上提供一个完整的独立播放器页面;页面里是同一套 React 界面与同一份电台目录服务,所以「预览里看到的」和「装进 harness 后打开的」是同一个东西。

| 能力 | 你得到什么 |
| 五种播放器环境 | 魔兽世界 3D、博朗 · 3D、iPod、Winamp、foobar2000 |
| 全球电台目录 | Radio Browser 真实直播台;目录不可用时使用内置备用台单 |
| 场景频道 | 松一口气 / 安静做事 / 爵士时刻 / 古典留白 / 需要能量 / 去远方 |
| 本机口味记忆 | 喜欢、跳过、收听历史、电台可靠性,只存在本机 |
| 播放控制 | 播放、暂停、上一台、下一台、音量、失败自动切换下一台 |
| 六种界面语言 | 简体中文、English、Español、Français、Deutsch、日本語 |

目录

src/core/ 纯逻辑:类型、主题、推荐、播放策略、手势数学 (可单测,无框架) src/host/ 宿主服务:电台目录、播放地址、now playing、流代理、口味存储 src/client/ 浏览器界面:状态容器、播放引擎、五种皮肤、十二个屏幕页面 src/dsh/ DSH 接线:路由注册、页面渲染、Cordis 插件入口 preview/ 开发预览:与宿主同一套服务的本地服务器 styles/ 播放器样式

使用

在 App 里打开

装进 profile 并重启 harness 后,左侧边栏会出现「乔木电台」入口,点开即在主面板里使用播放器(面板内嵌宿主提供的播放器页,与 /qiaomu-radio/ 是同一份产物,只有一套 UI)。
也可以直接访问:

http://127.0.0.1:/qiaomu-radio/

开发预览(推荐先看这个)

npm install
npm run preview # http://127.0.0.1:4180/

预览服务器用真实的宿主服务(Radio Browser 目录、播放地址解析、HLS 代理)驱动同一套界面。

装进 harness

npm run build

产物:

lib/index.js 宿主半边(ESM,Node 20+) lib/client.js 浏览器半边(侧栏入口) lib/player/app.js 播放器页面脚本 lib/player/styles.css 播放器样式 lib/player/hls.js 懒加载的 hls.js 运行时

正式包使用上文的 dsh plugin --profile web add ./qiaomu-dsh-radio-0.1.1.tgz。完整说明见 安装与兼容范围。

隐私与网络

- 不需要账号,无客户端遥测,不上传工作区文件。
- 目录请求发往 Radio Browser 的公共镜像;播放时直接连接所选电台的直播地址(HLS 经本插件同源代理,用于重写播放列表)。
- 喜欢、跳过、音量与收听历史保存在浏览器本地存储,以及插件的口味存储席位。

开发者工具

tools/ 下都是只读探针(CDP 驱动真实 Chrome,不改产品代码):

| 工具 | 用途 |
| serve-built.mjs | 用 lib/index.js 在一个最小 web 载体上起生产产物,默认 http://127.0.0.1:4190/qiaomu-radio/ |
| capture-skins.mjs | 出图:6 皮肤 × {浅色, 深色, 窄容器},写入 docs/shots-final/(OUT_DIR 可改) |
| cdp-nav-probe.mjs | 从零走完 menu → channels → stations → now 并打印网络序列 |
| cdp-theme-url.mjs | 逐个校验 ?theme= 六个皮肤深链 |
| cdp-contrast.mjs | 浅/深外观下的前景色、对比度、页面外壳度量 |
| cdp-geometry.mjs / cdp-shell.mjs | 每种皮肤的盒模型与 3D 变换计数 |
| cdp-dark-shot.mjs | 深色外观截图,供像素审计 |

从源码构建

npm install
npm run typecheck
npm run test
npm run build
npm run preview

与参考实现的关系

界面、主题、推荐公式与目录策略移植自 qiaomu-radio(GPL-3.0-or-later)。
参考实现里两款实体 3D 皮肤(fantasy 魔兽世界 / rams 博朗)已改成真 three.js:场景参数与几何逐值移植(src/client/skins/three/),观感差异经同条件像素差分收敛到中位数 0.0 (差异只剩我们自己的机内屏幕文案)。原先的 CSS 3D 版本保留为 WebGL 不可用时的回退。
另外三款(deck / pocket / console)本来就是 CSS/DOM,不涉及 3D。
three.js 只进宿主提供的播放器页(lib/player/app.js),不进 harness 客户端半边(lib/client.js 仍只依赖模块表里的 React),所以不违反客户端捆绑包只能依赖 React 的约束。
Obsidian 专有 API(Notice、Modal、setIcon、requestUrl)全部替换为浏览器原生实现。

交付文档

- 安装与接线:构建、装进 profile、挂载配置、路由清单、卸载。
- 交付说明:验收命令与真实输出、产物清单、已知未验证项、与参考的差异清单。
- 界面契约:模块边界与界面契约(团队协作用)。
- 视觉验收报告:P0/P1/P2 分级、实测值、改法与反证。

许可

GNU GPL v3 或更高版本。闭源集成与白标分发见商业许可说明。

- 主页:qiaomu.ai
- X:@vista8

GitHub 开发流程

仓库使用功能分支和 Pull Request 管理改动,合并前运行 npm run check。
GitHub Actions 自动执行类型检查、测试和构建。依赖、生成产物和本机配置不入库。
克隆后先运行 npm ci && npm run build,再按安装说明接入 Harness;
必须同时配置 profile 依赖和 dsh.profile.bundles。

Qiaomu Radio brings five radio player environments to DeepSeek Harness, with global
live stations, mood channels, playback controls, and locally stored preferences.

Requires Node.js 22+ and npm for development, and DeepSeek Harness for integration.
Run npm ci, npm run check, then npm run preview for a standalone preview.
Build before linking the package into your Harness profile. Add @qiaomu/dsh-radio
to both profile dependencies and dsh.profile.bundles, then restart Harness.
See installation details.

The desktop sidebar and Braun 3D player rendering were verified on September 30,
2026. Audio playback was not retested during that display repair. Station availability
depends on upstream services. This repository is open source. An npm package has not been published. Code is licensed under GPL-3.0-or-later (see LICENSE).
预览分享卡片长什么样 ↓joeseesun/qiaomu-radio-dsh
分享 · DeepSeek Harness Hub
joeseesun/qiaomu-radio-dsh

收听全球直播电台,用五种播放器陪伴工作阅读

这是你的仓库?认领条目

回到顶部