{
  "id": "rv",
  "name": "rv",
  "homepage": "https://github.com/spinel-coop/rv",
  "description": "Extremely fast Ruby and gem manager.",
  "executables": [
    "rv",
    "rvw",
    "rvx"
  ],
  "dotfiles": {
    "paths": [
      "~/.rv.kdl",
      "[configHome]/rv.kdl",
      "[configHome]/rv/rv.kdl"
    ],
    "secret": []
  },
  "commands": {
    "format": 1,
    "label": "rv",
    "description": "Run commands with a managed Ruby and install Ruby versions. clean-install, tool, shell, cache, fmt and self subcommands are not covered.",
    "quality": "ai-draft",
    "parser": {
      "end_of_options": "--",
      "interleave": "permute",
      "long_equals": true,
      "short_attached": true,
      "short_bundles": false
    },
    "subcommand": [
      {
        "path": [
          "run"
        ],
        "label": "Run with Ruby",
        "description": "Run a command or script with Ruby available, installing the requested Ruby if needed.",
        "source": [
          {
            "id": "src",
            "kind": "help",
            "url": "https://github.com/spinel-coop/rv/blob/main/docs/PLANS.md",
            "revision": "2026-10-27",
            "evidence": "/// Ruby version to use.\npub ruby: Option<RubyRequest>,\nrv run --ruby 3.4.2 -- ruby\n/// What to run with Ruby available, e.g. `ruby myscript.rb`\n#[arg(trailing_var_arg = true, allow_hyphen_values = true, required = true, value_names = [\"COMMAND\", \"ARGS\"])]\n"
          }
        ],
        "field": [
          {
            "id": "ruby",
            "label": "Ruby version",
            "description": "For example 3.4 or 4.0.1.",
            "type": "string",
            "option": [
              "--ruby"
            ],
            "sources": [
              "src"
            ]
          },
          {
            "id": "command",
            "label": "Command",
            "description": "For example ruby, irb or a script name.",
            "type": "string",
            "position": 0,
            "min": 1,
            "effect": "exec",
            "sources": [
              "src"
            ]
          },
          {
            "id": "args",
            "label": "Arguments",
            "type": "string",
            "position": 1,
            "multiple": true,
            "sources": [
              "src"
            ]
          }
        ],
        "task": [
          {
            "id": "run",
            "label": "Run a command",
            "fields": [
              "ruby",
              "command",
              "args"
            ],
            "required": [
              "command"
            ]
          }
        ],
        "group": [
          {
            "id": "basic",
            "label": "Basic",
            "fields": [
              "command",
              "args",
              "ruby"
            ]
          }
        ]
      },
      {
        "path": [
          "ruby",
          "install"
        ],
        "label": "Install Ruby",
        "description": "Install a Ruby version. With no version, it is discovered from .ruby-version, .tool-versions or Gemfile.lock.",
        "source": [
          {
            "id": "src",
            "kind": "help",
            "url": "https://github.com/spinel-coop/rv/blob/main/crates/rv/src/commands/ruby.rs",
            "revision": "2026-10-27",
            "evidence": "rv ruby install\nrv ruby install latest\nrv ruby install 3.4\nrv ruby install 4.0.1\n/// Directory to install into\n#[arg(short, long, value_name = \"DIR\")]\ninstall_dir: Option<String>,\n/// Ruby version to install\nversion: Option<RubyRequest>,\n/// Overwrite an existing installed version.\nVersion already installed. If you want to overwrite it, use '--force'.\n"
          }
        ],
        "field": [
          {
            "id": "version",
            "label": "Ruby version",
            "description": "For example latest, 3.4, 4.0.1 or dev.",
            "type": "string",
            "position": 0,
            "suggestions": [
              {
                "value": "latest",
                "label": "Latest"
              },
              {
                "value": "3.4",
                "label": "3.4"
              },
              {
                "value": "4.0.1",
                "label": "4.0.1"
              }
            ],
            "sources": [
              "src"
            ]
          },
          {
            "id": "force",
            "label": "Overwrite existing",
            "type": "boolean",
            "option": [
              "--force"
            ],
            "effect": "overwrite",
            "sources": [
              "src"
            ]
          }
        ],
        "task": [
          {
            "id": "install",
            "label": "Install a version",
            "fields": [
              "version"
            ],
            "required": []
          }
        ],
        "group": [
          {
            "id": "basic",
            "label": "Basic",
            "fields": [
              "version",
              "force"
            ]
          }
        ]
      }
    ]
  }
}
