From bitwize-music
Moves audio files (WAV, MP3, etc.) to the correct album folder with proper path structure. Handles single files and stems zip extraction into per-track subfolders.
How this skill is triggered — by the user, by Claude, or both
Slash command
/bitwize-music:import-audio <file-path> <album-name> [track-slug]<file-path> <album-name> [track-slug]haikuThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
**Input**: $ARGUMENTS
Input: $ARGUMENTS
Import an audio file (WAV, MP3, etc.) to the correct album location based on config.
You move audio files to the correct location in the user's audio directory.
Expected format: <file-path> <album-name> [track-slug]
The track-slug is optional — only needed for stems zip imports when the track can't be inferred from the filename.
Examples:
~/Downloads/track.wav sample-album~/Downloads/03-t-day-beach.wav sample-album~/Downloads/stems.zip sample-album 01-first-tasteIf arguments are missing, ask:
Usage: /import-audio <file-path> <album-name> [track-slug]
Examples:
/import-audio ~/Downloads/track.wav sample-album
/import-audio ~/Downloads/stems.zip sample-album 01-first-taste
resolve_path("audio", album_slug) — returns the full audio directory path{audio_root}/artists/{artist}/albums/{genre}/{album}/Example result: ~/bitwize-music/audio/artists/bitwize/albums/hip-hop/sample-album/
CRITICAL: Always use resolve_path — never construct paths manually.
Check the file extension and whether it's a stems zip:
| File Type | Action |
|---|---|
.wav, .mp3, .flac, .ogg, .m4a | Move to album audio dir (Step 4) |
.zip (stems) | Extract to per-track stems subfolder (Step 4b) |
How to identify a stems zip: The user will say "stems" or the zip contains files like 0 Lead Vocals.wav, 1 Backing Vocals.wav, etc.
mkdir -p {resolved_path}
mv "{source_file}" "{resolved_path}/{filename}"
Stems must go into per-track subfolders to prevent filename collisions (every track has 0 Lead Vocals.wav, etc.):
{resolved_path}/
01-first-taste.wav
02-sugar-high.wav
stems/
01-first-taste/
0 Lead Vocals.wav
1 Backing Vocals.wav
2 Drums.wav
...
02-sugar-high/
0 Lead Vocals.wav
1 Backing Vocals.wav
...
Workflow:
01-first-taste-stems.zip → 01-first-taste)/import-audio stems.zip sample-album 01-first-taste)mkdir -p {resolved_path}/stems/{track-slug}
unzip "{source_file}" -d "{resolved_path}/stems/{track-slug}"
update_track_field(album_slug, track_slug, "stems", "Yes")Argument format for stems: <zip-path> <album-name> [track-slug]
Report:
Moved: {source_file}
To: {resolved_path}/{filename}
For stems:
Extracted stems: {source_file}
To: {resolved_path}/stems/{track-slug}/
Files: {count} stem files extracted
Updated: {track-slug} stems → Yes
Source file doesn't exist:
Error: File not found: {source_file}
Config file missing:
Error: Config not found at ~/.bitwize-music/config.yaml
Run /configure to set up.
File already exists at destination:
Warning: File already exists at destination.
Overwrite? (The original was not moved)
Suno allows downloading in both WAV and MP3 formats. Always prefer WAV for mastering quality.
If the user provides an MP3 file:
Note: This is an MP3 file. For best mastering results, download the WAV
version from Suno instead. MP3 compression removes audio data that can't
be recovered during mastering.
If WAV isn't available, this MP3 will work but mastering quality may be limited.
Supported formats: WAV (preferred), MP3, FLAC, OGG, M4A
/import-audio ~/Downloads/03-t-day-beach.wav sample-album
Config has:
paths:
audio_root: ~/bitwize-music/audio
artist:
name: bitwize
Result:
Moved: ~/Downloads/03-t-day-beach.wav
To: ~/bitwize-music/audio/artists/bitwize/albums/hip-hop/sample-album/03-t-day-beach.wav
/import-audio ~/Downloads/stems.zip sample-album 01-first-taste
Result:
Extracted stems: ~/Downloads/stems.zip
To: ~/bitwize-music/audio/artists/bitwize/albums/hip-hop/sample-album/stems/01-first-taste/
Files: 5 stem files extracted
Updated: 01-first-taste stems → Yes
Wrong:
cat ~/.bitwize-music/config.yaml
mv file.wav ~/music-projects/audio/artists/bitwize/albums/electronic/sample-album/
Right:
# Use MCP to resolve the correct path
resolve_path("audio", album_slug) → returns full path with artist folder
Why it matters: resolve_path reads config, resolves variables, and includes the artist folder automatically. No manual config parsing or path construction needed.
Path comparison:
{content_root}/artists/{artist}/albums/{genre}/{album}/ (markdown, lyrics){audio_root}/artists/{artist}/albums/{genre}/{album}/ (WAV files, stems){documents_root}/artists/{artist}/albums/{genre}/{album}/ (PDFs, research)Use resolve_path with the appropriate path_type ("content", "audio", "documents") to get the right path.
npx claudepluginhub bitwize-music-studio/claude-ai-music-skills --plugin bitwize-musicCopies album artwork files to both audio and content directories for a music project. Use when you have generated or downloaded album art that needs to be placed in the correct folder locations.
Guides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.