Skip to content
import-art logo

Import Art Skill

import-art

Places album art files in the correct audio and content directory locations. Use when the user has generated or downloaded album artwork that needs to be saved.

SKILL.md

Full skill instructions

Your Task

Input: $ARGUMENTS

Import album art to both the audio folder and album content folder.


Import Art Skill

You copy album art to both required locations based on config.

Step 1: Parse Arguments

Expected format: <file-path> <album-name>

Examples:

  • ~/​Downloads/​album-art.jpg sample-album
  • ~/​Downloads/​cover.png sample-album

If arguments are missing, ask:

Usage: /​import-art <file-path> <album-name>

Example: /​import-art ~/​Downloads/​album-art.jpg sample-album

Step 2: Find Album and Resolve Paths via MCP

  1. Call find_album(album_name) — fuzzy match, returns album metadata including genre
  2. Call resolve_path("audio", album_slug) — returns audio directory path
  3. Call resolve_path("content", album_slug) — returns content directory path

If album not found:

Error: Album "{album-name}" not found.
Create it first with: /​new-album {album-name} <genre>

Step 3: Construct Target Paths

TWO destinations required (paths from MCP resolve_path calls):

  1. Audio folder (for platforms/​mastering): {audio_path}/​album.png
  2. Content folder (for documentation): {content_path}/​album-art.{ext}

CRITICAL: resolve_path includes the artist folder automatically.

Step 4: Create Directories and Copy Files

# Create audio directory (includes artist folder!)
mkdir -p {audio_root}/​artists/​{artist}/​albums/​{genre}/​{album}

# Copy to audio folder as album.png
cp "{source_file}" "{audio_root}/​artists/​{artist}/​albums/​{genre}/​{album}/​album.png"

# Copy to content folder preserving extension
cp "{source_file}" "{content_root}/​artists/​{artist}/​albums/​{genre}/​{album}/​album-art.{ext}"

Step 5: Confirm

Report:

Album art imported for: {album-name}

Copied to:
1. {audio_root}/​artists/​{artist}/​albums/​{genre}/​{album}/​album.png (for platforms)
2. {content_root}/​artists/​{artist}/​albums/​{genre}/​{album}/​album-art.{ext} (for docs)

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.

Album not found:

Error: Album "{album-name}" not found.
Create it first with: /​new-album {album-name} <genre>

Not an image file:

Warning: File doesn't appear to be an image: {source_file}
Expected: .jpg, .jpeg, .png, .webp

Continue anyway? (y/​n)

Examples

/​import-art ~/​Downloads/​sample-album-cover.jpg sample-album

Config has:

paths:
  content_root: ~/​bitwize-music
  audio_root: ~/​bitwize-music/​audio
artist:
  name: bitwize

Album found at: ~/​bitwize-music/​artists/​bitwize/​albums/​electronic/​sample-album/

Result:

Album art imported for: sample-album

Copied to:
1. ~/​bitwize-music/​audio/​artists/​bitwize/​albums/​electronic/​sample-album/​album.png (for platforms)
2. ~/​bitwize-music/​artists/​bitwize/​albums/​electronic/​sample-album/​album-art.jpg (for docs)

Common Mistakes

❌ Don't: Manually read config and construct paths

Wrong:

cat ~/​.bitwize-music/​config.yaml
cp art.png ~/​music-projects/​audio/​sample-album/

Right:

# Use MCP to find album and resolve both paths
find_album(album_name) → returns album metadata
resolve_path("audio", album_slug) → audio path with artist folder
resolve_path("content", album_slug) → content path with genre

Why it matters: resolve_path handles config reading, artist folder, and genre resolution automatically.

❌ Don't: Place art in only one location

Wrong:

# Only copying to audio folder
cp art.png {audio_root}/​artists/​{artist}/​albums/​{genre}/​{album}/​album.png
# Missing: content folder copy

Right:

# Copy to BOTH locations
# 1. Audio location (for streaming platforms)
cp art.png {audio_root}/​artists/​{artist}/​albums/​{genre}/​{album}/​album.png
# 2. Content location (for documentation)
cp art.jpg {album_path}/​album-art.jpg

Why it matters: Album art needs to be in both locations - audio folder for release, content folder for documentation.

❌ Don't: Mix up the filenames

Wrong:

# Using same filename in both locations
cp art.png {audio_root}/​artists/​{artist}/​albums/​{genre}/​{album}/​album-art.png
cp art.png {album_path}/​album.png

Correct naming:

Audio location: album.png (or album.jpg)
Content location: album-art.jpg (or album-art.png)

Why it matters: Different locations use different naming conventions to avoid confusion.

❌ Don't: Search for albums manually

Wrong:

find . -name "README.md" -path "*albums/​$album_name*"

Right:

find_album(album_name) → returns album data including path and genre

❌ Don't: Forget to create directories

Wrong:

# Copying without ensuring directory exists
cp art.png {audio_root}/​artists/​{artist}/​albums/​{genre}/​{album}/​album.png
# Fails if directory doesn't exist

Right:

# Create directory first
mkdir -p {audio_root}/​artists/​{artist}/​albums/​{genre}/​{album}/
cp art.png {audio_root}/​artists/​{artist}/​albums/​{genre}/​{album}/​album.png

Why it matters: Audio directory might not exist yet, especially for new albums.

More Other skills

Delegate independent tasks to specialized agents working concurrently with isolated context.

295.4K 206.3K
View

Applies Anthropic's official brand colors and typography to any sort of artifact that may benefit from having Anthropic's look-and-feel. Use it when brand colors or style guidelines, visual formatting, or company design standards apply.

179.7K 100.1K
View

Toolkit for styling artifacts with a theme. These artifacts can be slides, docs, reportings, HTML landing pages, etc. There are 10 pre-set themes with colors/fonts that you can apply to any artifact that has been creating, or can generate a new theme on-the-fly.

179.7K 89.5K
View

A set of resources to help me write all kinds of internal communications, using the formats that my company likes to use. Claude should use this skill whenever asked to write some sort of internal communications (status reports, leadership updates, 3P updates, company newsletters, FAQs, incident reports, project updates, etc.).

179.7K 76.1K
View

Fundamental design principles for writing maintainable, testable Python code.

40.2K 21.9K
View

Modern responsive layouts using container queries, fluid typography, CSS Grid, and mobile-first strategies.

40.2K 20K
View

Generate Playwright tests from scenarios using interactive browser exploration and validation.

39.7K 18.2K
View

Modern React state management with Redux Toolkit, Zustand, Jotai, and React Query for every state category.

40.2K 14.7K
View

GDPR-compliant data handling with consent management, data subject rights, and privacy controls.

40.2K 14.3K
View

Python error handling patterns including input validation, exception hierarchies, and partial failure handling. Use when implementing validation logic, designing exception strategies, handling batch processing failures, or building robust APIs.

40.2K 13.5K
View

Detailed multi-file refactor planning with safety checks and rollback guidance.

39.7K 13K
View