Skip to content

mise.toml reference ​

This page lists every key mise reads from a mise.toml, with its type and what it does. It is generated from schema/mise.json, the same schema editors use to complete and check a config, so it always matches the version of mise these docs describe. For how the sections fit together, start with mise.toml; settings have their own reference.

Names in angle brackets, such as tasks.<name>, stand for a key you choose. A type such as string | string[] means either form works. Open a key to see the keys inside it, or filter by name or description. A key that has the same keys as another links to it instead of listing them again. The reference is also plain Markdown, one file per section, starting at reference.md, for reading without this page's scripts.

To see what each key in one of your own files does, run mise config explain, or paste the file into the mise.toml playground, which explains each key as you hover it.

_

  • Type: table

aliasdeprecated

custom shorthands

bootstrap

machine-global bootstrapping (system packages, repos, macOS defaults, launchd agents, login shell)

  • Type: table
  • filestable13 keys
    Managed system files keyed by absolute target path
  • directoriestable10 keys
    Managed system directories keyed by absolute target path
  • the dotfile groups this machine applies; when unset, every group applies. Entries without a group always apply, and a more local config's list replaces the others
  • config_rootsstring[]deprecated
    deprecated and will be removed in mise 2027.3.3; move each selected root into a conf.d folder instead (https://mise.jdx.dev/configuration.html#conf-d-folders)
  • remotetable23 keys
    OpenSSH targets used by mise bootstrap remote
  • servicestable14 keys
    System services and portable user services managed by mise bootstrap, keyed by service name
  • composetable23 keys
    Docker Compose projects managed with mise bootstrap compose, keyed by project name. Text fields support Tera templates.
  • pluginstable1 key
    package manager plugins to install with mise bootstrap plugins apply, keyed by manager name
  • packagestable12 keys
    system packages to install with mise bootstrap packages apply, keyed by "manager:package" (e.g. "apt:libssl-dev", "brew:postgresql@17", "dnf:openssl-devel", "pacman:base-devel")
  • repostable6 keys
    git repositories to clone or update with mise bootstrap repos apply, keyed by target path
  • macostable70 keys
    macOS-specific bootstrap config
  • linuxtable60 keys
    Linux-specific bootstrap config
  • usertable1 key
    current-user bootstrap settings
  • apttable9 keys
    apt-specific bootstrap package config
  • dnftable3 keys
    dnf-specific bootstrap package config
  • brewtable3 keys
    Homebrew-specific bootstrap package config
  • hookstable50 keys
    commands to run before and after bootstrap phases
  • declarative mise shell activation snippets, applied with mise bootstrap mise-shell-activate apply
  • secretstable4 keys
    sensitive bootstrap inputs read from environment variables, keyed by secret name
  • groupstableexperimental4 keys
    Linux groups that bootstrap creates or removes, keyed by group name
  • userstableexperimental13 keys
    Linux users that bootstrap creates or removes, keyed by user name

daemon_groupsexperimental

Experimental named groups of project daemons. Members are daemon names or other group names declared in the same project.

  • Type: table
  • <name>string[] | table1 key
    Daemon or group names in this project.

daemon_providersexperimental

Experimental shared servers owned by the user. Only allowed in global configuration.

  • Type: table

daemonsexperimental

Experimental project daemons: custom pitchfork commands or managed presets.

  • Type: table

daemons_settingsexperimental

Experimental project-wide daemon options.

  • Type: table
  • namespacestring
    Fixed pitchfork namespace for this project, replacing the hashed default so other projects can refer to its daemons by qualified ID.
  • Append a worktree-specific suffix to an explicit namespace when the project root is a linked git worktree. Default: true.

deps

configure deps providers

  • Type: table
  • disablestring[]
    Disable specific deps providers
  • npmtable10 keys
    Prepare provider configuration
  • yarntable
    Prepare provider configuration Same keys as deps.npm.
  • pnpmtable
    Prepare provider configuration Same keys as deps.npm.
  • buntable
    Prepare provider configuration Same keys as deps.npm.
  • aubetable
    Prepare provider configuration Same keys as deps.npm.
  • denotable
    Prepare provider configuration Same keys as deps.npm.
  • gotable
    Prepare provider configuration Same keys as deps.npm.
  • piptable
    Prepare provider configuration Same keys as deps.npm.
  • poetrytable
    Prepare provider configuration Same keys as deps.npm.
  • uvtable
    Prepare provider configuration Same keys as deps.npm.
  • bundlertable
    Prepare provider configuration Same keys as deps.npm.
  • Prepare provider configuration Same keys as deps.npm.
  • darttable
    Prepare provider configuration Same keys as deps.npm.
  • fluttertable
    Prepare provider configuration Same keys as deps.npm.
  • Prepare provider configuration Same keys as deps.npm.
  • <key>table
    Prepare provider configuration Same keys as deps.npm.

doctor

Project diagnostic checks, run explicitly with mise doctor project.

  • Type: table

dotenvdeprecated

dotenv file(s) to load. Deprecated; use env._.file instead. This will be removed in mise 2027.4.0.

  • Type: string | string[]

dotfile_groups

named directory trees of dotfiles, applied with mise dotfiles apply or mise bootstrap while [bootstrap] dotfile_groups selects them (or is unset)

  • Type: table

dotfiles

dotfiles applied with mise dotfiles apply or mise bootstrap, keyed by target path or a logical name when every variant overrides the target; an omitted source for the latter resolves the relative key under dotfiles.root

  • Type: table

env

environment variables to set

  • Type: table | table[]
  • _table20 keys
    environment modules
  • <NAME>table | string | integer | boolean11 keys
    an environment variable: its value, or a table with value, default, required or age

env_filedeprecated

dotenv file(s) to load. Deprecated; use env._.file instead. This will be removed in mise 2027.4.0.

  • Type: string | string[]

env_pathdeprecated

PATH entries to add. Deprecated; use env._.path instead. This will be removed in mise 2027.4.0.

  • Type: string | string[]

experimental_monorepo_rootdeprecated

deprecated alias of monorepo_root

  • Type: boolean

history

dotfiles history: what is never captured, reload commands, and the setup repository (https://mise.jdx.dev/history.html)

  • Type: table
  • encryptiontable1 key
  • excludestring[]
    globs never captured by dotfiles history; a !glob entry re-includes a path an earlier glob excluded
  • git_emailstring
    email used for history commit authors and committers; {hostname} expands to this machine's hostname
  • machinestring
    this machine's name in per-machine streams (variants = [{ machine = true }]) instead of the name generated with the history store
  • reloadtable1 key
    commands run once after a rollback or undo writes a path matching the glob (trusted global or system config only)
  • origintable2 keys
    the setup repository this machine publishes to and fetches from; machine-local, written by mise bootstrap dotfiles origin set

hooks

hooks to run on events like cd, enter, leave

  • Type: table

include

config files merged into this one, ranking just below it: a local path (relative to this file), git:://.toml?ref= or oci::/[:tag|@sha256:] (the artifact holds a mise.toml). Paranoid mode requires a commit sha or digest for remote includes and rejects local ones; otherwise a branch or tag is refreshed after fetch_remote_versions_cache

  • Type: string | string[]

min_version

minimum version of mise required to use this config

  • Type: string | table
  • hardstring
    error if current mise is lower than this version
  • softstring
    warn if current mise is lower than this version

monorepo

configuration for monorepo task discovery

  • Type: table
  • config_rootsstring[]
    Explicit list of config root paths for monorepo task discovery. Supports single-level glob patterns (*). When set, skips filesystem walking for better performance.
  • path_aliasestable1 key
    Short names for configured monorepo task roots. Keys are single path segments; values are paths in config_roots.
  • lockfileboolean
    Use a single lockfile at the monorepo root for descendant config roots. true opts in now, false keeps lockfiles next to subproject configs, and unset keeps the current behavior until the scheduled default flip.
  • task_defaultstable1 key
    Task defaults applied by task name across inferred and explicit workspace projects
  • projectstable8 keys
    Explicit additions, removals, and overrides applied to provider-inferred workspace projects

monorepo_root

marks this config as a monorepo root for task path syntax

  • Type: boolean

oci

configuration for mise oci build

  • Type: table
  • fromstring
    Base image reference (overrides the oci.default_from setting)
  • tagstring
    Default tag applied to the built image
  • workdirstring
    Working directory baked into the image config
  • entrypointstring[]
    Entrypoint baked into the image config
  • cmdstring[]
    Cmd baked into the image config
  • userstring
    User baked into the image config
  • user_idinteger
    Numeric UID assigned to tar layer entries
  • group_idinteger
    Numeric GID assigned to tar layer entries. Defaults to user_id when unset
  • Override where mise installs go in the image (default /mise)
  • copytable[]2 keys
    Host files or directories copied into the image as independent layers
  • envtable1 key
    Extra env vars baked into the image config
  • labelstable1 key
    Labels baked into the image config

plugins

plugins to use

  • Type: table
  • <name>string
    url to plugin repository

redactions

env or vars keys to redact from logs

  • Type: string[]

secretsexperimental

Sources for mise secrets: values resolved only when mise starts a task or mise x command that was granted them. Project config only.

  • Type: table

settings

mise settings

shell_alias

shell aliases

  • Type: table

task_config

configuration for task execution and management

  • Type: table
  • cascadeboolean
    cascade task configuration to descendant config roots Default: false.
  • dirstring
    default directory to run tasks in defined in this file
  • shellstring
    default shell to run tasks with in this config scope
  • cachetable4 keys
    default experimental local artifact cache configuration for eligible tasks with sources and explicit outputs
  • rust_cacheboolean | tabledeprecated2 keys
    deprecated no-op; use mbx for Rust action caching instead: https://mr-boxington.jdx.dev/getting-started
  • global_envstring[]experimental
    experimental ambient environment variable names added to every enabled task cache key in this config scope
  • global_pass_through_envstring[]experimental
    experimental ambient environment variable names preserved under environment denial without affecting task cache keys
  • global_inputsstring[]experimental
    experimental config-root-relative source patterns added to every task in this config scope; entries may reference input groups with @group:
  • input_groupstableexperimental1 key
    experimental reusable config-root-relative source groups referenced with @group:
  • includesstring[]
    files/directories to include searching for tasks. Can be local paths, git repository URLs using git:: prefix (e.g., git::https://github.com/org/repo.git//path?ref=branch), or OCI artifacts using oci:: prefix (e.g., oci::ghcr.io/org/tasks:1.0.0)
  • excludesstring[]
    config-root-relative paths or glob patterns to exclude from file-task discovery

task_templates

task templates that can be extended by tasks via extends

  • Type: table
  • <name>table39 keys
    task template that can be extended by tasks

tasks

task runner tasks

  • Type: table
  • <name>string | (string | table)[] | table95 keys
    a task: a script, a list of scripts and task references, or a table

tool_alias

Tool version aliases

  • Type: table

tool_config

policy for tools declared by this config root

  • Type: table
  • lockedboolean
    require tools declared by this config root to resolve and install from their lockfiles Default: false.

tools

dev tools to use

  • Type: table
  • <tool>(string | table)[] | string | table22 keys
  • <github:…>(string | table)[] | string | table35 keys
  • <gitlab:…>(string | table)[] | string | table18 keys
  • <forgejo:…>(string | table)[] | string | table18 keys
  • <ubi:…>(string | table)[] | string | table15 keys
  • <http:…>(string | table)[] | string | table39 keys
  • <s3:…>(string | table)[] | string | table35 keys
  • <aqua:…>(string | table)[] | string | table6 keys
  • <cargo:…>(string | table)[] | string | table13 keys
  • <npm:…>(string | table)[] | string | table8 keys
  • <pypi:…>(string | table)[] | string | table10 keys
  • <pipx:…>(string | table)[] | string | table
    Same keys as tools.<pypi:…>.
  • <gem:…>(string | table)[] | string | table1 key
  • <go:…>(string | table)[] | string | table1 key
  • <conda:…>(string | table)[] | string | table1 key
  • <spm:…>(string | table)[] | string | table13 keys
  • <packslip:…>(string | table)[] | string | table10 keys
  • <spinel:…>(string | table)[] | string | table5 keys
  • python(string | table)[] | string | table2 keys
  • java(string | table)[] | string | table1 key
  • rust(string | table)[] | string | table4 keys
  • dotnet(string | table)[] | string | table1 key
  • dotnet-core(string | table)[] | string | table1 key

vars

variables to set for use in config templates

  • Type: table
  • _table2 keys
    vars modules
  • <name>string | integer | true | table11 keys
    a variable: its value, or a table with value, default, required or age

watch_files

files to watch for changes and run scripts when modified

  • Type: table[]
  • [].runstring
    script to run when file changes
  • [].shellstring
    inline shell command used to run script when file changes
  • [].patternsstring[]
    patterns to watch for
  • [].taskstring
    mise task to run when file changes

wrappers

commands that intercept a binary name before delegating to the active toolset

  • Type: table
MIT LicenseCopyright © 2026jdx.dev