MCP HubMCP Hub
Retour aux compétences

pre-generation-check

bitwize-music-studio
Mis à jour 2 days ago
7 vues
209
37
209
Voir sur GitHub
Métageneral

À propos

Cette compétence valide toutes les barrières pré-génération requises avant d'envoyer les morceaux à Suno, en vérifiant la validation de la source, la revue des paroles, la prononciation, les indicateurs de contenu explicite, les invites de style et l'autorisation de l'artiste. Elle agit comme un point de contrôle final qui bloque la génération si une exigence n'est pas satisfaite. Les développeurs doivent l'utiliser avant la génération Suno ou lorsqu'elle est déclenchée par les commandes "vérification pré-génération" ou "prêt à générer".

Installation rapide

Claude Code

Recommandé
Principal
npx skills add bitwize-music-studio/claude-ai-music-skills -a claude-code
Commande PluginAlternatif
/plugin add https://github.com/bitwize-music-studio/claude-ai-music-skills
Git CloneAlternatif
git clone https://github.com/bitwize-music-studio/claude-ai-music-skills.git ~/.claude/skills/pre-generation-check

Copiez et collez cette commande dans Claude Code pour installer cette compétence

Documentation

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 Verified field is Verified or N/A
  • Fail if: Pending or ❌ 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 Explicit field set to Yes or No (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 Box heading 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

  1. Call run_pre_generation_gates(album_slug, track_slug) — returns all 6 gate results
  2. Format pass/fail report from MCP response
  3. Output verdict: READY or NOT READY

Full Album

  1. Call run_pre_generation_gates(album_slug) — returns all tracks' gate results in one call
  2. Format per-track and album-level summary from MCP response
  3. 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

  1. You are a gate, not a fixer — Report issues, don't fix them
  2. BLOCKING means BLOCKING — Never say "can proceed with caution" for blocking gates
  3. Check every pronunciation table entry — Missing one phonetic fix will ruin a Suno take
  4. Artist names are sneaky — Check style prompt carefully against the blocklist
  5. Be specific — "Gate failed" is useless. "live in V2:L3 unresolved" is actionable
  6. Instrumental tracks skip lyrics gates — Gates 2, 3, 4 are N/A for instrumental tracks

Your deliverable: Pass/fail report with album-level verdict.

Dépôt GitHub

bitwize-music-studio/claude-ai-music-skills
Chemin: skills/pre-generation-check
0
ai-musicai-music-toolsaudio-masteringclaudeclaude-codeclaude-code-plugin

Compétences associées

content-collections

Méta

Cette compétence propose une configuration éprouvée en production pour Content Collections, un outil axé sur TypeScript qui transforme des fichiers Markdown/MDX en collections de données typées de manière sûre avec une validation Zod. Utilisez-la lors de la création de blogs, de sites de documentation ou d'applications Vite + React riches en contenu pour garantir la sécurité de typage et la validation automatique du contenu. Elle couvre tout, de la configuration du plugin Vite et de la compilation MDX à l'optimisation des déploiements et la validation des schémas.

Voir la compétence

polymarket

Méta

Cette compétence permet aux développeurs de créer des applications avec la plateforme de marchés prédictifs Polymarket, incluant l'intégration d'API pour le trading et les données de marché. Elle fournit également une diffusion de données en temps réel via WebSocket pour surveiller les transactions en direct et l'activité du marché. Utilisez-la pour mettre en œuvre des stratégies de trading ou pour créer des outils traitant les mises à jour de marché en direct.

Voir la compétence

creating-opencode-plugins

Méta

Cette compétence aide les développeurs à créer des plugins OpenCode qui s'interconnectent avec plus de 25 types d'événements tels que les commandes, les fichiers et les opérations LSP. Elle fournit la structure du plugin, les spécifications de l'API événementielle et les modèles d'implémentation pour les modules JavaScript/TypeScript. Utilisez-la lorsque vous avez besoin d'intercepter, de surveiller ou d'étendre le cycle de vie de l'assistant IA OpenCode avec une logique personnalisée pilotée par les événements.

Voir la compétence

sglang

Méta

SGLang est un framework de service LLM haute performance spécialisé dans la génération rapide et structurée pour les workflows JSON, regex et agentiques grâce à son cache de préfixe RadixAttention. Il offre une inférence nettement plus rapide, particulièrement pour les tâches avec des préfixes répétés, ce qui le rend idéal pour les sorties complexes et structurées ainsi que les conversations multi-tours. Choisissez SGLang plutôt que des alternatives comme vLLM lorsque vous avez besoin d'un décodage contraint ou que vous construisez des applications avec un partage étendu de préfixes.

Voir la compétence