mise/install 1.0.1

Install mise (mise-en-place) and the tools defined in its config

Parameters

Parameter
Required
Default
Description
mise-version
latest
Version of mise to install (e.g. 2026.7.11), or 'latest'
install
true
Run `mise install` to install the tools from the project config
working-directory
Directory to run `mise install` in (where mise.toml/.tool-versions lives). Defaults to the RWX workspace.

README.md

Installs mise (mise-en-place) and, by default, the tools declared in your project's mise config (mise.toml / .tool-versions).

tasks:
  - key: code
    call: git/clone

  - key: mise
    use: code
    call: mise/install 1.0.1
    filter:
      - mise.toml

This reads the mise config in the checkout root (mise.toml, .mise.toml, or .tool-versions), installs every tool it declares, and puts them on PATH.

Pin a mise version

tasks:
  - key: tools
    use: code
    call: mise/install 1.0.1
    with:
      mise-version: "2026.7.11"

Install only the mise CLI

tasks:
  - key: mise
    call: mise/install 1.0.1
    with:
      install: "false"

  - key: build
    use: [code, mise]
    run: mise exec -- ./scripts/build

Monorepo subdirectory

tasks:
  - key: tools
    use: code
    call: mise/install 1.0.1
    with:
      working-directory: services/api
    filter:
      - services/api/mise.toml

Tool versions as output values

Each resolved tool version is exported as an output value keyed by mise's tool name, so later tasks can reference a version without re-parsing the config:

tasks:
  - key: mise
    use: code
    call: mise/install 1.0.1
    filter:
      - mise.toml

  - key: print-node-version
    use: mise
    run: echo "node $NODE_VERSION"
    env:
      NODE_VERSION: ${{ tasks.mise.values.node }}

Values are the concrete resolved versions (for example 24.18.0 even if the config requested 24).

Versions are resolved from the config, so they're exported even with install: false — useful when you only need to know a version (e.g. to assert it matches a base image) without installing the tools:

tasks:
  - key: mise
    use: code
    call: mise/install 1.0.1
    with:
      install: "false"
    filter:
      - mise.toml

  - key: check-node-version
    run: test "$(node --version)" = "v$EXPECTED_NODE_VERSION"
    env:
      EXPECTED_NODE_VERSION: ${{ tasks.mise.values.node }}