Skip to main content

AI Gateway Service — Local Dev Setup

Status: populated Owner: TBD Last updated: 2026-04-17 Companion: Service Template

1. Prerequisites

  • Node 22+ via nvm
  • pnpm 9+
  • Docker Desktop / Rancher Desktop
  • OpenSSL for dummy cert generation

2. Start dependencies

docker compose -f infra/compose/docker-compose.yml up -d \
postgres nats redis kong keycloak config-service identity-service

3. Install & migrate

pnpm install
pnpm --filter @ghasi/service-ai-gateway drizzle:migrate
pnpm --filter @ghasi/service-ai-gateway seed

4. Run

pnpm --filter @ghasi/service-ai-gateway dev
# Swagger: http://localhost:3040/api/docs
# Health : http://localhost:3040/health

5. Seed data

ItemContent
Tenantsten_afg_moph_001, ten_demo_clinic_001
Featurespatient_chart.note_summary, portal.triage, medication.interaction_narrative
Routing rulesDefault to MockAdapter when AI_PROVIDER_DEFAULT=mock
Prompt templatesGlobal versions for all seeded features

6. Running tests

pnpm --filter @ghasi/service-ai-gateway test:unit
pnpm --filter @ghasi/service-ai-gateway test:integration # requires compose up
pnpm --filter @ghasi/service-ai-gateway test:contract
pnpm --filter @ghasi/service-ai-gateway test:e2e

7. Useful scripts

ScriptPurpose
pnpm --filter @ghasi/service-ai-gateway buildTS build
pnpm --filter @ghasi/service-ai-gateway openapi:emitRegenerate openapi.json
pnpm --filter @ghasi/service-ai-gateway events:publishPublish schema to schema registry
pnpm --filter @ghasi/service-ai-gateway seed:promptsLoad prompt templates from repo fixtures

8. Enable real providers (opt-in)

Set .env.local:

PROVIDER_ANTHROPIC_KEY=sk-ant-...
PROVIDER_OPENAI_KEY=sk-...
AI_PROVIDER_DEFAULT=anthropic

Never commit keys. Use 1Password CLI or direnv for local.