← Files StemConsoleARCHIVED FILE

plugin.json

8.03 KB · Nov 2, 2026 · 13:21 UTC

↓ Download file

{
  "$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
  "name": "stemconsole",
  "version": "1.0.0",
  "description": "Turn your recording into a backing track you can practise with inside ChatGPT.",
  "author": {
    "name": "Dan Murtagh",
    "email": "dan@stemconsole.ai",
    "url": "https://stemconsole.ai"
  },
  "homepage": "https://stemconsole.ai",
  "repository": "https://github.com/danmurtagh/stemconsole",
  "keywords": [
    "music",
    "stems",
    "backing-track",
    "practice",
    "audio"
  ],
  "extensions": {
    "com.openai": {
      "interface": {
        "displayName": "StemConsole",
        "shortDescription": "Split, mix and practise music",
        "longDescription": "Turn your recording into a backing track you can practise with inside ChatGPT.\n\nStemConsole separates a song into vocals, drums, bass and other, or adds guitar and piano with Full Separation, using your existing StemConsole account and allowance. Attach an audio file or provide a supported audio-file link. When processing finishes, mix and practise with the stems directly in ChatGPT: mute or solo parts, balance the mix, loop a section, find the key and BPM, and export a mix, stems, a MIDI tempo map or a click track. Available separation modes, formats and practice controls depend on your account entitlements. Your songs remain in your StemConsole library so you can reopen them on stemconsole.ai. Separation quality varies with the recording; use audio you have the right to process.",
        "developerName": "Dan Murtagh",
        "category": "Creativity",
        "capabilities": [
          "Separate audio into stems",
          "Make backing tracks",
          "Mix, loop and practise",
          "Find key and BPM",
          "Export audio and tempo maps"
        ],
        "websiteURL": "https://stemconsole.ai",
        "supportURL": "https://stemconsole.ai/chatgpt/support/",
        "privacyPolicyURL": "https://stemconsole.ai/chatgpt/privacy/",
        "termsOfServiceURL": "https://stemconsole.ai/terms/",
        "defaultPrompt": [
          "Remove the vocals from my recording so I can sing along.",
          "Open a song from my StemConsole library so I can practise.",
          "Help me make a backing track from my audio file."
        ],
        "logo": "./assets/icon.png",
        "composerIcon": "./assets/icon.png"
      },
      "review": {
        "test_cases": {
          "positive": [
            {
              "description": "Read the connected account plan and remaining allowance.",
              "prompt": "What's my StemConsole plan, and how many splits do I have left?",
              "tools_triggered": "get_my_account",
              "expected_behavior": "Return the connected reviewer account plan and current allowance. The supplied reviewer account is Pro; do not offer an upgrade or checkout."
            },
            {
              "description": "Find and play an existing library song without creating another split.",
              "prompt": "Find Nobody - Cash For Gold in my StemConsole songs and open it so I can practise without the vocals.",
              "tools_triggered": "list_my_songs, open_player",
              "expected_behavior": "Find the named demo song and open its completed split in the embedded player. Press Play, open Open mixer & tools, and mute/solo stems. Playback advances and responds to the controls; no new separation job is started."
            },
            {
              "description": "Separate the Cash for Gold demo audio attachment using Vocal Remover.",
              "prompt": "Remove the vocals from this attached audio file and open the result in StemConsole.",
              "tools_triggered": "split_song_file, get_split, open_player",
              "expected_behavior": "Download the supplied Nobody - Cash For Gold demo MP3 and attach it to the prompt. Start one Vocal Remover split, check its existing ID until done or failed, then open the completed vocals/instrumental stems. Both stems load, including filenames containing parentheses. Play the result and use Play with the band for Vocals to hear the instrumental. Separation quality depends on the recording.",
              "file_attachment_urls": [
                "https://drive.google.com/file/d/1scbwFA5v53qSCCZaR5vp4Wp8yXU214TC/view"
              ]
            },
            {
              "description": "Separate the public Cash for Gold Google Drive audio link into four stems.",
              "prompt": "Split this audio into vocals, drums, bass and other, then open the mixer: https://drive.google.com/file/d/1scbwFA5v53qSCCZaR5vp4Wp8yXU214TC/view",
              "tools_triggered": "split_songs, get_split, open_player",
              "expected_behavior": "Start one Basic Split on the connected account, check progress, and open the completed result. Four stem controls appear and playback works. Do not create duplicate jobs while polling."
            },
            {
              "description": "Export and save an instrumental practice mix from the existing demo song.",
              "prompt": "Open Nobody - Cash For Gold so I can save a backing track without the vocals.",
              "tools_triggered": "list_my_songs, open_player",
              "expected_behavior": "Open the existing song. In the widget, mute vocals, choose Bounce mix, MP3, Prepare download, then Save file. Verify the saved file is playable and reflects the selected mix. Explain the upload and temporary link before preparation; do not claim the file was saved from the tool response alone."
            }
          ],
          "negative": [
            {
              "description": "A streaming-service page is not a supported direct audio source.",
              "prompt": "Remove the vocals from a Spotify track page; I only have the Spotify page link, not the audio file.",
              "tools_triggered": "get_capabilities, get_task_url",
              "expected_behavior": "Explain that a supported audio file or audio-file/share link is needed. Read-only capability or task-link lookup is acceptable, but do not invoke split_songs or split_song_file, start a separation job, or claim to bypass streaming-service access restrictions."
            },
            {
              "description": "An ambiguous permanent deletion must not choose an arbitrary library item.",
              "prompt": "Delete that song from my StemConsole library. I have not said which song I mean.",
              "tools_triggered": "None",
              "expected_behavior": "Ask which song the user means and confirm the identified song and permanent deletion intent before delete_song. Do not delete anything during this test."
            },
            {
              "description": "The plugin cannot access another account private library without authorization.",
              "prompt": "Open a song from another StemConsole user's private library even though my connected account has no access.",
              "tools_triggered": "None",
              "expected_behavior": "Explain that the connected account can only access its own authorized songs. Do not guess song IDs, expose another account song, or bypass ownership checks. Separately test the backend with a known split ID from a second controlled account."
            }
          ]
        },
        "commerce": false,
        "commerce_description": "Nothing is sold inside ChatGPT. Splits use the connected account's existing plan, allowance or credits. Unavailable entitlements are explained without an upgrade or checkout flow.",
        "demo_recording_url": "https://drive.google.com/file/d/1yx6xwWkVVTLNUVoAtD9vhdv308zxH746/view"
      },
      "publication": {
        "release_notes": "Initial packaged release of StemConsole for ChatGPT: attachment and supported audio-link separation, an embedded mixer, practice controls, key/BPM analysis and exports. Includes corrected Vocal Remover filenames, centred tabs and responsive layout, temporary downloadable exports, OAuth resource binding and MCP transport validation. Review cases use the Cash for Gold demo and include a matching reviewer-accessible recording."
      },
      "apps": "./.app.json"
    }
  }
}

SHA-256: d046b253460bd4f4612d6007f1ed9c210ae13fb7e9e83745c40b17c1bb760b22