blog

12 Best Claude Code CLI Tools to Pair With Your Agent in 2026

The best Claude Code CLI tools in 2026: ripgrep, gh, jq, uv, rtk and 7 more, with licenses, exact install commands and which to install first.

Book a Free Strategy Call

Skip the read: talk to the ManasFlow team in 30 min.

Free strategy call. We map your AI engineering team, you keep the notes.

The best Claude Code CLI tools in 2026 are ripgrep for fast code search, gh CLI for GitHub workflows, jq for hook scripts, uv or bun for faster installs and test runs, and rtk for cutting token spend. Claude Code is only as fast as the shell around it. The agent reads files, runs commands, and shells out to whatever you have installed. In 2026, the difference between a Claude Code session that ships and one that burns tokens is not the model. It is the CLI tools you pair with it.

The hard part is separating the tools that actually reduce tokens and round-trips from the marketing-flavored "AI dev tools" that just wrap a chat box. We have run Claude Code daily across client engagements, internal repos, and the ManasFlow platform, and we have watched which CLIs consistently cut session time, reduce context bloat, and prevent the agent from doing dumb things.

This guide compares the 12 best Claude Code CLI tools in 2026. Real workflows, licenses, the install commands each project documents, pros and cons, and a framework to pick the right combination for your repo. Three entries (jq, ast-grep and delta) were added on 2026-09-26 from their own docs and READMEs, and we make no hands-on claims about those three here.

Last checked: October 2026 (install commands, package names, release versions and star counts re-verified on 2026-10-21).

Best Claude Code CLI tools: a brief overview

  • ripgrep (rg): Best for fast code search inside the agent loop: the de facto replacement for grep. Claude Code bundles a copy for its own Search tool, and a system install keeps your Bash searches consistent with it.
  • fzf: Best for interactive file and command selection: a fuzzy finder that pairs with rg, git, and your shell history to feed Claude Code precise paths.
  • gh CLI: Best for GitHub-native agent workflows: lets Claude Code open PRs, read issues, and triage CI without leaving the terminal.
  • jq: Best for parsing JSON in hooks and scripts: the command-line JSON processor that Claude Code's own hooks guide uses in its Bash examples.
  • repomix: Best for one-shot repo-to-prompt packing: bundles a repo into a single XML/Markdown file ready to paste into any model or feed to Claude Code.
  • files-to-prompt: Best for surgical context selection: Simon Willison's tool that flattens a chosen file set into one prompt-ready blob.
  • code2prompt: Best for token-budgeted context: Rust CLI that builds prompts from a codebase with token counts, templates, and .gitignore respect.
  • bun: Best for fast JS/TS execution: an all-in-one runtime, installer, and bundler that lets Claude Code iterate Node projects without npm slowness.
  • uv: Best for Python project setup at agent speed: an extremely fast Python package and project manager from Astral that replaces pip + venv + pyenv.
  • rtk (Rust Token Killer): Best for cutting Claude Code token spend: a CLI proxy that filters noisy command output before it reaches the agent.
  • ast-grep: Best for structural search and codemods: matches syntax tree patterns instead of text, then rewrites them.
  • delta: Best for reviewing what the agent changed: a syntax-highlighting pager for git diff, log and blame output.

GitHub stars per tool

Source: GitHub API, repository stargazer counts, checked 2026-10-21. Stars measure attention, not fit for your repo.

1. ripgrep (rg), best for fast code search inside the agent loop

ripgrep is the search engine Claude Code actually wants. The agent shells out constantly to find symbols, references, and patterns. With plain grep, every search is slow and noisy. With rg, it is fast, respects .gitignore, and returns clean output that the agent can parse in a single pass.

If you only install one tool from this list, install ripgrep. Claude Code already bundles a ripgrep binary for its Search tool, and its troubleshooting docs tell you to install the system package and set USE_BUILTIN_RIPGREP=0 when the bundled copy will not run on your machine. A system rg also means the searches Claude runs through Bash behave the same way.

Key features

  • Recursive search that the project's own published benchmarks show ahead of grep, ag and ack on most workloads
  • Respects .gitignore, .ignore, and .rgignore by default
  • Unicode and PCRE2 regex support, JSON output for scripting
  • First-class glob filtering: rg "TODO" -g "*.ts" -g "!**/dist/**"
  • Single static binary, ships in every major package manager

Best for

  • Any Claude Code user on a non-trivial repo
  • Teams that want consistent search behavior across macOS, Linux, and Windows
  • Anyone running code-search-heavy agent loops (refactors, audits, migrations)

