Implement GitOps workflows with ArgoCD and Flux for automated, declarative Kubernetes...
npx skills add dstotijn/agent-skills --skill "mise"
Install specific skill from multi-skill repository
# Description
This skill should be used when the user asks to "start a new project", "init project", "create a project", "scaffold project", "install node", "add python", "set up a project", "install dependencies", or when working in a project that uses development tools like Node.js, Python, Go, Ruby, or Rust. Also use when encountering global tool usage (npm -g, pip install without venv, uv tool install) to redirect to mise-managed tools.
# SKILL.md
name: mise
description: This skill should be used when the user asks to "start a new project", "init project", "create a project", "scaffold project", "install node", "add python", "set up a project", "install dependencies", or when working in a project that uses development tools like Node.js, Python, Go, Ruby, or Rust. Also use when encountering global tool usage (npm -g, pip install without venv, uv tool install) to redirect to mise-managed tools.
Mise Tool Management
Mise is a polyglot version manager for development tools. All tool installations and version management should go through mise to ensure reproducibility and avoid global tool pollution.
Starting New Projects
When creating a new project, always create a mise.toml as part of the initial setup. This ensures tooling is version-controlled from the start.
Core Principle: Always Pin Versions
Always use fully pinned versions in mise.toml for reproducibility. Never use partial versions or "latest".
# Good - fully pinned
node = "22.11.0"
python = "3.12.7"
go = "1.23.4"
# Bad - unpinned or partial
node = "22"
python = "latest"
uv = "latest"
To find the current version to pin:
mise ls-remote node | tail -1 # Latest available
mise current node # Currently active version
Core Principle: No Global Tools
Never install tools globally. This includes:
- npm install -g or npm i -g
- pip install outside a virtual environment
- uv tool install
- gem install globally
- go install to GOPATH
Instead, use mise to manage all tool versions per-project or globally via mise.
Checking for mise.toml
When working in a project, first check if mise configuration exists:
ls -la mise.toml .mise.toml .tool-versions 2>/dev/null
If none exists and the project uses development tools, propose creating a mise.toml.
Creating mise.toml
For a new project or one missing mise configuration:
[tools]
node = "22.11.0"
python = "3.12.7"
[env]
# Project-specific environment variables
_.path = ["./node_modules/.bin", "./scripts"]
Common Tool Configurations
Node.js project:
[tools]
node = "22.11.0"
[env]
_.path = ["./node_modules/.bin"]
Python project:
[tools]
python = "3.12.7"
uv = "0.5.11"
[env]
_.path = ["./.venv/bin"]
Go project:
[tools]
go = "1.23.4"
Multi-language project:
[tools]
node = "22.11.0"
python = "3.12.7"
go = "1.23.4"
[env]
_.path = ["./node_modules/.bin", "./.venv/bin"]
Installing Tools
After creating or modifying mise.toml:
mise install
To install a specific tool:
mise use [email protected] # Add to mise.toml and install
mise install [email protected] # Install without modifying mise.toml
Checking Installed Tools
mise ls # List installed tools
mise current # Show active versions in current directory
mise doctor # Diagnose mise setup issues
Handling Global Tool Requests
When the user asks to install something globally:
-
npm packages: Add as dev dependency or use npx
bash npm install --save-dev prettier # Instead of npm i -g prettier npx prettier # Run without installing -
Python packages: Use uv with mise, or project venv
bash # In mise.toml, ensure uv is available uv pip install package # Installs to project venv -
CLI tools: Add to mise.toml with pinned version
bash mise use [email protected] mise use [email protected]
References
references/advanced.md- Migration from asdf, environment variables, tasks, and troubleshootingreferences/lefthook.md- Setting up lefthook git hooks manager with mise postinstall automationreferences/uv.md- Python package management with uv, pyproject.toml setup, and mise integration
# Supported AI Coding Agents
This skill is compatible with the SKILL.md standard and works with all major AI coding agents:
Learn more about the SKILL.md standard and how to use these skills with your preferred AI coding agent.