Where Does Proto Store Tools and Versions?
Proto installs toolchains under ~/.proto in your home folder, pinned per project by a .prototools file.
Last updated
Proto keeps every managed toolchain inside .proto in your home directory. Downloaded tools share a central store, with shims and bins wired onto your PATH by the installer. Projects pin what they need in a .prototools file at the root.
That split keeps machines reproducible. The store holds the bytes once, while each project file declares versions. Moon workspaces layer their own toolchain config on top. Exact subfolder names inside .proto have moved across releases, so treat the store as managed and edit only the pin file.
Where Proto stores this, by platform
~/.proto
Tool store, shims, and bins managed by proto commands. Pin versions per project in [ProjectDir]/.prototools. Treat store internals as managed and edit only pins.
~/.proto
Same home folder store on Mac. Shell setup appends the shim dir to PATH. Homebrew installs still keep tool data here, not in the Cellar.
C:\Users\[username]\.proto
Same store under your profile. Git Bash and PowerShell both resolve shims once PATH is set. Exact inner layout may vary by proto release.
Frequently asked questions
How do I pin tool versions for a project?
Open .prototools at the project root. Each line pins one tool to a version or alias. Commit the file so every checkout installs the same chain. The global version in ~/.proto only applies outside projects.
Can I keep several versions of one tool?
Yes. proto install fetches the pinned chain into the shared store, while proto use switches the active one. Shims on PATH keep working across switches. Remove old versions with proto clean.
Notice an outdated path? Let us know.