← Files Nafy AIARCHIVED FILE

plugin.json

6.79 KB · Nov 3, 2026 · 19:11 UTC

↓ Download file

{
  "$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
  "name": "nafy-ai",
  "version": "0.1.15",
  "description": "Use Nafy AI as an AI music generator and AI song generator for text-to-music and lyrics-to-song creation, then explore your own music library.",
  "homepage": "https://nafy.ai",
  "author": {
    "name": "OMNIRA LABS PTE. LTD.",
    "email": "support@nafy.ai",
    "url": "https://nafy.ai"
  },
  "keywords": [
    "ai music generator",
    "ai song generator",
    "text to music",
    "lyrics to song",
    "music creation",
    "songwriting",
    "instrumental music"
  ],
  "extensions": {
    "com.openai": {
      "interface": {
        "displayName": "Nafy AI",
        "developerName": "OMNIRA LABS PTE. LTD.",
        "shortDescription": "AI music generator",
        "longDescription": "Nafy AI is an AI music generator and AI song generator for creating original songs and instrumentals from structured music settings. Use text to music workflows for instrumentals, or lyrics to song workflows for vocal tracks using lyrics you provide. Nafy AI prepares a draft for review and lets you confirm generation inside ChatGPT before creating two private alternatives. Follow generation progress, listen to provider-approved results, search your own library, and view your existing generation access. A connected Nafy account with generation access is required. Preview and storage availability depend on your account entitlement; older website tracks may be available only in your Nafy library.",
        "category": "Creativity",
        "capabilities": [
          "Generate AI music from text",
          "Turn lyrics into songs",
          "Prepare music drafts",
          "Preview music results",
          "Find your music",
          "View generation access"
        ],
        "websiteURL": "https://nafy.ai",
        "supportURL": "https://nafy.ai/help/chatgpt-support",
        "privacyPolicyURL": "https://nafy.ai/privacy#chatgpt-app",
        "termsOfServiceURL": "https://nafy.ai/terms#chatgpt-app",
        "defaultPrompt": [
          "Prepare a calm piano instrumental for a quiet morning.",
          "Find my liked songs.",
          "How many music-generation credits do I have?"
        ],
        "brandColor": "#53634D",
        "brandColorDark": "#CED9BD",
        "composerIcon": "./assets/logo.png",
        "logo": "./assets/logo.png"
      },
      "review": {
        "commerce": false,
        "commerce_description": "This plugin accesses existing Nafy entitlements. It does not sell digital goods, direct users to checkout, process payments, or change subscriptions.",
        "demo_recording_url": "https://r2.filesystem.cloud/chatgpt-app/review/nafy-ai-plugin-walkthrough-combined-2026-10-10.mov",
        "test_cases": {
          "positive": [
            {
              "description": "Prepare an explicit instrumental draft without spending credits",
              "prompt": "Prepare a private instrumental titled Quiet Morning: lo-fi, calm mood, piano and soft percussion, slow tempo, model v6.",
              "tools_triggered": "prepare_music_generation",
              "expected_behavior": "Prepare the supplied settings, show a 4-credit cost for two private alternatives, and present an in-chat Generate for 4 credits control. Do not generate or charge yet."
            },
            {
              "description": "Confirm a generation in ChatGPT and retrieve playable results",
              "prompt": "Generate the prepared Quiet Morning draft for the displayed 4 credits, then check its progress.",
              "tools_triggered": "generate_music, get_music_generation",
              "expected_behavior": "Use the conversation's prepared draftId, confirm the destructive tool call in ChatGPT, charge 4 credits once, return one generationId, and retrieve that generation. Playable audio appears only after the provider reports a final result; replay must not charge again."
            },
            {
              "description": "Find liked music in the connected user's library",
              "prompt": "Show up to 10 of my liked songs with Quiet in the title.",
              "tools_triggered": "list_my_music",
              "expected_behavior": "Search titleQuery Quiet with likedOnly true and limit 10. Return only the linked user's matching songs, with reviewed previews when available or a Nafy library link."
            },
            {
              "description": "Read the existing entitlement balance",
              "prompt": "How many music-generation credits do I have, and what does one generation cost?",
              "tools_triggered": "get_credit_balance",
              "expected_behavior": "Return the linked account's current balance, cost 4 and two alternatives. Do not purchase credits or expose payment details."
            },
            {
              "description": "Find existing music from an indirect conversational request",
              "prompt": "I need one of my saved Quiet songs for a study session. Can you help me find it?",
              "tools_triggered": "list_my_music",
              "expected_behavior": "Search the current user's library for titleQuery Quiet with likedOnly false and limit 10. Show accessible results; do not generate new music or spend credits."
            }
          ],
          "negative": [
            {
              "description": "Do not use Nafy for general music-industry writing",
              "prompt": "Write a blog post comparing the history of jazz and classical music.",
              "expected_behavior": "Answer as a general writing request without invoking any Nafy tool."
            },
            {
              "description": "Do not use Nafy to control an unrelated streaming service",
              "prompt": "Play my Discover Weekly playlist on Spotify.",
              "expected_behavior": "Do not invoke any Nafy tool because Nafy cannot control Spotify or other third-party streaming accounts."
            },
            {
              "description": "Do not use Nafy for purchases or subscription changes",
              "prompt": "Buy me a Nafy subscription and charge my card.",
              "expected_behavior": "Do not invoke any Nafy tool. The plugin has no checkout, payment, purchase, or subscription-management capability."
            }
          ]
        }
      },
      "publication": {
        "release_notes": "Initial version: five account-scoped music tools, one-time OAuth consent for all app permissions, standards-compliant tool-level OAuth challenges, in-chat per-draft credit confirmation, idempotent generation, a generation-start card that silently checks progress and displays only final audio, widget-private media URLs, background pause and retry backoff, content-sized inline cards, private alternatives, content safety checks, library search and existing-credit balance."
      },
      "apps": "./.app.json"
    }
  }
}

SHA-256: e826f1b432569be3c756f1d2d25fd726c0b251efcc44780cb52488d54bf8f3f0