Open-source observability for AI agents. Find where your agents fail, dispatch your coding agent to fix it, and verify the fix against real traces.
docker pull pgvector/pgvector
docker run -d --name latitude-llm -p 5432:5432 --restart always pgvector/pgvector:pg16
podman run -d --name latitude-llm -p 5432:5432 --restart always pgvector/pgvector:pg16
skopeo inspect docker://docker.io/pgvector/pgvector:pg16
oras pull pgvector/pgvector:pg16
docker compose up -d
services:
postgres:
image: pgvector/pgvector:pg16
env_file:
- .env.${NODE_ENV:-development}
ports:
- "5432:5432"
volumes:
- postgres_data:/var/lib/postgresql/data
- ./docker/init-db.sh:/docker-entrypoint-initdb.d/init-db.sh
healthcheck:
test: ["CMD-SHELL", "pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB}"]
interval: 2s
timeout: 5s
retries: 30
command: postgres -c wal_level=logical
clickhouse:
image: clickhouse/clickhouse-server:26.2
env_file:
- .env.${NODE_ENV:-development}
ports:
- "8123:8123"
- "9000:9000"
volumes:
- clickhouse_data:/var/lib/clickhouse
- ./docker/clickhouse/storage.xml:/etc/clickhouse-server/config.d/storage.xml:ro
redis:
image: redis:7
env_file:
- .env.${NODE_ENV:-development}
ports:
- "6379:6379"
redis-bullmq:
image: redis:7
command: redis-server --maxmemory-policy noeviction
ports:
- "6380:6379"
mailpit:
image: axllent/mailpit:v1.24
env_file:
- .env.${NODE_ENV:-development}
ports:
- "127.0.0.1:1025:1025"
- "127.0.0.1:8025:8025"
temporal:
image: temporalio/auto-setup:1.27.2
depends_on:
postgres:
condition: service_healthy
env_file:
- .env.${NODE_ENV:-development}
environment:
DB: postgres12
DB_PORT: 5432
POSTGRES_USER: ${POSTGRES_USER:-latitude}
POSTGRES_PWD: ${POSTGRES_PASSWORD:-secret}
POSTGRES_SEEDS: postgres
TEMPORAL_ADDRESS: temporal:7233
ports:
- "7233:7233"
temporal-ui:
image: temporalio/ui:2.36.0
depends_on:
- temporal
environment:
TEMPORAL_ADDRESS: temporal:7233
TEMPORAL_CORS_ORIGINS: http://localhost:8233
ports:
- "8233:8080"
volumes:
postgres_data:
clickhouse_data: