Skip to content

Deploy Prompter

Prompter runs in production on the Cratis UpCloud Kubernetes cluster that also hosts Studio. This page is the map; the public deployment project guide covers the Pulumi stack, configuration, first deploy, and release workflow.

Because the bot dials out to Discord (see the gateway mechanics in Set up the Discord app), it needs no public IP or ingress and runs identically from a laptop or a cluster. The artifacts are the same at every stage, so nothing is throwaway:

StageWhereGood for
Laptopdocker compose up -d plus dotnet runTrying it end to end on a test server, all bot development
Simple VM (optional)Smallest UpCloud VM, Docker ComposeAn always-on beta before the cluster work lands
ClusterThe Cratis UpCloud UKS via PulumiProduction: automated deploys and observability

Prompter is a single-replica Kubernetes Deployment - the Discord gateway wants exactly one connection - alongside an in-cluster Postgres with pgvector, in the Norway region. Keeping stored data on EU-jurisdiction infrastructure strengthens the privacy posture. It exposes GET /healthz for probes and POST /reindex (shared secret) for documentation refreshes. Follow the first-deploy steps to configure the existing cluster and host, supply encrypted secrets, preview the stack, and deploy it. Index the corpus once after the first deploy and complete Discord app setup before inviting questions.

App deploys are for code changes only. When the documentation changes, nothing is redeployed - the Documentation build calls POST /reindex and the corpus updates in place. See Configuration for the endpoints and Grounded answers for how freshness works.