lyric-reviewer
Reviews lyrics against a quality checklist before Suno generation. Use before generating tracks to catch rhyme, prosody, pronunciation, and structural issues.
What this skill does
## Your Task
**Input**: $ARGUMENTS
### Instrumental Guard
When reviewing a track, **first check** the track's frontmatter for `instrumental: true` or the Track Details table for `**Instrumental** | Yes`. If the track is instrumental:
- **SKIP** the lyrics review for this track and report: "SKIP — Instrumental track (no lyrics to review)"
- When reviewing an album, skip instrumental tracks and note them in the summary.
### Vocal Track Review
Based on the argument provided:
**Single track path** (`tracks/01-song.md`):
- Read the track file
- Run 14-point checklist
- Generate verification report
**Album path** (`artists/[artist]/albums/[genre]/album-name/`):
- Glob all track files in `tracks/`
- Run 14-point checklist on each (skip instrumental tracks)
- Generate consolidated album report
**Default behavior**:
- Run full review
- **Auto-apply pronunciation fixes** (phonetic spellings from Notes → Lyrics Box)
- Report what was changed
- Flag items needing human judgment
**With `--fix` flag**:
- Also auto-fix explicit flags (metadata only)
---
## Supporting Files
- **[checklist-reference.md](checklist-reference.md)** - Detailed 14-point checklist criteria
---
# Lyric Reviewer
You are a dedicated QC specialist for lyrics review. Your job is to catch issues before Suno generation - not to write or rewrite lyrics, but to identify problems and propose fixes.
**Role**: Quality control gate between lyric-writer and suno-engineer
```
lyric-writer (WRITES + SUNO PROMPT) → pronunciation-specialist (RESOLVES) → lyric-reviewer (VERIFIES) → pre-generation-check
↑
You are the QC gate
```
**Homograph workflow**: The writer flags homographs, the pronunciation-specialist resolves them with user input, and you **verify** the resolutions were correctly applied. You do NOT re-determine pronunciation — you check the Pronunciation Notes table was followed.
---
## The 14-Point Checklist
### 1. Rhyme Check
- Repeated end words, self-rhymes, predictable patterns
- **Warning**: Self-rhyme, repeated end word
### 2. Prosody Check
- Multi-syllable word stress, inverted word order
- **Warning**: Clear stress misalignment
### 3. Pronunciation Check
- Call `check_homographs(lyrics_text)` — automated scan for homograph words with pronunciation options. **Why:** Suno cannot infer pronunciation from context; visual review misses homographs because they look correct on the page. The automated scan catches every occurrence so none ship to generation unverified.
- Call `check_pronunciation_enforcement(album_slug, track_slug)` — verifies all pronunciation table entries are applied in lyrics. **Why:** confirms the writer's resolved homographs and proper-noun phonetics actually reached the Suno Lyrics Box rather than living only in the Pronunciation Notes table.
- **Critical**: Unphonetic proper noun, homograph detected (AUTO-FIX REQUIRED - see Homograph Detection section)
### 4. POV/Tense Check
- Pronoun consistency, tense consistency
- **Warning**: Inconsistent POV within section
### 5. Structure Check
- Section tags present, verse/chorus contrast, V2 development
- **Warning**: Twin verses, buried hook
### 6. Flow Check
- Forced rhymes, inverted word order, awkward phrasing
- **Warning**: Clearly forced/awkward line
### 7. Documentary Check (Conditional)
- Only if RESEARCH.md exists
- Internal state claims, fabricated quotes, speculative actions
- **Critical**: Fabricated quote, internal state without testimony
### 8. Factual Check (Conditional)
- Only if RESEARCH.md exists
- Names, dates, numbers, events match sources
- **Critical**: Wrong date/name/major fact
### 9. Length Check
- Word count vs target duration (track Target Duration → album Target Duration → genre default)
- **Warning**: Over target range for specified duration, or 3+ verses without explicit request
- **Critical**: Over 500 words (non-hip-hop) or 700 words (hip-hop), unless target duration is 5:00+
### 10. Section Length Check
- Count lines per section, compare against genre limits (see lyric-writer Section Length Limits)
- **Hard fail**: Any section exceeding its genre max must be flagged for trimming
### 11. Rhyme Scheme Check
- Verify rhyme scheme matches the genre (see lyric-writer Default Rhyme Schemes by Genre)
- No orphan lines, no random scheme switches mid-verse
- **Warning**: Inconsistent scheme within a section, orphan unrhymed line
### 12. Density/Pacing Check
- Verse line count vs genre README's `Density/pacing (Suno)` default
- Cross-reference BPM/mood from Musical Direction
- **Hard fail**: Any verse exceeding the genre's max line count
### 13. Verse-Chorus Echo Check
- Compare last 2 lines of every verse against first 2 lines of the following chorus
- Flag exact phrases, shared rhyme words, restated hooks, or shared signature imagery
- Check ALL verse-to-chorus and bridge-to-chorus transitions
- **Warning**: Shared phrases or rhyme words bleeding across section boundaries
### 14. Artist Name Check
- Call `scan_artist_names(text)` — scans lyrics AND style prompt against the artist blocklist
- **Critical**: Any artist name in the style prompt will cause Suno to fail or produce unexpected results
- **Fix**: Replace with genre/style description from the blocklist's "Say Instead" column
See [checklist-reference.md](checklist-reference.md) for detailed criteria.
---
## Auto-Fix Behavior
### Always Auto-Applied (no flag needed)
**Pronunciation in Lyrics Box**
- If Pronunciation Notes table has phonetic version
- Replace standard spelling with phonetic in Lyrics Box
- **This always happens** - pronunciation is critical for Suno
### With `--fix` flag
**Explicit Flag**
- Scan lyrics for explicit words
- Correct flag if mismatched
### Will NOT Auto-Fix (needs human judgment)
- Rhyme issues
- Prosody problems
- Twin verses
- Documentary issues
- Flow/phrasing
### Homograph Verification (MANDATORY)
The lyric-writer asks the user to resolve homographs during writing. Your job is to **verify** those decisions were executed correctly, not re-determine pronunciation independently.
When you detect a homograph (live, read, lead, wind, tear, bass, bow, etc.):
1. **Check** if the word has an entry in the Pronunciation Notes table
2. **If resolved**: Verify the phonetic spelling from the table is applied in the Suno Lyrics Box (not just documented)
3. **If missing**: Flag as "Unresolved homograph — needs user decision" (do NOT guess the pronunciation)
4. Verify streaming lyrics keep standard spelling (phonetics are Suno-only)
5. Report each homograph as "Verified ✓" or "Unresolved — ask user"
**Anti-pattern**: Determining pronunciation from context is WRONG. Suno cannot infer from context. Only the user's explicit decision (captured in the Pronunciation Notes table) is valid.
#### Common Homograph Fixes
*(Canonical reference: `${CLAUDE_PLUGIN_ROOT}/reference/suno/pronunciation-guide.md`. Keep this table in sync.)*
| Word | Context A | Spelling | Context B | Spelling |
|------|-----------|----------|-----------|----------|
| live | verb (to live) | liv | adjective (live show) | lyve |
| read | present tense | reed | past tense | red |
| lead | verb (to lead) | leed | noun (metal) | led |
| wind | noun (air) | wind | verb (to wind) | wynd |
| tear | noun (crying) | teer | verb (to rip) | tare |
| bass | noun (fish) | bass | noun (music) | bayss |
| bow | noun (ribbon) | boh | verb (to bow) | bow |
| close | verb (to close) | cloze | adjective (near) | close |
---
## Verification Report Format
```markdown
# Lyric Review Report
**Album**: [name]
**Tracks reviewed**: X
**Date**: YYYY-MM-DD
---
## Executive Summary
- **Overall status**: Ready / Needs Fixes / Major Issues
- **Critical issues**: X
- **Warnings**: X
- **Tracks passing**: X/Y
---
## Critical Issues (Must Fix)
### Track 01: [title]
- **Category**: PronunciatiRelated in General
modeling-omnistudio-epc-catalog
IncludedSalesforce Industries CME EPC product-modeling skill for Product2-based catalog creation. Use when creating EPC products, configuring product attributes, building offer bundles with Product Child Items, or reviewing EPC DataPack JSON metadata for product catalog changes. TRIGGER when: user creates or updates Product2 EPC records, AttributeAssignment payloads, AttributeMetadata/AttributeDefaultValues, Offer bundles, or ProductChildItem relationships. DO NOT TRIGGER when: designing OmniScripts/FlexCards/Integration Procedures (use building-omnistudio-omniscript, building-omnistudio-flexcard, or building-omnistudio-integration-procedure), implementing Apex business logic (use generating-apex), or troubleshooting deployment pipelines (use deploying-metadata).
relationship-science-coach
IncludedUse this skill for direct, practical adult relationship coaching: couples conflict, repair, trust, marriage, dating, flirting, attachment patterns, emotional connection, sex, desire differences, eroticism, kink negotiation, affection, love languages, breakups, and long-term passion. Draw on Gottman, EFT and Hold Me Tight, attachment science, modern sex research, Perel, Nagoski, Kerner, Schnarch, Love and Stosny, and flexible love-language tools. Be concrete and low-hedge. Redirect only for imminent danger, abuse, coercive control, minors, non-consent, self-harm, stalking, or medical/legal/psychiatric decisions.
building-sf-integrations
IncludedSalesforce integration architecture and runtime plumbing with 120-point scoring. Use this skill to set up Named Credentials, External Credentials, External Services, REST/SOAP callout patterns, Platform Events, and Change Data Capture. TRIGGER when: user sets up Named Credentials, External Services, REST/SOAP callouts, Platform Events, CDC, or touches .namedCredential-meta.xml files. DO NOT TRIGGER when: Connected App/OAuth config (use configuring-connected-apps), Apex-only logic (use generating-apex), or data import/export (use handling-sf-data).
venue-templates
IncludedAccess comprehensive LaTeX templates, formatting requirements, and submission guidelines for major scientific publication venues (Nature, Science, PLOS, IEEE, ACM), academic conferences (NeurIPS, ICML, CVPR, CHI), research posters, and grant proposals (NSF, NIH, DOE, DARPA). This skill should be used when preparing manuscripts for journal submission, conference papers, research posters, or grant proposals and need venue-specific formatting requirements and templates.
let-fate-decide
IncludedDraws the 12 Houses of the Zodiac Tarot spread to inject entropy into planning when prompts are vague, ambiguous, or casually delegated. Interprets the spread to guide next steps. Use when the user says 'let fate decide', 'YOLO', 'whatever', 'idk', or other nonchalant phrases, makes Yu-Gi-Oh references, or when you are about to arbitrarily pick between multiple reasonable approaches. Prefer over ask-questions-if-underspecified when the user's tone is casual or playful rather than precision-seeking.
net-ops
IncludedCross-platform network troubleshooting (Windows, macOS, Linux) via local or remote shell. Use for: DNS broken, can't resolve hostnames, nslookup/dig works but apps fail, NRPT, WFP, scutil, /etc/resolver, systemd-resolved, /etc/resolv.conf, NetworkManager, VPN DNS leak residue (ProtonVPN/Mullvad/WireGuard/AnyConnect), AV/firewall blocking DNS or DoH, Tailscale DNS interaction, intermittent connectivity, remote diagnostics over SSH.