{
  "id": "rattler-build",
  "name": "Rattler-Build",
  "homepage": "https://rattler.build",
  "description": "Universal conda package builder",
  "executables": [
    "rattler-build"
  ],
  "dotfiles": {
    "paths": [
      "[configHome]/rattler-build/config.toml",
      "~/.rattler-build/config.toml"
    ],
    "secret": []
  },
  "commands": {
    "format": 1,
    "label": "Build conda packages",
    "description": "Build a conda package from a recipe.yaml. Test strategy, skip-existing, platform overrides, auth and rarely used rendering options are left out.",
    "quality": "ai-draft",
    "parser": {
      "end_of_options": "--",
      "interleave": "permute",
      "long_equals": true,
      "short_attached": true,
      "short_bundles": false
    },
    "subcommand": [
      {
        "path": [
          "build"
        ],
        "label": "Build a package",
        "description": "Build the recipe in a file or directory (current directory by default).",
        "source": [
          {
            "id": "src",
            "kind": "help",
            "url": "https://github.com/prefix-dev/rattler-build/blob/main/src/opt.rs",
            "revision": "main 2026-10-27",
            "evidence": "Build options.\n--recipe, -r   The recipe file or directory containing `recipe.yaml`. Defaults to the current directory.\n--recipe-dir   The directory that contains recipes.\n--target-platform   The target platform for the build.\n--channel, -c   Add a channel to search for dependencies in.\n--variant-config, -m   Variant configuration files for the build.\n--variant   Override specific variant values (e.g. --variant python=3.12 or --variant python=3.12,3.11).\n--render-only   Render the recipe files without executing the build.\n--keep-build   Keep intermediate build artifacts after the build.\n--output-dir   Output directory for build artifacts.\n--package-format   The package format to use for the build. Can be one of `tar-bz2` or `conda`.\n"
          }
        ],
        "field": [
          {
            "id": "recipe",
            "label": "Recipe",
            "type": "path",
            "description": "Recipe file or directory containing recipe.yaml. Defaults to the current directory.",
            "option": [
              "--recipe",
              "-r"
            ],
            "path": {
              "kind": "any",
              "role": "input"
            },
            "multiple": true,
            "sources": [
              "src"
            ]
          },
          {
            "id": "recipe_dir",
            "label": "Directory of recipes",
            "type": "path",
            "option": [
              "--recipe-dir"
            ],
            "path": {
              "kind": "directory",
              "role": "input"
            },
            "sources": [
              "src"
            ]
          },
          {
            "id": "channel",
            "label": "Channels",
            "type": "string",
            "option": [
              "--channel",
              "-c"
            ],
            "multiple": true,
            "suggestions": [
              {
                "value": "conda-forge",
                "label": "conda-forge"
              }
            ],
            "sources": [
              "src"
            ]
          },
          {
            "id": "variant_config",
            "label": "Variant config files",
            "type": "path",
            "option": [
              "--variant-config",
              "-m"
            ],
            "path": {
              "kind": "file",
              "role": "input"
            },
            "multiple": true,
            "sources": [
              "src"
            ]
          },
          {
            "id": "variant",
            "label": "Variant override",
            "type": "string",
            "description": "name=value or name=v1,v2, e.g. python=3.12.",
            "option": [
              "--variant"
            ],
            "multiple": true,
            "sources": [
              "src"
            ]
          },
          {
            "id": "target_platform",
            "label": "Target platform",
            "type": "string",
            "option": [
              "--target-platform"
            ],
            "suggestions": [
              {
                "value": "linux-64",
                "label": "linux-64"
              },
              {
                "value": "linux-aarch64",
                "label": "linux-aarch64"
              },
              {
                "value": "osx-arm64",
                "label": "osx-arm64"
              },
              {
                "value": "osx-64",
                "label": "osx-64"
              },
              {
                "value": "win-64",
                "label": "win-64"
              },
              {
                "value": "noarch",
                "label": "noarch"
              }
            ],
            "sources": [
              "src"
            ]
          },
          {
            "id": "output_dir",
            "label": "Output directory",
            "type": "path",
            "option": [
              "--output-dir"
            ],
            "path": {
              "kind": "directory",
              "role": "output"
            },
            "sources": [
              "src"
            ]
          },
          {
            "id": "render_only",
            "label": "Render only, do not build",
            "type": "boolean",
            "option": [
              "--render-only"
            ],
            "sources": [
              "src"
            ]
          },
          {
            "id": "keep_build",
            "label": "Keep build artifacts",
            "type": "boolean",
            "option": [
              "--keep-build"
            ],
            "sources": [
              "src"
            ]
          },
          {
            "id": "package_format",
            "label": "Package format",
            "type": "string",
            "option": [
              "--package-format"
            ],
            "suggestions": [
              {
                "value": "conda",
                "label": "conda"
              },
              {
                "value": "tar-bz2",
                "label": "tar-bz2"
              }
            ],
            "sources": [
              "src"
            ]
          }
        ],
        "task": [
          {
            "id": "build",
            "label": "Build from conda-forge",
            "fields": [
              "recipe",
              "channel",
              "output_dir"
            ],
            "required": [],
            "set": {
              "channel": [
                "conda-forge"
              ]
            }
          },
          {
            "id": "render",
            "label": "Render recipe only",
            "fields": [
              "recipe",
              "render_only",
              "variant"
            ],
            "required": [],
            "set": {
              "render_only": [
                true
              ]
            }
          }
        ],
        "group": [
          {
            "id": "basic",
            "label": "Basic",
            "fields": [
              "recipe",
              "channel",
              "output_dir",
              "render_only"
            ]
          },
          {
            "id": "advanced",
            "label": "Advanced",
            "fields": [
              "recipe_dir",
              "variant_config",
              "variant",
              "target_platform",
              "keep_build",
              "package_format"
            ]
          }
        ]
      }
    ]
  }
}
