id = "mise"
name = "mise"
homepage = "https://mise.jdx.dev"
description = "Dev tools, environment variables and tasks in one project configuration."
icon = "https://mise.jdx.dev/favicon.svg"
executables = ["mise"]
[dotfiles]
paths = [
"[configHome]/mise/config.toml",
"[configHome]/mise/conf.d/",
"~/.tool-versions",
]
exclude = [
"[xdgData]/mise/",
"[cacheHome]/mise/",
"~/.local/state/mise/",
]
secret = []
[commands]
format = 1
label = "mise"
description = "Common mise jobs: install tools, add them to the config, list them. Execution and tasks are left out."
quality = "ai-draft"
parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = true, short_bundles = false }
[[commands.subcommand]]
path = ["use"]
label = "Install a tool and add it to config"
[[commands.subcommand.source]]
id = "help"
kind = "help"
revision = "mise 2026.10.15"
evidence = """Usage: mise use [FLAGS] [TOOL@VERSION]…
<TOOL@VERSION> Tool to add to the config file, such as node@24,
-f, --force Reinstall even if already installed
-g, --global Write to the global config instead of the
-p, --path <PATH> Write to this config file, or to the config
--fuzzy Write the version as requested, such as `20`
--pin Write the resolved version, such as `20.19.5`
--dry-run-code Like --dry-run, but exit with code 1 if there"""
[[commands.subcommand.field]]
id = "tools"
label = "Tools (tool@version)"
type = "string"
position = 0
multiple = true
suggestions = [{ value = "node@24", label = "node@24" }, { value = "python@latest", label = "python@latest" }]
sources = ["help"]
[[commands.subcommand.field]]
id = "global"
label = "Write to global config"
type = "boolean"
option = ["--global", "-g"]
sources = ["help"]
[[commands.subcommand.field]]
id = "pin"
label = "Pin resolved version"
type = "boolean"
option = ["--pin"]
sources = ["help"]
[[commands.subcommand.field]]
id = "force"
label = "Reinstall if installed"
type = "boolean"
option = ["--force", "-f"]
effect = "overwrite"
sources = ["help"]
[[commands.subcommand.field]]
id = "path"
label = "Config file"
type = "path"
option = ["--path", "-p"]
path = { kind = "any", role = "output" }
sources = ["help"]
[[commands.subcommand.task]]
id = "use_tool"
label = "Use a tool in this project"
fields = ["tools"]
required = ["tools"]
[[commands.subcommand.group]]
id = "basic"
label = "Basic"
fields = ["tools", "global", "pin"]
[[commands.subcommand.group]]
id = "advanced"
label = "Advanced"
fields = ["path", "force"]
[[commands.subcommand]]
path = ["install"]
label = "Install tools"
[[commands.subcommand.source]]
id = "help"
kind = "help"
revision = "mise 2026.10.15"
evidence = """Usage: mise install [FLAGS] [TOOL@VERSION]…
[TOOL@VERSION]… Tools to install, such as `node@24`; defaults to every tool
-f, --force Reinstall even if already installed
-j, --jobs <JOBS> How many tools to install in parallel;
-n, --dry-run Show what would be installed, without
-v, --verbose Show installer output"""
[[commands.subcommand.field]]
id = "tools"
label = "Tools (tool@version)"
description = "Leave empty to install everything in the config."
type = "string"
position = 0
multiple = true
sources = ["help"]
[[commands.subcommand.field]]
id = "dry_run"
label = "Dry run"
type = "boolean"
option = ["--dry-run", "-n"]
sources = ["help"]
[[commands.subcommand.field]]
id = "force"
label = "Reinstall"
type = "boolean"
option = ["--force", "-f"]
effect = "overwrite"
sources = ["help"]
[[commands.subcommand.field]]
id = "jobs"
label = "Parallel jobs"
type = "integer"
option = ["--jobs", "-j"]
sources = ["help"]
[[commands.subcommand.field]]
id = "verbose"
label = "Show installer output"
type = "boolean"
option = ["--verbose", "-v"]
sources = ["help"]
[[commands.subcommand.task]]
id = "install_all"
label = "Install everything in config"
fields = ["dry_run", "verbose"]
required = []
[[commands.subcommand.group]]
id = "basic"
label = "Basic"
fields = ["tools", "dry_run", "verbose"]
[[commands.subcommand.group]]
id = "advanced"
label = "Advanced"
fields = ["jobs", "force"]