{
  "schema_version": "helper-tools-registry.v1",
  "helpers": [
    {
      "id": "agent-browser",
      "kind": "browser-helper",
      "profiles": ["recommended", "platform"],
      "surface_overlays": ["surface-ui"],
      "required": true,
      "baseline_blocking": false,
      "required_for": ["surface-ui"],
      "recommended_for": ["browser automation", "frontend polish", "e2e validation"],
      "demand_signals": ["SPEC_FIRST_BROWSER_HELPER_REQUIRED=1", "surface-ui"],
      "detection": {
        "kind": "agent-browser",
        "command": "agent-browser",
        "skill_name": "agent-browser"
      },
      "installation": {
        "strategy": "explicit-opt-in",
        "commands": {
          "macos": "CI=true npm install -g agent-browser@latest --no-audit --no-fund --loglevel=error && agent-browser install && npx -y skills@latest add https://github.com/vercel-labs/agent-browser --skill agent-browser -g -y",
          "linux": "CI=true npm install -g agent-browser@latest --no-audit --no-fund --loglevel=error && agent-browser install --with-deps && npx -y skills@latest add https://github.com/vercel-labs/agent-browser --skill agent-browser -g -y",
          "windows": "CI=true npm install -g agent-browser@latest --no-audit --no-fund --loglevel=error && agent-browser install && npx -y skills@latest add https://github.com/vercel-labs/agent-browser --skill agent-browser -g -y"
        },
        "next_action": "set SPEC_FIRST_BROWSER_HELPER_REQUIRED=1 and rerun the host setup workflow (`$spec-mcp-setup` or `/spec:mcp-setup`)"
      },
      "safety": {
        "risk_flags": ["global-npm-install", "browser-runtime-install", "unpinned-latest"],
        "source": "npm",
        "source_repo": "https://github.com/vercel-labs/agent-browser",
        "version_policy": { "pin_status": "latest" },
        "review_required": true,
        "install_effect": "global CLI, browser runtime, global skill"
      },
      "platform_required_tools": {
        "shell": ["node", "npm", "npx"],
        "powershell": ["node", "npm", "npx"]
      },
      "runner_kind": "cross-platform"
    },
    {
      "id": "gh",
      "kind": "cli",
      "profiles": ["minimal", "recommended", "platform"],
      "surface_overlays": [],
      "required": true,
      "baseline_blocking": true,
      "required_for": ["github issue and pull request workflows"],
      "recommended_for": ["spec-code-review", "spec-work"],
      "demand_signals": [],
      "detection": { "kind": "command", "command": "gh" },
      "installation": {
        "strategy": "package-manager",
        "commands": {
          "macos": "brew install gh",
          "linux": "install gh from https://cli.github.com",
          "windows": "winget install --id GitHub.cli -e"
        },
        "next_action": "install gh"
      },
      "safety": {
        "risk_flags": ["package-manager-install"],
        "source": "package-manager",
        "source_repo": "https://cli.github.com",
        "version_policy": { "pin_status": "latest" },
        "review_required": false,
        "install_effect": "system CLI"
      },
      "platform_required_tools": { "shell": [], "powershell": [] },
      "runner_kind": "cross-platform"
    },
    {
      "id": "jq",
      "kind": "cli",
      "profiles": ["minimal", "recommended", "platform"],
      "surface_overlays": [],
      "required": true,
      "baseline_blocking": true,
      "required_for": ["bash setup scripts"],
      "recommended_for": ["JSON parsing"],
      "demand_signals": [],
      "detection": { "kind": "command", "command": "jq" },
      "installation": {
        "strategy": "package-manager",
        "commands": {
          "macos": "brew install jq",
          "linux": "install jq with your package manager",
          "windows": "winget install --id jqlang.jq -e"
        },
        "next_action": "install jq"
      },
      "safety": {
        "risk_flags": ["package-manager-install"],
        "source": "package-manager",
        "source_repo": "https://jqlang.github.io/jq/",
        "version_policy": { "pin_status": "latest" },
        "review_required": false,
        "install_effect": "system CLI"
      },
      "platform_required_tools": { "shell": ["jq"], "powershell": [] },
      "runner_kind": "shell"
    },
    {
      "id": "vhs",
      "kind": "cli",
      "profiles": ["recommended", "platform"],
      "surface_overlays": [],
      "required": true,
      "baseline_blocking": false,
      "required_for": ["feature-video"],
      "recommended_for": ["terminal demos"],
      "demand_signals": [],
      "detection": { "kind": "command", "command": "vhs" },
      "installation": {
        "strategy": "package-manager",
        "commands": {
          "macos": "brew install vhs",
          "linux": "go install github.com/charmbracelet/vhs@latest",
          "windows": "go install github.com/charmbracelet/vhs@latest"
        },
        "next_action": "install vhs"
      },
      "safety": {
        "risk_flags": ["optional-helper", "unpinned-latest"],
        "source": "package-manager",
        "source_repo": "https://github.com/charmbracelet/vhs",
        "version_policy": { "pin_status": "latest" },
        "review_required": true,
        "install_effect": "system CLI"
      },
      "platform_required_tools": { "shell": [], "powershell": [] },
      "runner_kind": "cross-platform"
    },
    {
      "id": "silicon",
      "kind": "cli",
      "profiles": ["recommended", "platform"],
      "surface_overlays": [],
      "required": true,
      "baseline_blocking": false,
      "required_for": ["feature-video"],
      "recommended_for": ["code screenshots"],
      "demand_signals": [],
      "detection": { "kind": "command", "command": "silicon" },
      "installation": {
        "strategy": "package-manager",
        "commands": {
          "macos": "brew install silicon",
          "linux": "cargo install silicon --force",
          "windows": "cargo install silicon --force"
        },
        "next_action": "install silicon"
      },
      "safety": {
        "risk_flags": ["optional-helper", "global-cargo-install"],
        "source": "package-manager",
        "source_repo": "https://github.com/Aloxaf/silicon",
        "version_policy": { "pin_status": "latest" },
        "review_required": true,
        "install_effect": "system CLI"
      },
      "platform_required_tools": { "shell": [], "powershell": [] },
      "runner_kind": "cross-platform"
    },
    {
      "id": "ffmpeg",
      "kind": "cli",
      "profiles": ["recommended", "platform"],
      "surface_overlays": [],
      "required": true,
      "baseline_blocking": false,
      "required_for": ["feature-video"],
      "recommended_for": ["video composition"],
      "demand_signals": [],
      "detection": { "kind": "command", "command": "ffmpeg" },
      "installation": {
        "strategy": "package-manager",
        "commands": {
          "macos": "brew install ffmpeg",
          "linux": "install ffmpeg with your package manager",
          "windows": "winget install --id Gyan.FFmpeg -e"
        },
        "next_action": "install ffmpeg"
      },
      "safety": {
        "risk_flags": ["optional-helper", "package-manager-install"],
        "source": "package-manager",
        "source_repo": "https://ffmpeg.org/download.html",
        "version_policy": { "pin_status": "latest" },
        "review_required": false,
        "install_effect": "system CLI"
      },
      "platform_required_tools": { "shell": [], "powershell": [] },
      "runner_kind": "cross-platform"
    },
    {
      "id": "ast-grep",
      "kind": "cli",
      "profiles": ["minimal", "recommended", "platform"],
      "surface_overlays": [],
      "required": true,
      "baseline_blocking": false,
      "required_for": ["structural code search"],
      "recommended_for": ["spec-code-review", "spec-debug", "spec-work"],
      "demand_signals": [],
      "detection": {
        "kind": "command",
        "command": "ast-grep",
        "fallback_command": "rg"
      },
      "installation": {
        "strategy": "package-manager",
        "commands": {
          "macos": "brew install ast-grep",
          "linux": "cargo install ast-grep --locked --force",
          "windows": "npm install -g @ast-grep/cli@latest"
        },
        "next_action": "install ast-grep"
      },
      "safety": {
        "risk_flags": ["optional-helper", "global-install"],
        "source": "package-manager",
        "source_repo": "https://ast-grep.github.io",
        "version_policy": { "pin_status": "latest" },
        "review_required": true,
        "install_effect": "system CLI"
      },
      "platform_required_tools": { "shell": [], "powershell": [] },
      "runner_kind": "cross-platform"
    },
    {
      "id": "ast-grep-skill",
      "kind": "global-skill",
      "profiles": ["minimal", "recommended", "platform"],
      "surface_overlays": [],
      "required": true,
      "baseline_blocking": true,
      "required_for": ["ast-grep usage guidance"],
      "recommended_for": ["structural search guidance"],
      "demand_signals": [],
      "detection": {
        "kind": "global-skill",
        "skill_name": "ast-grep"
      },
      "installation": {
        "strategy": "skills-cli",
        "commands": {
          "macos": "npx -y skills@latest add ast-grep/agent-skill -g -y",
          "linux": "npx -y skills@latest add ast-grep/agent-skill -g -y",
          "windows": "npx -y skills@latest add ast-grep/agent-skill -g -y"
        },
        "next_action": "install global ast-grep skill"
      },
      "safety": {
        "risk_flags": ["global-skill-install", "unpinned-npx"],
        "source": "npx",
        "source_repo": "https://ast-grep.github.io",
        "version_policy": { "pin_status": "latest" },
        "review_required": true,
        "install_effect": "global skill"
      },
      "platform_required_tools": { "shell": ["node", "npx"], "powershell": ["node", "npx"] },
      "runner_kind": "cross-platform"
    }
  ]
}
