{
  "id": "input_setup",
  "name": "Input Setup",
  "version": "0.1.0",
  "bundled": true,
  "private": false,
  "standards": ["capability-pipelines.v1", "plugin-runtime-idempotent.v1"],
  "script": "screen.js",
  "settings": { "html": "settings.html" },
  "description": "Per-instrument input-device selection and calibration, used during onboarding and re-launchable from Settings.",
  "category": "practice",
  "capabilities": {
    "input-calibration": {
      "roles": ["owner"],
      "commands": ["run", "status", "inspect"],
      "events": ["calibration-started", "calibration-done", "calibration-skipped"],
      "kind": "command",
      "mode": "active",
      "compatibility": "none",
      "ownership": "exclusive-owner",
      "safety": "safe",
      "description": "Owns the per-instrument input-setup wizard workflow; onboarding and Settings dispatch through the runtime.",
      "version": 1
    },
    "audio-input": {
      "roles": ["requester"],
      "requests": ["list-sources", "select-source", "open-source"],
      "mode": "active",
      "compatibility": "degrade-noop",
      "ownership": "requester-only",
      "safety": "sensitive",
      "description": "Picks the guitar/bass audio input device through the core audio-input domain.",
      "version": 1
    },
    "midi-input": {
      "roles": ["requester"],
      "requests": ["discover", "list-sources", "select-source", "open-source", "close-source"],
      "mode": "active",
      "compatibility": "degrade-noop",
      "ownership": "requester-only",
      "safety": "sensitive",
      "description": "Picks the keys/drums MIDI device through the core midi-input domain (Web-MIDI provider ships built-in with the domain).",
      "version": 1
    }
  }
}
