Explicit checker
Skill bitwize-music-studio/claude-ai-music-skills/skills/explicit-checker
Scans lyrics for explicit content and verifies that explicit flags match actual content. Use before Suno generation or release to ensure accurate content ratings.From its SKILL.md
npx -y skills add bitwize-music-studio/claude-ai-music-skills --skill explicit-checkerAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- runs commandsInstructs the agent to run 4 commands, including `list_tracks(album_slug)` and 3 more.
SKILL.md
5.3 KB, ~1.2k tokens by cl100k_base, as published. Nobody here has run it
Your Task
Path to scan: $ARGUMENTS
- Scan all lyrics for explicit words
- Report findings with word counts per track
- Flag mismatches (explicit content but flag says No, or vice versa)
- Provide summary suitable for distributor submission
Explicit Content Checker
You scan lyrics for explicit content to ensure proper flagging before release.
Explicit Words (Require Explicit = Yes)
These words and variations require the explicit flag:
| Category | Words |
|---|---|
| F-word | fuck, fucking, fucked, fucker, motherfuck, motherfucker |
| S-word | shit, shitting, shitty, bullshit |
| B-word | bitch, bitches |
| C-words | cunt, cock, cocks |
| D-word | dick, dicks |
| P-word | pussy, pussies |
| A-word | asshole, assholes |
| Slurs | whore, slut, n-word, f-word (slur) |
| Profanity | goddamn, goddammit |
Clean Words (No Explicit Flag Needed)
These are acceptable without explicit flag:
- damn, hell, crap, ass, bastard, piss
Note: "damn" alone is clean, but "goddamn" is explicit.
Override Support
The MCP check_explicit_content tool automatically loads and merges user overrides from {overrides}/explicit-words.md. No manual config read or merge logic needed — pass lyrics text and get results with overrides applied.
Override File Format
{overrides}/explicit-words.md:
# Custom Explicit Words
## Additional Explicit Words
- slang-term
- regional-profanity
- artist-specific-explicit
## Not Explicit (Override Base)
- hell (context: historical/literary)
- damn (context: emphasis)
Workflow
For Album Path
- Call
list_tracks(album_slug)— get all tracks with metadata - For each track:
- Call
extract_section(album_slug, track_slug, "lyrics")— get lyrics text - Call
check_explicit_content(lyrics_text)— returns matches with line numbers (overrides auto-merged) - Get Explicit flag from track metadata
- Compare flag vs. content
- Call
- Generate report
For Single Track
- Call
extract_section(album_slug, track_slug, "lyrics")— get lyrics text - Call
check_explicit_content(lyrics_text)— scan for explicit words - Get Explicit flag from track metadata via
get_track(album_slug, track_slug) - Report findings
Output Format
EXPLICIT CONTENT SCAN
Album: [Album Name]
Date: [Scan Date]
TRACK RESULTS:
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Track 01: [Title]
Flag: No
Content: Clean
Status: ✓ OK
Track 02: [Title]
Flag: Yes
Content: fuck (3), shit (2), bitch (1)
Status: ✓ OK (flag matches content)
Track 03: [Title]
Flag: No
Content: fuck (1)
Status: ⚠️ MISMATCH - Contains explicit content but flag is No
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
SUMMARY:
Total tracks: 10
Clean tracks: 7
Explicit tracks: 3
Mismatches: 1
ALBUM EXPLICIT FLAG: Yes (any track explicit = album explicit)
ACTION REQUIRED:
- Track 03: Set Explicit flag to Yes
Mismatch Detection
Flag Says No, Content Is Explicit
⚠️ MISMATCH: Track contains explicit content but Explicit flag is "No"
ACTION: Set Explicit: Yes in track file
Flag Says Yes, Content Is Clean
ℹ️ NOTE: Track flagged explicit but no explicit words found
This is OK - artist may want explicit flag for themes/context
No action required (conservative flagging is fine)
Distributor Requirements
Most distributors (DistroKid, TuneCore, CD Baby) require:
- Track-level flags: Each track marked explicit or clean
- Album-level flag: If ANY track is explicit, album is explicit
- Consistent metadata: Flag must match actual content
Consequences of wrong flags:
- Explicit content marked clean → Potential removal from platforms, account issues
- Clean content marked explicit → Reduced reach (filtered from some playlists) but no penalty
Rule: When in doubt, mark explicit. Under-flagging is worse than over-flagging.
Integration
This skill is called during:
- Ready to Generate Checkpoint - Before Suno generation
- Album Completion Checklist - Before release
- Manual review - Anytime with
/explicit-checker [path]
Example Invocations
/explicit-checker artists/[artist]/albums/rock/dark-tide/
/explicit-checker artists/[artist]/albums/rock/dark-tide/tracks/01-the-tank.md
Remember
- Case-insensitive matching (Fuck = fuck = FUCK)
- Check variations (fucking, fucked, fucker)
- Phonetic spellings count (fuk, sh1t if intentional)
- Context matters less than presence - if the word is there, flag it
- Album is explicit if ANY track is explicit
- Override additions - Add artist/genre-specific explicit words
- Override removals - Remove words for specific contexts (historical, literary)
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.
Gives 0 of the 12 instructions most quality gates skills give in ~1.2k tokens
Counted across 1,524 of the 2,830 authors here whose files we hold, read 2026-09-06
- Read full output and check exit codein 45 of 1524, across 40 files
- Verify output confirms the claimin 44 of 1524, across 39 files
- Identify the command that proves the claimin 43 of 1524, across 39 files
- Execute the full verification commandin 36 of 1524, across 30 files
- Produce a verification reportin 34 of 1524, across 18 files
- Review git diff changesin 30 of 1524, across 16 files
- Fix build failures immediatelyin 29 of 1524, across 9 files
- Group findings by severityin 28 of 1524
- State claim only with evidencein 27 of 1524, across 22 files
- Verify regression tests with red-green cyclein 26 of 1524, across 22 files
- Run the full test suitein 26 of 1524, across 25 files
- Run test suite with coveragein 25 of 1524, across 10 files
Said here and by no other author read
- Scan all lyrics for explicit words
- Report findings with word counts per track
- Provide summary for distributor submission
- Mark album explicit if any track is explicit
- Use conservative flagging when in doubt
Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.