Sign in

JumpStart Deployment

Deployment model, runtime requirements, environment variables, worker process, and onboarding checklist for JumpStart SAP Intelligence

consumerjumpstartdeploymentkuberneteshelmonboarding

Updated 2026-11-03

Verified 2026-11-03

JumpStart SAP Intelligence is deployed as a containerized Next.js application with a companion worker process and a PostgreSQL database. It can run near Cosmos in EY-managed infrastructure, in a client-dedicated stack, or split so JumpStart stays inside the client network while Cosmos remains EY-hosted.

JumpStart deployment model

Source

Loading diagram...

Current Deployment Notes

  • Deployment config drives KROKI_URL from environment variables with a public default.
  • Document-generation guardrails, BBP document continuation, and DMS/output progress reporting are part of the runtime reliability boundary.
  • Project members, groups, and journey grants live in native Cosmos project RBAC, so a deployment needs no separate access-sync job. Project member search is paginated and scoped to the authenticated project/user boundary.
  • The same image runs the webserver and the worker; MODE selects which one starts.

Deployment Patterns

PatternUse WhenNotes
EY-hosted shared instanceStandard EY-led engagementsOne JumpStart deployment serves multiple projects; tenant isolation is enforced by Cosmos org, JumpStart project RBAC, and encrypted connection records
Client-dedicated instanceStrict isolation or regulatory requirementsDedicated JumpStart, database, secrets, DNS, and usually a dedicated Cosmos org or stack
Split client-network deploymentClient systems must stay reachable only from client networkJumpStart runs near SAP/Oracle/BTP; it calls Cosmos over outbound HTTPS

Runtime Components

ComponentRequiredPurpose
JumpStart webserverYesNext.js app, API routes, OAuth callbacks, workbench UI
JumpStart workerYes for AI flowsDurable chat/job processing and ADK V2 streaming through SDK
RedisYes for AI flowsBullMQ job queues shared by webserver and worker
PostgreSQLYesPrisma data: projects, journeys, users, connections, sessions, jobs, access audit records
Cosmos platformYesUser Service, ADK, Configurator, Storage, Observer, Chat, MCP tools, optional RAGflow and Bridge
Client system network pathPer workbenchSAP ADT, Oracle DB, or BTP Neo access

Infrastructure Requirements

ResourceMinimumRecommended
Webserver CPU500m1 vCPU
Webserver memory512 Mi1 Gi
Worker CPU500m1 vCPU+
Worker memory512 Mi1 Gi+
PostgreSQL storage1 Gi10 Gi+
Node.js2424

Required Environment

VariablePurpose
DATABASE_URLJumpStart PostgreSQL connection
NEXTAUTH_URLPublic JumpStart URL
NEXTAUTH_SECRETNextAuth secret (NEXTAUTHSECRET is accepted as an alias)
COSMOS_ORG_IDCosmos organization UUID
COSMOS_CLIENT_ID / COSMOS_CLIENT_SECRETCosmos OAuth2 app credentials (COSMOSCLIENTSECRET is accepted as an alias)
COSMOS_JUMPSTART_SERVICE_CLIENT_IDService client ID for client_credentials calls (default cosmos-jumpstart-v1)
COSMOS_USER_SERVICE_URLCosmos User Service base URL
COSMOS_CONFIGURATOR_SERVICE_URLConfigurator base URL
COSMOS_STORAGE_SERVICE_URLStorage/DMS base URL
COSMOS_ADK_SERVICE_URLADK HTTP base URL
COSMOS_CHAT_SERVICE_URL, COSMOS_TOOLS_SERVICE_URL, COSMOS_MCP_SERVICE_URLChat and MCP tools base URLs
COSMOS_OBSERVER_SERVICE_URLOptional Observer base URL
COSMOS_RAGFLOW_SERVICE_URLOptional RAGflow base URL
COSMOS_GATEWAY_URLOptional fallback for services without a direct URL, only for a path-routing gateway
REDIS_HOST, REDIS_PORT, REDIS_PASSWORD, REDIS_SSL, JOBS_REDIS_DBJob queue Redis (defaults localhost:6379, DB 12)
BRIDGE_SERVICE_URL / BRIDGE_PUBLIC_URLCosmos Bridge service URL and optional public bridge WebSocket URL used by the bridge launcher
KROKI_URLOptional self-hosted diagram renderer
CREDENTIALS_ENCRYPTION_KEY32-byte hex key for encrypted system credentials

