miselisted
Install: claude install-skill virajp/ai-plugins
# mise Configuration
mise pins the toolchain, holds environment variables, and runs tasks. Keep all
of it under **`.config/`** — mise resolves `MISE_ENV` variants there, so the
config never clutters the repo root.
## The three-file split
A repo that is built or deployed through CI/CD splits its config by `MISE_ENV`.
Each file has one job; **never duplicate a tool or setting across files** — put
it in the lowest layer that needs it.
| File | Loaded when | Holds |
| --------------- | ------------------ | ----------------------------------------------------------------------------- |
| `mise.toml` | always (every env) | shared `[settings]`, runtime `[tools]`, common `[env]`, `[tasks.init]` |
| `mise.dev.toml` | `MISE_ENV=dev` | dev-only tooling, shell aliases, local/dev env values |
| `mise.ci.toml` | `MISE_ENV=ci` | CI/production-only settings + tools, the node-gpg workaround, prod env values |
mise loads `mise.toml` first, then deep-merges the active `MISE_ENV` variant on
top — so the variant only ever holds **deltas**, not a copy of the base.
### Selecting the environment
- **Developers** export `MISE_ENV=dev` in their shell so the dev toolchain and
local env values load automatically.
- **CI/CD pipelines** set `MISE_ENV=ci` (in the workflow env) so the CI/prod
overrides apply.
- With `MISE_ENV` unset, only `mise.toml` loads — the m