From mise-toolkit
Cross-cutting overview of how to wire mise into every major IDE — VSCode, JetBrains, Neovim, Xcode, Zed, Sublime Text. The "if you're not sure where to start" entry point that points to per-IDE skills for depth. Use when a user says "how do I make my IDE see mise".
npx claudepluginhub ray-manaloto/claude-code-marketplace --plugin mise-toolkitThis skill uses the workspace's default tool permissions.
Every IDE has the same fundamental problem: **how does it find the tool versions that mise pins for this project?** There are only four ways to solve it, and every IDE uses one or more of them.
Searches, retrieves, and installs Agent Skills from prompts.chat registry using MCP tools like search_skills and get_skill. Activates for finding skills, browsing catalogs, or extending Claude.
Checks Next.js compilation errors using a running Turbopack dev server after code edits. Fixes actionable issues before reporting complete. Replaces `next build`.
Guides code writing, review, and refactoring with Karpathy-inspired rules to avoid overcomplication, ensure simplicity, surgical changes, and verifiable success criteria.
Share bugs, ideas, or general feedback.
Every IDE has the same fundamental problem: how does it find the tool versions that mise pins for this project? There are only four ways to solve it, and every IDE uses one or more of them.
~/.local/share/mise/shims is a directory of shim scripts. Each shim is named after a tool (python, node, go, etc.) and resolves to the project-appropriate version by reading mise.toml at invocation time.
Put this directory on PATH and 90% of IDE-mise problems disappear. Anywhere the IDE types python or spawns node, it hits a shim and gets the right version.
This is universal: works in every IDE that respects PATH, which is all of them.
mise activate in the login shellIf you run eval "$(mise activate zsh)" in ~/.zshrc (or ~/.bash_profile), then any IDE launched from a terminal inherits the activation. This also handles env vars from [env], not just tools.
The catch: IDEs launched from GUI launchers (Alfred, Spotlight, Dock, taskbar) don't always run the login shell. So this alone isn't enough.
A few IDEs have first-party mise plugins:
hverlin.mise-vscode134130/intellij-miseThese plugins read mise.toml directly and integrate mise tasks + tools into the IDE UI.
mise's install layout is asdf-compatible. Any IDE with asdf support (older JetBrains, some language plugins) can be pointed at mise's installs by symlinking:
ln -sfn ~/.local/share/mise/installs ~/.asdf/installs
This is the fallback when an IDE's language plugin predates mise support but does know about asdf.
Which IDE?
├── VSCode
│ └── Install hverlin.mise-vscode + add shims to PATH in settings.json
│ Plus: automationProfile.osx login shell (see mise-vscode-integration)
│
├── JetBrains (IntelliJ, PyCharm, GoLand, etc.)
│ └── Install 134130/intellij-mise plugin
│ Fallback: asdf symlink (see mise-jetbrains-integration)
│
├── Neovim
│ └── Add vim.env.PATH prepend in init.lua
│ (see mise-neovim-integration)
│
├── Xcode
│ └── Add shims to PATH in .xcode.env.local or build phase
│ (see Xcode section below)
│
├── Zed / Sublime / Helix / other
│ └── Add shims to PATH at the OS / login-shell level, that's enough
│
└── Emacs
└── Use exec-path-from-shell, or hard-code mise shims in exec-path
If you don't want to wire every IDE individually, set mise shims on PATH at the shell level and launch every IDE from that shell:
# ~/.zshrc (or ~/.bash_profile)
export PATH="$HOME/.local/share/mise/shims:$PATH"
Now:
The downside: GUI launchers (Spotlight, Alfred) don't inherit shell env. Workarounds:
launchctl setenv PATH "$HOME/.local/share/mise/shims:$PATH" in a LaunchAgent. Persists across reboots.Environment=PATH=... in ~/.config/environment.d/mise.conf.Xcode is the most annoying case because it doesn't read shell rc files AND its build phases run in a sandbox. Pattern:
.xcode.env.local in the project root:
export PATH="$HOME/.local/share/mise/shims:$PATH"
.xcode.env:
source .xcode.env.local
There's no native Xcode plugin for mise. You're in PATH-manipulation territory.
Each IDE has its own philosophy about how to find tools:
The good news: shims-on-PATH works everywhere as a baseline. Native plugins are nice-to-haves on top.
export PATH="$HOME/.local/share/mise/shims:$PATH" in ~/.zshrc.eval "$(mise activate zsh)" in ~/.zshrc.launchctl setenv PATH "$HOME/.local/share/mise/shims:$PATH" or log out and back in after editing PATH.If something still doesn't see the right version, read the per-IDE skill for that IDE.
mise-vscode-integration — VSCode depth, including the automation profile quirk.mise-jetbrains-integration — JetBrains depth, including the asdf symlink.mise-neovim-integration — Neovim depth, including the vim.env.PATH pattern.mise-pathing-and-shims — what shims actually are under the hood.mise-shell-activation — shell-level activation details./mise-vscode-setup and /mise-jetbrains-setup — guided wiring commands.