SKILLS/import-audio/SKILL.md
Moves audio files to the correct album location with proper path structure. Use when the user has downloaded WAV files from Suno or other sources that need to be organized.
npx skillsauth add pinkpixel-dev/skills-collection-2 import-audioInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
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.
development
A cryptographic audit systematically reviews an application's use of cryptographic primitives, protocols, and key management to identify vulnerabilities such as weak algorithms, insecure modes, hardco
tools
Extract stored credentials from compromised endpoints using the LaZagne post-exploitation tool to recover passwords from browsers, databases, system vaults, and applications during authorized red team operations.
testing
Analyze and bypass Content Security Policy implementations to achieve cross-site scripting by exploiting misconfigurations, JSONP endpoints, unsafe directives, and policy injection techniques.
testing
Scan container images, filesystems, and Kubernetes manifests for vulnerabilities, misconfigurations, exposed secrets, and license compliance issues using Aqua Security Trivy with SBOM generation and CI/CD integration.