In deployed environments each COSMOS_*_SERVICE_URL points at that service's own host, for example https://<adk-host>. See Base URLs.

Keep secrets in KeyVault, Secret Manager, or Kubernetes secrets. Do not bake them into images.

Local Run

JumpStart runs on port 3001 locally. Start the webserver and worker separately:

bash
cd jumpstart-sap-intelligence
NODE_TLS_REJECT_UNAUTHORIZED=0 npm run dev
NODE_TLS_REJECT_UNAUTHORIZED=0 npm run dev:worker

Run Prisma migrations before starting a fresh database. Default journeys, blueprints, and engagement templates are seeded by the app itself (ensureSeeded() in lib/data/seed); no prisma db seed step is configured.

bash
npx prisma migrate deploy

Image And Helm

The Docker build uses Node.js 24 and runs on a distroless Node.js 24 image. It installs @cosmos/sdk from the private SDK repository and Motif packages from the Motif npm registry, so both credentials are build arguments.

bash
docker build \
  --build-arg GITHUB_ACCESS_TOKEN=<github-token> \
  --build-arg MOTIF_NPMRC=<motif-registry-token> \
  -f deployment/docker/webserver/Dockerfile \
  -t jumpstart-sap:latest .

The container listens on port 3000. MODE=webserver (default) starts the Next.js server; MODE=worker starts the job worker from the same image.

Deploy with the service Helmfile values for the target cloud/environment. The webserver and worker need the same Cosmos, database, OAuth, and encryption configuration.

Onboarding Checklist

  1. Create or select the Cosmos organization and record the org_id.
  2. Create the Cosmos OAuth2 application for JumpStart and configure redirect URIs.
  3. Configure JumpStart environment variables and secrets.
  4. Run Prisma migrations; default journeys and templates are seeded on startup.
  5. Add project members and groups, and review journey access in Settings → Project Access.
  6. Configure LLM access through Cosmos org settings/BYOT.
  7. Upload project documents to DMS and index KB collections if needed.
  8. Add SAP, Oracle, or BTP connections in JumpStart and verify health checks.
  9. Start the worker and submit a test durable chat job.
  10. Check Observer for standard/eval traces after the test run.

Verification

CheckExpected Result
OAuth loginRedirect succeeds and NextAuth session has Cosmos token
Workbench loadBlueprint panels render and terminal state persists after reload
Durable jobJob streams chunks/tool events and reaches a terminal state
DMS upload/previewUploaded file can be previewed or downloaded
Connector toolSAP/Oracle/BTP health check or search returns data
ObservabilitySession and tool events appear in Cosmos Observer

Troubleshooting

SymptomLikely CauseFix
Login returns to /signinBad OAuth client ID/secret or redirect URIVerify Cosmos OAuth app and NEXTAUTH_URL
Worker never picks jobsWorker process not running or Redis/queue config mismatchStart npm run dev:worker locally, check worker deployment logs, and confirm webserver and worker share the same REDIS_* and JOBS_REDIS_DB settings
Journey missing for a userAgent not authorized for the project, journey catalog entry disabled, or a journey restrictionCheck Settings → Project Access for the user's effective access
Generated files missingDMS route or Storage URL mismatchVerify COSMOS_STORAGE_SERVICE_URL and user token permissions
SAP connection refusedNetwork path blockedVerify outbound HTTPS from JumpStart pod or use split/client-network deployment
Decryption failedCREDENTIALS_ENCRYPTION_KEY changedRestore original key or re-enter connection credentials