[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-80737":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":9,"language":10,"languages":9,"totalLinesOfCode":9,"stars":11,"forks":12,"watchers":13,"openIssues":14,"contributorsCount":14,"subscribersCount":14,"size":14,"stars1d":15,"stars7d":16,"stars30d":17,"stars90d":14,"forks30d":14,"starsTrendScore":18,"compositeScore":19,"rankGlobal":9,"rankLanguage":9,"license":20,"archived":21,"fork":21,"defaultBranch":22,"hasWiki":23,"hasPages":21,"topics":24,"createdAt":9,"pushedAt":9,"updatedAt":25,"readmeContent":26,"aiSummary":27,"trendingCount":14,"starSnapshotCount":14,"syncStatus":16,"lastSyncTime":28,"discoverSource":29},80737,"qiaomu-suno-master","joeseesun\u002Fqiaomu-suno-master","joeseesun","Turn a song idea, story, article, theme, or lyrics request into polished Suno-ready lyrics, style tags, and generated music through the local Rust sun",null,"Python",59,8,42,0,1,2,17,3,47.56,"MIT License",false,"main",true,[],"2026-06-12 04:01:29","# qiaomu-suno-master\n\n> 把一句想法变成 Suno 可唱歌词、风格提示词，并直接生成下载歌曲。\n> Turn a rough song idea into Suno-ready lyrics, style prompts, and downloaded music.\n\n![GitHub License](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Flicense\u002Fjoeseesun\u002Fqiaomu-suno-master)\n![GitHub last commit](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Flast-commit\u002Fjoeseesun\u002Fqiaomu-suno-master)\n\n**[中文](#中文) | [English](#english)**\n\n---\n\n\u003Ca name=\"中文\">\u003C\u002Fa>\n## 中文\n\n你想让 AI 写歌，最麻烦的通常不是一句歌词，而是整套可用于 Suno 的结构：Hook、段落标记、风格标签、排除风格、登录态、下载路径。\n\n`qiaomu-suno-master` 把这些揉成一个 Agent Skill：先按专业歌曲结构写歌词，再调用本地 Rust `suno` CLI 生成并下载音乐。\n\n### 你会得到什么\n\n- Suno-ready 歌词：`[Verse]`、`[Chorus]`、`[Bridge]`、`[Hook]` 等结构完整\n- Style Description：例如 `punk-rock, male-vocals, distorted-guitars, fast-tempo`\n- Exclude Styles：避免不想要的风格，例如 `auto-tune, trap, overly-polished`\n- 三个歌名候选\n- 不确定风格时，可先从 5000+ 音乐流派中推荐适合的 Suno tags\n- 可选：直接生成并下载 MP3\n- 面向音乐播放器\u002F网站发布时，必须同时下载并校验带时间戳的 `.lrc`\n- 从已有 Suno Clip ID 导出 MP3、视频\u002FMTV、LRC、SRT、干净字幕、Markdown 歌词\n- Chrome CDP 辅助：复用已登录 Chrome\u002FSuno 会话\n\n### 安装\n\n```bash\nnpx skills add joeseesun\u002Fqiaomu-suno-master\n```\n\n验证：\n\n```bash\nls ~\u002F.agents\u002Fskills\u002Fqiaomu-suno-master\n```\n\n### 前置条件\n\n- [ ] 已安装 Rust `suno` CLI，或允许 skill 自动安装\n\n  ```bash\n  cargo install suno --locked\n  suno --version\n  ```\n\n- [ ] 已登录 Suno\n\n  ```bash\n  suno auth --login\n  suno auth\n  ```\n\n- [ ] 如果要复用 Chrome 登录态，Chrome 已开启远程调试\n\n  打开：\n\n  ```text\n  chrome:\u002F\u002Finspect\u002F#remote-debugging\n  ```\n\n  勾选 `Allow remote debugging for this browser instance`。\n\n### 自然语言用法\n\n```text\n用 qiaomu-suno-master 写一首朋克歌，主题是把音量打满\n```\n\n```text\n把这篇文章改成一首中文民谣，并生成 Suno 歌曲\n```\n\n```text\n生成一首世界音乐，女声男声合唱，鼓和长笛，下载到当前项目\n```\n\n```text\n我只有“深夜、空灵、梦幻”这几个感觉，先帮我选几个 Suno 风格再写歌\n```\n\n### 选择音乐风格\n\nSkill 内置了 [`joeseesun\u002Fmusic-genre-finder`](https:\u002F\u002Fgithub.com\u002Fjoeseesun\u002Fmusic-genre-finder) 的风格数据库，可在写歌前把模糊情绪转成更精确的 Suno 风格标签：\n\n```bash\n~\u002F.agents\u002Fskills\u002Fqiaomu-suno-master\u002Fscripts\u002Ffind_music_genres.py \\\n  \"深夜 空灵 梦幻\" \\\n  --limit 5\n```\n\n也可以输出 JSON，方便后续自动生成 tags：\n\n```bash\n~\u002F.agents\u002Fskills\u002Fqiaomu-suno-master\u002Fscripts\u002Ffind_music_genres.py \\\n  \"raw energetic punk\" \\\n  --json\n```\n\n推荐做法：选 1-3 个主风格，再加人声、乐器、速度和情绪标签，例如：\n\n```text\ngarage-punk, punk-rock, raw-male-vocals, distorted-guitars, fast-tempo, anthemic\n```\n\n### CLI 生成\n\nSkill 内置封装脚本：\n\n```bash\n~\u002F.agents\u002Fskills\u002Fqiaomu-suno-master\u002Fscripts\u002Fgenerate_with_suno.sh \\\n  --title \"把音量打满\" \\\n  --tags \"punk-rock, male-vocals, distorted-guitars, fast-tempo\" \\\n  --exclude \"auto-tune, trap, overly-polished\" \\\n  --lyrics-file .\u002Flyrics.txt\n```\n\n默认输出到：\n\n```text\n~\u002FDocuments\u002FSuno\u002F\u003C歌曲名>\u002F\n```\n\n默认会走 `--captcha`，优先使用上游 `suno` CLI 的 hCaptcha CDP solver 把请求真正提交到 Suno。\n\n生成后下载到音乐播放器或网站发布目录时，不要只保存普通歌词。必须请求并校验 LRC：\n\n```bash\n~\u002F.agents\u002Fskills\u002Fqiaomu-suno-master\u002Fscripts\u002Fdownload_clips.sh \\\n  --ids \"\u003Cclip-id>\" \\\n  --output-dir .\u002Foutput \\\n  --lyrics \\\n  --lyrics-format lrc \\\n  --require-lrc\n```\n\n如果 `--require-lrc` 失败，说明 Suno 还没有返回真实对齐歌词，或下载到的是普通歌词。此时不要上传发布，稍后重试：\n\n```bash\n~\u002F.agents\u002Fskills\u002Fqiaomu-suno-master\u002Fscripts\u002Fexport_suno_assets.py \\\n  \u003Cclip-id> \\\n  --format lrc \\\n  --output .\u002Foutput\n\n~\u002F.agents\u002Fskills\u002Fqiaomu-suno-master\u002Fscripts\u002Fvalidate_lrc.py .\u002Foutput\n```\n\n如果这条路径在你的 Chrome 会话里报：\n\n```text\nCDP Runtime.evaluate ws err: Connection reset...\n```\n\n如果你的会话里 captcha solver 不稳定，或你明确要跳过它：\n\n```bash\n~\u002F.agents\u002Fskills\u002Fqiaomu-suno-master\u002Fscripts\u002Fgenerate_with_suno.sh ... --no-captcha\n```\n\n或传入 token：\n\n```bash\n~\u002F.agents\u002Fskills\u002Fqiaomu-suno-master\u002Fscripts\u002Fgenerate_with_suno.sh ... --token \"$HCAPTCHA_TOKEN\"\n```\n\n### 导出 SRT\u002FLRC\u002FMTV 素材\n\n如果你已经有 Suno clip ID，可以直接导出字幕和素材：\n\n```bash\n~\u002F.agents\u002Fskills\u002Fqiaomu-suno-master\u002Fscripts\u002Fexport_suno_assets.py \\\n  \u003Cclip-id> \\\n  --format lyrics \\\n  --clean-srt\n```\n\n导出音频 + 视频\u002FMTV + 全部歌词格式：\n\n```bash\n~\u002F.agents\u002Fskills\u002Fqiaomu-suno-master\u002Fscripts\u002Fexport_suno_assets.py \\\n  \u003Cclip-id> \\\n  --format all \\\n  --clean-srt\n```\n\n默认会按歌曲标题创建目录：\n\n```text\n~\u002FDocuments\u002FSuno\u002F\u003C歌曲名>\u002F\n```\n\n格式说明：\n\n- `audio`：下载音频\n- `video`：下载 Suno 视频\u002FMTV 文件（如果该 clip 可用）\n- `json`：保存 timed lyrics 原始 JSON\n- `lrc`：音乐播放器歌词\n- `srt`：字幕文件\n- `md`：带时间戳 Markdown 歌词，方便 AI\u002F剪辑流程读取\n- `lyrics`：等于 `json,lrc,srt,md`\n- `all`：等于 `audio,video,json,lrc,srt,md`\n\n清理已有 SRT：\n\n```bash\n~\u002F.agents\u002Fskills\u002Fqiaomu-suno-master\u002Fscripts\u002Fclean_srt_for_mtv.py input.srt\n```\n\n### Troubleshooting\n\n| 问题 | 解决 |\n|---|---|\n| `suno: command not found` | 运行 `cargo install suno --locked`，或执行 `scripts\u002Fensure_suno_cli.sh` |\n| `JWT expired` | 运行 `suno auth` 或 `suno auth --login` |\n| `CDP Runtime.evaluate ws err` | 显式加 `--no-captcha`，或改用手动 `--token` |\n| Chrome 反复弹调试确认 | 复用同一个 Suno 标签页，避免反复新开 tab；Chrome CDP 权限很高，这是安全确认 |\n| 找不到 Suno 标签页 | 运行 `scripts\u002Fensure_suno_chrome_session.sh` |\n| 需要 SRT\u002FMTV | 用 `scripts\u002Fexport_suno_assets.py \u003Cclip-id> --format all --clean-srt` |\n| LRC 对不上或只有段落标记 | 用 `download_clips.sh --lyrics --lyrics-format lrc --require-lrc` 重新获取；发布前必须跑 `scripts\u002Fvalidate_lrc.py` |\n\n### 致谢\n\n- [`paperfoot\u002Fsuno-cli`](https:\u002F\u002Fgithub.com\u002Fpaperfoot\u002Fsuno-cli)：本 skill 使用的 Rust Suno CLI\n- [`pasky\u002Fchrome-cdp-skill`](https:\u002F\u002Fgithub.com\u002Fpasky\u002Fchrome-cdp-skill)：本 skill vendored 的轻量 CDP helper\n- [`joeseesun\u002Fsuno-music-creator`](https:\u002F\u002Fgithub.com\u002Fjoeseesun\u002Fsuno-music-creator)：歌词创作提示词来源之一\n- [`joeseesun\u002Fmusic-genre-finder`](https:\u002F\u002Fgithub.com\u002Fjoeseesun\u002Fmusic-genre-finder)：音乐流派检索与推荐数据来源\n\n### 风险和限制\n\n- 生成音乐会消耗 Suno 账号额度。\n- Chrome CDP 可以控制本地浏览器标签页，只在可信本机环境使用。\n- Suno API 和网页流程可能变化；如失败，先运行 `suno update --check` 和 `suno update`。\n- 视频\u002FMTV 下载取决于 Suno 是否为该 clip 提供 video asset。\n- 风格推荐来自流派数据库与关键词匹配，最终仍需按歌曲主题做审美取舍。\n\n---\n\n\u003Ca name=\"english\">\u003C\u002Fa>\n## English\n\n`qiaomu-suno-master` is an Agent Skill for turning a song brief into Suno-ready lyrics, style prompts, exclude tags, and generated audio through the local Rust `suno` CLI.\n\n### Install\n\n```bash\nnpx skills add joeseesun\u002Fqiaomu-suno-master\n```\n\n### Requirements\n\n- [ ] Install the upstream `suno` CLI:\n\n  ```bash\n  cargo install suno --locked\n  suno --version\n  ```\n\n- [ ] Authenticate Suno:\n\n  ```bash\n  suno auth --login\n  suno auth\n  ```\n\n- [ ] Optional Chrome CDP login reuse:\n\n  Open `chrome:\u002F\u002Finspect\u002F#remote-debugging` and enable `Allow remote debugging for this browser instance`.\n\n### Example Prompts\n\n```text\nUse qiaomu-suno-master to write a punk song about turning the volume all the way up.\n```\n\n```text\nTurn this article into a Chinese folk song and generate it with Suno.\n```\n\n```text\nGenerate a world music track with duet vocals, hand drums, flute, and cinematic energy.\n```\n\n```text\nI only know the mood: late-night, ethereal, dreamy. Pick a few Suno styles first, then write the song.\n```\n\n### Genre Finder\n\nThe skill includes genre data from [`joeseesun\u002Fmusic-genre-finder`](https:\u002F\u002Fgithub.com\u002Fjoeseesun\u002Fmusic-genre-finder). Use it before writing lyrics when the style is vague:\n\n```bash\n~\u002F.agents\u002Fskills\u002Fqiaomu-suno-master\u002Fscripts\u002Ffind_music_genres.py \\\n  \"late night ethereal dreamy\" \\\n  --limit 5\n```\n\n### CLI Wrapper\n\n```bash\n~\u002F.agents\u002Fskills\u002Fqiaomu-suno-master\u002Fscripts\u002Fgenerate_with_suno.sh \\\n  --title \"Turn It Up\" \\\n  --tags \"punk-rock, male-vocals, distorted-guitars, fast-tempo\" \\\n  --exclude \"auto-tune, trap, overly-polished\" \\\n  --lyrics-file .\u002Flyrics.txt\n```\n\nThe wrapper defaults to `--no-captcha` because the upstream CDP hCaptcha solver can be flaky in some Chrome sessions.\n\nDefault output:\n\n```text\n~\u002FDocuments\u002FSuno\u002F\u003Csong-title>\u002F\n```\n\nWhen the generated song will be uploaded to a music player or website, plain\nSuno prompt lyrics are not enough. Download and validate timestamped LRC:\n\n```bash\n~\u002F.agents\u002Fskills\u002Fqiaomu-suno-master\u002Fscripts\u002Fdownload_clips.sh \\\n  --ids \"\u003Cclip-id>\" \\\n  --output-dir .\u002Foutput \\\n  --lyrics \\\n  --lyrics-format lrc \\\n  --require-lrc\n```\n\nIf the gate fails, retry aligned lyrics later and validate before publishing:\n\n```bash\n~\u002F.agents\u002Fskills\u002Fqiaomu-suno-master\u002Fscripts\u002Fexport_suno_assets.py \\\n  \u003Cclip-id> \\\n  --format lrc \\\n  --output .\u002Foutput\n\n~\u002F.agents\u002Fskills\u002Fqiaomu-suno-master\u002Fscripts\u002Fvalidate_lrc.py .\u002Foutput\n```\n\nFor `music.qiaomu.ai`, do not publish Suno's original cover. Generate a fresh\n1:1 album cover from the validated lyrics with `qiaomu-image-generator`:\n\n```bash\npython3 ~\u002F.agents\u002Fskills\u002Fqiaomu-image-generator\u002Fscripts\u002Fgenerate.py \\\n  .\u002Fcover.visual_config.json \\\n  --workers 1 \\\n  --no-insert \\\n  --output .\u002Fcover.result.json\n```\n\nUse the `album_cover` template, `album-mondo-cover` style, a stable\n`*-cover.png` filename, and a lyric-derived symbolic visual description with no\ntext. Upload that PNG as the track cover.\n\n### Export Assets\n\n```bash\n~\u002F.agents\u002Fskills\u002Fqiaomu-suno-master\u002Fscripts\u002Fexport_suno_assets.py \\\n  \u003Cclip-id> \\\n  --format all \\\n  --clean-srt\n```\n\nThis can export audio, video\u002FMTV assets, timed lyrics JSON, LRC, SRT, clean SRT, and Markdown lyrics.\nWithout `--output`, exported files are saved to `~\u002FDocuments\u002FSuno\u002F\u003Cclip-title>\u002F`.\n\n### Credits\n\n- [`paperfoot\u002Fsuno-cli`](https:\u002F\u002Fgithub.com\u002Fpaperfoot\u002Fsuno-cli)\n- [`pasky\u002Fchrome-cdp-skill`](https:\u002F\u002Fgithub.com\u002Fpasky\u002Fchrome-cdp-skill)\n- [`joeseesun\u002Fsuno-music-creator`](https:\u002F\u002Fgithub.com\u002Fjoeseesun\u002Fsuno-music-creator)\n","qiaomu-suno-master 是一个将简单的歌曲想法转化为完整歌词、风格标签并生成音乐的工具。其核心功能包括按照专业歌曲结构编写歌词，通过本地 Rust `suno` CLI 生成音乐，并支持直接下载为 MP3 格式。此外，它还提供风格推荐、排除不想要的风格以及生成带时间戳的 LRC 文件等功能。该项目适用于需要快速创作歌曲的场景，特别是当用户对具体风格不确定时，可以先从内置的5000+音乐流派中获取建议。使用 Python 编写，易于安装和配置，适合音乐爱好者、创作者及开发者在个人项目或商业应用中使用。","2026-06-11 04:01:51","CREATED_QUERY"]