Docs/Getting started

Getting started

Install and run

Choose the desktop app or Docker and start a complete SAG workspace locally.
Updated 2026-07-22Applies to SAG v1.2.2

SAG provides two primary installation paths: a desktop application and self-hosted Docker. Desktop is the direct choice for personal use. Docker suits development, trusted local networks, and environments where you manage the data yourself.

Choose an installation path

MethodBest forRuntime dependenciesData location
DesktopIndividuals who want a ready-to-use appNo separate Python, Node.js, or database installationOperating-system application data directory
Docker ComposeDevelopers, servers, and trusted LANsDocker Desktop or Compose v2Docker volume sagdata
Local sourceContributors and frontend/backend debuggingPython 3.11+ and Node.js 20+apps/api/.data/

Desktop application

Download the latest stable build from GitHub Releases.

PlatformInstallerNotes
macOS 15+, Apple SiliconSAG-*-mac-arm64.dmgSigned and notarized, with stable-channel automatic updates
Windows 10/11, x64SAG-Setup-*-win-x64.exeCurrently unsigned and may show an unknown-publisher warning; automatic updates are supported

Every release also includes SHA256SUMS.txt for download-integrity verification. Full-package upgrades do not overwrite your knowledge base or uploaded files.

Docker quick start

bash
git clone https://github.com/Zleap-AI/SAG.git
cd SAG
docker compose up -d --build

The first start does not require an API key, Python, Node.js, or an external database. When both services are healthy, open:

  • Web workspace: http://localhost:3000
  • OpenAPI documentation: http://localhost:8000/docs
  • API readiness check: http://localhost:8000/api/v1/system/ready

Check service status:

bash
docker compose ps
docker compose logs -f api web

Both api and web should report healthy. The first image build and API cold start can take several minutes.

Stop and start again

bash
docker compose down
docker compose up -d

docker compose down stops the containers but preserves the database, knowledge indexes, and uploads in sagdata.

Do not run docker compose down -v while you still need the data. The -v flag permanently deletes the default data volume.

Custom ports

Copy the environment template, then change the host ports and the API address used by the browser:

bash
cp .env.example .env
dotenv
WEB_PORT=3100
API_PORT=8100
BIND_ADDRESS=127.0.0.1
SAG_CORS_ORIGINS=http://localhost:3100
NEXT_PUBLIC_API_BASE=http://localhost:8100

NEXT_PUBLIC_API_BASE is embedded in the Web build. Rebuild after changing it:

bash
docker compose up -d --build

Network boundary

Compose listens on 127.0.0.1 by default. SAG is currently designed as a local, single-user product. Do not expose ports 3000 and 8000 directly to the public internet.

For remote access, place HTTPS and an external access-control layer in front of SAG, such as a VPN, an IP allowlist, or an authenticated reverse proxy. See Production deployment for the complete requirements.

Found an issue? Treat the public repository as the source of truth.View SAG source