[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6NPXXQ23AD1QJF97ASVY5RA":3,"skill-same:01M6NPXXQ23AD1QJF97ASVY5RA":104},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":23,"publishedAt":44,"linkOnly":45,"markdownContent":46,"markdownBody":47,"frontMatter":48,"refName":36,"commitSha":53,"skillDirectory":54,"forksCount":55,"repositoryHtmlUrl":56,"repositoryHomepageUrl":6,"ownerHtmlUrl":57,"ownerBlogUrl":58,"ownerDescription":59,"updatedAt":60,"install":61,"resources":73},"01M6NPXXQ23AD1QJF97ASVY5RA","mood-music",null,"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.","knooob\u002Fpocket-llm-server-android","knooob","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F79307764?v=4","01M6NPV7HZYTCQWHMWNFEGRXM3","Kaustubh chude","01M6NPV7P8JAGE40DWQFT5ZH2S",26,"Apache-2.0","https:\u002F\u002Fgithub.com\u002Fknooob\u002Fpocket-llm-server-android\u002Fblob\u002Fmain\u002Fskills\u002Ffeatured\u002Fmood-music\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000010","后端与接口","SCENARIO","使用场景",[24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43],"mood music","music","get","genres","can","true","tree","you","gallery","via","apps","github","main","images","Audio","api","analyzing","edge","https","play","2026-11-10 10:12:30",false,"---\nname: mood-music\ndescription: 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.\nmetadata:\n  require-secret: true\n  require-secret-description: you can get api key from https:\u002F\u002Fwww.loudly.com\u002Fdevelopers\u002Fapps after registering an account\n  homepage: https:\u002F\u002Fgithub.com\u002Fgoogle-ai-edge\u002Fgallery\u002Ftree\u002Fmain\u002Fskills\u002Ffeatured\u002Fmood-music\n---\n\n# Mood Music\n\n## Instructions\n\nYou 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.\n\n### Step 1: Fetch Available Genres\nCall the `run_js` tool with `get_genres.html` as the script name and an empty JSON payload (`{}`). \n- This will return a list of currently available genres and their descriptions. \n- You MUST review this list to understand the available musical palettes.\n\n### Step 2: Analyze and Generate\nOnce 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.\n\n**Handling Inputs:**\n- **Text Inputs**: Translate abstract mood requests into a concrete, matching genre from the fetched list, along with an appropriate energy level.\n- **Media Inputs (Images\u002FAudio)**: 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.\n\n**Generation Payload (for index.html):**\nYour JSON payload for `index.html` MUST strictly use these text fields to represent the vibe:\n- **genre**: String, Required. MUST be an exact match to a genre name retrieved in Step 1.\n- **genre_blend**: String, Optional. A secondary genre to blend (also from Step 1).\n- **duration**: Integer, Optional. Length in seconds (30-420). Default is 120.\n- **energy**: String, Optional. Vibe (\"low\", \"high\", \"original\").\n- **bpm**: Integer, Optional. Specific tempo in Beats Per Minute.\n\n### Invocation Triggers\nYou should invoke this skill when the user:\n- Asks for music for a specific mood.\n- Asks for playlist ideas for a vibe.\n- Uploads an image or audio clip and asks for music to match it.\n","# Mood Music\n\n## Instructions\n\nYou 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.\n\n### Step 1: Fetch Available Genres\nCall the `run_js` tool with `get_genres.html` as the script name and an empty JSON payload (`{}`). \n- This will return a list of currently available genres and their descriptions. \n- You MUST review this list to understand the available musical palettes.\n\n### Step 2: Analyze and Generate\nOnce 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.\n\n**Handling Inputs:**\n- **Text Inputs**: Translate abstract mood requests into a concrete, matching genre from the fetched list, along with an appropriate energy level.\n- **Media Inputs (Images\u002FAudio)**: 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.\n\n**Generation Payload (for index.html):**\nYour JSON payload for `index.html` MUST strictly use these text fields to represent the vibe:\n- **genre**: String, Required. MUST be an exact match to a genre name retrieved in Step 1.\n- **genre_blend**: String, Optional. A secondary genre to blend (also from Step 1).\n- **duration**: Integer, Optional. Length in seconds (30-420). Default is 120.\n- **energy**: String, Optional. Vibe (\"low\", \"high\", \"original\").\n- **bpm**: Integer, Optional. Specific tempo in Beats Per Minute.\n\n### Invocation Triggers\nYou should invoke this skill when the user:\n- Asks for music for a specific mood.\n- Asks for playlist ideas for a vibe.\n- Uploads an image or audio clip and asks for music to match it.\n",{"name":5,"metadata":49,"description":7},{"homepage":50,"require-secret":51,"require-secret-description":52},"https:\u002F\u002Fgithub.com\u002Fgoogle-ai-edge\u002Fgallery\u002Ftree\u002Fmain\u002Fskills\u002Ffeatured\u002Fmood-music",true,"you can get api key from https:\u002F\u002Fwww.loudly.com\u002Fdevelopers\u002Fapps after registering an account","739008f173ec4a60a049598353345d8723df52f6","skills\u002Ffeatured\u002Fmood-music",3,"https:\u002F\u002Fgithub.com\u002Fknooob\u002Fpocket-llm-server-android","https:\u002F\u002Fgithub.com\u002Fknooob","https:\u002F\u002Fwww.linkedin.com\u002Fin\u002Fkaustubh-chude-3124801a7\u002F","Network and Security research engineer @M10\u002FQUB Belfast ","2026-04-07 06:07:13",{"source":8,"skillName":5,"commands":62,"prompt":72,"zipAvailable":51},[63,66,69],{"tool":64,"command":65},"npx","npx skills add knooob\u002Fpocket-llm-server-android --skill mood-music",{"tool":67,"command":68},"bunx","bunx skills add knooob\u002Fpocket-llm-server-android --skill mood-music",{"tool":70,"command":71},"pnpm","pnpm dlx skills add knooob\u002Fpocket-llm-server-android --skill mood-music","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fknooob\u002Fpocket-llm-server-android\u002Fblob\u002Fmain\u002Fskills\u002Ffeatured\u002Fmood-music\u002FSKILL.md",[74,80,84,90,96,100],{"path":75,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":78,"sourceHtmlUrl":79},"assets\u002F.gitkeep","ASSET","资产文件",37,"https:\u002F\u002Fgithub.com\u002Fknooob\u002Fpocket-llm-server-android\u002Fblob\u002Fmain\u002Fskills\u002Ffeatured\u002Fmood-music\u002Fassets\u002F.gitkeep",{"path":81,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":82,"sourceHtmlUrl":83},"assets\u002Fwebview.html",10221,"https:\u002F\u002Fgithub.com\u002Fknooob\u002Fpocket-llm-server-android\u002Fblob\u002Fmain\u002Fskills\u002Ffeatured\u002Fmood-music\u002Fassets\u002Fwebview.html",{"path":85,"resourceType":86,"resourceTypeDesc":87,"sizeBytes":88,"sourceHtmlUrl":89},"README.md","REFERENCE","参考文档",811,"https:\u002F\u002Fgithub.com\u002Fknooob\u002Fpocket-llm-server-android\u002Fblob\u002Fmain\u002Fskills\u002Ffeatured\u002Fmood-music\u002FREADME.md",{"path":91,"resourceType":92,"resourceTypeDesc":93,"sizeBytes":94,"sourceHtmlUrl":95},"scripts\u002F.gitkeep","SCRIPT","脚本",38,"https:\u002F\u002Fgithub.com\u002Fknooob\u002Fpocket-llm-server-android\u002Fblob\u002Fmain\u002Fskills\u002Ffeatured\u002Fmood-music\u002Fscripts\u002F.gitkeep",{"path":97,"resourceType":92,"resourceTypeDesc":93,"sizeBytes":98,"sourceHtmlUrl":99},"scripts\u002Fget_genres.html",1305,"https:\u002F\u002Fgithub.com\u002Fknooob\u002Fpocket-llm-server-android\u002Fblob\u002Fmain\u002Fskills\u002Ffeatured\u002Fmood-music\u002Fscripts\u002Fget_genres.html",{"path":101,"resourceType":92,"resourceTypeDesc":93,"sizeBytes":102,"sourceHtmlUrl":103},"scripts\u002Findex.html",4369,"https:\u002F\u002Fgithub.com\u002Fknooob\u002Fpocket-llm-server-android\u002Fblob\u002Fmain\u002Fskills\u002Ffeatured\u002Fmood-music\u002Fscripts\u002Findex.html",[105,116,132,144,157,169],{"skillNo":106,"name":107,"nameZh":6,"description":108,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":109,"categories":110,"keywords":111,"publishedAt":44},"01M6NPYKGTX09WQWP3ECQMNYJ2","virtual-piano","Show a virtual piano to play music","https:\u002F\u002Fgithub.com\u002Fknooob\u002Fpocket-llm-server-android\u002Fblob\u002Fmain\u002Fskills\u002Ffeatured\u002Fvirtual-piano\u002FSKILL.md",[],[112,113,42,114,35,43,41,25,115,36,32,30],"virtual piano","virtual","google","show",{"skillNo":117,"name":118,"nameZh":6,"description":119,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":120,"categories":121,"keywords":122,"publishedAt":44},"01M6NPYG8DHJSEY82XZ1QQ1B1J","restaurant-roulette","Show a roulette wheel to allow user to randomly select a restaurant based on location and cuisine.","https:\u002F\u002Fgithub.com\u002Fknooob\u002Fpocket-llm-server-android\u002Fblob\u002Fmain\u002Fskills\u002Ffeatured\u002Frestaurant-roulette\u002FSKILL.md",[],[123,30,29,124,125,31,42,114,126,127,35,128,41,129,130,115,36,131,26,32],"restaurant roulette","wheel","api-key","docs","gemini","dev","select","user","location",{"skillNo":133,"name":134,"nameZh":6,"description":135,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":136,"categories":137,"keywords":138,"publishedAt":44},"01M6NPXSWG0MDK5RZ2YF2MWX3Y","text-spinner","Spin the given text on my head.","https:\u002F\u002Fgithub.com\u002Fknooob\u002Fpocket-llm-server-android\u002Fblob\u002Fmain\u002Fskills\u002Fbuilt-in\u002Ftext-spinner\u002FSKILL.md",[],[139,140,141,142,143],"text spinner","spinner","text","my","head",{"skillNo":145,"name":146,"nameZh":6,"description":147,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":148,"categories":149,"keywords":153,"publishedAt":44},"01M6NPXRDMVXEZMT0G0QCARE5Y","send-email","Send an email.","https:\u002F\u002Fgithub.com\u002Fknooob\u002Fpocket-llm-server-android\u002Fblob\u002Fmain\u002Fskills\u002Fbuilt-in\u002Fsend-email\u002FSKILL.md",[150],{"categoryNo":151,"categoryName":152,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000005","邮件与沟通",[154,155,156],"send","send email","email",{"skillNo":158,"name":159,"nameZh":6,"description":160,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":161,"categories":162,"keywords":163,"publishedAt":44},"01M6NPXM1QRKD9Y83BKTPYT9YP","query-wikipedia","Query summary from Wikipedia for a given topic.","https:\u002F\u002Fgithub.com\u002Fknooob\u002Fpocket-llm-server-android\u002Fblob\u002Fmain\u002Fskills\u002Fbuilt-in\u002Fquery-wikipedia\u002FSKILL.md",[],[164,165,166,167,168],"wikipedia","query wikipedia","query","for","summary",{"skillNo":170,"name":171,"nameZh":6,"description":172,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":173,"categories":174,"keywords":180,"publishedAt":44},"01M6NPXJE6SH9NBKCAV1F59ZTZ","qr-code","Generates a QR code for the given url.","https:\u002F\u002Fgithub.com\u002Fknooob\u002Fpocket-llm-server-android\u002Fblob\u002Fmain\u002Fskills\u002Fbuilt-in\u002Fqr-code\u002FSKILL.md",[175],{"categoryNo":176,"categoryName":177,"taxonomyType":178,"taxonomyTypeDesc":179},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[181,182,183,184,167],"qr code","code","qr","URL"]