cd /news/ai-agents/jevgrep-a-cli-for-coding-agents-that… · home › topics › ai-agents › article
[ARTICLE · art-141119] src=github.com ↗ pub= topic=ai-agents verified=true sentiment=↑ positive

Jevgrep: A CLI for coding agents that uses Jev to discover relevant files

Jevgrep, a new CLI from developer dzhng that uses the Jev model to locate relevant files for coding agents, matched a no-Jev baseline by solving 8 of 10 SWE-bench tasks while cutting full Sol cost from $7.62 to $5.44, a measured 28.6% reduction. The tool, installed via `npm install -g @dzhng/jevgrep`, requires Node.js 22+, macOS or Linux, and a key for Vercel AI Gateway, TypeSafe, OpenRouter, or OpenCode Zen, with provider selection requiring version 0.3.0 or newer. Jevgrep returns relevant files, reading leads, and verbatim source excerpts in one stdout response, and its skill installer detects coding agents including Claude Code, Codex, and OpenCode.

read4 min views5 publishedSep 28, 2026
Jevgrep: A CLI for coding agents that uses Jev to discover relevant files
Image: Michielbdejong (auto-discovered)

Same intelligence. ~30% lower cost.

Find code by asking what it does. In our ten-task SWE-bench comparison, Jevgrep successfully completed the same 8 of 10 tasks as the baseline, at lower cost.

Coding agents spend part of every unfamiliar task finding the right files. Jevgrep gives them a place to start: ask a repository question, and jg returns relevant files, reading leads, and verbatim source excerpts in one stdout response. It uses Jev to judge relevance across folders, files, and declarations. Your coding agent then implements and tests the change.

npm install -g @dzhng/jevgrep
jg auth
jg skill
jg "How are telemetry events recorded and sent?" ./my-project

Requires Node.js 22+, macOS or Linux, and a key for Vercel AI Gateway, TypeSafe, OpenRouter, or OpenCode Zen. No separate Python, Bun, or ripgrep installation is required to use jg.

Provider selection requires 0.3.0 or newer. Upgrade an older installation with npm install --global @dzhng/jevgrep@latest.

Installing the CLI alone does not teach your coding agent to use it. Install the skill as well, from the project where your agent works:

jg skill

The installer detects your coding agents (Claude Code, Codex, OpenCode and others) and asks where to install. Add --global for a user-wide install, or --yes for unattended installation. The skill explains installation, invocation and the meaning of returned context. It leaves research and implementation decisions to the calling agent. The current repository skill checks for jg and installs the CLI if it is missing; authentication still needs your selected provider’s key. The skill installer itself does not configure credentials.

jg skill delegates to the skills CLI and needs npm/npx plus network access. You can also run that installer directly, without the CLI installed:

npx skills add dzhng/jevgrep --skill jevgrep

In 0.1.0, jg skill only prints the bundled skill; use npx skills with that version.

There is currently no jg upgrade command. Upgrade the CLI with npm:

npm install -g @dzhng/jevgrep@latest
jg --version

Update the installed skill separately by rerunning jg skill. Updating the npm package does not overwrite skill files in your projects. See the package guide for authentication details.

Use jg when you know the behavior you need to understand but not where it lives:

jg "Where is authentication checked before a request reaches a handler?" .
jg "How are database connections created, pooled, and closed?" ./src
jg "Which tests cover retry behavior when a request times out?" .

Jevgrep explores the repository hierarchy and follows qualifying branches. It selects files using content previews, then identifies useful source units and surrounding context. It keeps qualifying file locations even when it cannot confidently return an excerpt; it does not force every search into a fixed top-two list.

The summary and compact file list come first, followed by selected source with line references, then detailed declaration and call locations. Python and TypeScript/JavaScript support declaration parsing; other text uses a fallback. The output is evidence for the agent to use, not a generated answer or a guarantee that every relevant file was found. See a recorded output example.

When you already know an exact symbol or path, a direct read or rg search may be all you need. Jevgrep is most useful for questions that span unfamiliar files.

Same intelligence, ~30% lower coding-agent cost. Both Jevgrep and the no-Jev baseline solved 8/10 tasks. Full Sol cost fell from $7.62 to $5.44—a measured 28.6% reduction, rounded to ~30%—including failed attempts and excluding Jev cost.

This comparison uses ten tuned Python SWE-bench tasks, one frozen installed package and the exact public skill in this repository. It measures task success and cost, not a speed improvement or guaranteed savings on every repository. See the results and methodology for per-task costs, artifact identities and limitations. A separate speed study measures the follow-up local optimizations with Jev’s native TypeSafe endpoint.

The latest total-cost rerun, including Jev, measured 25.8% lower total cost with the same 8/10 tasks solved. The older ~30% graphic above reports Sol-only cost. Future benchmark totals include Jev.

Searches send eligible source content to Jev through the provider selected during auth. Default filesystem filtering respects ignore files and excludes hidden, dependency/build, binary, and obvious credential files. These filters are not a guarantee that all sensitive information has been removed; choose a search root you intend to send.

jg auth asks for your provider, then saves its key in an owner-only config file. Re-running auth replaces that setup; searches always use the saved provider. jg doctor checks it with synthetic input. Existing saved keys without a provider remain Vercel keys. Environment-based credentials and endpoint overrides are not used; run jg auth if you previously relied on them. Evaluation answers are cached locally by default. The CLI writes its output to stdout and does not create report files. Use jg --help for cache controls, search overrides, and incomplete-result behavior.

The repository uses TypeScript, Bun workspaces, and Turborepo. From a checkout:

bun install --frozen-lockfile
bun run dev --help
bun run verify

Verification includes Docker tests of the installed Node-only package. For the reasoning behind retrieval, parsing, caching, and failure handling, start with the architecture and implementation record. Release guidance covers tag-triggered npm publication and verification of the exact public package.

── more in #ai-agents 4 stories · sorted by recency
── more on @jevgrep 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/jevgrep-a-cli-for-co…] indexed:0 read:4min 2026-09-28 · —