← ClaudeAtlas

miselisted

Opinionated mise configuration — the .config/ three-file split (mise.toml / mise.dev.toml / mise.ci.toml) selected by MISE_ENV, the shared settings block, runtime-vs-dev-vs-ci tool placement, the env-value split, the CI node-gpg workaround, and the mandatory file-based task library (init,_scripts/_helpers, code/*, setup/*). Auto-applies when editing any mise config or task file.
virajp/ai-plugins · ★ 1 · AI & Automation · score 78
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