Repolode
kantord

kantord/SeaGOAT

Um mecanismo de busca semântica de código com foco local, que combina embeddings vetoriais com o ripgrep para consultar uma base de código em linguagem natural.

Estrelas
1,321
Forks
97
Issues abertas
36
Último commit
há 8 horas

O que é?

SeaGOAT é uma ferramenta de busca de código via linha de comando que encontra trechos pelo significado, em vez de depender de palavras-chave exatas. Ela executa um servidor local que indexa um repositório com embeddings vetoriais armazenados no ChromaDB e combina essas correspondências semânticas com resultados de expressões regulares e palavras-chave do ripgrep. As consultas podem ser frases comuns, como "onde os números são arredondados", ou podem incluir expressões regulares.

A ferramenta funciona inteiramente na sua máquina e, por padrão, não faz chamadas a APIs remotas. A indexação ocorre em segundo plano, permitindo pesquisar enquanto os arquivos ainda estão sendo processados; os primeiros resultados vêm do ripgrep, e um aviso mostra uma estimativa de quão completo está o índice semântico. As regras de exclusão do repositório definidas em .gitignore são respeitadas, e padrões adicionais podem ser configurados em um arquivo YAML.

Uma opção --generative envia os resultados a um LLM para aprimorar as respostas. Por padrão, ela usa um servidor Ollama local. Também é possível configurar o OpenAI ou o MiniMax, mas provedores em nuvem recebem trechos do código e precisam ser habilitados explicitamente.

Recursos principais

  • 01Busca semântica em linguagem natural no código local usando embeddings vetoriais
  • 02Combina resultados semânticos com correspondências de expressões regulares e palavras-chave do ripgrep
  • 03Executa um servidor local; por padrão, não faz chamadas a APIs remotas
  • 04Permite pesquisar enquanto a indexação ainda está em andamento, com uma estimativa de precisão
  • 05Respeita o .gitignore e aceita padrões de exclusão adicionais em uma configuração YAML
  • 06Resultados aprimorados por LLM, opcionalmente, via Ollama, OpenAI ou MiniMax

Casos de uso

  • Encontrar onde um comportamento está implementado sem saber o nome exato da função
  • Explorar uma base de código desconhecida fazendo perguntas em linguagem natural
  • Pesquisar código privado sem enviá-lo a serviços de terceiros
  • Hospedar um servidor de busca de código compartilhado pela equipe em uma rede privada

Início rápido

  1. 1

    Instale ripgrep e, opcionalmente, bat usando o gerenciador de pacotes do seu sistema (listados como dependências)

  2. 2

    Instale o SeaGOAT com pipx

    pipx install seagoat
  3. 3

    Inicie o servidor do SeaGOAT no seu repositório

    seagoat-server start /path/to/your/repo
  4. 4

    Faça consultas ao seu repositório em linguagem natural

    gt "Where are the numbers rounded"

Antes de usar

  • Oferece suporte apenas a uma lista fixa de tipos de arquivo, como Python, JavaScript, Go e Markdown.
  • O suporte a macOS e Windows foi testado apenas parcialmente ou precisa de ajuda.

Em coleções

Tópicos

Perguntas frequentes

O que é SeaGOAT?
Um mecanismo de busca semântica de código com foco local, que combina embeddings vetoriais com o ripgrep para consultar uma base de código em linguagem natural. SeaGOAT é uma ferramenta de busca de código via linha de comando que encontra trechos pelo significado, em vez de depender de palavras-chave exatas. Ela executa um servidor local que indexa um repositório com embeddings vetoriais armazenados no ChromaDB e combina essas correspondências semânticas com resultados de expressões regulares e palavras-chave do ripgrep. As consultas podem ser frases comuns, como "onde os números são arredondados", ou podem incluir expressões regulares.
SeaGOAT é gratuito? Qual é a licença?
SeaGOAT é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
SeaGOAT ainda é mantido?
Manutenção ativa. O último commit de SeaGOAT foi em 7 de nov. de 2026.
Para que posso usar SeaGOAT?
Encontrar onde um comportamento está implementado sem saber o nome exato da função Explorar uma base de código desconhecida fazendo perguntas em linguagem natural Pesquisar código privado sem enviá-lo a serviços de terceiros Hospedar um servidor de busca de código compartilhado pela equipe em uma rede privada
Como instalar SeaGOAT?
Instale ripgrep e, opcionalmente, bat usando o gerenciador de pacotes do seu sistema (listados como dependências) Instale o SeaGOAT com pipx: pipx install seagoat Inicie o servidor do SeaGOAT no seu repositório: seagoat-server start /path/to/your/repo Faça consultas ao seu repositório em linguagem natural: gt "Where are the numbers rounded"
Onde consigo SeaGOAT?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/kantord/SeaGOAT

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados