1
0
Fork 0
mirror of https://github.com/jdx/mise.git synced 2026-03-27 22:10:17 +00:00
dev tools, env vars, task runner
  • Rust 74.9%
  • Shell 17.1%
  • Lua 3.9%
  • TypeScript 2.9%
  • PowerShell 0.6%
  • Other 0.4%
Find a file
mise-en-dev 37997e70cd
chore: release 2026.3.17 (#8780)
### 🐛 Bug Fixes

- **(activate)** always prepend shims to front of PATH in --shims mode
by @ctaintor in [#8757](https://github.com/jdx/mise/pull/8757)
2026-03-27 05:23:00 -05:00
.cargo chore: Merge vfox.rs into jdx/mise monorepo (#5590) 2025-07-12 06:54:20 -05:00
.claude chore: update singular/plural forms for word "task" (#7448) 2025-12-19 05:27:35 +00:00
.config various CLI improvements (#1190) 2023-12-14 22:51:17 -06:00
.cursor chore: remove devcontainer and docker development setup (#8421) 2026-03-02 12:39:57 +00:00
.github security: require trust check for .tool-versions Tera templates (#8675) 2026-03-21 13:07:23 +01:00
.idea feat: improve task info support with experimental_monorepo_root (#6881) 2025-11-03 13:59:39 -08:00
cloudflare/workers fix: mise.run cloudflare worker publish (#5704) 2025-07-18 06:56:29 -07:00
completions chore: release 2026.3.17 (#8780) 2026-03-27 05:23:00 -05:00
crates chore: release 2026.3.16 (#8769) 2026-03-26 05:26:54 -05:00
docs Fix typos (#8695) 2026-03-26 07:32:56 +00:00
e2e fix(activate): always prepend shims to front of PATH in --shims mode (#8757) 2026-03-26 08:31:59 -05:00
e2e-win fix(exec): strip shims from PATH to prevent recursive shim execution (#8189) 2026-02-17 02:22:48 +00:00
man/man1 feat(github): add github_tokens.toml, git credential fill, and mise github token command (#8742) 2026-03-24 15:15:04 -05:00
packaging chore: release 2026.3.17 (#8780) 2026-03-27 05:23:00 -05:00
registry test(test_tool): redirect stderr to stdout and strip ansi codes (#8738) 2026-03-24 13:53:45 -05:00
schema feat(github): add credential_command setting for custom token retrieval (#8746) 2026-03-24 17:35:59 -05:00
scripts feat(shim): add native .exe shim mode for Windows (#8045) 2026-02-07 13:31:42 -06:00
share/fish/vendor_conf.d rtx -> mise 2024-01-02 16:29:35 -06:00
src fix(activate): always prepend shims to front of PATH in --shims mode (#8757) 2026-03-26 08:31:59 -05:00
test feat(activate): add shims directory as fallback when auto-install is enabled (#8106) 2026-02-11 10:41:10 -06:00
xtasks feat(github): add github_tokens.toml, git credential fill, and mise github token command (#8742) 2026-03-24 15:15:04 -05:00
.cliffignore chore: reset CHANGELOG 2024-11-23 10:44:56 -06:00
.dockerignore docker: build source from repo (#1122) 2023-12-07 23:28:46 -06:00
.editorconfig chore: improve shfmt linter (#5181) 2025-05-25 16:19:11 +00:00
.eslintrc.cjs fix: Improve fig spec with better generators (#3762) 2025-01-10 23:17:05 +00:00
.gitattributes chore: replace submodule with subtree (#6082) 2025-08-20 18:35:54 -05:00
.gitignore fix(tasks): implement smart flag routing for task arguments (#6861) 2025-11-02 09:45:59 -06:00
.markdown-link-check.json refactor: simplified stdout/stderr mocking in tests (#1163) 2023-12-13 21:22:43 +00:00
.markdownlint.json fix(fig): resolve __dirname error in ES module (#7021) 2025-11-20 01:37:20 +00:00
.markdownlintignore chore: consolidate all linters into hk.pkl (#8498) 2026-03-07 15:39:38 +00:00
.prettierignore docs: add comprehensive documentation for environment plugins (#6702) 2025-10-21 16:51:29 +00:00
.prettierrc.toml fix: Improve fig spec with better generators (#3762) 2025-01-10 23:17:05 +00:00
.release-skip-e2e chore: release 2025.7.26 (#5776) 2025-07-24 02:49:33 -05:00
.shellcheckrc chore: disable "useless cat" shellcheck 2025-09-16 11:07:24 -05:00
.taplo.toml refactor(registry): split registry.toml into one file per tool (#7820) 2026-01-25 18:59:34 +00:00
.yamllint.yml ci: added super-linter (#1096) 2023-12-06 15:24:20 -06:00
age.pub chore: age encrypt minisign key 2024-12-23 05:38:27 -08:00
build.rs refactor(config): consolidate flat task_* settings into nested task.* (#8239) 2026-02-18 14:04:31 +00:00
bun.lock chore(deps): lock file maintenance (#7827) 2026-01-26 06:54:48 +00:00
Cargo.lock chore: release 2026.3.17 (#8780) 2026-03-27 05:23:00 -05:00
Cargo.toml chore: release 2026.3.17 (#8780) 2026-03-27 05:23:00 -05:00
CHANGELOG.md chore: release 2026.3.17 (#8780) 2026-03-27 05:23:00 -05:00
CLAUDE.md fix(test): update vfox provenance test for checksum-backed skip (#8703) 2026-03-22 14:42:46 +00:00
cliff.toml chore(release): show registry section last in changelog (#7156) 2025-11-29 20:31:35 -06:00
communique.toml chore: replace gen-release-notes script with communique (#8289) 2026-02-21 12:49:47 -06:00
CONTRIBUTING.md chore: added back in files from git rebase 2024-11-23 10:31:59 -06:00
Cross.toml Revert "fix(build): upgrade cross images to :main for C++17 support (#7958)" 2026-02-02 03:43:46 +00:00
default.nix chore: release 2026.3.17 (#8780) 2026-03-27 05:23:00 -05:00
deny.toml chore(deps): ignore RUSTSEC-2026-0066 astral-tokio-tar advisory (#8723) 2026-03-23 07:05:41 -05:00
Dockerfile rtx -> mise 2024-01-02 16:29:35 -06:00
flake.lock fix: Update flake to fix nix build (#4686) 2025-03-21 16:23:06 -05:00
flake.nix chore: remove coverage (#3278) 2024-11-29 06:11:33 +00:00
hk.pkl chore: consolidate all linters into hk.pkl (#8498) 2026-03-07 15:39:38 +00:00
LICENSE docs: Update LICENSE 2024-12-31 12:12:14 -06:00
llms.txt docs(contributing): update hk usages (#7797) 2026-01-25 07:54:17 -06:00
minisign.key.age chore: age encrypt minisign key 2024-12-23 05:38:27 -08:00
minisign.pub feat: mise g bootstrap (#3792) 2024-12-22 19:43:34 +00:00
mise.code-workspace docs: create comprehensive architecture documentation suite and enhance development guides (#5572) 2025-07-11 09:23:01 -05:00
mise.lock fix(completions): update zsh completions for usage v3.1.0 (#8715) 2026-03-22 13:59:08 -05:00
mise.toml chore: remove pre-commit config and tool dependency (#8373) 2026-02-27 13:09:42 +00:00
mise.usage.kdl feat(github): add github_tokens.toml, git credential fill, and mise github token command (#8742) 2026-03-24 15:15:04 -05:00
package.json chore(deps): replace dependency @tsconfig/node22 with @tsconfig/node24 (#7618) 2026-01-16 19:57:20 -06:00
pitchfork.toml chore: pitchfork 2024-12-14 16:43:52 +00:00
README.md chore: release 2026.3.17 (#8780) 2026-03-27 05:23:00 -05:00
SECURITY.md refactor(registry): split registry.toml into one file per tool (#7820) 2026-01-25 18:59:34 +00:00
settings.toml feat(github): add credential_command setting for custom token retrieval (#8746) 2026-03-24 17:35:59 -05:00
snapcraft.yaml chore: release 2026.3.17 (#8780) 2026-03-27 05:23:00 -05:00
tasks.md chore: consolidate all linters into hk.pkl (#8498) 2026-03-07 15:39:38 +00:00
tasks.toml chore: remove devcontainer and docker development setup (#8421) 2026-03-02 12:39:57 +00:00
tsconfig.json chore(deps): replace dependency @tsconfig/node22 with @tsconfig/node24 (#7618) 2026-01-16 19:57:20 -06:00
zipsign.pub zipsign (#985) 2023-11-09 17:25:38 +00:00

mise
mise-en-place

Crates.io GitHub GitHub Workflow Status Discord

The front-end to your dev env

Getting StartedDocumentationDev ToolsEnvironmentsTasks


What is it?

Demo

The following demo shows how to install and use mise to manage multiple versions of node on the same system. Note that calling which node gives us a real path to node, not a shim.

It also shows that you can use mise to install and many other tools such as jq, terraform, or go.

demo

See demo transcript.

Quickstart

Install mise

See Getting started for more options.

$ curl https://mise.run | sh
$ ~/.local/bin/mise --version
              _                                        __
   ____ ___  (_)_______        ___  ____        ____  / /___ _________
  / __ `__ \/ / ___/ _ \______/ _ \/ __ \______/ __ \/ / __ `/ ___/ _ \
 / / / / / / (__  )  __/_____/  __/ / / /_____/ /_/ / / /_/ / /__/  __/
/_/ /_/ /_/_/____/\___/      \___/_/ /_/     / .___/_/\__,_/\___/\___/
                                            /_/                 by @jdx
2026.3.17 macos-arm64 (2026-03-27)

Hook mise into your shell (pick the right one for your shell):

# note this assumes mise is located at ~/.local/bin/mise
# which is what https://mise.run does by default
echo 'eval "$(~/.local/bin/mise activate bash)"' >> ~/.bashrc
echo 'eval "$(~/.local/bin/mise activate zsh)"' >> ~/.zshrc
echo '~/.local/bin/mise activate fish | source' >> ~/.config/fish/config.fish
echo '~/.local/bin/mise activate pwsh | Out-String | Invoke-Expression' >> ~/.config/powershell/Microsoft.PowerShell_profile.ps1

Execute commands with specific tools

$ mise exec node@24 -- node -v
mise node@24.x.x ✓ installed
v24.x.x

Install tools

$ mise use --global node@24 go@1
$ node -v
v24.x.x
$ go version
go version go1.x.x macos/arm64

See dev tools for more examples.

Manage environment variables

# mise.toml
[env]
SOME_VAR = "foo"
$ mise set SOME_VAR=bar
$ echo $SOME_VAR
bar

Note that mise can also load .env files.

Run tasks

# mise.toml
[tasks.build]
description = "build the project"
run = "echo building..."
$ mise run build
building...

See tasks for more information.

Example mise project

Here is a combined example to give you an idea of how you can use mise to manage your a project's tools, environment, and tasks.

# mise.toml
[tools]
terraform = "1"
aws-cli = "2"

[env]
TF_WORKSPACE = "development"
AWS_REGION = "us-west-2"
AWS_PROFILE = "dev"

[tasks.plan]
description = "Run terraform plan with configured workspace"
run = """
terraform init
terraform workspace select $TF_WORKSPACE
terraform plan
"""

[tasks.validate]
description = "Validate AWS credentials and terraform config"
run = """
aws sts get-caller-identity
terraform validate
"""

[tasks.deploy]
description = "Deploy infrastructure after validation"
depends = ["validate", "plan"]
run = "terraform apply -auto-approve"

Run it with:

mise install # install tools specified in mise.toml
mise run deploy

Find more examples in the mise cookbook.

Full Documentation

See mise.jdx.dev

GitHub Issues & Discussions

Due to the volume of issue submissions mise received, using GitHub Issues became unsustainable for the project. Instead, mise uses GitHub Discussions which provide a more community-centric platform for communication and require less management on the part of the maintainers.

Please note the following discussion categories, which match how issues are often used:

Special Thanks

We're grateful for Cloudflare's support through Project Alexandria.

Contributors

Contributors