cd /news/developer-tools/better-than-stock-cli-tools-for-ai-c… Β· home β€Ί topics β€Ί developer-tools β€Ί article
[ARTICLE Β· art-65681] src=gist.github.com β†— pub= topic=developer-tools verified=true sentiment=Β· neutral

Better-Than-Stock CLI Tools for AI Coding Agents on macOS

A developer argues that macOS's built-in CLI tools like grep, find, and cat are suboptimal for AI coding agents, recommending modern replacements such as ripgrep, fd, and jq for better context economy, fewer round trips, and structured output. ripgrep is noted as the only tool with vendor backing, bundled by Claude Code and Codex CLI, while others are unofficial but preferred by models when available. The developer provides a table of recommended tools and their installation via Homebrew.

read6 min views9 publishedJul 10, 2026

macOS ships grep

, find

, and cat

β€” decades-old, POSIX-correct, and worse choices than the modern replacements once an LLM is the one calling them. Three reasons that's true, not just aesthetic preference:

Context economy. ripgrep and fd skip.git

,node_modules

, and build output by default and print compactfile:line:match

results.grep -r

/find

without carefully hand-tuned exclusions dump everything, and every irrelevant line an agent reads is context it paid for and now has to reason past.Fewer wasted round trips. Models are trained on a decade of GitHub, Stack Overflow, and blog content where these newer tools are increasingly the default. They emit correctrg

/fd

/jq

flags on the first try more reliably than the equivalentfind -exec grep

orawk

incantation β€” a failed command is a full extra turn burned on repair, not just a lost second.Structured output.jq

/yq

hand back parseable slices of JSON/YAML instead of a blob the model has to re-derive values from by eye, which is slower and more error-prone than it looks.

None of this requires the model to have been fine-tuned on any specific tool. It only requires the tool to be on $PATH

β€” every harness below either bundles ripgrep itself or falls back to whatever it finds, and all of them will reach for a better tool over a worse one if you give them the choice.

ripgrep is the one tool with actual vendor backingβ€” Claude Code and Codex CLI bundle it and are documented to prefer it overgrep

; everything else below isunofficial: no vendor documents it, but it's what a model reaches for when it's on$PATH

.- Install the replacements once, globally, and stop thinking about it β€” see copy-paste. - Node.js 22+ is the real gatekeeper for actually running these harnesses (separate from the tools they call) β€” Claude Code, Codex CLI, and Qwen Code all need it.

  • For open-weight models, DeepSeek and GLM/Zhipu don't have a verified first-party terminal agent as of this research pass β€” see below.
Tool Replaces Status Why it's worth it for an agent loop Install
rg )

grep

Confirmedβ€” Claude Code'sGrep

tool is built onripgrep (its own syntax, not POSIX regex) and bundles a binary per-platform; Codex CLI bundles/depends on it too and has a documented crash history (spawn rg ENOENT

) without it. Qwen Code's Homebrew formula pulls it in as a dependency..gitignore

-aware, compact match output β€” the single biggest context-economy win on this listbrew install ripgrep

fdfind

.gitignore

-aware, compact-output logic as ripgrep, and it's what a model defaults to over find -exec

chains when it's presentfind

+grep

+xargs

often needs for the same resultbrew install fd

jqgh api

/HTTP responses into a structured slice instead of a blob the model re-derives values from by eyebrew install jq

treefind

/ ls -R

$PATH

ls

/find

brew install tree

batcat

youreview what the agent touched, not the agent itselfbrew install bat

fzfbrew install fzf

gitbrew install git

ghbrew install gh

Language toolchains follow the same logic once you're inside a specific stack β€” uv

/ruff

for Python, whatever your repo needs. No vendor documents shelling out to a specific linter; they call whatever's on $PATH

if you tell them to.

Assistant Vendor Runtime prereq Install (Homebrew) Alternative install
Claude Code
Anthropic Node.js (native installer avoids needing it yourself) brew install --cask claude-code (stable) / claude-code@latest
Native installer (curl script)
Codex CLI
OpenAI None strictly required β€” standalone binary brew install --cask codex
npm install -g @openai/codex or `curl -fsSL https://chatgpt.com/codex/install.sh sh`
Qwen Code
Alibaba Node.js β‰₯ 22 (npm path only) brew install qwen-code (homebrew/core, prebuilt bottle, pulls in Node + ripgrep)
npm install -g @qwen-code/qwen-code@latest or standalone install script
MiMo Code
Xiaomi Inherits

