Engineering
working-with-mise avatar

working-with-mise

Manage project dependencies with mise: add, configure, and troubleshoot tool versions, PATH activation, and config files.

Introduction

The working-with-mise skill is a comprehensive toolkit for managing polyglot development environments using mise. It is designed for developers who need to switch between different language runtimes, infrastructure tools, and CLI versions on a per-project basis. This skill assists in maintaining consistent project environments, ensuring that tools like Node.js, Python, Ruby, Go, Terraform, and Kubernetes CLIs are correctly installed and scoped to the project directory. It is intended for software engineers and DevOps practitioners who frequently encounter dependency conflicts, environment activation failures, or 'command not found' errors in terminal sessions.

  • Automatically detect existing configuration formats such as mise.toml, .mise.toml, .mise.local.toml, or legacy .tool-versions files to maintain project consistency.

  • Validate tool installation and configuration using the 'mise use' CLI to ensure syntax accuracy and registry compatibility without manual file editing.

  • Perform deep-dive diagnostics for 'command not found' issues, including checking shell activation in .zshrc, .bashrc, or config.fish, and verifying PATH resolution with 'mise doctor' and 'mise which'.

  • Distinguish between project-specific versioning requirements and stable system tools, providing guidance on whether to use mise or Homebrew/system packages.

  • Resolve complex activation issues in non-interactive shell environments, IDE terminals, or background scripts using shim-based activation strategies.

  • Analyze and reconcile discrepancies between global configurations and local directory overrides to ensure the correct tool version is executed.

  • Always prioritize the 'mise use' command over direct manual editing of TOML files to prevent configuration drift and syntax errors.

  • Utilize the skill when troubleshooting why a command might be using a system version instead of the expected project-local version.

  • Rely on 'mise doctor' and 'mise ls --current' as primary inputs for troubleshooting environment isolation.

  • Distinguish clearly between temporary test usage (mise exec) and permanent environment setup.

  • Ensure shell configuration files contain the appropriate 'mise activate' snippet for the user's specific shell environment (zsh, bash, or fish) to maintain persistent tool availability.

Repository Stats

Stars
10
Forks
3
Open Issues
5
Language
Python
Default Branch
main
Sync Status
Idle
Last Synced
May 3, 2026, 05:06 PM
View on GitHub