> ## Documentation Index
> Fetch the complete documentation index at: https://gligabao.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Building and versioning

> Static builds, the VERSION file, the changelog and the version endpoint.

## Building

gligabao is pure Go and builds with `CGO_ENABLED=0`: SQLite uses the `modernc.org/sqlite` driver and the default vector store is [chromem-go](https://github.com/philippgille/chromem-go), so no C compiler is needed.

* `./run_build.sh` builds `build/gligabao`.
* `./run_tests.sh` runs the tests.
* `docker build .` (or `./run_build_container.sh`) builds a static binary in a container.
* `docker compose up --build` builds and starts the server and the [Python sidecar](https://gligabao.mintlify.site/operations/sidecar.md) together on one network (see `docker-compose.yml`).
* `./run_build_sidecar.sh` builds the container image of the [Python sidecar](https://gligabao.mintlify.site/operations/sidecar.md).
* `./run_pypi.sh` builds and uploads the [PyPI packages](https://gligabao.mintlify.site/operations/pypi.md): the Python client and the server.

## Versioning

The version is in `VERSION` (semantic version) and the history in `CHANGELOG.md` ([Keep a Changelog](https://keepachangelog.com/) format). The version is embedded into the binary at build time (`go:embed`), so a deployed binary always knows it:

```sh theme={null}
gligabao --version
gligabao version
curl localhost:7878/version     # JSON, includes the git commit stamped by go build
```

Every change bumps `VERSION` and adds a changelog entry; `go test` fails if the two disagree. The rules for people and coding agents are in `AGENTS.md` of the repository.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.