Spotify Automation について
Spotify Automation は、Spotify の再生、プレイリスト管理、音楽の探索、音響分析を自動化するスキルです。API 操作に加え、デイリーミックスやパーティー用プレイリストのワークフロー例を紹介します。
主な機能
- 01再生と音量の操作
- 02プレイリスト作成と曲の管理
- 03曲、アーティスト、ジャンルからのレコメンド
- 04音響特徴の分析
活用シーン
- 01再生、シャッフル、音量の操作
- 02プレイリストの作成と更新
- 03曲やジャンルを起点にした音楽探し
- 04デイリーミックスやパーティー用ワークフローの作成
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ claude-office-skills/ skills --skill spotify-automationインストール後、Claude Code で/spotify-automationを入力して読み込まれたか確認します。
詳細
Spotify オートメーション
Spotify の音楽再生、プレイリスト管理、音楽発見ワークフローを自動化します。
主な機能
再生コントロール
playback_commands:
- play_track: "spotify:track:xxx"
- pause
- next_track
- previous_track
- set_volume: 75
- set_shuffle: true
- set_repeat: "context" # track, context, off
- seek_position: 30000 # milliseconds
- transfer_playback:
device_id: "device_xxx"
プレイリスト管理
playlist_operations:
create:
name: "{{playlist_name}}"
description: "{{description}}"
public: false
collaborative: false
add_tracks:
playlist_id: "xxx"
tracks:
- "spotify:track:xxx"
- "spotify:track:yyy"
position: 0 # optional
smart_playlist:
name: "Workout Mix"
criteria:
energy: "> 0.8"
tempo: "> 120"
genres: ["electronic", "pop"]
limit: 50
refresh: weekly
音楽の発見
recommendations:
seed_tracks: ["track_id_1", "track_id_2"]
seed_artists: ["artist_id"]
seed_genres: ["pop", "rock"]
target_features:
energy: 0.8
danceability: 0.7
valence: 0.6 # positiveness
limit: 20
オーディオ分析
audio_features:
- acousticness: 0.0-1.0
- danceability: 0.0-1.0
- energy: 0.0-1.0
- instrumentalness: 0.0-1.0
- liveness: 0.0-1.0
- loudness: -60 to 0 dB
- speechiness: 0.0-1.0
- tempo: BPM
- valence: 0.0-1.0 (mood)
- key: 0-11 (C to B)
- mode: 0 (minor) or 1 (major)
ワークフローの例
デイリーミックスジェネレーター
workflow:
trigger: daily at 6:00 AM
steps:
- get_recently_played: 50
- analyze_mood: based_on_audio_features
- get_recommendations:
based_on: recent_tracks
mood: current_time_appropriate
- create_playlist: "Today's Mix - {{date}}"
- add_tracks: recommended
パーティーモード
party_playlist:
trigger: "party mode"
actions:
- get_top_tracks:
time_range: medium_term
limit: 20
- get_recommendations:
seed: top_tracks
energy: "> 0.8"
danceability: "> 0.7"
- shuffle_and_play
- set_crossfade: 5 # seconds
API の例
// Search and Play
const results = await spotify.search("Bohemian Rhapsody", ["track"]);
await spotify.play({ uris: [results.tracks.items[0].uri] });
// Create Smart Playlist
const recs = await spotify.getRecommendations({
seed_genres: ["chill"],
target_energy: 0.4,
limit: 30
});
const playlist = await spotify.createPlaylist("Chill Vibes", {
description: "AI-curated relaxation",
public: false
});
await spotify.addTracksToPlaylist(playlist.id, recs.tracks.map(t => t.uri));
ベストプラクティス
- レート制限:Spotify API の制限を守ります
- キャッシュ:頻繁にアクセスするデータをキャッシュします
- ユーザーの同意:適切なスコープをリクエストします
- フォールバック:利用できないトラックを適切に処理します
コメント
Markdown 対応