mood-music
GitHub根据用户情绪或媒体内容生成音乐。通过查询 Loudly API 获取支持流派,分析文本、图片或音频以匹配最佳风格与能量等级,并调用脚本生成指定时长的音轨。
Trigger Scenarios
Install
npx skills add jegly/Box --skill mood-music -g -y
SKILL.md
Frontmatter
{
"name": "mood-music",
"metadata": {
"homepage": "https:\/\/github.com\/google-ai-edge\/gallery\/tree\/main\/skills\/featured\/mood-music",
"require-secret": true,
"require-secret-description": "you can get api key from https:\/\/www.loudly.com\/developers\/apps after registering an account"
},
"description": "A skill to suggest or play music based on the user's mood, including analyzing images or audio, by querying available genres and generating music via the Loudly API."
}
Mood Music
Instructions
You MUST use a strict two-step process to generate music. This ensures you only request musical genres that are currently supported by the Loudly API.
Step 1: Fetch Available Genres
Call the run_js tool with get_genres.html as the script name and an empty JSON payload ({}).
- This will return a list of currently available genres and their descriptions.
- You MUST review this list to understand the available musical palettes.
Step 2: Analyze and Generate
Once you have the valid genres, map the user's request to the best fit and call run_js with index.html to generate the track.
Handling Inputs:
- Text Inputs: Translate abstract mood requests into a concrete, matching genre from the fetched list, along with an appropriate energy level.
- Media Inputs (Images/Audio): If the user provides an image or audio clip, analyze the media to determine its underlying mood, atmosphere, or vibe. Translate this analysis strictly into one of the fetched genres.
Generation Payload (for index.html):
Your JSON payload for index.html MUST strictly use these text fields to represent the vibe:
- genre: String, Required. MUST be an exact match to a genre name retrieved in Step 1.
- genre_blend: String, Optional. A secondary genre to blend (also from Step 1).
- duration: Integer, Optional. Length in seconds (30-420). Default is 120.
- energy: String, Optional. Vibe ("low", "high", "original").
- bpm: Integer, Optional. Specific tempo in Beats Per Minute.
Invocation Triggers
You should invoke this skill when the user:
- Asks for music for a specific mood.
- Asks for playlist ideas for a vibe.
- Uploads an image or audio clip and asks for music to match it.
Version History
- 7897895 Current 2026-07-24 17:00


