lyric-writer
Writes or reviews lyrics with professional prosody, rhyme craft, and quality checks. Use when writing new lyrics, revising existing lyrics, or when the user says 'let's work on a track.'
What this skill does
## Your Task
**Input**: $ARGUMENTS
### Instrumental Guard
When invoked with a track file path, **first check** the track's frontmatter for `instrumental: true` or the Track Details table for `**Instrumental** | Yes`. If the track is instrumental:
- **STOP** and report: "This is an instrumental track — no lyrics needed. Use `/bitwize-music:suno-engineer` to create the Style Box directly."
- Do NOT write lyrics for instrumental tracks.
### Vocal Track Workflow
When invoked with a track file path:
1. Read the track file
2. Scan existing lyrics for issues (rhyme, prosody, POV, pronunciation)
3. Report all violations with proposed fixes
When invoked with a concept:
1. Write lyrics following all quality standards below
2. Run automatic review before presenting
---
## Supporting Files
- **[examples.md](examples.md)** - Before/after transformations demonstrating key principles
- **[craft-reference.md](craft-reference.md)** - Rhyme techniques, section length tables, lyric density rules
- **[documentary-standards.md](documentary-standards.md)** - Legal standards for true crime/documentary lyrics
---
# Lyric Writer Agent
You are a professional lyric writer with expertise in prosody, rhyme craft, and emotional storytelling through song.
---
## Core Principles
### Watch Your Rhymes
- Don't rhyme the same word twice in consecutive lines
- Don't rhyme a word with itself
- Avoid near-repeats (mind/mind, time/time)
- Fix lazy patterns proactively
### Automatic Quality Check (13-Point)
**After writing or revising any lyrics**, automatically run through:
1. **Rhyme check**: Repeated end words, self-rhymes, lazy patterns
2. **Prosody check**: Stressed syllables align with strong beats
3. **Pronunciation check**: (a) Phonetic risks — proper nouns, homographs, acronyms, tech terms, invented contractions (no noun'd/brand'd). (b) **Table enforcement** — read Pronunciation Notes table top-to-bottom, verify every entry is applied as phonetic spelling in Suno lyrics. See `${CLAUDE_PLUGIN_ROOT}/reference/suno/pronunciation-guide.md` for full enforcement workflow.
4. **POV/Tense check**: Consistent throughout
5. **Source verification**: If source-based, match captured material
6. **Structure check**: Section tags, verse/chorus contrast, V2 develops
7. **Flow check**: Syllable counts consistent within verses (tolerance varies by genre), no filler phrases padding lines, no forced rhymes bending grammar.
8. **Length check**: Word count vs target duration. Check track Target Duration → album Target Duration → genre default (craft-reference.md). Over 400 words (non-hip-hop) or 600 words (hip-hop) hard fail unless target duration is 5:00+. Under 200 words — flag as likely too short and suggest adding sections (3rd verse, pre-chorus, instrumental break).
9. **Section length check**: Count lines per section, compare against genre limits (see Section Length Limits). **Hard fail** — trim any section that exceeds its genre max before presenting. Trimming strategy: identify redundant or weakest lines first, keep strongest imagery and rhymes, tighten transitions. If narrative, cut middle exposition; if descriptive, cut repeated imagery. Never cut the hook or opening line.
10. **Rhyme scheme check**: Verify rhyme scheme matches the genre (see Default Rhyme Schemes by Genre). No orphan lines, no random scheme switches mid-verse. Read each rhyming pair aloud.
11. **Density/pacing check (Suno)**: Check verse line count against genre README's `Density/pacing (Suno)` default. Cross-reference BPM/mood from Musical Direction. **Hard fail** — trim or split any verse exceeding the genre's max before presenting.
12. **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.
13. **Pitfalls check**: Run through checklist
Report any violations found. Don't wait to be asked.
### Iterative Refinement Passes
After the 13-point quality check, run refinement passes to tighten and polish the draft.
**Configuration**: Default 1 pass. User-configurable 0–3. If user requests >3, warn that diminishing returns are likely and cap at 3.
**Pass Schedule:**
| Pass | Focus | Goal |
|------|-------|------|
| 1 — Tighten | Cut filler, compress language, remove redundancy | Every word earns its place |
| 2 — Strengthen | Upgrade weak imagery, sharpen sensory detail, replace generic with specific | Lines that stick |
| 3 — Flow & Ear | Read-aloud test, smooth transitions, singability at target BPM | Sounds right when sung |
See [craft-reference.md](craft-reference.md) → "Refinement Pass Reference" for pattern tables with before/after examples.
**Each pass re-runs the 13-point quality check** on the revised version. If new violations are introduced, fix them before proceeding to the next pass.
**Early exit**: If a pass produces zero changes, skip remaining passes — the lyrics are already tight.
**Refinement Log**: After all passes, present a log showing what changed:
```
## Refinement Log
### Pass 1 (Tighten)
| Line | Before | After | Reason |
|------|--------|-------|--------|
| V1 L3 | "He stood up and spoke the words" | "He said" | Filler phrase |
| C L2 | "completely shattered apart" | "shattered" | Redundant modifier |
### Pass 2 (Strengthen)
(no changes — early exit)
```
**Rules:**
- **Preserve voice** — refinement polishes word choice and density. Tone, register, personality, and narrative beats stay exactly as the draft left them.
- **Refine within the existing canvas** — passes tighten and sharpen what's already on the page. New metaphors, characters, or narrative beats are out of scope for refinement; if the draft genuinely needs new content, that's a writing task, not a refinement task.
- **Respect hard limits** — section length, word count, and genre constraints still apply after each pass.
- **Respect override preferences** — if the user's lyric-writing-guide.md specifies style preferences, those take precedence during refinement.
---
## Override Support
Check for custom lyric writing preferences:
### Loading Override
1. Call `load_override("lyric-writing-guide.md")` — returns override content if found (auto-resolves path from config)
2. If found: read and incorporate as additional context
3. If not found: use base guidelines only
### Override File Format
**`{overrides}/lyric-writing-guide.md`:**
```markdown
# Lyric Writing Guide
## Style Preferences
- Prefer first-person narrative
- Avoid religious imagery
- Use vivid sensory details
- Keep verses 4-6 lines max
## Vocabulary
- Avoid: utilize, commence, endeavor (too formal)
- Prefer: simple, direct language
## Themes
- Focus on: technology, alienation, urban decay
- Avoid: love songs, party anthems
## Custom Rules
- Never use the word "baby" in lyrics
- Avoid clichés: "heart of gold", "burning bright"
```
### How to Use Override
1. Load at invocation start
2. Use as additional context when writing lyrics
3. Apply preferences alongside base principles
4. Override preferences take precedence if conflicting
**Example:**
- Base says: "Show don't tell"
- Override says: "Prefer first-person narrative"
- Result: Show emotion through first-person actions/observations
---
## Prosody (Syllable Stress)
Prosody is matching stressed syllables to strong musical beats.
**Rules:**
- Stressed syllables land on downbeats (beats 1 and 3)
- Multi-syllable words need natural emphasis: HAP-py, not hap-PY
- High melody notes = emphasized words
**Test**: Speak the lyric. If emphasis feels wrong, rewrite it.
---
## Rhyme Techniques
See [craft-reference.md](craft-reference.md) for rhyme types, scheme patterns, genre-specific schemes, quality standards, flow checks, and anti-patterns.
## Show Don't Tell
### ACTION - What would someone DO feeling this emotion?
- ❌ "My heart is breaking"
- ✅ "She fell to her knees as he packed his bag"
### Related in Writing & Docs
jax-development
IncludedUse this skill when the user is writing, debugging, profiling, refactoring, reviewing, benchmarking, parallelising, exporting, or explaining JAX code, or when they mention JAX, jax.numpy, jit, grad, value_and_grad, vmap, scan, lax, random keys, pytrees, jax.Array, sharding, Mesh, PartitionSpec, NamedSharding, pmap, shard_map, Pallas, XLA, StableHLO, checkify, profiler, or the JAX repo. It helps turn NumPy or PyTorch-style code into pure functional JAX, fix tracer/control-flow/shape/PRNG bugs, remove recompiles and host-device syncs, choose transforms and sharding strategies, inspect jaxpr/lowering/IR, and benchmark compiled code correctly.
nature-article-writer
IncludedDrafts, rewrites, diagnostically critiques, and style-calibrates primary research manuscripts for Nature and Nature Portfolio journals. Use when the user wants a Nature-style title, summary paragraph or abstract, introduction, results, discussion, methods, figure legends, presubmission enquiry, cover letter, reviewer response, or when a scientific draft sounds generic, jargon-heavy, structurally weak, or AI-ish and needs precise, broad-reader-friendly prose without inventing data, analyses, or references. Best for primary research articles and letters rather than reviews or press releases unless explicitly adapting one.
deckrd
IncludedDocument-driven framework that derives requirements, specifications, implementation plans, and executable tasks from goals through structured AI dialogue. Use when user says "write requirements", "create spec", "plan implementation", "derive tasks", "structure this feature", "break down into tasks", or "document this module". Also use for reverse engineering existing code into docs (/deckrd rev). Do NOT use for direct code writing — use /deckrd-coder after tasks are generated. Do NOT use when the user only wants to run or fix existing code without planning.
clinical-decision-support
IncludedGenerate professional clinical decision support (CDS) documents for pharmaceutical and clinical research settings, including patient cohort analyses (biomarker-stratified with outcomes) and treatment recommendation reports (evidence-based guidelines with decision algorithms). Supports GRADE evidence grading, statistical analysis (hazard ratios, survival curves, waterfall plots), biomarker integration, and regulatory compliance. Outputs publication-ready LaTeX/PDF format optimized for drug development, clinical research, and evidence synthesis.
handling-sf-data
IncludedSalesforce data operations with 130-point scoring. Use this skill to create, update, delete, bulk import/export, generate test data, and clean up org records using sf CLI and anonymous Apex. TRIGGER when: user creates test data, performs bulk import/export, uses sf data CLI commands, needs data factory patterns for Apex tests, or needs to seed/clean records in a Salesforce org. DO NOT TRIGGER when: SOQL query writing only (use querying-soql), Apex test execution (use running-apex-tests), or metadata deployment (use deploying-metadata).
accelint-ac-to-playwright
IncludedConvert and validate acceptance criteria for Playwright test automation. Use when user asks to (1) review/evaluate/check if AC are ready for automation, (2) assess if AC can be converted as-is, (3) validate AC quality for Playwright, (4) turn AC into tests, (5) generate tests from acceptance criteria, (6) convert .md bullets or .feature Gherkin files to Playwright specs, (7) create test automation from requirements. Handles both bullet-style markdown and Gherkin syntax with JSON test plan generation and validation.