suno-create

Create songs on Suno.com with custom lyrics and style. Use when user wants to (1) generate AI music on Suno with specific lyrics or theme, (2) create a song in a specific artist's style (e.g., G.E.M.邓紫棋), (3) download generated songs and send to Telegram. Triggers: create a song on Suno, generate a song, 用Suno创作歌曲, Suno创作, 下载Suno歌曲

33 stars

Best use case

suno-create is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Create songs on Suno.com with custom lyrics and style. Use when user wants to (1) generate AI music on Suno with specific lyrics or theme, (2) create a song in a specific artist's style (e.g., G.E.M.邓紫棋), (3) download generated songs and send to Telegram. Triggers: create a song on Suno, generate a song, 用Suno创作歌曲, Suno创作, 下载Suno歌曲

Teams using suno-create should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/suno-create/SKILL.md --create-dirs "https://raw.githubusercontent.com/aAAaqwq/AGI-Super-Team/main/skills/suno-create/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/suno-create/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How suno-create Compares

Feature / Agentsuno-createStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Create songs on Suno.com with custom lyrics and style. Use when user wants to (1) generate AI music on Suno with specific lyrics or theme, (2) create a song in a specific artist's style (e.g., G.E.M.邓紫棋), (3) download generated songs and send to Telegram. Triggers: create a song on Suno, generate a song, 用Suno创作歌曲, Suno创作, 下载Suno歌曲

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Suno Create Skill

## Overview

Create songs on Suno.com by filling the form with lyrics + style and triggering generation. Download songs and send to Telegram.

## Workflow

### Step 1: Ensure Suno Login

Browser must be logged into Suno. If not logged in:
1. Navigate to suno.com
2. Click "Sign in" → Google OAuth login
3. Verify logged in (account name + credits visible in sidebar)

### Step 2: Navigate to Create Page

```bash
browser(action=navigate, url="https://suno.com/create")
sleep 5
```

### Step 3: Search for Correct Lyrics

If user provides lyrics → use provided lyrics.

If user provides song name → search online for correct lyrics:
- Try: `duckduckgo.com` search → find lyrics from mojigeci.com, kkbox.com, lyrics.com.tw
- Use browser to navigate to lyrics page, extract text content

Search URLs:
```
https://html.duckduckgo.com/html/?q={song_name}+歌词+{artist}
https://html.duckduckgo.com/html/?q={song_name}+lyrics+{artist}
```

### Step 4: Prepare Lyrics + Style

**Lyrics format for Suno** - Use clean text without formatting tags:
```
[Verse]
歌词内容...

[Chorus]
副歌内容...
```

**G.E.M. 邓紫棋 style prompt** (reference: `references/gem_style.md`):
```
G.E.M.邓紫棋风格, 强大的 belting 声乐, 沙哑音色, R&B 流行, 宽广音域, 情感化中文演唱, 呼吸感副歌, 灵魂情歌, 2000s-2020s 华语天后气质, 怀旧浪漫
```

### Step 5: Fill Form via Browser Evaluate

