macOS
brew install treefmtlocal Homebrew formula metadata
sudo port install treefmtMacPorts ports tree · devel/treefmt/Portfile · source: api.github.com
brew
One CLI to format the code tree. Version 2.5.0 via Homebrew; verified 2026-06-29.
install
brew install treefmtlocal Homebrew formula metadata
sudo port install treefmtMacPorts ports tree · devel/treefmt/Portfile · source: api.github.com
nix profile install nixpkgs#treefmtnixpkgs package indexes · pkgs/by-name/tr/treefmt/package.nix · source: api.github.com
overview
One CLI to format the code tree
history
treefmt is a formatter multiplexer: one CLI that runs the right formatters across a source tree from a project-level configuration file.
Numtide's README explains treefmt as a response to polyglot repositories, where each language brings its own formatter and teams repeatedly reimplement scripts to run them. treefmt turns that recurring script into one command.
The project emphasizes a unified CLI and output, parallel execution, and tracking changed files so that formatting does not always have to scan and rewrite an entire repository. Its documentation centers the `treefmt.toml` file in the project root as the place where formatter commands, options, and include globs are declared.
By 2026 the GitHub repository had multiple major releases, Go and Nix build metadata, and related tooling such as treefmt-nix, reflecting its adoption in Nix-heavy and polyglot development workflows.
treefmt's adoption is closely tied to repositories that do not want language-specific formatting scripts in every project. It is packaged by Homebrew, MacPorts, and Nix, and the upstream README explicitly points Nix users at treefmt-nix.
For package users, the attraction is boring consistency: install one binary, commit one `treefmt.toml`, and let CI or pre-commit workflows run all configured formatters the same way.
A project usually creates `treefmt.toml` with `treefmt --init`, defines formatter sections with command, options, and include globs, and then runs `treefmt` from the project root.
Package nerds use it to standardize formatting across Nix, Rust, Go, JavaScript, and other mixed-language repos without maintaining a custom shell script per repository.
treefmt is significant because it packages repository formatting as a composable CLI rather than a pile of local scripts. That matters to reproducible developer environments, especially where Nix flakes and CI expect declarative tooling.
security posture
narrow executable package without higher-risk signals.
green risk · low confidence · appliance
Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.
local files
These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.
Config paths the tool may read or write during local use.
treefmt.tomlexecutables
| Command | Kind | Exposure | Note |
|---|---|---|---|
treefmt | cli | global executable |
freshness
These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.
https://github.com/numtide/treefmt
install metadata
| Package key | brew:treefmt |
|---|---|
| Version | 2.5.0 |
| Package manager | Homebrew |
| Package manager page | https://formulae.brew.sh/formula/treefmt |
| Homepage | https://treefmt.com/latest/ |
| Repository | https://github.com/numtide/treefmt |
| Upstream docs | https://treefmt.com/latest |
| License | MIT |
| Source archive | https://github.com/numtide/treefmt/archive/refs/tags/v2.5.0.tar.gz |
| Last updated | 2026-06-29T12:01:53Z |
| Pulse | updated |
| Build dependencies | go |
| Bottle | available (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux) |
| Homebrew post-install | not defined |
| Service | none declared |
registry facts
| Source Database | Homebrew formula API |
|---|---|
| Tap | homebrew/core |
| Full Name | treefmt |
| Version Scheme | 0 |
| Revision | 0 |
| Head Version | HEAD |
| Bottle Stable Root URL | https://ghcr.io/v2/homebrew/core |
| Deprecated | no |
| Disabled | no |
| Keg Only | no |
| URL Keys |
|
source database matches
Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.
treefmt
nix profile install nixpkgs#treefmttreefmt
sudo port install treefmtsource trail
This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.
View the package source record on GitHub.