Pricing

  • Free and open source, dual-licensed MIT or Unlicense
  • Available via brew install ripgrep, winget install BurntSushi.ripgrep.MSVC, cargo install ripgrep, most Linux package managers, and direct binaries

Pros

  • Massive speedup over default tools
  • Zero configuration to be useful
  • Output format is agent-friendly: stable, parseable, deterministic

Cons

  • No interactive UI on its own; pair with fzf for picking results
  • Regex syntax differs slightly from grep/PCRE, which trips up some scripts

Free weekly brief

Steal our production automations

The exact n8n flows, Claude Code setups, and prompts we ship for clients, broken down step by step. No spam, unsubscribe anytime.

2. fzf, best for interactive file and command selection

fzf is a fuzzy finder that turns any list into a searchable picker. For Claude Code, it is less about the agent calling fzf directly and more about you piping the agent precise paths and commands without manually typing them.

Combined with ripgrep, git, and shell history, fzf becomes the connective tissue of an agent-friendly terminal. Pick a file in one keystroke, hand it to Claude Code, get a focused edit.

Key features

  • Fuzzy matching with score-based ranking and preview pane
  • Integrates with shell history (Ctrl-R), file picker (Ctrl-T), and cd (Alt-C)
  • Pipe-friendly: works with anything that emits lines (git log, rg, find)
  • Supports multi-select, custom keybinds, and preview windows

Best for

  • Engineers who want a faster terminal feedback loop around Claude Code
  • Teams that already use ripgrep and want a cohesive search-pick-edit workflow
  • Anyone tired of manually copy-pasting paths from ls output

Pricing

  • Free and open source (MIT)
  • Install via brew install fzf or sudo apt install fzf (both from the README)

Pros

  • Tiny binary, zero config, runs everywhere
  • Composes with every CLI you already have
  • Preview pane shrinks the gap between "find" and "open"

Cons

  • The agent itself does not "use" fzf; the benefit is on the human side of the loop
  • Default keybindings overlap with some shell setups and need tweaking

3. gh CLI, best for GitHub-native agent workflows

gh is GitHub's official CLI and the cleanest way to let Claude Code work with PRs, issues, releases, and Actions. Instead of pasting URLs and screenshots, you let the agent run gh pr view, gh pr create, gh run watch, and stitch the GitHub side of the workflow directly into the build loop.

For teams shipping daily, gh is the missing piece that turns Claude Code from "writes code locally" into "owns the whole PR".

Key features

  • Full coverage of issues, PRs, releases, Actions, gists, and Codespaces
  • JSON output (--json) for clean parsing by agents
  • Auth via OAuth or PAT, with org and SSO support
  • Extensions ecosystem (gh extension install) for custom workflows

Best for

  • Any team on GitHub running Claude Code in real engineering work
  • Solo developers using the Manas Framework /ship and /review modes
  • Engineering teams that want PR descriptions and changelog entries drafted by the agent

Pricing

  • Free and open source (MIT)
  • No GitHub plan changes required

Pros

  • Officially maintained by GitHub
  • JSON mode is precise enough for safe agent automation
  • Eliminates context switches between terminal and browser

Cons

  • Some advanced GraphQL queries still require gh api, which the agent can mishandle
  • Rate limits matter once you have the agent polling CI status loops

If you already use Claude Code for shipping PRs, our Claude Code agency team's standard setup pairs gh with the /ship workflow defined in our best Claude Code workflows guide.

4. jq, best for parsing JSON in hooks and scripts

jq is a command-line JSON processor: it slices, filters, maps and transforms JSON the way sed and awk handle text. It matters for Claude Code because hooks receive their event data as JSON on stdin, and the Bash examples in Anthropic's hooks guide use jq to pull out fields like .tool_input.file_path.

That makes jq the glue between Claude Code and everything else in your shell. A PostToolUse hook that runs Prettier on the file Claude just edited is one line: jq -r '.tool_input.file_path' | xargs npx prettier --write. The same tool trims gh --json output down to the three fields the agent actually needs.

Key features

  • Filter, map and reshape JSON with a small expression language (.items[] | .name)
  • -r raw output, so extracted strings pipe straight into other commands
  • Written in portable C with zero runtime dependencies, per the README
  • Streams input, so it works on hook payloads, API responses and log files alike

Best for

  • Anyone writing Claude Code hooks in Bash (see our best Claude Code hooks guide for ready configs)
  • Teams scripting GitHub, cloud CLI or API output before it reaches the agent
  • Engineers who want deterministic JSON parsing instead of asking the model to read raw payloads

Pricing

  • Free and open source (MIT; the docs are CC BY 3.0)
  • brew install jq, sudo apt-get install jq or winget install jqlang.jq, per the jq download page. The README itself points to prebuilt binaries on the releases page and a Docker image. Latest release: jq 1.8.2 on 2026-06-20.

