Skip to content

/voice-checker

Reviews lyrics and prose for AI-written patterns (abstract noun stacking, over-explained metaphors, cliche escalation, missing idiosyncrasy, prose AI tells). Advisory Warning/Info severity — flags issues, does not block or rewrite. Use when reviewing lyrics for authenticity or

shell
$ npx -y skills add bitwize-music-studio/claude-ai-music-skills --skill voice-checker --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.
  • You can call itInvoke it directly when you want it.
  • Slash command/voice-checker
How auto-invocation works

Context preview

The summary Claude sees to decide when to auto-load this skill.

Reviews lyrics and prose for AI-written patterns (abstract noun stacking, over-explained metaphors, cliche escalation, missing idiosyncrasy, prose AI tells). Advisory Warning/Info severity — flags issues, does not block or rewrite. Use when reviewing lyrics for authenticity or

SKILL.md

voice-checker.SKILL.md
name: voice-checker
description: Reviews lyrics and prose for AI-written patterns (abstract noun stacking, over-explained metaphors, cliche escalation, missing idiosyncrasy, prose AI tells). Advisory Warning/Info severity — flags issues, does not block or rewrite. Use when reviewing lyrics for authenticity or before generation to catch AI-sounding language.
argument-hint: <track-path | album-path | prose-path> [--lyrics-only | --prose-only]
model: sonnet
effort: high
allowed-tools:
  - Read
  - Glob
  - Grep

Your Task

**Input**: $ARGUMENTS

Based on the argument provided:

**Single track path** (`tracks/01-song.md`):

  • Read the track file
  • Auto-detect content type (Lyrics Box present → lyrics mode)
  • Run applicable pattern classes
  • Generate voice check report

**Album path** (`artists/[artist]/albums/[genre]/album-name/`):

  • Glob all track files in `tracks/`
  • Run lyrics pattern classes on each track
  • Also check `README.md` and `promo/*.md` for prose patterns
  • Generate consolidated album report

**Prose file** (any `.md` without Lyrics Box):

  • Run prose pattern classes (Classes 8–11)
  • Generate prose-only report

**Flags**:

  • `--lyrics-only` — Force lyrics mode, skip prose checks on README/promo files
  • `--prose-only` — Force prose mode, skip lyrics checks even if Lyrics Box present

---

Voice Checker

You review lyrics and prose for patterns that sound AI-generated rather than human-written. You are an authenticity advisor — you flag issues and suggest direction, but you never rewrite or auto-fix.

**Role**: Advisory review layer between creative writing and generation/release

lyric-writer → pronunciation-specialist → lyric-reviewer → voice-checker → pre-generation-check
                                                                ↑
                                                       You are the voice filter

promo-writer → voice-checker → promo-reviewer
                    ↑
               Also checks prose

**Severity**: Warning and Info only. This skill never produces Critical findings and never blocks the pipeline. Some flagged patterns may be intentional artistic choices — ask rather than condemn.

---

Content Type Detection

1. Read the file 2. Search for a Lyrics Box (fenced code block or section labeled "Lyrics", "Suno Lyrics", or "Streaming Lyrics") 3. **Lyrics Box found** → lyrics mode (Classes 1–7) 4. **No Lyrics Box** → prose mode (Classes 8–11) 5. **Album-level scan** → lyrics mode for track files, prose mode for README.md and promo/*.md 6. Override with `--lyrics-only` or `--prose-only` flags

---

Pattern Classes — Lyrics (Classes 1–7)

Class 1: Abstract Noun Stacking

**What**: "hope", "dreams", "light", "darkness", "truth", "pain" piled together as emotional shorthand instead of showing through concrete imagery.

**Detection signals**:

  • 3+ abstract nouns in a single line or couplet
  • Abstract nouns used as list items ("hope, dreams, and light")
  • Abstract nouns as subjects doing abstract things ("truth shines through the darkness")

**Severity**: Warning

**Direction hint**: Replace at least one abstract noun with a concrete image that evokes the same feeling. "Hope" → what does hope look like in this song's world?

Class 2: Over-Explained Metaphors

**What**: An image is introduced and then immediately explained, robbing the listener of the discovery.

**Detection signals**:

  • Metaphor in line N, explicit restatement in line N+1 ("Like a river running dry / My love has disappeared")
  • "meaning" or "just like" used to decode the previous image
  • Simile followed by literal restatement of the same idea

**Severity**: Warning

**Direction hint**: Keep the image, cut the explanation. Trust the listener.

Class 3: Symmetrical Emotional Arc

**What**: A too-neat despair → hope → triumph progression where every verse escalates on schedule.

**Detection signals**:

  • V1 = problem, V2 = struggle, V3 = resolution, Chorus = uplifting throughout
  • No setbacks, complications, or ambiguity in the arc
  • Bridge serves as a "darkest before dawn" beat with guaranteed resolution

**Severity**: Info

**Direction hint**: Consider leaving one thread unresolved, or letting the resolution carry cost. Real stories rarely tie up cleanly.

Class 4: Missing Idiosyncrasy

**What**: No specific detail — no names, places, textures, dates, smells, sounds, or objects that anchor the song in a particular world.

**Detection signals**:

  • Entire song uses only universal/generic imagery
  • No proper nouns, brand names, street names, or sensory details
  • Could be about anyone, anywhere, anytime

**Severity**: Warning

**Genre sensitivity**: Lower sensitivity for ambient, trip-hop, dream pop, shoegaze, and other abstract/atmospheric genres where universality is a feature. Flag as Info instead of Warning for these genres.

**Direction hint**: Add one or two specific details per verse. Specificity makes songs feel real even to listeners who don't share the experience.

Class 5: Cliche Escalation Phrases

**What**: Stock inspirational phrases that signal "AI motivational speech" rather than genuine expression.

**Detection signals**:

  • "rise above", "break free", "find my way", "stand tall"
  • "through the fire", "against all odds", "never give up"
  • "light in the darkness", "voice of the voiceless", "break the chains"
  • "shatter the silence", "rewrite the story", "turn the page"

**Severity**: Warning (single instance) / Warning with emphasis (3+ in one song)

**Direction hint**: What would the character in this song actually say? Cliches are placeholders for the real line. If the cliche is deliberate (genre convention, ironic usage), note that and move on.

Class 6: Perfect Grammar in Speech

**What**: Formally correct sentences where natural speech would use contractions, fragments, dropped words, or interruptions.

**Detection signals**:

  • "I am" where "I'm" is natural, "do not" where "don't" fits
  • Complete grammatical sentences in every line with n
Read more
Read it on GitHub ↗

Showing the first part of this file.

Ships withbitwize-music

I love music but never learned an instrument. AI became the creative outlet that was always out of reach. This project started as a way to go deep on Claude Code plugin architecture, agentic workflows, multi-model orchestration, and MCP tooling.

Get the whole plugin, auto-invoked
Stats
399
Stars
0
Views
93
Forks
Active
Maintenance
Python
Language
CC0-1.0
License
3d ago
Last commit
6mo ago
Created

Repo: bitwize-music-studio/claude-ai-music-skills