yoanbernabeu
grepai
C

Semantic Search & Call Graphs for AI Agents (100% Local)

Last updated Jul 7, 2026
1.8k
Stars
145
Forks
93
Issues
+3
Stars/day
Attention Score
79
Language breakdown
No language data available.
Files click to expand
README

grepai

grep for the AI era

Product Hunt

GitHub stars Downloads Go Go Report Card License: MIT

Search code by meaning, not just text.

Documentation · Installation · Quick Start


grepai is a privacy-first CLI for semantic code search. It uses vector embeddings to understand code meaning, enabling natural language queries that find relevant code—even when naming conventions vary.

Drastically reduces AI agent input tokens by providing relevant context instead of raw search results.

Features

  • Search by intent — Ask "authentication logic" and find handleUserSession
  • Trace call graphs — Know who calls a function before you change it
  • 100% local — Your code never leaves your machine
  • Always up-to-date — File watcher keeps the index fresh automatically
  • AI agent ready — Works with Claude Code, Cursor, Windsurf out of the box
  • MCP server — Your AI agent can call grepai directly as a tool

Installation

Homebrew (macOS):

brew install yoanbernabeu/tap/grepai

Linux/macOS:

curl -sSL https://raw.githubusercontent.com/yoanbernabeu/grepai/main/install.sh | sh

Windows (PowerShell):

irm https://raw.githubusercontent.com/yoanbernabeu/grepai/main/install.ps1 | iex

Requires an embedding provider — Ollama (default), LM Studio, or OpenAI.

Ollama (recommended):

ollama pull nomic-embed-text

Quick Start

grepai init                        # Initialize in your project
grepai watch                       # Start indexing daemon
grepai search "error handling"     # Search semantically
grepai trace callers "Login"       # Find who calls a function

Shell Completion

grepai supports autocompletion for commands, flags, and dynamic values (workspace names, project names, providers, backends).

Zsh (add to ~/.zshrc):

eval "$(grepai completion zsh)"

Oh-My-Zsh plugin:

mkdir -p ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/grepai grepai completion zsh > ${ZSHCUSTOM:-~/.oh-my-zsh/custom}/plugins/grepai/grepai 

Then add "grepai" to plugins=(...) in ~/.zshrc

Bash:

# Linux grepai completion bash > /etc/bash_completion.d/grepai

macOS (requires bash-completion@2)

grepai completion bash > $(brew --prefix)/etc/bash_completion.d/grepai

Fish:

grepai completion fish > ~/.config/fish/completions/grepai.fish

PowerShell:

grepai completion powershell | Out-String | Invoke-Expression

What developers say

"I just hit my limit and it took 13% of my max5 plan just to read my codebase. I am very, very excited about your new tool."
— u/911pleasehold on r/ClaudeAI (280K+ views)
"It works great! Takes 5 minutes to install. Crazy!"
@LesSaleGeek on X
"The results are incredible!"
Kenny Nguyen on LinkedIn

Why grepai?

grep was built in 1973 for exact text matching. Modern codebases need semantic understanding.

| | grep / ripgrep | grepai | |---|---|---| | Search | Exact text / regex | Semantic understanding | | Query | "func.*Login" | "user authentication flow" | | Finds | Pattern matches | Conceptually related code |

Documentation

Full docs, guides, and blog:

  • Documentation — Configuration, AI agents, MCP setup
  • Blog — Benchmarks, tutorials, release notes

Contributing

See CONTRIBUTING.md for guidelines.

License

MIT License - Yoan Bernabeu 2026

🔗 More in this category

© 2026 GitRepoTrend · yoanbernabeu/grepai · Updated daily from GitHub