워크스페이스에서 ripgrep, BM25, 벡터 검색을 결합해 사용하는 로컬 우선 검색 CLI이자 에이전트 도구입니다.
kantord/SeaGOAT
벡터 임베딩과 ripgrep을 결합해 자연어로 코드베이스를 검색하는 로컬 우선 시맨틱 코드 검색 엔진입니다.
- 스타
- 1,317
- 포크
- 97
- 열린 이슈
- 36
- 마지막 커밋
- 어제
어떤 프로젝트인가요?
SeaGOAT는 정확한 키워드가 아니라 코드의 의미를 기준으로 코드를 찾는 CLI 검색 도구입니다. 로컬 서버가 ChromaDB에 저장된 벡터 임베딩으로 저장소를 인덱싱하고, 시맨틱 검색 결과에 ripgrep의 정규식 및 키워드 검색 결과를 함께 보여줍니다. "숫자가 반올림되는 곳은 어디야?" 같은 문장으로 검색하거나 정규식을 함께 사용할 수 있습니다.
이 도구는 사용자 컴퓨터에서 모두 실행되며, 기본적으로 원격 API를 호출하지 않습니다. 인덱싱은 백그라운드에서 진행되므로 파일을 처리하는 동안에도 검색할 수 있습니다. 초기 검색 결과는 ripgrep에서 가져오며, 경고 메시지에는 시맨틱 인덱스가 얼마나 완성됐는지에 대한 추정치가 표시됩니다. 저장소의 .gitignore 규칙을 따르며, YAML 설정 파일에서 추가 패턴을 지정할 수 있습니다.
선택 사항인 --generative 플래그를 사용하면 검색 결과를 LLM에 보내 답변을 개선할 수 있습니다. 기본적으로 로컬 Ollama 서버를 사용하며, 대신 OpenAI 또는 MiniMax를 설정할 수도 있습니다. 다만 클라우드 제공업체에는 코드 스니펫이 전송되므로 명시적으로 활성화해야 합니다.
핵심 기능
- 01벡터 임베딩을 사용해 로컬 코드에서 자연어 시맨틱 검색
- 02시맨틱 검색 결과에 ripgrep의 정규식 및 키워드 검색 결과를 결합
- 03로컬 서버로 실행되며 기본적으로 원격 API를 호출하지 않음
- 04인덱싱이 진행 중인 동안에도 검색할 수 있고 정확도 추정치를 제공
- 05.gitignore를 따르며 YAML 설정에서 추가 무시 패턴을 지원
- 06Ollama, OpenAI 또는 MiniMax를 통한 선택적 LLM 기반 결과 개선
활용 사례
- 정확한 함수 이름을 모를 때 특정 동작이 구현된 위치 찾기
- 자연어로 질문하며 익숙하지 않은 코드베이스 살펴보기
- 코드를 타사 서비스에 보내지 않고 비공개 코드 검색하기
- 사설 네트워크에서 팀이 함께 사용할 코드 검색 서버 운영하기
빠른 시작
- 1
시스템 패키지 관리자를 사용해 ripgrep과 (선택 사항인) bat를 설치합니다(종속 항목으로 나열되어 있음).
- 2
pipx로 SeaGOAT를 설치합니다
pipx install seagoat - 3
리포지토리에서 SeaGOAT 서버를 시작합니다
seagoat-server start /path/to/your/repo - 4
자연어로 리포지토리에 질의합니다
gt "Where are the numbers rounded"
사용 전 알아둘 점
- Python, JavaScript, Go, Markdown 등 정해진 파일 형식만 지원합니다.
- macOS 및 Windows 지원은 테스트가 일부만 진행되었거나 도움이 필요합니다.
포함된 컬렉션
토픽
자주 묻는 질문
- SeaGOAT은(는) 무엇인가요?
- 벡터 임베딩과 ripgrep을 결합해 자연어로 코드베이스를 검색하는 로컬 우선 시맨틱 코드 검색 엔진입니다. SeaGOAT는 정확한 키워드가 아니라 코드의 의미를 기준으로 코드를 찾는 CLI 검색 도구입니다. 로컬 서버가 ChromaDB에 저장된 벡터 임베딩으로 저장소를 인덱싱하고, 시맨틱 검색 결과에 ripgrep의 정규식 및 키워드 검색 결과를 함께 보여줍니다. "숫자가 반올림되는 곳은 어디야?" 같은 문장으로 검색하거나 정규식을 함께 사용할 수 있습니다.
- SeaGOAT은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- SeaGOAT은(는) MIT 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- SeaGOAT은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. SeaGOAT의 마지막 커밋은 2026년 11월 4일입니다.
- SeaGOAT은(는) 어디에 사용할 수 있나요?
- 정확한 함수 이름을 모를 때 특정 동작이 구현된 위치 찾기 자연어로 질문하며 익숙하지 않은 코드베이스 살펴보기 코드를 타사 서비스에 보내지 않고 비공개 코드 검색하기 사설 네트워크에서 팀이 함께 사용할 코드 검색 서버 운영하기
- SeaGOAT는 어떻게 설치하나요?
- 시스템 패키지 관리자를 사용해 ripgrep과 (선택 사항인) bat를 설치합니다(종속 항목으로 나열되어 있음). pipx로 SeaGOAT를 설치합니다: pipx install seagoat 리포지토리에서 SeaGOAT 서버를 시작합니다: seagoat-server start /path/to/your/repo 자연어로 리포지토리에 질의합니다: gt "Where are the numbers rounded"
- SeaGOAT은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/kantord/SeaGOAT
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
로컬 임베딩, 호출 그래프 추적, AI 코딩 에이전트용 MCP 서버를 지원하는 프라이버시 우선 CLI 시맨틱 코드 검색 도구입니다.
AI 앱을 위한 오픈 소스 임베딩 데이터베이스로, 문서와 벡터를 저장해 시맨틱·하이브리드·전체 텍스트 검색을 지원합니다.
Epsilla는 메타데이터 필터링, 하이브리드 검색, LLM 검색 연동을 지원하는 임베딩 유사도 검색용 오픈 소스 C++ 벡터 데이터베이스입니다.
코드베이스를 인덱싱해 코딩 에이전트가 의미를 바탕으로 코드를 찾도록 돕는 AST 기반 시맨틱 코드 검색 CLI 및 MCP 서버입니다.
필요할 때 임베딩을 다시 계산해 저장 공간을 약 97% 줄이는 로컬 벡터 인덱스 및 RAG 툴킷으로, 노트북에서 개인 데이터를 검색할 수 있습니다.