Skip to content

Logo SeaGOAT

A code search engine for the AI age. SeaGOAT leverages vector embeddings to enable to search your codebase semantically.

 

Getting started

Install SeaGOAT

In order to install SeaGOAT, you need to have the following dependencies already installed on your computer:

  • Python 3.11 or newer
  • ripgrep

To install SeaGOAT using pipx, use the following command:

pipx install seagoat

Start SeaGOAT server

In order to use SeaGOAT in your project, you have to start the SeaGOAT server using the following command:

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

Search your repository

If you have the server running, you can simply use the gt or seagoat command to query your repository. For example:

gt "Where are the numbers rounded"

You can also use Regular Expressions in your queries, for example

gt "function calc_.* that deals with taxes"

Stopping the server

You can stop the running server using the following command:

seagoat-server stop /path/to/your/repo

Development

Requirements:

Install dependencies

After cloning the repository, install dependencies using the following command:

poetry install

Running tests

poetry run ptw

Test changed files

poetry run pytest .  --testmon

Test all files

poetry run pytest .

Manual testing

You can test any SeaGOAT command manually in your local development environment. For example to test the development version of the seagoat-server command, you can run:

poetry run seagoat-server ~/path/an/example/repository