Pros

  • The hooks guide already assumes it, so most published hook examples run as written
  • Small, dependency-free binary that behaves the same on macOS, Linux and Windows
  • Keeps JSON handling in code instead of in the model's context window

Cons

  • The filter language is its own syntax, and complex filters get hard to read fast
  • gh has a built-in --jq flag, so for GitHub output alone you may not need a separate install

Skip it if you never write hooks or shell scripts and only touch JSON through gh, whose --jq flag covers that case.

5. repomix, best for one-shot repo-to-prompt packing

repomix bundles an entire repo (or a filtered subset) into a single file optimized for LLM consumption. It is the cleanest way to take a codebase, strip the noise, count tokens, and hand the result to a model that needs the full picture.

For Claude Code users, repomix is most useful when you want to feed a sibling model (Claude.ai web, ChatGPT, a local Llama) the same context, or when you need a permanent snapshot of a codebase for a planning session.

Key features

  • One command produces XML, Markdown, or plain-text output of an entire repo
  • Token counts per file and for the whole repo, plus a --token-count-tree view
  • File exclusion patterns, .gitignore respect, and binary detection
  • Security checks for secrets via Secretlint integration
  • --compress uses Tree-sitter to keep signatures and drop implementation bodies
  • A Chrome extension adds a Repomix button to GitHub repository pages

Best for

  • Pre-planning sessions where you want context outside Claude Code
  • Audits where the auditor uses a different model than the implementer
  • Open-source maintainers who want a "share this repo with an LLM" link

Pricing

  • Free and open source (MIT)
  • The README's quick start is npx repomix@latest. That is unpinned: it fetches whatever version is newest on every run. For repeatable runs, pin a version (v1.18.1 was still the latest release on 2026-10-21) or install with npm install -g repomix or brew install repomix

Pros

  • Sensible defaults out of the box, no config required
  • Token counting prevents accidentally blowing past context limits
  • Works on any repo, any language

Cons

  • Single-shot output: not designed for incremental, in-loop use like Claude Code's own tools
  • Large monorepos still need manual filtering to stay under token budgets

6. files-to-prompt, best for surgical context selection

Simon Willison's files-to-prompt is the minimalist alternative to repomix. You point it at specific files and directories and it concatenates them into a single prompt-shaped blob, with optional Claude XML formatting.

Where repomix tries to be comprehensive, files-to-prompt is precise. When you know exactly which 8 files matter, this tool gives you the cleanest payload with zero ceremony.

Key features

  • Accepts files, directories, and globs; respects .gitignore
  • Output formats: plain, Markdown (--markdown), and Claude-style XML (--cxml)
  • Optional line numbers (-n) for precise reference
  • Pipe-friendly: chains with rg, find, and shell substitution

Best for

  • Power users who already know which files matter
  • Quick one-off prompts in Claude.ai web that need 5-20 file payload
  • Scripted agent workflows that need deterministic context

Pricing

  • Free and open source (Apache 2.0)
  • pip install files-to-prompt or uvx files-to-prompt

Pros

  • Tiny, single-purpose, easy to script
  • Claude XML output (--cxml) is built for pasting into Claude
  • Pairs naturally with find, rg, and fzf

Cons

  • No automatic token counting (pair it with a separate token counter, or use code2prompt)
  • Less polished than repomix for whole-repo dumps
  • Low activity: the last release (0.6) and the last commit are both dated 2025-02-19, checked 2026-10-21. The repo is not archived and the tool still does its one job, but do not expect fixes

7. code2prompt, best for token-budgeted context

code2prompt is a Rust CLI that builds prompts from a codebase with first-class token counting, Handlebars templates, and .gitignore support. It sits between repomix and files-to-prompt: more programmable than either, with better budgeting for tight context windows.

It is the right tool when you need consistent prompt structure across many runs (audits, refactors, codemods) and want to enforce a token budget per prompt.

Key features

  • Per-file token estimates plus an estimate of template overhead, so you see prompt size before sending
  • Handlebars template engine for custom prompt structure
  • Glob include/exclude and .gitignore support
  • Output to stdout or straight to the clipboard (-c)
  • Rust CLI with an interactive TUI, plus Python bindings on PyPI

Best for

  • Teams running repeated audits or migrations at scale
  • Engineers building custom agent pipelines around Claude or GPT
  • Anyone hitting context window limits with naive prompt building

Pricing

  • Free and open source (MIT)

Ready to transform your business?

Let’s turn your next automation opportunity into a system that works.

Book a Free Strategy Call