Skip to content

Proto

Global proto toolchain configuration.

Installation

proto is installed via its official installer (run automatically with the base profile):

sh
curl -fsSL https://moonrepo.dev/install/proto.sh | bash -s -- --no-profile

--no-profile skips patching shell files. Shell integration is managed by os/helpers/proto.sh, which adds the following block to ~/.zshrc if not already present:

sh
export PROTO_HOME="$HOME/.proto"
export PATH="$PROTO_HOME/shims:$PROTO_HOME/bin:$PATH"

Version pinning

All tool versions are declared in config/proto/.prototools, which is symlinked to ~/.proto/.prototools when dotfiles are installed. Setup scripts read this file automatically — no versions are hardcoded in any script.

Location

FileSymlinked to
config/proto/.prototools~/.proto/.prototools

Managed tools

ToolVersion
nodelatest
npmbundled (with Node)
bunlatest
pnpmlatest
yarnlatest
python3.12.13

Settings

SettingValueDescription
auto-installtrueAutomatically install tools when missing
auto-cleantrueClean up old tool versions automatically
pin-latestglobalPin latest resolves globally
node.bundled-npmtrueBundle npm with the Node installation
npm.shared-globals-dirtrueShare npm global packages directory

Usage

sh
# Install all tools defined in .prototools
proto install

# Upgrade all tools to their latest version
proto upgrade

# List installed tool versions
proto list