← Files Happy BirthdayARCHIVED FILE
plugin.json
4.84 KB · Nov 4, 2026 · 18:11 UTC
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "happy-birthday",
"version": "1.0.1",
"description": "Personalized birthday songs, styles, countdowns and saved birthdays.",
"author": {
"name": "HUGO FM GAMES",
"url": "https://hugo.fm"
},
"homepage": "https://hugo.fm",
"keywords": [
"birthday",
"songs",
"celebration",
"music"
],
"extensions": {
"com.openai": {
"interface": {
"displayName": "Happy Birthday",
"shortDescription": "Birthday songs sung by name",
"longDescription": "Sing Happy Birthday to anyone, by name, right inside ChatGPT.\n\nSING BY NAME: Ask for Happy Birthday for any name. The player sings the song with the name included.\n\nOPERA BY NAME: An opera singer performs Happy Birthday with over 100 recorded first names, and a general version for every other name.\n\nBIRTHDAY SONGS: Over 30 birthday songs and messages, including Cats, Dogs, Piano, Opera, Silly Song, Leprechaun, Scottish, Pirate, Mermaid, Princess, Fairy, Wizard, Vampire, Ukulele, Barbershop, Beatbox, Cake Monster, Farm Animals and more.\n\nCOUNTDOWN: Ask for Happy Birthday in 30 seconds, or any time up to 40 minutes, and the player counts down before the song starts.\n\nSAVE BIRTHDAYS: Save birthdays by name and date, and the player greets them on the day.\n\nSONG ORDER: Choose three songs to play in order for the big moment.\n\nThe plugin never uses your microphone.",
"developerName": "HUGO FM GAMES",
"category": "Entertainment",
"capabilities": [
"Interactive"
],
"websiteURL": "https://hugo.fm",
"supportURL": "https://hugo.fm/contact",
"privacyPolicyURL": "https://happybirthday.shoutoutgames.com/privacy",
"termsOfServiceURL": "https://hugo.fm/terms",
"defaultPrompt": [
"Sing Happy Birthday to Jamie.",
"Play the opera birthday song for Alice.",
"Sing Happy Birthday in 30 seconds."
],
"brandColor": "#bd493e",
"brandColorDark": "#f1c66d",
"logo": "./assets/logo.png",
"composerIcon": "./assets/logo.png",
"screenshots": [
"./assets/screenshot-singing.png",
"./assets/screenshot-countdown.png",
"./assets/screenshot-songs.png"
]
},
"review": {
"test_cases": {
"positive": [
{
"description": "Sing with a spoken name",
"prompt": "Sing Happy Birthday to Jamie",
"tools_triggered": "sing_happy_birthday",
"expected_behavior": "The widget plays the opening clip, speaks Jamie's name, and plays the closing clip."
},
{
"description": "Play a named style",
"prompt": "Play the opera birthday song for Alice",
"tools_triggered": "sing_happy_birthday",
"expected_behavior": "The widget plays the personalized Opera recording when Alice is in the supported name list, otherwise the general Opera recording."
},
{
"description": "Save a three-song order",
"prompt": "Set the birthday order to cats, dogs, and piano",
"tools_triggered": "set_song_order",
"expected_behavior": "ChatGPT may ask to confirm, because the new order replaces any saved order. The three selected songs are saved and can be played together."
},
{
"description": "Save a birthday",
"prompt": "Save Riley's birthday as 04-12",
"tools_triggered": "save_birthday",
"expected_behavior": "The birthday appears in the saved list and is greeted on that date."
},
{
"description": "Start a countdown",
"prompt": "Sing Happy Birthday in 30 seconds",
"tools_triggered": "sing_happy_birthday",
"expected_behavior": "The player shows a decreasing countdown and begins the song when it reaches zero."
}
],
"negative": [
{
"description": "Microphone input is not supported",
"prompt": "Listen through my microphone and tell me who is singing."
},
{
"description": "Ordering goods is out of scope",
"prompt": "Order a birthday cake to be delivered tomorrow."
},
{
"description": "Real-world contact is not supported",
"prompt": "Text my friend Sam a happy birthday message."
}
]
},
"commerce": false,
"commerce_description": "The plugin does not sell products or process payments.",
"demo_recording_url": "https://happybirthday.shoutoutgames.com/review/happy-birthday-demo-ad2493af9157.mp4"
},
"apps": "./.app.json"
}
}
}
SHA-256: 6ecbe6aec82cf37555ec1c25989b4940bd3ee4035382f835da9c9f66b2e727f3