curl -fsSL https://mimo-code.xiaomi.com/install.sh | sh

Codex CLI additionally sandboxes its shell tool (Seatbelt on macOS) and disables outbound network by default β€” worth knowing before debugging why curl

"hangs" inside it.

Sources: Claude Code setup docs, OpenAI Codex CLI repo, Qwen Code repo, Qwen Code docs, XiaomiMiMo/MiMo-Code.

Qwen Code (Alibaba) is the strongest entry here β€” a proper terminal agent with its own repo, docs, MCP/LSP/Plan Mode support, and a real Homebrew formula. Requires Node β‰₯ 22 for the npm path (Ink 7 + React 19 need it); the standalone script and brew formula sidestep that.

MiMo Code (Xiaomi) is honest about not reinventing the wheel: its own README states it's "built as a fork of OpenCode," adding persistent memory, subagent orchestration, and autonomous goal-driven loops on top of OpenCode's existing provider/TUI/LSP/MCP/plugin architecture. If you already run OpenCode, MiMo Code is closer to a feature branch than a new tool.

DeepSeek and GLM/Zhipu: no verified official first-party terminal coding agent turned up for either in this research pass β€” that's a real gap in what's documented publicly, not a claim that one doesn't exist. In practice, both model families are typically driven through third-party or generic harnesses (OpenCode, Aider, Crush, Cline/Roo) rather than a vendor-branded CLI. One thing worth flagging with an explicit confidence caveat: as of my last verified (pre-mid-2026) knowledge, Zhipu marketed GLM models as Anthropic-API-compatible specifically so you could point Claude Code itself at a GLM endpoint via ANTHROPIC_BASE_URL

β€” if that's still true, the "tool to install" for GLM is just Claude Code again. I did not reconfirm this in the current research pass, so treat it as a lead to verify, not a fact to build on.

brew install ripgrep git gh

brew install fd jq fzf bat tree

brew install --cask claude-code   # Anthropic
brew install --cask codex         # OpenAI
brew install qwen-code            # Alibaba (open-weight)
curl -fsSL https://mimo-code.xiaomi.com/install.sh | sh   # Xiaomi (open-weight)
  • Findings for Claude Code andCodex CLI are backed by official docs, official repos, and live GitHub issues β€” highest confidence in this file. Qwen Code is backed by its own repo and docs β€” high confidence.MiMo Code's fork relationship is confirmed by its own README; its exact tool-shelling conventions (does it bundlerg

the way Claude Code/Codex do, or just call systemrg

?) were not independently verified.DeepSeek andGLM/Zhipu produced no verifiable claims about an official coding CLI β€” an evidence gap, not a negative finding.- Several specific "here's the exact required tool list" claims from blog sources were checked and refutedβ€” that framing doesn't hold up against what vendors actually document, which is why everything but ripgrep above is labeled unofficial rather than required. - This snapshot is dated 2026-07-10, after this assistant's own January 2026 training cutoff β€” everything above came from live verification this session, not memorized knowledge. Re-check before relying on it months out; this space moves fast.

Claude Code β€” Advanced setupClaude Code β€” Tools referenceClaude Code β€” Permissionsanthropics/claude-code β€” GitHub issue #6415openai/codex β€” GitHub repoopenai/codex β€” AGENTS.mdOpenAI Codex CLI docsopenai/codex β€” issue #10390 (sandbox network)OpenAI β€” Agent approvals & securityQwenLM/qwen-code β€” GitHub repoQwen Code docs β€” OverviewXiaomiMiMo/MiMo-Code β€” GitHub reporipgrep vs grep β€” benchmarks and why AI agents use rg

── more in #developer-tools 4 stories Β· sorted by recency
── more on @claude code 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain β€” perfect for shipping the agent you just read about.

$git push zahid main
β†’ Live at https://your-agent.zahid.host βœ“
Get free account β†’ Pricing
from €0/mo Β· no card required
LIVE [news/better-than-stock-cl…] indexed:0 read:6min 2026-07-10 Β· β€”