Use React-compatible input method (Suno uses React - plain fill/type won't work):

```javascript
// Fill lyrics
const LYRICS = `...`; // multi-line lyrics string

// Fill style
const STYLE = `G.E.M.邓紫棋风格, 强大的 belting 声乐...`;

browser(action=act, targetId="<current_targetId>", kind=evaluate, fn=r'''() => {
  const LYRICS = `...`;
  const STYLE = `...`;

  // Fill lyrics textarea
  const textareas = document.querySelectorAll('textarea');
  for (const ta of textareas) {
    const ph = ta.placeholder || '';
    if (ph.includes('lyrics') || ph.includes('Write some')) {
      Object.getOwnPropertyDescriptor(window.HTMLTextAreaElement.prototype, 'value').set.call(ta, LYRICS);
      ta.dispatchEvent(new Event('input', {bubbles: true}));
      ta.dispatchEvent(new Event('change', {bubbles: true}));
    }
  }

  // Fill style textarea (find by placeholder "Meditative" or existing "moody" value)
  for (const ta of textareas) {
    const ph = ta.placeholder || '';
    const val = ta.value || '';
    if (ph.includes('Meditative') || (val.includes('moody') && !val.includes('G.E.M.'))) {
      Object.getOwnPropertyDescriptor(window.HTMLTextAreaElement.prototype, 'value').set.call(ta, STYLE);
      ta.dispatchEvent(new Event('input', {bubbles: true}));
      ta.dispatchEvent(new Event('change', {bubbles: true}));
    }
  }

  // Click Create
  setTimeout(() => {
    const buttons = Array.from(document.querySelectorAll('button'));
    for (const btn of buttons) {
      const txt = btn.textContent.trim();
      if (txt === 'Create' || txt === 'Create song') {
        if (!btn.disabled) { btn.click(); }
        break;
      }
    }
  }, 500);

  return 'Done';
}''')
```

### Step 6: Wait for Generation

Wait 30-40 seconds, then take screenshot to verify:
```bash
sleep 35
browser(action=screenshot, targetId="<targetId>", fullPage=true)
```

New songs appear in right sidebar workspace.

### Step 7: Extract Song IDs

```javascript
// Get song IDs and titles from page
browser(action=act, kind=evaluate, fn=r'''() => {
  const songs = Array.from(document.querySelectorAll('a[href*="/song/"]')).map(a => {
    const match = a.href.match(/\/song\/([^\/]+)/);
    return match ? { title: a.textContent.trim(), id: match[1] } : null;
  }).filter(s => s);
  return JSON.stringify(songs.slice(0, 10));
}''')
```

### Step 8: Download Songs

Song audio URL pattern: `https://cdn1.suno.ai/{song_id}.mp3`

```bash
# Download song
curl -sL -o "/tmp/song_{id}.mp3" "https://cdn1.suno.ai/{song_id}.mp3"

# Copy to workspace for Telegram
cp "/tmp/song_{id}.mp3" "/home/aa/.openclaw/workspace-content/song_{id}.mp3"
```

### Step 9: Send to Telegram

```python
# Via message tool
message(action=send, channel="telegram", target="<chat_id>", 
        filePath="/home/aa/.openclaw/workspace-content/song_{id}.mp3",
        caption="🎵 {song_title}")
```

Or send links:
```python
message(action=send, channel="telegram", target="<chat_id>",
        message=f"🎵 {song_title}\n🎧 https://suno.com/song/{song_id}\n📥 https://cdn1.suno.ai/{song_id}.mp3")
```

## Key Notes

- **React synthetic events**: Suno's form inputs require `nativeInputValueSetter` + `input` event with `bubbles: true` to update React state
- **Credit cost**: Each Create = 10 credits (generates 2 versions)
- **Song IDs**: Each generated song has unique UUID, extract after page update
- **Download URL**: Always `https://cdn1.suno.ai/{id}.mp3` (verified working)
- **Browser stability**: If browser times out, restart with `browser(action=start)` then retry

## Troubleshooting

- **Form not filling**: Suno uses React - must use `evaluate` with `nativeInputValueSetter`
- **Create button disabled**: Check if lyrics textarea has content (may need proper line breaks)
- **Browser timeout**: Restart browser, re-navigate to suno.com/create
- **Wrong lyrics**: Always search for official lyrics first (song may have multiple versions)

Related Skills

suno-skills

33
from aAAaqwq/AGI-Super-Team

AI音乐生成工具Suno的浏览器自动化Skill。通过Playwright控制Suno网站(https://suno.com)进行:生成歌曲(含自定义歌词)、管理创作、下载音频。触发场景:"用suno生成歌曲"、"Suno创作"、"AI音乐生成"、"生成一首...风格的歌"、"上传歌词到Suno"

create-viral-content

33
from aAAaqwq/AGI-Super-Team

This skill synthesizes findings from 40 documented research sources

create-project

33
from aAAaqwq/AGI-Super-Team

Create new project with breakdown

wemp-operator

33
from aAAaqwq/AGI-Super-Team

> 微信公众号全功能运营——草稿/发布/评论/用户/素材/群发/统计/菜单/二维码 API 封装

Content & Documentation

zsxq-smart-publish

33
from aAAaqwq/AGI-Super-Team

Publish and manage content on 知识星球 (zsxq.com). Supports talk posts, Q&A, long articles, file sharing, digest/bookmark, homework tasks, and tag management. Use when publishing content to 知识星球, creating/editing posts, uploading files/images/audio, managing digests, batch publishing, or formatting content for 知识星球.

zoom-automation

33
from aAAaqwq/AGI-Super-Team

Automate Zoom meeting creation, management, recordings, webinars, and participant tracking via Rube MCP (Composio). Always search tools first for current schemas.

zoho-crm-automation

33
from aAAaqwq/AGI-Super-Team

Automate Zoho CRM tasks via Rube MCP (Composio): create/update records, search contacts, manage leads, and convert leads. Always search tools first for current schemas.

ziliu-publisher

33
from aAAaqwq/AGI-Super-Team

字流(Ziliu) - AI驱动的多平台内容分发工具。用于一次创作、智能适配排版、一键分发到16+平台(公众号/知乎/小红书/B站/抖音/微博/X等)。当用户需要多平台发布、内容排版、格式适配时使用。触发词:字流、ziliu、多平台发布、一键分发、内容分发、排版发布。

zhihu-post-skill

33
from aAAaqwq/AGI-Super-Team

> 知乎文章发布——知乎平台内容创作与发布自动化

zendesk-automation

33
from aAAaqwq/AGI-Super-Team

Automate Zendesk tasks via Rube MCP (Composio): tickets, users, organizations, replies. Always search tools first for current schemas.

youtube-knowledge-extractor

33
from aAAaqwq/AGI-Super-Team

This skill performs deep analysis of YouTube videos through **both information channels** Multimodal YouTube video analysis through both audio (transcript) and visual (frame extraction + image analysis) channels. Especially powerful for HowTo videos, tutorials, demos, and explainer videos where what is SHOWN (screenshots, UI demos, diagrams, code, physical actions) is just as important as what is SAID. Use this skill whenever a user wants to analyze, summarize, or create step-by-step guides from YouTube videos, or when they share a YouTube URL and want to understand what happens in the video. Triggers on requests like "Analyze this YouTube video", "Create a step-by-step guide from this video", "What does this video show?", "Summarize this tutorial", or any YouTube URL shared with analysis intent.

youtube-factory

33
from aAAaqwq/AGI-Super-Team

Generate complete YouTube videos from a single prompt - script, voiceover, stock footage, captions, thumbnail. Self-contained, no external modules. 100% free tools.