[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-74704":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":17,"stars7d":18,"stars30d":15,"stars90d":16,"forks30d":16,"starsTrendScore":19,"compositeScore":20,"rankGlobal":10,"rankLanguage":10,"license":21,"archived":22,"fork":22,"defaultBranch":23,"hasWiki":22,"hasPages":24,"topics":25,"createdAt":10,"pushedAt":10,"updatedAt":38,"readmeContent":39,"aiSummary":40,"trendingCount":16,"starSnapshotCount":16,"syncStatus":41,"lastSyncTime":42,"discoverSource":43},74704,"grepai","yoanbernabeu\u002Fgrepai","yoanbernabeu","Semantic Search & Call Graphs for AI Agents (100% Local)","https:\u002F\u002Fyoanbernabeu.github.io\u002Fgrepai\u002F",null,"C",1734,140,11,56,0,4,20,12,19.45,"MIT License",false,"main",true,[26,27,28,29,30,31,32,33,34,35,36,37],"ai","claude-code","cli","code-search","cursor","developer-tools","embeddings","golang","mcp","privacy-first","semantic-search","vector-search","2026-06-12 02:03:27","\u003Cdiv align=\"center\">\n\n# grepai\n\n### grep for the AI era\n\n[![Product Hunt](https:\u002F\u002Fapi.producthunt.com\u002Fwidgets\u002Fembed-image\u002Fv1\u002Ffeatured.svg?post_id=1067661&theme=light)](https:\u002F\u002Fwww.producthunt.com\u002Fproducts\u002Fgrepai)\n\n[![GitHub stars](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002Fyoanbernabeu\u002Fgrepai?style=flat&logo=github)](https:\u002F\u002Fgithub.com\u002Fyoanbernabeu\u002Fgrepai\u002Fstargazers)\n[![Downloads](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fdownloads\u002Fyoanbernabeu\u002Fgrepai\u002Ftotal?style=flat&logo=github)](https:\u002F\u002Fgithub.com\u002Fyoanbernabeu\u002Fgrepai\u002Freleases)\n[![Go](https:\u002F\u002Fgithub.com\u002Fyoanbernabeu\u002Fgrepai\u002Factions\u002Fworkflows\u002Fci.yml\u002Fbadge.svg)](https:\u002F\u002Fgithub.com\u002Fyoanbernabeu\u002Fgrepai\u002Factions\u002Fworkflows\u002Fci.yml)\n[![Go Report Card](https:\u002F\u002Fgoreportcard.com\u002Fbadge\u002Fgithub.com\u002Fyoanbernabeu\u002Fgrepai)](https:\u002F\u002Fgoreportcard.com\u002Freport\u002Fgithub.com\u002Fyoanbernabeu\u002Fgrepai)\n[![License: MIT](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FLicense-MIT-yellow.svg)](LICENSE)\n\n**Search code by meaning, not just text.**\n\n[Documentation](https:\u002F\u002Fyoanbernabeu.github.io\u002Fgrepai\u002F) · [Installation](#installation) · [Quick Start](#quick-start)\n\n\u003C\u002Fdiv>\n\n---\n\n`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.\n\n**Drastically reduces AI agent input tokens** by providing relevant context instead of raw search results.\n\n## Features\n\n- **Search by intent** — Ask \"authentication logic\" and find `handleUserSession`\n- **Trace call graphs** — Know who calls a function before you change it\n- **100% local** — Your code never leaves your machine\n- **Always up-to-date** — File watcher keeps the index fresh automatically\n- **AI agent ready** — Works with Claude Code, Cursor, Windsurf out of the box\n- **MCP server** — Your AI agent can call grepai directly as a tool\n\n## Installation\n\n**Homebrew (macOS):**\n```bash\nbrew install yoanbernabeu\u002Ftap\u002Fgrepai\n```\n\n**Linux\u002FmacOS:**\n```bash\ncurl -sSL https:\u002F\u002Fraw.githubusercontent.com\u002Fyoanbernabeu\u002Fgrepai\u002Fmain\u002Finstall.sh | sh\n```\n\n**Windows (PowerShell):**\n```powershell\nirm https:\u002F\u002Fraw.githubusercontent.com\u002Fyoanbernabeu\u002Fgrepai\u002Fmain\u002Finstall.ps1 | iex\n```\n\nRequires an embedding provider — [Ollama](https:\u002F\u002Follama.ai) (default), [LM Studio](https:\u002F\u002Flmstudio.ai), or OpenAI.\n\n**Ollama (recommended):**\n```bash\nollama pull nomic-embed-text\n```\n\n## Quick Start\n\n```bash\ngrepai init                        # Initialize in your project\ngrepai watch                       # Start indexing daemon\ngrepai search \"error handling\"     # Search semantically\ngrepai trace callers \"Login\"       # Find who calls a function\n```\n\n## Shell Completion\n\ngrepai supports autocompletion for commands, flags, and dynamic values (workspace names, project names, providers, backends).\n\n**Zsh (add to `~\u002F.zshrc`):**\n```bash\neval \"$(grepai completion zsh)\"\n```\n\n**Oh-My-Zsh plugin:**\n```bash\nmkdir -p ${ZSH_CUSTOM:-~\u002F.oh-my-zsh\u002Fcustom}\u002Fplugins\u002Fgrepai\ngrepai completion zsh > ${ZSH_CUSTOM:-~\u002F.oh-my-zsh\u002Fcustom}\u002Fplugins\u002Fgrepai\u002F_grepai\n# Then add \"grepai\" to plugins=(...) in ~\u002F.zshrc\n```\n\n**Bash:**\n```bash\n# Linux\ngrepai completion bash > \u002Fetc\u002Fbash_completion.d\u002Fgrepai\n\n# macOS (requires bash-completion@2)\ngrepai completion bash > $(brew --prefix)\u002Fetc\u002Fbash_completion.d\u002Fgrepai\n```\n\n**Fish:**\n```bash\ngrepai completion fish > ~\u002F.config\u002Ffish\u002Fcompletions\u002Fgrepai.fish\n```\n\n**PowerShell:**\n```powershell\ngrepai completion powershell | Out-String | Invoke-Expression\n```\n\n## What developers say\n\n> *\"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.\"*\n> — u\u002F911pleasehold on [r\u002FClaudeAI](https:\u002F\u002Fwww.reddit.com\u002Fr\u002FClaudeAI\u002Fcomments\u002F1qiv0d3\u002Fopen_source_i_reduced_claude_code_input_tokens_by\u002F) (280K+ views)\n\n> *\"It works great! Takes 5 minutes to install. Crazy!\"*\n> — [@LesSaleGeek](https:\u002F\u002Fx.com\u002FLesSaleGeek\u002Fstatus\u002F2010335803604611124) on X\n\n> *\"The results are incredible!\"*\n> — [Kenny Nguyen](https:\u002F\u002Fwww.linkedin.com\u002Ffeed\u002Fupdate\u002Furn:li:activity:7419451883293061120?commentUrn=urn%3Ali%3Acomment%3A%28activity%3A7419451883293061120%2C7419464457388453888%29) on LinkedIn\n\n## Why grepai?\n\n`grep` was built in 1973 for exact text matching. Modern codebases need semantic understanding.\n\n| | `grep` \u002F `ripgrep` | `grepai` |\n|---|---|---|\n| **Search** | Exact text \u002F regex | Semantic understanding |\n| **Query** | `\"func.*Login\"` | `\"user authentication flow\"` |\n| **Finds** | Pattern matches | Conceptually related code |\n\n## Documentation\n\nFull docs, guides, and blog:\n\n- **[Documentation](https:\u002F\u002Fyoanbernabeu.github.io\u002Fgrepai\u002F)** — Configuration, AI agents, MCP setup\n- **[Blog](https:\u002F\u002Fyoanbernabeu.github.io\u002Fgrepai\u002Fblog\u002F)** — Benchmarks, tutorials, release notes\n\n## Contributing\n\nSee [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.\n\n## License\n\n[MIT License](LICENSE) - Yoan Bernabeu 2026\n","grepai 是一个面向AI时代的语义代码搜索工具，通过向量嵌入技术理解代码含义，支持自然语言查询。其核心功能包括意图搜索、调用图追踪以及与多种AI代理的集成。该工具完全本地运行，确保代码隐私，并且具备自动更新索引的功能。适用于需要高效查找和理解代码逻辑的开发场景，尤其是对命名规范不一致的大型项目或希望减少AI代理输入令牌的情况下。",2,"2026-06-11 03:50:30","high_star"]