← Files BranchDeployARCHIVED FILE

plugin.json

6.55 KB · Nov 15, 2026 · 06:31 UTC

↓ Download file

See the change to this file →

{
  "$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
  "name": "app-6a4e20e5277c8191a2df23e41800024e",
  "version": "1.2.1",
  "description": "Deploy Azure DevOps work items to QA, staging, or UAT by ticket number, check deployment status and history, and draft customer-facing release notes.",
  "author": {
    "name": "Pixel Funnel Ltd",
    "email": "support@branch-deploy.dev",
    "url": "https://branch-deploy.dev"
  },
  "homepage": "https://branch-deploy.dev",
  "keywords": [
    "azure devops",
    "deployment",
    "azure pipelines",
    "azure boards",
    "release notes"
  ],
  "extensions": {
    "com.openai": {
      "interface": {
        "displayName": "BranchDeploy",
        "shortDescription": "Deploy Azure DevOps tickets",
        "longDescription": "BranchDeploy deploys Azure DevOps work items from ChatGPT. Ask \"deploy ticket 1482 to UAT\" and BranchDeploy finds the Azure Repos branch linked to that Azure Boards work item, checks it against your environment's branch rules, and shows you the ticket, branch, environment, and pipeline before anything runs. Confirm, and it queues your team's existing Azure Pipeline.\n\nYou only ever give a ticket number. ChatGPT can't choose a branch or pipeline, so it can't deploy an unlinked branch or bypass your rules. You can also ask what's been deployed recently, check a deployment's status, and draft customer-facing release notes from what shipped, then preview and publish them to your release-notes feed.\n\nRequires a BranchDeploy account and the BranchDeploy extension for Azure DevOps Services (dev.azure.com).",
        "developerName": "Pixel Funnel Ltd",
        "category": "Developer Tools",
        "capabilities": [
          "Preview and deploy an Azure DevOps work item to a configured environment",
          "List deployment environments",
          "Check deployment status and history",
          "Draft, preview, publish, and archive customer-facing release notes"
        ],
        "websiteURL": "https://branch-deploy.dev",
        "supportURL": "https://branch-deploy.dev/support/",
        "privacyPolicyURL": "https://branch-deploy.dev/privacy/",
        "termsOfServiceURL": "https://branch-deploy.dev/terms/",
        "defaultPrompt": [
          "Deploy ticket 1482 to staging",
          "What's been deployed to UAT this week?",
          "Draft release notes from this week's deployments"
        ],
        "brandColor": "#FF5520",
        "brandColorDark": "#FF5520",
        "composerIcon": "./assets/icon.png",
        "logo": "./assets/logo.png"
      },
      "review": {
        "test_cases": {
          "positive": [
            {
              "description": "List the environments the workspace can deploy to",
              "prompt": "What environments can I deploy to with BranchDeploy?",
              "tools_triggered": "list_environments",
              "expected_behavior": "Lists the project \"BranchDeploy App\" with its UAT environment. Nothing is deployed or changed."
            },
            {
              "description": "Preview, confirm, and deploy a work item",
              "prompt": "Deploy ticket 1 to UAT",
              "tools_triggered": "preview_deploy, deploy",
              "expected_behavior": "Shows work item 1 \"Release Notes UI\", its linked branch task/963-release-notes-ui, the UAT environment and the \"Base pipline\" pipeline, and asks for confirmation. Only after the reviewer confirms does it queue the run and return a deployment ID. The pipeline only echoes its parameters, so this is safe to repeat."
            },
            {
              "description": "Check whether the deployment finished",
              "prompt": "Did my last BranchDeploy deployment of ticket 1 succeed?",
              "tools_triggered": "get_deployment_history, get_deployment_status",
              "expected_behavior": "Finds the latest deployment of work item 1 and reports its status (queued, running, succeeded, or failed) with a link to the Azure Pipelines run. Read-only."
            },
            {
              "description": "Draft customer release notes from recent deployments",
              "prompt": "Draft customer release notes from this week's UAT deployments",
              "tools_triggered": "list_release_note_candidates, get_work_item_details, create_release_note_draft",
              "expected_behavior": "Reads recent deployments and the ticket behind them, writes customer-facing copy without ticket numbers or branch names, and saves it as a draft in the \"Release Log\" feed with a review link. Drafts are not visible to customers. Run after the deploy test case so there is a recent deployment."
            },
            {
              "description": "Edit, preview, and publish the draft",
              "prompt": "Shorten that release note draft, then preview it and publish it",
              "tools_triggered": "list_release_notes, update_release_note_draft, preview_release_note, publish_release_note",
              "expected_behavior": "Updates the draft, shows the exact public JSON customers would receive, and asks for confirmation. Only after the reviewer confirms does it publish to the public feed. Asking \"now archive it\" withdraws the note again (archive_release_note)."
            }
          ],
          "negative": [
            {
              "description": "Deploying from another CI system is out of scope",
              "prompt": "Deploy my GitHub repo to Vercel"
            },
            {
              "description": "Creating or editing Azure Boards work items is not supported",
              "prompt": "Create a new Azure Boards work item for the login bug"
            },
            {
              "description": "General Azure DevOps questions need no tool call",
              "prompt": "Explain what Azure Pipelines is"
            }
          ]
        },
        "commerce": false,
        "commerce_description": "BranchDeploy does not sell products or process payments in ChatGPT. Plans are purchased on branch-deploy.dev."
      },
      "publication": {
        "release_notes": "Adds customer-facing release notes: find deployments to write up, read ticket details (when an admin enables it), draft, edit, preview, publish, and archive notes on a public feed. Publishing needs a confirmation token from the preview, like deploying. Any BranchDeploy plan can now connect and use the read-only tools; deploying and release notes need Pro. Tool descriptions now describe only what each tool does, tools no longer take analytics parameters, and create, update, publish, archive, and deploy are marked destructive."
      },
      "apps": "./.app.json"
    }
  }
}

SHA-256: 2bb3cce48ce5b8ef903d32b247a831015a882cad505980fba941ed01a5335fd8