Built on Homebrew's package ecosystem

The modern

package managerfor macOS

Install command-line tools and their dependencies faster, with a simpler interface for you and your agent.

Install glu v0.1.1

curl -fsSL https://glu.run/install | bash- 2.3× faster than Homebrew

- 8,000+ packages available

- Concise output by default

- JSON Schema and plan mode for agents

A simpler way to manage your packages

Commands follow modern package-manager conventions, with concise output by default.

Download and install packages in parallel

See the packages you added

See your packages and their dependencies

Know what you’re about to install

A structured plan for your agent

View a package’s dependency tree

Suggestions for a mistyped package name

View all dependencies with glu ls --all

Would install 12 packages:

Would download: 23.6 MB

{

"ok": true,

"command": "install",

"result": {

"mode": "plan",

"requested": [

"node"

],

"would_install": [

{

"package_key": "package:fmt",

"name": "fmt",

"version": "12.2.0",

"exposure": {

"mode": "global"

},

"status": "would_install",

"installed": false,

"declared": false,

"deactivated": false,

"direct": false,

"transitive": true,

"cached": false,

"download_bytes": 288291

},

{

"package_key": "package:ada-url",

"name": "ada-url",

"version": "4.0.0",

"exposure": {

"mode": "global"

},

"status": "would_install",

"installed": false,

"declared": false,

"deactivated": false,

"direct": true,

"transitive": false,

"cached": false,

"download_bytes": 340859

},

{

"package_key": "package:hdrhistogram_c",

"name": "hdrhistogram_c",

"version": "0.11.10",

"exposure": {

"mode": "global"

},

"status": "would_install",

"installed": false,

"declared": false,

"deactivated": false,

"direct": true,

"transitive": false,

"cached": false,

"download_bytes": 43561

},

{

"package_key": "package:libffi",

"name": "libffi",

"version": "3.8.0",

"exposure": {

"mode": "isolated",

"reason": "Provided by macOS"

},

"status": "would_install",

"installed": false,

"declared": false,

"deactivated": false,

"direct": true,

"transitive": false,

"cached": false,

"download_bytes": 270967

},

{

"package_key": "package:libngtcp2",

"name": "libngtcp2",

"version": "1.25.0",

"exposure": {

"mode": "global"

},

"status": "would_install",

"installed": false,

"declared": false,

"deactivated": false,

"direct": true,

"transitive": false,

"cached": false,

"download_bytes": 428867

},

{

"package_key": "package:libuv",

"name": "libuv",

"version": "1.52.1",

"exposure": {

"mode": "global"

},

"status": "would_install",

"installed": false,

"declared": false,

"deactivated": false,

"direct": true,

"transitive": false,

"cached": false,

"download_bytes": 375994

},

{

"package_key": "package:simdutf",

"name": "simdutf",

"version": "9.1.1",

"exposure": {

"mode": "global"

},

"status": "would_install",

"installed": false,

"declared": false,

"deactivated": false,

"direct": false,

"transitive": true,

"cached": false,

"download_bytes": 394889

},

{

"package_key": "package:merve",

"name": "merve",

"version": "1.2.2_2",

"exposure": {

"mode": "global"

},

"status": "would_install",

"installed": false,

"declared": false,

"deactivated": false,

"direct": true,

"transitive": false,

"cached": false,

"download_bytes": 33424

},

{

"package_key": "package:nbytes",

"name": "nbytes",

"version": "0.1.4",

"exposure": {

"mode": "global"

},

"status": "would_install",

"installed": false,

"declared": false,

"deactivated": false,

"direct": true,

"transitive": false,

"cached": false,

"download_bytes": 13413

},

{

"package_key": "package:simdjson",

"name": "simdjson",

"version": "4.6.11",

"exposure": {

"mode": "global"

},

"status": "would_install",

"installed": false,

"declared": false,

"deactivated": false,

"direct": true,

"transitive": false,

"cached": false,

"download_bytes": 1451751

},

{

"package_key": "package:uvwasi",

"name": "uvwasi",

"version": "0.0.23",

"exposure": {

"mode": "global"

},

"status": "would_install",

"installed": false,

"declared": false,

"deactivated": false,

"direct": true,

"transitive": false,

"cached": false,

"download_bytes": 70145

},

{

"package_key": "package:node",

"name": "node",

"version": "26.8.2",

"exposure": {

"mode": "global"

},

"status": "would_install",

"installed": false,

"declared": false,

"deactivated": false,

"direct": true,

"transitive": false,

"cached": false,

"download_bytes": 19913400

}

],

"satisfied": [],

"would_promote": [],

"would_rename": [],

"would_remove": [],

"requires_confirmation": false,

"would_download_bytes": 23625561

}

}resolved from the registry — not installed

Error: package 'pyton@3.12' not found

8,000+ packages available

Packages come from Homebrew’s prebuilt collection. Search for the tools you use.

How it works

glu trace viewglu trace view- Written in Rust- Native performance, with explicit control over concurrency and memory.

Package correctness

Upstream behavior, ported to Rust

Relocation, signing, linking, and postinstall behavior follow Homebrew’s implementation. Ported postinstall code records the original commit, file, and line.

Inspect the implementationVerification through completion

Downloaded artifacts and reused cache entries are checksum-verified. Setup runs in sandboxed workers. Required transformations fail rather than being silently skipped.

Correctness and testingYour next install can be faster

Install glu, then try a package you use.

curl -fsSL https://glu.run/install | bash