返回技能列表

import-audio

bitwize-music-studio
更新于 Yesterday
3 次查看
209
37
209
在 GitHub 上查看
其他general

关于

This Claude Skill organizes downloaded audio files by moving them to the correct album location with a proper path structure. It handles WAV or MP3 files from sources like Suno, using arguments for file path, album name, and an optional track slug. The skill leverages tools like Bash and a music MCP to automate the file organization process.

快速安装

Claude Code

推荐
主要方式
npx skills add bitwize-music-studio/claude-ai-music-skills -a claude-code
插件命令备选方式
/plugin add https://github.com/bitwize-music-studio/claude-ai-music-skills
Git 克隆备选方式
git clone https://github.com/bitwize-music-studio/claude-ai-music-skills.git ~/.claude/skills/import-audio

在 Claude Code 中复制并粘贴此命令以安装该技能

技能文档

Your Task

Input: $ARGUMENTS

Import an audio file (WAV, MP3, etc.) to the correct album location based on config.


Import Audio Skill

You move audio files to the correct location in the user's audio directory.

Step 1: Parse Arguments

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-taste

If 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

Step 2: Resolve Audio Path via MCP

  1. Call resolve_path("audio", album_slug) — returns the full audio directory path
  2. The resolved path uses the mirrored structure: {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.

Step 3: Detect File Type

Check the file extension and whether it's a stems zip:

File TypeAction
.wav, .mp3, .flac, .ogg, .m4aMove 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.

Step 4: Create Directory and Move File

mkdir -p {resolved_path}
mv "{source_file}" "{resolved_path}/{filename}"

Step 4b: Import Stems Zip

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:

  1. Determine the track slug from one of:
    • The zip filename if it matches a track pattern (e.g., 01-first-taste-stems.zip01-first-taste)
    • The user specifying which track (e.g., /import-audio stems.zip sample-album 01-first-taste)
    • If neither: Ask the user which track the stems belong to
  2. Extract into the per-track subfolder:
    mkdir -p {resolved_path}/stems/{track-slug}
    unzip "{source_file}" -d "{resolved_path}/stems/{track-slug}"
    
  3. Update track metadata: Call update_track_field(album_slug, track_slug, "stems", "Yes")

Argument format for stems: <zip-path> <album-name> [track-slug]

Step 5: Confirm

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

Error Handling

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)

MP3 Files

Suno allows downloading in both WAV and MP3 formats. Always prefer WAV for mastering quality.

If the user provides an MP3 file:

  1. Accept the MP3 and import it normally (same path logic)
  2. Warn the user:
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.
  1. Import the file to the same destination path as WAV files

Supported formats: WAV (preferred), MP3, FLAC, OGG, M4A


Examples

/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

Stems import example

/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

Common Mistakes

❌ Don't: Manually read config and construct paths

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.

❌ Don't: Mix up content_root and audio_root

Path comparison:

  • Content: {content_root}/artists/{artist}/albums/{genre}/{album}/ (markdown, lyrics)
  • Audio: {audio_root}/artists/{artist}/albums/{genre}/{album}/ (WAV files, stems)
  • Documents: {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.

GitHub 仓库

bitwize-music-studio/claude-ai-music-skills
路径: skills/import-audio
0
ai-musicai-music-toolsaudio-masteringclaudeclaude-codeclaude-code-plugin

相关推荐技能

llamaguard

其他

LlamaGuard是Meta推出的7-8B参数内容审核模型,专门用于过滤LLM的输入和输出内容。它能检测六大安全风险类别(暴力/仇恨、性内容、武器、违禁品、自残、犯罪计划),准确率达94-95%。开发者可通过HuggingFace、vLLM或Sagemaker快速部署,并能与NeMo Guardrails集成实现自动化安全防护。

查看技能

cost-optimization

其他

这个Claude Skill帮助开发者优化云成本,通过资源调整、标记策略和预留实例来降低AWS、Azure和GCP的开支。它适用于减少云支出、分析基础设施成本或实施成本治理策略的场景。关键功能包括提供成本可视化、资源规模调整指导和定价模型优化建议。

查看技能

quantizing-models-bitsandbytes

其他

这个Skill使用bitsandbytes库量化大语言模型,能在GPU内存有限时通过8位或4位量化减少50-75%内存占用,同时保持精度损失最小。它支持INT8、NF4、FP4等多种量化格式,可与HuggingFace Transformers无缝集成,适用于需要部署更大模型或加速推理的场景。还提供QLoRA训练和8位优化器支持,让开发者能轻松实现高效模型压缩。

查看技能

dispatching-parallel-agents

其他

该Skill用于并行处理3个以上无依赖关系的独立故障,可为每个问题域分派专属Claude代理同时执行调查修复。它通过并发处理多个独立问题显著提升故障排查效率,特别适用于测试文件、子系统等无共享状态的场景。

查看技能