Skip to content

Commit 4de04c4

Browse files
ele-yufojackwener
andauthored
feat(suno): add suno.com music-generation adapter (#1638)
* fix(suno): harden generation adapter contracts * fix(suno): separate session auth and API failures --------- Co-authored-by: jackwener <jakevingoo@gmail.com>
1 parent 40592ea commit 4de04c4

11 files changed

Lines changed: 2165 additions & 0 deletions

File tree

cli-manifest.json

Lines changed: 223 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22235,6 +22235,229 @@
2223522235
"modulePath": "substack/search.js",
2223622236
"sourceFile": "substack/search.js"
2223722237
},
22238+
{
22239+
"site": "suno",
22240+
"name": "download",
22241+
"description": "Download an existing Suno clip (MP3 + optional WAV/M4A/video) by id",
22242+
"access": "write",
22243+
"domain": "suno.com",
22244+
"strategy": "cookie",
22245+
"browser": true,
22246+
"args": [
22247+
{
22248+
"name": "clip",
22249+
"type": "str",
22250+
"required": true,
22251+
"positional": true,
22252+
"help": "Clip UUID or https://suno.com/song/<id> URL"
22253+
},
22254+
{
22255+
"name": "formats",
22256+
"type": "str",
22257+
"required": false,
22258+
"help": "Comma-separated formats: mp3, m4a, wav, video, cover, metadata. Default: mp3,metadata"
22259+
},
22260+
{
22261+
"name": "op",
22262+
"type": "str",
22263+
"required": false,
22264+
"help": "Output directory (default: ~/Music/suno)"
22265+
},
22266+
{
22267+
"name": "confirm-paid",
22268+
"type": "boolean",
22269+
"default": false,
22270+
"required": false,
22271+
"help": "Required to allow paid downloads (wav). Without it, paid formats are skipped with a warning."
22272+
}
22273+
],
22274+
"columns": [
22275+
"status",
22276+
"clip",
22277+
"title",
22278+
"files",
22279+
"link"
22280+
],
22281+
"defaultFormat": "plain",
22282+
"type": "js",
22283+
"modulePath": "suno/download.js",
22284+
"sourceFile": "suno/download.js",
22285+
"navigateBefore": false,
22286+
"siteSession": "persistent"
22287+
},
22288+
{
22289+
"site": "suno",
22290+
"name": "generate",
22291+
"description": "Generate music with Suno (V5.5 chirp-fenix by default) and download clips locally",
22292+
"access": "write",
22293+
"domain": "suno.com",
22294+
"strategy": "cookie",
22295+
"browser": true,
22296+
"args": [
22297+
{
22298+
"name": "prompt",
22299+
"type": "str",
22300+
"required": false,
22301+
"positional": true,
22302+
"help": "Simple-mode description (ignored when --lyrics is provided)"
22303+
},
22304+
{
22305+
"name": "lyrics",
22306+
"type": "str",
22307+
"required": false,
22308+
"help": "Custom-mode lyrics (with [Verse]/[Chorus] metatags). Triggers Custom mode."
22309+
},
22310+
{
22311+
"name": "tags",
22312+
"type": "str",
22313+
"required": false,
22314+
"help": "Custom-mode style tags (genre, BPM, instruments...). Used with --lyrics."
22315+
},
22316+
{
22317+
"name": "negative-tags",
22318+
"type": "str",
22319+
"required": false,
22320+
"help": "Custom-mode style exclusions (e.g. \"no vocals, no autotune\"). Used with --lyrics."
22321+
},
22322+
{
22323+
"name": "title",
22324+
"type": "str",
22325+
"required": false,
22326+
"help": "Song title (default: auto-derived from prompt)"
22327+
},
22328+
{
22329+
"name": "instrumental",
22330+
"type": "boolean",
22331+
"default": false,
22332+
"required": false,
22333+
"help": "No vocals"
22334+
},
22335+
{
22336+
"name": "model",
22337+
"type": "str",
22338+
"required": false,
22339+
"help": "Model id: chirp-fenix, chirp-bluejay, chirp-v4, chirp-v3-5. Default: chirp-fenix"
22340+
},
22341+
{
22342+
"name": "weirdness",
22343+
"type": "str",
22344+
"required": false,
22345+
"help": "Creative weirdness slider (0..1). Default: 0.5"
22346+
},
22347+
{
22348+
"name": "style-weight",
22349+
"type": "str",
22350+
"required": false,
22351+
"help": "Style adherence slider (0..1). Default: 0.5"
22352+
},
22353+
{
22354+
"name": "formats",
22355+
"type": "str",
22356+
"required": false,
22357+
"help": "Comma-separated download formats: mp3, m4a, wav, video, cover, metadata. Default: mp3,metadata"
22358+
},
22359+
{
22360+
"name": "op",
22361+
"type": "str",
22362+
"required": false,
22363+
"help": "Output directory (default: ~/Music/suno)"
22364+
},
22365+
{
22366+
"name": "timeout",
22367+
"type": "int",
22368+
"default": 300,
22369+
"required": false,
22370+
"help": "Max seconds to wait for clips to finish (default: 300)"
22371+
},
22372+
{
22373+
"name": "sd",
22374+
"type": "boolean",
22375+
"default": false,
22376+
"required": false,
22377+
"help": "Skip download; only print clip ids and Suno URLs"
22378+
},
22379+
{
22380+
"name": "confirm-paid",
22381+
"type": "boolean",
22382+
"default": false,
22383+
"required": false,
22384+
"help": "Required to allow paid downloads (wav). Without it, paid formats are skipped with a warning."
22385+
}
22386+
],
22387+
"columns": [
22388+
"status",
22389+
"clip",
22390+
"title",
22391+
"files",
22392+
"link"
22393+
],
22394+
"defaultFormat": "plain",
22395+
"type": "js",
22396+
"modulePath": "suno/generate.js",
22397+
"sourceFile": "suno/generate.js",
22398+
"navigateBefore": false,
22399+
"siteSession": "persistent"
22400+
},
22401+
{
22402+
"site": "suno",
22403+
"name": "list",
22404+
"description": "List recent Suno clips in your library (id, title, status, created_at, link)",
22405+
"access": "read",
22406+
"domain": "suno.com",
22407+
"strategy": "cookie",
22408+
"browser": true,
22409+
"args": [
22410+
{
22411+
"name": "limit",
22412+
"type": "int",
22413+
"default": 20,
22414+
"required": false,
22415+
"help": "Max clips to list (default: 20)"
22416+
},
22417+
{
22418+
"name": "page",
22419+
"type": "int",
22420+
"default": 0,
22421+
"required": false,
22422+
"help": "Pagination offset, 0-based (default: 0)"
22423+
}
22424+
],
22425+
"columns": [
22426+
"rank",
22427+
"clip",
22428+
"title",
22429+
"status",
22430+
"created",
22431+
"link"
22432+
],
22433+
"type": "js",
22434+
"modulePath": "suno/list.js",
22435+
"sourceFile": "suno/list.js",
22436+
"navigateBefore": false,
22437+
"siteSession": "persistent"
22438+
},
22439+
{
22440+
"site": "suno",
22441+
"name": "status",
22442+
"description": "Check Suno login, plan, credit balance, and captcha readiness",
22443+
"access": "read",
22444+
"domain": "suno.com",
22445+
"strategy": "cookie",
22446+
"browser": true,
22447+
"args": [],
22448+
"columns": [
22449+
"Status",
22450+
"Plan",
22451+
"Credits",
22452+
"Monthly",
22453+
"Captcha"
22454+
],
22455+
"type": "js",
22456+
"modulePath": "suno/status.js",
22457+
"sourceFile": "suno/status.js",
22458+
"navigateBefore": false,
22459+
"siteSession": "persistent"
22460+
},
2223822461
{
2223922462
"site": "taobao",
2224022463
"name": "add-cart",

0 commit comments

Comments
 (0)