GitHub - mixedbread-ai/mgrep: A calm, CLI-native way to semantically grep everything, like code, images, pdfs and more.
Service

GitHub - mixedbread-ai/mgrep: A calm, CLI-native way to semantically grep everything, like code, images, pdfs and more.

mixedbread-ai
2026.01.22
·GitHub·by 이호민
#CLI#Search#LLM#Code Search#RAG

핵심 포인트

  • 1mgrep은 코드, 이미지, PDF 등 다양한 파일에서 자연어 기반의 시맨틱 검색을 제공하는 CLI 도구입니다.
  • 2`mgrep watch`를 통한 백그라운드 인덱싱과 웹 검색 기능을 포함하며, 코딩 agents의 토큰 사용량을 2배 절감하여 검색 효율을 높입니다.
  • 3Mixedbread Search 기술 기반으로 grep의 exact matching을 보완하여, 개발자가 intent 기반의 시맨틱 검색을 통해 더 스마트하게 작업할 수 있도록 돕습니다.

mgrep은 코드, 이미지, PDF 등 다양한 유형의 데이터를 시맨틱하게 검색할 수 있는 CLI(Command Line Interface) 기반 도구입니다. 이 도구는 1973년에 개발된 grep이 가진 '정확한 패턴 매칭'이라는 한계와 '대규모 코드베이스에서의 성능 저하', 그리고 '비즈니스 로직과 같이 명확히 정의하기 어려운 정보를 검색하는 데의 어려움'을 해결하기 위해 고안되었습니다. grep이 수백 개의 패턴을 시도하며 token window와 비용을 낭비하는 문제를 mgrep은 자연어 이해를 통해 개선하고자 합니다.

mgrep의 핵심 방법론은 Mixedbread Search라는 자체 개발 full-featured search solution을 기반으로 합니다. 이는 state-of-the-art semantic retrieval models, context-aware parsing, 그리고 optimized inference methods를 결합하여 자연어 기반의 검색을 가능하게 합니다. 파일들은 Mixedbread Storeembeddings 형태로 푸시되며, 검색 시 자연어 쿼리에 대한 semantic similarity를 기반으로 top-k matches를 반환합니다. 기본적으로 reranking 기능이 활성화되어 검색 결과의 관련성을 높이지만, --no-rerank 또는 MGREPRERANK=0MGREP_RERANK=0 환경 변수를 통해 비활성화할 수도 있습니다. 결과에는 relative pathscontextual hints (텍스트의 경우 line ranges, PDF의 경우 page numbers)가 포함되어 가독성을 높입니다. cloud-backed store 덕분에 에이전트와 팀원은 재업로드 없이 동일한 corpus를 쿼리할 수 있습니다.

주요 기능은 다음과 같습니다:

  • mgrep watch: 로컬 git repository의 파일을 초기 sync하고, .gitignore.mgrepignore 파일을 존중하여 Mixedbread store와 동기화 상태를 유지하는 백그라운드 indexing을 수행합니다. 파일 변경 시 file watchers를 통해 자동으로 업데이트됩니다.
  • mgrepsearch<pattern>[path]mgrep search <pattern> [path]: 자연어 쿼리를 사용하여 시맨틱 검색을 수행합니다. -m (max_count)으로 결과 수 제한, -c (content)으로 결과 내용 표시, -a (answer)로 검색 결과 기반의 요약 답변 생성, -w (web)로 웹 검색 결과 포함, -s (sync)로 검색 전 파일 sync, -d (dry-run)로 dry run 모드 활성화 등의 다양한 grep-스타일 플래그를 지원합니다. --max-file-size--max-file-count 옵션을 통해 인덱싱 및 업로드되는 파일의 크기와 개수를 제한할 수 있습니다.
  • 멀티모달 및 웹 검색: 코드, 텍스트, PDF, 이미지 파일을 지원하며, 향후 오디오 및 비디오 지원을 계획하고 있습니다. --web 플래그를 사용하여 로컬 파일과 웹을 동시에 검색할 수 있으며, 특히 --answer 플래그와 함께 사용하면 웹 검색 결과에 대한 요약된 답변을 받을 수 있습니다.
  • 코딩 에이전트 통합: Claude Code, OpenCode, Codex, Factory Droid 등 다양한 코딩 에이전트와의 통합을 지원하며, mgrep install-claude-code와 같은 명령어를 통해 에이전트에 Mixedbread mgrep support를 쉽게 추가할 수 있습니다. mgrep은 백그라운드 프로세스로 파일을 동기화하여 에이전트의 시맨틱 검색을 가능하게 합니다. 50개 QA task 벤치마크에서 mgrep + Claude Code는 기존 grep 기반 워크플로우보다 약 2배 적은 token을 사용하면서도 유사하거나 더 나은 품질을 보였습니다. 이는 mgrep이 관련성 높은 스니펫을 찾아 LLM이 불필요한 코드 스캔 대신 reasoning에 집중할 수 있도록 돕기 때문입니다.
  • 인증: mgrep login을 통해 브라우저 기반 인증을 지원하며, CI/CD 또는 headless environments를 위해 MXBAI_API_KEY 환경 변수를 통한 API Key 인증도 지원합니다.

mgrepgrep을 대체하기보다는 보완하는 도구로 설계되었습니다. grepexact matches, symbol tracing, refactoring, regex와 같은 작업에 적합하며, mgrepintent search, code exploration, feature discovery, onboarding, 그리고 web search와 같은 semantic understanding이 필요한 작업에 유용합니다.

설정은 CLI flags, environment variables, config files(project root.mgreprc.yaml 또는 global ~/.config/mgrep/config.yaml)을 통해 가능하며, CLI flags가 가장 높은 precedence를 가집니다. MXBAI_STORE 환경 변수 또는 --store 플래그를 통해 store name을 지정하여 workspace를 분리할 수 있습니다.