为 BakaMusic 提供统一的插件订阅、单插件分发、音源注入与音质覆盖。
🌐 在线地址:https://music.cwo.cc.cd/
- 📦 统一分发 7 个平台插件
- 🔗 同时支持订阅导入与单插件导入
- 🧩 按音源动态注入请求处理器
- 🎚️ 按音源覆盖插件音质能力
- ☁️ 适配 Vercel / Netlify / 本地 Node.js
| 平台 | 文件 | 版本 | 类型 |
|---|---|---|---|
| 网易云音乐 | plugins/wy.js |
1.0.8 |
音源相关 |
| QQ音乐 | plugins/qq.js |
1.0.7 |
音源相关 |
| 酷狗音乐 | plugins/kg.js |
1.0.6 |
音源相关 |
| 酷我音乐 | plugins/kw.js |
1.0.7 |
音源相关 |
| 咪咕音乐 | plugins/mg.js |
1.1.3 |
免密 |
| Bilibili | plugins/bilibili.js |
1.0.2 |
免密 |
| 汽水音乐 | plugins/qishui.js |
3.1.0 |
免密 |
bilibili.js、qishui.js、mg.js下载时不需要source或key。
音源配置见:functions/source-config.js
| 名称 | 标识 | Key | 支持插件 |
|---|---|---|---|
| ikun 音源 | ikun |
需要 | wy / qq / kg / kw |
| 聆澜音源 | linglan |
需要 | wy / qq / kg / kw |
| 何意味 | hyw |
内置 charity | wy / qq / kg / kw |
| 全豆要 | quandouyao |
内置 | wy / qq / kg / kw |
| 次合代 | cihedai |
内置 | wy / qq / kg / kw |
| 长青音源 | changqing |
内置 | wy / qq / kg / kw |
免密插件始终包含在订阅结果中;音源相关插件会按配置过滤。
需要 Key
https://music.cwo.cc.cd/api/subscription.json?source=ikun&key=YOUR_KEY.json
内置 Key
https://music.cwo.cc.cd/api/subscription.json?source=cihedai.json
BakaMusic 要求订阅链接以
.json结尾。
需要 Key 时,加在key后;内置 Key 时,加在source后。
需要 Key
https://music.cwo.cc.cd/plugins/wy.js?source=ikun&key=YOUR_KEY
免密插件
https://music.cwo.cc.cd/plugins/bilibili.js
GET /api/subscription.json?source=<source>&key=<key>.json
GET /api/subscription.json?source=<source>.json
作用:
- 扫描
plugins/ - 提取插件元数据
- 按音源能力过滤插件
- 返回 BakaMusic 可直接导入的订阅 JSON
实现文件:functions/subscription.js
GET /plugins/{name}.js?source=<source>&key=<key>
GET /plugins/{name}.js
作用:
- 读取插件原文件
- 注入
// {{REQUEST_HANDLER}} - 生成
API_URL、API_KEY、UPDATE_URL - 覆盖
supportedQualities - 返回最终插件脚本
实现文件:functions/plugin.js
baka-plugins/
├── functions/
│ ├── plugin.js
│ ├── source-config.js
│ └── subscription.js
├── plugins/
│ ├── bilibili.js
│ ├── kg.js
│ ├── kw.js
│ ├── mg.js
│ ├── qishui.js
│ ├── qq.js
│ └── wy.js
├── index.html
├── server.js
├── netlify.toml
├── vercel.json
└── README.md
顶层结构统一为:
- 依赖与基础常量
- 工具与格式化函数
- 搜索相关
- 播放 / 歌曲信息 / 歌词
- 专辑 / 歌手
- 歌单 / 推荐
- 榜单
- 评论
module.exports
导出对象通常采用:
module.exports = {
platform,
author,
version,
appVersion,
srcUrl,
cacheControl,
primaryKey,
supportedQualities,
userVariables,
hints,
supportedSearchType,
async search() {},
getMediaSource,
getMusicInfo,
getLyric,
getAlbumInfo,
getArtistWorks,
importMusicSheet,
getMusicSheetInfo,
getRecommendSheetTags,
getRecommendSheetsByTag,
getTopLists,
getTopListDetail,
getMusicComments,
};node server.js默认地址:
http://localhost:3000
快速测试:
curl "http://localhost:3000/api/subscription.json?source=ikun&key=test123.json"
curl "http://localhost:3000/plugins/wy.js?source=ikun&key=test123"
curl "http://localhost:3000/plugins/bilibili.js"- 插件版本、音源协议、展示文案变更时,同步更新
README.md和index.html - 免密插件下载链接不能拼接
source - 音源能力以 functions/source-config.js 为准
- 新增或重排插件能力时,保持现有顶层结构顺序