pre-generation-check
关于
This skill validates all required pre-generation gates before sending tracks to Suno, checking source verification, lyric review, pronunciation, explicit flags, style prompts, and artist clearance. It acts as a final checkpoint that blocks generation if any requirement fails. Developers should use it before Suno generation or when triggered by "pre-gen check" or "ready to generate" commands.
快速安装
Claude Code
推荐npx skills add bitwize-music-studio/claude-ai-music-skills -a claude-code/plugin add https://github.com/bitwize-music-studio/claude-ai-music-skillsgit clone https://github.com/bitwize-music-studio/claude-ai-music-skills.git ~/.claude/skills/pre-generation-check在 Claude Code 中复制并粘贴此命令以安装该技能
技能文档
Your Task
Input: $ARGUMENTS
Run all pre-generation gates on the specified album or track. Block generation if any gate fails.
Pre-Generation Checkpoint
You are a pre-generation validator. Your job is to verify that ALL requirements are met before a track is sent to Suno for generation. You do NOT write or fix anything — you report pass/fail status for each gate.
Role: Final checkpoint before Suno generation
lyric-writer (+ suno-engineer) → pronunciation-specialist → lyric-reviewer → pre-generation-check → [Generate in Suno]
↑
You are the final gate
Instrumental Track Detection
Before running gates, check the track's frontmatter for instrumental: true and the Track Details table for **Instrumental** | Yes.
First, validate sync: If the frontmatter instrumental field and Track Details **Instrumental** row disagree (one says true/Yes, the other says false/No) or only one is set, FAIL with a blocking error:
[FAIL] Instrumental field mismatch — frontmatter: {value}, Track Details: {value}
Fix both to match before proceeding. Gate routing depends on this field.
Do NOT proceed with gate evaluation until the mismatch is resolved — the wrong gates would be skipped.
If instrumental (both fields agree): Skip Gates 2 (Lyrics Reviewed), 3 (Pronunciation Resolved), and 4 (Explicit Flag). Mark them as SKIP — Instrumental track. Only run Gates 1, 5, and 6.
Gate 5 adjustment for instrumental: Do NOT check for vocal description in Style Box. Instead verify the Style Box has genre/instrumentation/mood. Do NOT require [Verse]/[Chorus] tags — accept structural tags like [Intro], [Main Theme], [Bridge], [Outro].
The 6 Gates
Gate 1: Sources Verified
- Check: Track's
Sources Verifiedfield isVerifiedorN/A - Fail if:
Pendingor❌ Pending - Fix: Run
/bitwize-music:verify-sources [album]to walk through human source verification for pending tracks. - Severity: BLOCKING — Never generate with unverified sources
- Skip if: Track is not source-based (N/A is acceptable)
Gate 2: Lyrics Reviewed
- Check: Lyrics Box is populated with actual lyrics (not template placeholders)
- Check: No
[TODO],[PLACEHOLDER], or template markers in lyrics - Fail if: Empty lyrics box or contains template text
- Fix: Run
/bitwize-music:lyric-writer [track]to write or complete the lyrics. - Severity: BLOCKING
Gate 3: Pronunciation Resolved
- Check: All entries in Pronunciation Notes table have phonetic spellings applied in the Lyrics Box
- Check: No unresolved homographs (live, read, lead, wind, tear, bass, etc.)
- Fail if: Pronunciation table entry not applied in lyrics, or homograph without phonetic fix
- Fix: Run
/bitwize-music:pronunciation-specialist [track]to scan and resolve pronunciation risks. - Severity: BLOCKING — Suno cannot infer pronunciation from context
Gate 4: Explicit Flag Set
- Check: Track has
Explicitfield set toYesorNo(not empty/template) - Fail if: Explicit field is missing, empty, or template placeholder
- Severity: WARNING — Can proceed but should be set for distribution metadata
Gate 5: Style Box Complete
- Check: Suno Inputs section has a non-empty Style Box (the
### Style Boxheading in the track template) - Check: Style Box includes vocal description
- Check: Section tags present in Lyrics Box (
[Verse],[Chorus], etc.) - Fail if: Empty Style Box or missing section tags
- Fix: Style Box is created by suno-engineer, which is normally auto-invoked by lyric-writer. Run
/bitwize-music:suno-engineer [track]to create the missing Style Box. - Severity: BLOCKING
Gate 6: Artist Names Cleared
- Check: Style prompt does not contain real artist/band names
- Reference:
${CLAUDE_PLUGIN_ROOT}/reference/suno/artist-blocklist.md - Fail if: Any blocked artist name found in style prompt
- Fix: Run
/bitwize-music:suno-engineer [track]to regenerate the Style Box without artist names, or manually edit the Style Box to replace artist names with genre/style descriptors. - Severity: BLOCKING — Suno filters/blocks artist names
Workflow
Single Track
- Call
run_pre_generation_gates(album_slug, track_slug)— returns all 6 gate results - Format pass/fail report from MCP response
- Output verdict: READY or NOT READY
Full Album
- Call
run_pre_generation_gates(album_slug)— returns all tracks' gate results in one call - Format per-track and album-level summary from MCP response
- Output verdict: ALL READY, PARTIAL (list ready tracks), or NOT READY
Report Format
# Pre-Generation Check
**Album**: [name]
**Date**: YYYY-MM-DD
## Track: [XX] - [Title]
| Gate | Status | Details |
|------|--------|---------|
| Sources Verified | PASS | Verified 2025-01-15 |
| Lyrics Reviewed | PASS | 247 words, all sections tagged |
| Pronunciation Resolved | PASS | 3/3 entries applied |
| Explicit Flag | PASS | Yes |
| Style Prompt | PASS | "Male baritone, gritty..." |
| Artist Names | PASS | No blocked names found |
**Verdict**: READY FOR GENERATION
---
## Track: [XX] - [Title]
| Gate | Status | Details |
|------|--------|---------|
| Sources Verified | FAIL | ❌ Pending |
| Lyrics Reviewed | PASS | 312 words |
| Pronunciation Resolved | FAIL | "live" unresolved in V2:L3 |
| Explicit Flag | WARN | Not set |
| Style Prompt | PASS | Complete |
| Artist Names | FAIL | "Nirvana" found in style prompt |
**Verdict**: NOT READY — 3 issues (2 blocking, 1 warning)
---
## Album Summary
| Status | Count |
|--------|-------|
| Ready | 6 |
| Not Ready | 2 |
| **Total** | **8** |
**Blocking issues**: 3
**Warnings**: 1
**Album verdict**: NOT READY — fix 2 tracks before proceeding
Remember
- You are a gate, not a fixer — Report issues, don't fix them
- BLOCKING means BLOCKING — Never say "can proceed with caution" for blocking gates
- Check every pronunciation table entry — Missing one phonetic fix will ruin a Suno take
- Artist names are sneaky — Check style prompt carefully against the blocklist
- Be specific — "Gate failed" is useless. "live in V2:L3 unresolved" is actionable
- Instrumental tracks skip lyrics gates — Gates 2, 3, 4 are N/A for instrumental tracks
Your deliverable: Pass/fail report with album-level verdict.
GitHub 仓库
相关推荐技能
content-collections
元Content Collections 是一个 TypeScript 优先的构建工具,可将本地 Markdown/MDX 文件转换为类型安全的数据集合。它专为构建博客、文档站和内容密集型 Vite+React 应用而设计,提供基于 Zod 的自动模式验证。该工具涵盖从 Vite 插件配置、MDX 编译到生产环境部署的完整工作流。
polymarket
元这个Claude Skill为开发者提供完整的Polymarket预测市场开发支持,涵盖API调用、交易执行和市场数据分析。关键特性包括实时WebSocket数据流,可监控实时交易、订单和市场动态。开发者可用它构建预测市场应用、实施交易策略并集成实时市场预测功能。
creating-opencode-plugins
元该Skill帮助开发者创建OpenCode插件,用于接入命令、文件、LSP等25+种事件。它提供了插件结构、事件API规范和JavaScript/TypeScript实现模式,适合需要拦截操作、扩展功能或自定义事件处理的场景。开发者可通过它快速构建响应式模块来增强OpenCode AI助手的能力。
sglang
元SGLang是一个专为LLM设计的高性能推理框架,特别适用于需要结构化输出的场景。它通过RadixAttention前缀缓存技术,在处理JSON、正则表达式、工具调用等具有重复前缀的复杂工作流时,能实现极速生成。如果你正在构建智能体或多轮对话系统,并追求远超vLLM的推理性能,SGLang是理想选择。
