Repolode
kantord

kantord/SeaGOAT

Motor de búsqueda semántica de código local que combina embeddings vectoriales con ripgrep para consultar un repositorio en lenguaje natural.

Estrellas
1,318
Forks
97
Issues abiertos
36
Último commit
anteayer

¿Qué es?

SeaGOAT es una herramienta de búsqueda de código por línea de comandos que permite encontrar código por su significado, en lugar de por palabras clave exactas. Ejecuta un servidor local que indexa un repositorio con embeddings vectoriales almacenados en ChromaDB y combina esas coincidencias semánticas con resultados de expresiones regulares y palabras clave de ripgrep. Las consultas pueden ser frases sencillas, como «dónde se redondean los números», o incluir expresiones regulares.

La herramienta se ejecuta íntegramente en tu equipo y, de forma predeterminada, no realiza llamadas a APIs remotas. La indexación se lleva a cabo en segundo plano, así que puedes buscar mientras se procesan los archivos; los primeros resultados provienen de ripgrep y el aviso muestra una estimación de cuánto se ha completado el índice semántico. Se respetan las reglas de exclusión del repositorio definidas en .gitignore y se pueden especificar patrones adicionales en un archivo de configuración YAML.

Una opción --generative envía los resultados a un LLM para mejorar las respuestas. De forma predeterminada, utiliza un servidor local de Ollama; también se puede configurar OpenAI o MiniMax, aunque los proveedores en la nube reciben fragmentos de código y deben habilitarse explícitamente.

Funciones clave

  • 01Búsqueda semántica en lenguaje natural de código local mediante embeddings vectoriales
  • 02Combina resultados semánticos con coincidencias de expresiones regulares y palabras clave de ripgrep
  • 03Ejecuta un servidor local y, de forma predeterminada, no realiza llamadas a APIs remotas
  • 04Permite buscar mientras la indexación sigue en curso e indica una estimación de precisión
  • 05Respeta .gitignore y admite patrones de exclusión adicionales en la configuración YAML
  • 06Resultados mejorados opcionalmente con un LLM a través de Ollama, OpenAI o MiniMax

Casos de uso

  • Encontrar dónde se implementa un comportamiento cuando no se conoce el nombre exacto de la función
  • Explorar un repositorio desconocido haciendo preguntas en lenguaje sencillo
  • Buscar en código privado sin enviarlo a servicios de terceros
  • Alojar un servidor compartido de búsqueda de código para un equipo en una red privada

Inicio rápido

  1. 1

    Instala ripgrep y, opcionalmente, bat con el gestor de paquetes de tu sistema (aparecen como dependencias)

  2. 2

    Instala SeaGOAT con pipx

    pipx install seagoat
  3. 3

    Inicia el servidor de SeaGOAT en tu repositorio

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

    Haz consultas sobre tu repositorio en lenguaje natural

    gt "Where are the numbers rounded"

Antes de usarlo

  • Solo admite una lista fija de tipos de archivo, como Python, JavaScript, Go y Markdown.
  • La compatibilidad con macOS y Windows solo se ha probado parcialmente o necesita ayuda.

En colecciones

Temas

Preguntas frecuentes

¿Qué es SeaGOAT?
Motor de búsqueda semántica de código local que combina embeddings vectoriales con ripgrep para consultar un repositorio en lenguaje natural. SeaGOAT es una herramienta de búsqueda de código por línea de comandos que permite encontrar código por su significado, en lugar de por palabras clave exactas. Ejecuta un servidor local que indexa un repositorio con embeddings vectoriales almacenados en ChromaDB y combina esas coincidencias semánticas con resultados de expresiones regulares y palabras clave de ripgrep. Las consultas pueden ser frases sencillas, como «dónde se redondean los números», o incluir expresiones regulares.
¿SeaGOAT es gratuito? ¿Qué licencia tiene?
SeaGOAT es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿SeaGOAT sigue mantenido?
Mantenimiento activo. El último commit de SeaGOAT fue el 5 nov 2026.
¿Para qué puedo usar SeaGOAT?
Encontrar dónde se implementa un comportamiento cuando no se conoce el nombre exacto de la función Explorar un repositorio desconocido haciendo preguntas en lenguaje sencillo Buscar en código privado sin enviarlo a servicios de terceros Alojar un servidor compartido de búsqueda de código para un equipo en una red privada
¿Cómo se instala SeaGOAT?
Instala ripgrep y, opcionalmente, bat con el gestor de paquetes de tu sistema (aparecen como dependencias) Instala SeaGOAT con pipx: pipx install seagoat Inicia el servidor de SeaGOAT en tu repositorio: seagoat-server start /path/to/your/repo Haz consultas sobre tu repositorio en lenguaje natural: gt "Where are the numbers rounded"
¿Dónde consigo SeaGOAT?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/kantord/SeaGOAT

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados