Skip to content

Getting Started: Platform Engineers

This guide covers setting up an ADEPT development environment, understanding the service architecture, and common operational tasks for platform and DevOps engineers.


Quick Start

# Clone the repository
git clone https://github.com/pnnl/adept-agentic.git
cd adept-agentic

# Configure environment
cp .env.example .env
# Edit .env with your LLM provider keys and configuration

# Start all services
make start

# Validate system health
make validate

First Start

The initial make start pulls container images and bootstraps Keycloak with default credentials. This may take several minutes on first run.


Architecture Overview

ADEPT implements a three-tier secure architecture:

Tier 1: Agent Gateway         — Pure authentication proxy (Keycloak JWT)
Tier 2: Orchestration Service — Core brain (LangGraph, PostgreSQL state)
Tier 3: MCP Tool Servers      — Stateless scientific executors

Supporting services: Keycloak (identity), PostgreSQL (state), Redis (cache), ChromaDB (vectors), Gateway Registry (A2A discovery).

:octicons-arrow-right-24: Full Architecture Documentation


Docker Compose Structure

File Purpose
docker-compose.base.yaml Infrastructure: Keycloak, PostgreSQL, Redis, ChromaDB
docker-compose.core.yaml Application: Gateway, Orchestration, MCP servers, Registry
docker-compose.multi-stack.yaml Scaling: Multiple gateway instances for federation

Port Mappings

Service Container Port Host Port URL
Agent Gateway 8081 8083 http://localhost:8083
Orchestration Service 8084 8084 http://localhost:8084
Gateway Registry 8086 8086 http://localhost:8086
HPC MCP Server 8081 8081 http://localhost:8081

Common Pitfall

The Agent Gateway is on host port 8083, not 8081. Generated URLs using localhost:8081 route to the HPC MCP Server instead.


Configuration

Copy .env.example and configure the following sections:

Category Key Variables
LLM Provider DEFAULT_LLM_MODEL, AZURE_API_*, AWS_*
Authentication KEYCLOAK_*, KC_ADMIN_CLI_SECRET
Database POSTGRES_*
Service Mesh GATEWAY_*, REGISTRY_*

Service Management

Lifecycle Targets

make start              # Start all services
make stop               # Stop services
make restart            # Restart services
make rebuild            # Full rebuild (no cache)
make teardown           # Remove containers, networks, volumes

Service-Specific Rebuilds

make rebuild-gateway          # Agent Gateway (Tier 1)
make rebuild-orchestrator     # Orchestration Service (Tier 2)
make rebuild-registry         # Gateway Registry
make rebuild-gateway-mgmt-ui  # Management UI

Validation

make validate                     # All E2E tests
make validate-response-api-tool-calls  # Response API streaming
make validate-service-health      # Comprehensive health check
make validate-credentials         # Service authentication

Multi-Cloud Deployment

ADEPT supports deployment across major cloud providers:

Provider IaC Tool Orchestrator Directory
AWS CDK EKS infra/aws/
Azure Pulumi AKS infra/azure/
GCP Terraform GKE infra/gcp/

Helm charts are available in infra/helm/ for Kubernetes deployments.

:octicons-arrow-right-24: Deployment Guide


Troubleshooting

Symptom Cause Fix
401 on API calls Stale credentials make fix-credentials && make sync-credentials
Services not starting Missing .env cp .env.example .env and configure
Port conflicts Other services on 8083/8084 Check docker ps and stop conflicting containers
Keycloak bootstrap fails Wrong KC_ADMIN_CLI_SECRET Run discovery script, update .env, rebuild

Logs

Use docker logs <service_name> --tail 50 --since 5m to inspect recent service logs for debugging.