{
  "id": "scooter",
  "name": "scooter",
  "homepage": "https://github.com/thomasschafer/scooter",
  "description": "Interactive find-and-replace in the terminal",
  "executables": [
    "scooter"
  ],
  "dotfiles": {
    "paths": [
      "[configHome]/scooter/config.toml",
      "[configHome]/scooter/themes/",
      "%APPDATA%/scooter/config.toml",
      "%APPDATA%/scooter/themes/"
    ],
    "secret": []
  },
  "commands": {
    "format": 1,
    "label": "Find and replace",
    "description": "Open scooter's find-and-replace UI with the search and replace text pre-filled. Directory, globs and regex-engine options other than those listed are left out.",
    "quality": "ai-draft",
    "parser": {
      "end_of_options": "--",
      "interleave": "permute",
      "long_equals": true,
      "short_attached": true,
      "short_bundles": true
    },
    "source": [
      {
        "id": "readme",
        "kind": "manual",
        "url": "https://github.com/thomasschafer/scooter/blob/main/README.md",
        "revision": "main 2026-10-27",
        "evidence": "scooter ../foo/bar\nscooter \\\n  --search-text \"old\" \\\n  --replace-text \"new\" \\\n  --fixed-strings \\\n  --files-to-include \"*.rs,*.py\"\nscooter --search-text \"old\" --replace-text \"new\" --immediate-search\nstart scooter with the `-a` (`--advanced-regex`) flag.\nlaunching scooter with the `-U` flag\n"
      }
    ],
    "field": [
      {
        "id": "directory",
        "label": "Directory",
        "description": "Defaults to the current directory.",
        "type": "path",
        "position": 0,
        "path": {
          "kind": "directory",
          "role": "input",
          "must_exist": true
        },
        "sources": [
          "readme"
        ]
      },
      {
        "id": "search_text",
        "label": "Search text",
        "type": "string",
        "option": [
          "--search-text"
        ],
        "sources": [
          "readme"
        ]
      },
      {
        "id": "replace_text",
        "label": "Replace with",
        "type": "string",
        "option": [
          "--replace-text"
        ],
        "sources": [
          "readme"
        ]
      },
      {
        "id": "fixed_strings",
        "label": "Fixed strings (no regex)",
        "type": "boolean",
        "option": [
          "--fixed-strings"
        ],
        "sources": [
          "readme"
        ]
      },
      {
        "id": "files_to_include",
        "label": "Files to include",
        "description": "Comma-separated globs, for example *.rs,*.py.",
        "type": "string",
        "option": [
          "--files-to-include"
        ],
        "sources": [
          "readme"
        ]
      },
      {
        "id": "immediate_search",
        "label": "Search immediately",
        "description": "Skip the initial search screen.",
        "type": "boolean",
        "option": [
          "--immediate-search"
        ],
        "sources": [
          "readme"
        ]
      },
      {
        "id": "advanced_regex",
        "label": "Full regex engine",
        "description": "Enables features such as negative lookahead.",
        "type": "boolean",
        "option": [
          "--advanced-regex",
          "-a"
        ],
        "sources": [
          "readme"
        ]
      },
      {
        "id": "multiline",
        "label": "Multiline search",
        "type": "boolean",
        "option": [
          "-U"
        ],
        "sources": [
          "readme"
        ]
      }
    ],
    "task": [
      {
        "id": "replace",
        "label": "Replace text",
        "set": {
          "immediate_search": [
            true
          ]
        },
        "fields": [
          "directory",
          "search_text",
          "replace_text",
          "fixed_strings",
          "files_to_include",
          "immediate_search"
        ],
        "required": [
          "search_text",
          "replace_text"
        ]
      }
    ],
    "group": [
      {
        "id": "basic",
        "label": "Basic",
        "fields": [
          "directory",
          "search_text",
          "replace_text",
          "fixed_strings",
          "files_to_include",
          "immediate_search"
        ]
      },
      {
        "id": "advanced",
        "label": "Advanced",
        "fields": [
          "advanced_regex",
          "multiline"
        ]
      }
    ]
  }
}
