Repository navigation
Install
Download Grux.dmg, open it, and drag Grux AI into Applications. Free, MIT licensed, for macOS 14 or later on Apple silicon, signed with a Developer ID and notarized by Apple.
Or with Homebrew: brew install --cask dotcomjack/tap/grux
What is new in 3.2: private by default, and fast on the model made for your Mac
A Mac with Ollama gets Grux Local, the model trained for Grux, in one click at first run and sized to its memory. On a 16 GB Mac, Grux Local 2B answers in about 2 seconds (35 of 35 replies within 3.4 s, median 2.3 s) and its first reply after a ten-minute pause comes in 0.62 s, down from 6 s. Grux says when a new version is out and asks nothing about you to find out. Self-Upgrade runs end to end and waits for your approval.
- Grux Local in one click at first run. With Ollama running and no model yet, the model step offers the Grux Local made for this Mac's memory: 2B on an 8 GB Mac, 4B on 16 GB, 9B on 24 GB and up. One press downloads it from gruxai.com and points chat at it; nothing downloads before the press. Without Ollama the step links to ollama.com.
- The first word from a local model comes in 2 to 3 seconds instead of 14 to 20. Grux sends what stays the same in the same bytes every turn, so the model picks up where it left off. Measured on a 16 GB Mac with Qwen 3.5 4B: the first word in 2.3 to 2.9 seconds, down from 14 to 20.
- The first local reply after a pause comes sooner. Grux warms the fixed part of the prompt when it opens and when you come back to it. Measured on a 16 GB Mac: Grux Local 2B's first reply after a ten-minute pause went from 6 s to 0.62 s, and Grux Local 4B's from 16.7 s to 1.32 s.
- Grux tells you when a new version is out. Once a day it asks GitHub's public release page; if a newer Grux AI exists, Now says so with Download and Not now. The request carries nothing about you, Grux never downloads or installs anything by itself, and Settings, General turns it off.
- Grux recommends Grux Local, its own local model, in the Local Models list, ranked by a measured score on Grux's own jobs, and only among models your Ollama can run.
- A model download that stalls tries again, up to five times, and resumes where it stopped.
- Self-Upgrade runs end to end. A pass files what it found as proposals, builds one at a time (never on a nearly full disk), grades the test run against a bar measured on your Mac, has a reviewer read every changed file, refuses anything it did not read, never installs a change to Grux's own safety checks by itself, says when it last ran and when it will run next, and runs on the schedule you pick, every one off until you turn it on. Its builds report on the Self-Upgrade pane only, never into your chat.
- When Grux needs your OK, it says so. A local model could answer "Got it. You're good to go." while the request sat in Approvals; now Grux adds "Not done yet:" and what is waiting. It never says it started something it did not.
- Deleting asks first, everywhere, and Grux asks before it puts anything on your calendar.
- Approvals and every popup read in Light.
- Local models that think answer every job again, and faster. Grux tells a thinking model not to think for tool-style jobs.
- A question never opens YouTube or Chrome.
- Every pointer to Settings names a place you can find, every action button reads whole, and every setup card says what is missing and why.
Also in this release
- Compact tool signatures for a Grux Local v3 model: when the local model is a
-v3tag, each trained tool goes out as a one-line signature instead of its full description. - Quitting Grux from Terminal is an ordinary quit: SIGTERM saves and quits the way Quit does.
- A macro or workflow step that starts something in the background now finishes.
- Grux never scripts or opens another app in headless mode, and a headless Mac never gets a Keychain dialog.
- Settings tells the truth about offline mode, the microphone, the accent contrast, what each key unlocks, what leaves your Mac, and when the last decision was.
- Agents shows money like money, and says when a job spent past its budget.
Build
Built from commit 93a5b8e and tagged on 6510612; the two differ by documentation only (CHANGELOG.md, README.md, docs/), so the source under the tag is the source of this binary. CI run 41284328510 on the tagged commit: 4,902 tests, 0 failures.
Checksums (SHA-256)
806108d3117386ea883dc300e7e7d2253b23c93c2b4a694a9f075efa22ca818d Grux.dmg
65120b698394bede640e55b36aed3fdf9af0503b445ae7b77cbe6c20780a09ef Grux-3.2.0-macOS-arm64.zip
Full history: CHANGELOG.md